A Dynamic Job Shop Model for Scheduling Tasks in a Software Development Environment

Authors

  • Sildenir Alves Ribeiro Coordenação de Sistemas de Informação - Centro Federal de Educação Tecnológica do Rio de Janeiro (CEFET/RJ). Instituto Tércio Pacitti de Pesquisas e Aplicações Computacionais - Programa de Pós Graduação em Informática (PPGI) - Universidade Federal do Rio de Janeiro (UFRJ). http://orcid.org/0000-0003-4808-1009
  • Eber Assis Schmitz Instituto Tércio Pacitti de Aplicações e Pesquisas Computacionais (NCE) - Programa de Pós Graduação em Informática ( PPGI) Universidade Federal do Rio de Janeiro (UFRJ) http://orcid.org/0000-0002-4839-4606
  • Mônica Fereira da Silva Instituto Tércio Pacitti de Aplicações e Pesquisas Computacionais (NCE) - Programa de Pós Graduação em Informática ( PPGI) Universidade Federal do Rio de Janeiro (UFRJ) http://orcid.org/0000-0003-0951-6612
  • Antônio Juarez Sylvio Menezes de Alencar Instituto Tércio Pacitti de Aplicações e Pesquisas Computacionais (NCE) - Programa de Pós Graduação em Informática ( PPGI) Universidade Federal do Rio de Janeiro (UFRJ) http://orcid.org/0000-0003-4791-0581

DOI:

https://doi.org/10.4301/S1807-1775202118001

Keywords:

Dynamic Job Shop Scheduling, Software Development Process, Software Development Environment, Theory of Constraints, Experimental Software Engineering

Abstract

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.

Author Biographies

Sildenir Alves Ribeiro, Coordenação de Sistemas de Informação - Centro Federal de Educação Tecnológica do Rio de Janeiro (CEFET/RJ). Instituto Tércio Pacitti de Pesquisas e Aplicações Computacionais - Programa de Pós Graduação em Informática (PPGI) - Universidade Federal do Rio de Janeiro (UFRJ).

Bacharel em Ciências da Computação pela Universidade de Cuiabá(UNIC). Especialista em Administração de Sistemas Pela Universidade Federal de Lavras (UFLA). Mestre em Informática pela Universidade Federal do Espírito Santo (UFES) e Doutor em Informática Pela UFRJ, PPGI - Instituto Tércio Pacitti. Professor do CEFET-RJ da Coordenação de Sistemas de Informação e Automação Industrial e do Departamento de Engenharia Eletrônica.

Eber Assis Schmitz, Instituto Tércio Pacitti de Aplicações e Pesquisas Computacionais (NCE) - Programa de Pós Graduação em Informática ( PPGI) Universidade Federal do Rio de Janeiro (UFRJ)

Possui graduação em Engenharia Eletrônica pela Universidade Federal do Rio Grande do Sul (1971), mestrado em Engenharia Elétrica pela Universidade Federal do Rio de Janeiro (1973) e doutorado em Computing and Control pelo Imperial College (1980). Atualmente é professor associado da Universidade Federal do Rio de Janeiro. Tem experiência na área de Ciência da Computação, com ênfase em Engenharia de Software e Sistemas de Informação, atuando principalmente nos seguintes temas: modelagem e especificação de software, análise de risco em projetos de TI, economia da engenharia de software, modelagem e simulação de processos de software e regras de negócio.

Mônica Fereira da Silva, Instituto Tércio Pacitti de Aplicações e Pesquisas Computacionais (NCE) - Programa de Pós Graduação em Informática ( PPGI) Universidade Federal do Rio de Janeiro (UFRJ)

Doutora em Administração pelo COPPEAD/UFRJ (2006). Mestre em Engenharia de Sistemas e Computação pela COPPE/UFRJ (1998). Especialização em Gerência de Projetos pelo NCE/UFRJ (2001). Graduação em Informática pela Universidade Federal do Rio de Janeiro (UFRJ) concluído com grau cum laude de dignidade acadêmica (1988). Professora Permanente do Programa de Pós-graduação em Informática (PPGI) da Universidade Federal do Rio de Janeiro (UFRJ). Coordenadora do Grupo de Pesquisa HumânITas (PPGI/UFRJ), que desde 2006 procura estimular um olhar mais humano sobre o desenvolvimento e o uso de tecnologias da informação, estimulando reflexões e novas práticas em pesquisadores, empresas, usuários de TI e governo. Pesquisadora Colaboradora dos grupos de pesquisa GETI (Gestão Estratégica de TI) e CORES (Computação Social e Análise de Redes Sociais) ambos vinculados ao PPGI/UFRJ. Foi Diretora da Área de Atividades de Extensão do NCE/UFRJ (2016/2019). Tem experiência nas áreas de Ciência da Computação e Administração, com ênfase em Gestão da Tecnologia da Informação. Atua principalmente nos seguintes temas: estratégia e sistemas de informação, metodologia de pesquisa científica e adoção de tecnologia com ênfase na área da educação e da saúde.

