Shop Floor Clocking System
I had to replace a legacy shop floor clocking system for our factory which was written in Java long time ago and having problems. Retaining the visual user interface as close as possible to the old system was one of the most important specifications. We wanted to minimize the training of shop floor employees, which will be the biggest cost of the project.
It was implemented with two ASP.NET web applications, one for the front end which collects the workers’ timesheet for each work orders and the other one for supervisors to edit collected data before posting to ERP system.
Special efforts were given to the design to make it robust considering that this is for a shop floor operating 24/7. There are two fail-over modes: Firstly, when the SQL2005-based employee database was disconnected, the application automatically switch to internal cached database. Cache employee database is refreshed in regular interval. Secondly, in more serious case of when the main ERP database server was down, the application keeps collecting the clocking data into its own SQL Express log database. This will enable database admin to upload the collected clocking data to ERP system later when it’s recovered, removing the unnecessary paper log hassle.
In either cases, the casual users (shop floor employees) will not even notice any disconnection. The clocking web application and local logging database was installed together in a dedicated server. Originally, I wanted even to separate this in a physical server and a special location to enhance the robustness. But eventually it ended up in VM and had no problem found yet. Our factory is using this app 24/7 now and it has never had an unscheduled stoppage since the first deployment in January of 2010, which makes me very proud of.