A Dynamic Job Shop Model for Scheduling Tasks in a Software Development Environment - Ribeiro, Sildenir Alves; Schmitz, Eber Assis; da Silva, Mônica Fereira; de Alencar, Antônio Juarez Sylvio Menezes (Journal of Information Systems and Technology Management, 2021)
This work proposes a Dynamic Job Shop Scheduling (DJSS) model for scheduling the task in a software production environment. The aim is to organize the insertion of tasks in the shop in a precedence order previously defined that obeys the mapping of the critical path and the critical chain to identify constraints in the productive process. The complexity and dynamism of the software development environment require a mature and adjusted process that enables management throughout its extension. Therefore, the Unified Process (UP) was used in conjunction with the Theory of Constraints (TOC) in the Software Development Process (SDP). The UP requires an efficient model for the processing of activities, given by the set of independent variables involved in the process. For this reason, a model to programming the task based on dynamic scheduling was developed. The problem around the DJSS is to program the tasks in the shop in a way that allows to identify one or more production lines in the shop with constraints of capacity at runtime. A capacity constraint is any element that disturbs the productive process, causing L=Mi Aj to have delivery (DA) of less than 100% of the artifacts, given by the set of jobs (jn) scheduled. The resource with capacity constraint limits the production of the machines in the production line, leading to bottlenecks in the production process. A bottleneck, in turn, is denoted by the production limitation of a machine (people) caused by one or more capacity constraints that imply maximum production, which in this case is defined by D={Mi, Aj=100%}. In this work, the maximum production is given by the set of tasks processed in each of the phases of the UP and according to the productive calendar, which delimits the deadline of each delivery and establishes the budget of hours for the shop. The set of tasks scheduled and "rescheduling" and properly processed in all phases define the total production of each machine. The use of DJSS facilitated the organization and management of insertion and rescheduling operations in the shop and as result, produced data to measure the effort/time that allowed identifying the bottleneck of the software production process.