Antônio Juarez Sylvio Menezes de Alencar, Instituto Tércio Pacitti de Aplicações e Pesquisas Computacionais (NCE) - Programa de Pós Graduação em Informática ( PPGI) Universidade Federal do Rio de Janeiro (UFRJ)

Possui graduação em Bacharelado em Matemática (Modalidade Informática) pela Universidade Federal do Rio de Janeiro (1981), mestrado em Engenharia de Sistemas e Computação pela Universidade Federal do Rio de Janeiro (1986) e doutorado em Ciência da Computação - University of Oxford (1994). Atualmente é analista de tecnologia da informação da Universidade Federal do Rio de Janeiro. Tem experiência na área de Ciência da Computação, com ênfase em Análise de Investimentos em TI, atuando principalmente nos seguintes temas: engenharia de software, gestão de tecnologia da informação, gerência de projetos e análise de risco. Em adição, tem experiência no uso de análise de dados para tomada de decisão, com enfase no suo de técnicas de inteligencia artificial, big data, data analytics e mineração de dados.

References

Araújo Jr., L. O.; Non-Deterministic Dynamic Job Shop Manufacturing Systems Programming Method; Doctoral Thesis; Mechanical Engineering Program; Polytechnic School; São Paulo University – USP; São Paulo – SP; 2006.

Basili, v. R.; weiss, d. M.; A Methodology for Collecting Valid Software Engineering Data; IEEE Transactions on Software Engineering; Vol. SE-10, No 6, pp 728-738; November-1984.

Blazewicz, j.; Ecker, k.; Schimidt g.; Weglarz, J.; Scheduling in Computer and Manufacturing Systems; Ed. Springer – Verlag; Berlin; 1996.

Casavant, t. L.; Kuhl, j. G.; A Taxonomy of Scheduling in General Purpose Distributed Computing Systems, IEEE Transactions on Software Engineering, Vol..14, no. 02; 1998.

Dai, M.; Tang, D.; Giret, A.; Salido, M.; A Multi-objective optimization for energy-efficient flexible job shop scheduling problem with transportation constraints; Robotics and Computer-Integrated Manufacturing, Volume 59, 2019, pp. 143-157. DOI: https://doi.org/10.1016/j.rcim.2019.04.006

Goldratt, e. M.; Cox, J.; The Goal: A Process of Ongoing Improvement; Ed. North River Press; Great Barrington, MA; 2014.

Hasgul, S.; Kartal, Z.; Analyzing A Drum-Buffer-Rope Scheduling System Executability Through Simulation; Proceedings in of the 2007 Summer Computer Simulation Conference (SCSC 2007), San Diego, California - US; 2007.

Jacobson, I.; Booch, G.; Rumbaugh, J. The Unified Software Development Process. Reading: Addison-Wesley, 1999(b).

Klein, R.; Scheduling of Resource Constrained Projects; Ed. Kluwer Academic Publisher; Norwell – Massachu-setts, 2000.

Mansouri, S. A.; Golmohammadi, d.; Miller, J.; The moderating role of master production scheduling method on throughput in job shop systems; International Journal of Production Economics, Volume 216, 2019, pp. 67-80; Elsevier. DOI: https://doi.org/10.1016/j.ijpe.2019.04.018

NBR/ISO/IEC 14598:2001; Software engineering - Product evaluation - Part 6: Documentation of evaluation modules; NBR/ISO/IEC; 2001; Reviewed and Confirmed in 2008.

Ouelhadj, D.; Petrovic, S.; A survey of dynamic scheduling in manufacturing systems, Journal of Scheduling, Vol. 12; 2009.

Özcan, U.; Balancing and scheduling tasks in parallel assembly lines with sequence-dependent setup times; International Journal of Production Economics, Volume 213, 2019, pp. 81-96; Elsevier; DOI: https://doi.org/10.1016/j.ijpe.2019.02.023

Pinedo, M.; Scheduling – Theory, Algorithms and Systems; 5th Edition; Ed. Springer; New York-NY; 2016.

Pressman, R. S.; Maxin, B. R.; Software Engineering: A Practitioner's Approach; Ed., McGraw-Hill/Makron Books do Brasil, São Paulo, 2014.

Ribeiro, S. A.; Bottleneck Identification in Software Development Processes: A Proposal Based on the Principles of the Theory of Constraints; Doctoral Thesis; IM/PPGI/UFRJ; Rio de Janeiro-RJ; 2018.

