The first professional application I developed was a labor estimating program for a production planner in a factory. Determining how long jobs would take to run was a challenge, because the rate of production is not a constant, linear rate. Rather, the machine must start slow, and build into full speed operation. This plant however, has quite a few small jobs, so time could vary widely. A job for three times as much material would likely take less than three times as long, but how long?
I cannot share the actual production app I used, since it contains sensitive company information. However, it looked very similar to this shot above (I changed the industry and production parameters for this sample image). The gist of my algorithm is you input all the relevant production parameters for each job on the production schedule. Next, an instance of a class containing collected data on run speeds from the shop floor is made for each production job input. This class contains a while loop that determines estimated machine speed for the first minute, and the amount produced during that minute. While the amount produced is less than the amount needed for the job, the while loop continues, and as minutes elapsed increment, the rate of production per minute increases just as it does for the actual production machine, up until the while loop exits.
I designed this application as a Windows Forms App because this layout is familiar to the planner, and second, I could control the distribution of the code. Specifically, I developed the application, put it on a USB drive, and hand-delivered it to the planner. Again, because of the sensitive data in the app, I avoided internet distribution mediums, like the Windows Store.
I cannot share the actual production app I used, since it contains sensitive company information. However, it looked very similar to this shot above (I changed the industry and production parameters for this sample image). The gist of my algorithm is you input all the relevant production parameters for each job on the production schedule. Next, an instance of a class containing collected data on run speeds from the shop floor is made for each production job input. This class contains a while loop that determines estimated machine speed for the first minute, and the amount produced during that minute. While the amount produced is less than the amount needed for the job, the while loop continues, and as minutes elapsed increment, the rate of production per minute increases just as it does for the actual production machine, up until the while loop exits.
I designed this application as a Windows Forms App because this layout is familiar to the planner, and second, I could control the distribution of the code. Specifically, I developed the application, put it on a USB drive, and hand-delivered it to the planner. Again, because of the sensitive data in the app, I avoided internet distribution mediums, like the Windows Store.