Ribeiro, S. A.; Schmitz, E. A.; Alencar, A. J. S.; Silva, M. F; Bottlenecks Identification in Software Development Process: A Quali-Quantitative Approach; Proceedings of the XVI Brazilian Symposium on Human Factors in Computational Systems (IHC 2017); ACM Digital Library; ACM New York – NY- USA; DOI:10.1145/3160504.3160513; October 2017-a.

Ribeiro, S. A.; Schmitz, E. A.; Alencar, A. J. S.; Silva, M. F; Literature Review on the Theory of Constraints Applied in the Software Development Process; IEEE Latin America Transactions, vol. 16, no. 11, pp. 2447-2756; November 2018. DOI: 10.1109/TLA.2018.8795116;

Ribeiro, S. A.; Schmitz, E. A.; Alencar, A. J. S.; Silva, M. F; Research Opportunities on the Application of the Theory of Constraints to Software Process Development; Journal of Software vol. 12, no. 4, pp. 227-239, 2017. DOI: 10.17706/jsw.12.4.227-239; April 2017-b

Ribeiro, S. A.; Schmitz, E. A.; Alencar, A. J. S.; Silva, M. F; Scheduling of Tasks in a Software Development Environment Using a Dynamic Job Shop Scheduling (DJSS). Proceedings of the XLIX Brazilian Symposium of Operational Research (SBPO); Blumenau – SC; 2017. Anais SBPO/SOBRAPO – ISSN 1518-1731; August 2017-c.

Ribeiro; S. A.; Alvarenga, A. G.; Ahonen, H. T.; Artificial Immune System to Job Shop Scheduling Problem; Proceedings in Brazilian Production Engineering Symposium; XIX SIMPEP; 2012.

Ribeiro; S. A.; Artificial Immune System to Job Shop Scheduling Problem; Master Thesis; PPGI/IT; Federal University of Espírito Santo (UFES) – ES; 2006.

Schach, S. R.; Object-Oriented and Classical Software Engineering, 8th. Edition; Published by McGraw-Hill Press; New York – NY; 2011.

Sommerville, I.; Software Engineering; 9th Edition; Ed. Addison-Wesley, Londres, 2011.

Sousa, R. A.; Varela, M. L. R.; Alves, C.; Machado, J.; Job shop schedules analysis in the context of industry 4.0; International Conference on Engineering, Technology and Innovation (ICE/ITMC)- 2017; pp-711-717; Funchal Portugal; Publisher: IEEE – IEEE Xplorer; 2018 Doi: 10.1109/ICE.2017.8279955

Thörnblad, K.; Mathematical Optimization in Flexible Job Shop Scheduling: Modelling, Analysis, and Case Studies; PhD Thesis; Department of Mathematical Sciences - Division of Mathematics; Chalmers University of Technology and University of Gothenburg; Göteborg; Sweden – 2013;

Turker, A. K.; AKTEPE, A.; INAL, A. F.; ERSOZ, O. O.; DAS, G. S.; BIRGOREN, B.; A Decision Support System for Dynamic Job-Shop Scheduling Using Real-Time Data with Simulation; pp. 01-19; Volume 7; Issue 3; Math-ematics; 2019. DOI: 10.3390/math7030278.

Wohlin, C.; "Empirical Software Engineering: Teaching Methods and Conducting Studies", in Empirical Soft-ware Engineering - Dagstuhl Seminar Proceedings (LNCS 4336), pp. 135-142, edited by V. Basili, D. Rombach, K. Schneider, B. Kitchenham, D. Pfahl and R. Selby, Springer Verlag; 2007.

Wohlin, C.; Runeson, P.; Höst, M.; Ohlsson, M. C.; Regnell, B.; Wesslén, A.; Experimentation in Software Engineering; Ed. Springer/Springer Science e Business; London-UK, 2012

Zhang, J.; Ding, G.; Zou, Y.; Qin, S.; Fu, J.; Review of job shop scheduling research and its new perspectives un-der Industry 4.0; Journal of Intelligent Manufacturing; Volume 30, Issue 4, pp 1809-1830; Springer; 2017; DOI: https://doi.org/10.1007/s10845-017-1350-2 Environments, R. A. Earnshaw and J. A. Vince, England, Academic Press Ltd., p. 449-460.

Downloads

Published

2021-05-31

How to Cite

Ribeiro, S. A., Schmitz, E. A., da Silva, M. F., & de Alencar, A. J. S. M. (2021). A Dynamic Job Shop Model for Scheduling Tasks in a Software Development Environment. Journal of Information Systems and Technology Management, 18. https://doi.org/10.4301/S1807-1775202118001

Issue

Section

Articles