350 rub
Journal Dynamics of Complex Systems - XXI century №2 for 2024 г.
Article in number:
Software project management: life cycle models and development methodologies, analysis and classification
Type of article: scientific article
DOI: 10.18127/j19997493-202402-04
UDC: 004.413
Authors:

K.S. Myshenkov1, D.A. Gurianov2

1,2 Bauman Moscow State Technical University (National Research University) (Moscow, Russia)
1myshenkovks@bmstu.ru, 2guryanovda@student.bmstu.ru

Abstract:

Choosing the right software development methodology can play a key role in making a project successful. Depending on the chosen methodology, it is possible to reduce product delivery times, development costs, manage uncertainty and risks, improve quality and user satisfaction, and provide more detailed control over the project. Despite the importance of this task, the choice of the most appropriate methodology for a particular project is difficult due to the large number of evaluation criteria, the lack of sufficient literature on this issue and the low level of formalization of the process, when the choice of methodology is made only on the basis of the previous experience of the project manager.

The purpose of the work is to increase the efficiency of the processes of substantiation and selection of software development methodologies for specific projects.

The article discusses the main well-known life cycle models and software development methodologies. An analysis of methods and criteria for classifying methodologies was carried out, and the shortcomings of existing classifications were identified. A new multi-criteria hierarchical classification is proposed, offering a more complete and broader distribution of life cycle models and software development methodologies across classes.

A review of existing methodologies, an analysis of known classification methods and their shortcomings, the methodologies classification proposed by the authors will help project managers more reasonably choose development methodologies and reduce risks in the process of managing software projects.

Pages: 36-58
For citation

Myshenkov K.S., Gurianov D.A. Software project management: life cycle models and development methodologies, analysis and classification. Dynamics of complex systems. 2024. V. 18. № 2. P. 36−58. DOI: 10.18127/j19997493-202402-04 (in Russian).

References
  1. ISO/IEC/IEEE 12207:2017. Systems and software engineering – Software life cycle processes. URL: https://www.iso.org/ru/standard/ 63712.html (date of the application: 10.03.2024).
  2. Review Standish Group – CHAOS 2020: Beyond Infinity. URL: https://hennyportman.wordpress.com/2021/01/06/review-standish-group-chaos-2020-beyond-infinity/ (date of the application: 10.03.2024).
  3. Ozturk V. Selection of Appropriate Software Development Life Cycle Using Fuzzy Logic. Intelligent and Fuzzy Systems. 2013. V. 25 (3). P. 797–810. DOI 10.3233/IFS-120686
  4. Boehm B.W. A Spiral Model of Software Development and Enhancement. Computer. California, Los Alamitos: IEEE Computer Society Press. 1988. V. 21. № 5. Р. 61–72. DOI 10.1109/2.59
  5. GOST R ISO/MEK 12207-2010. Informatsionnaya tekhnologiya. Sistemnaya i programmnaya inzheneriya. Protsessy zhiznennogo tsikla programmnykh sredstv. M.: STANDARTINFORM. 2011. 99 s.
  6. GOST R 57193-2016 (ISO/IEC/IEEE 15288:2015, NEQ). Sistemnaya i programmnaya inzheneriya. Protsessy zhiznennogo tsikla sistem. M.: STANDARTINFORM. 2016. 94 s.
  7. GOST R ISO 15704-2008. Promyshlennyye avtomatizirovannyye sistemy. Trebovaniya k standartnym arkhitekturam i metodologiyam predpriyatiya. M.: STANDARTINFORM. 2010. 48 s.
  8. GOST R 54097-2010. Resursosberezheniye. Nailuchshiye dostupnyye tekhnologii. Metodologiya identifikatsii. M.: STANDARTINFORM. 2011. 13 s.
  9. GOST R ISO/MEK TO 15271-2002. Informatsionnaya tekhnologiya. Rukovodstvo po primeneniyu GOST R ISO/MEK 12207. Protsessy zhiznennogo tsikla programmnykh sredstv. M.: IPK Izdatel'stvo standartov. 2002. 39 s.
  10. Royce W.W. Managing the Development of Large Software Systems: Concepts and Techniques. Proceedings IEEE WESCON / USA, California, Los Angeles, Aug. 1970. P. 1–9.
  11. Larman K., Bazili V. Iterativnaya i inkremental'naya razrabotka: kratkaya istoriya. Otkrytyye sistemy. SUBD. 2003. № 09. URL: https://www.osp.ru/os/2003/09/183412?ysclid=luijt3ubo269676509 (data obrashcheniya: 10.03.2024).
  12. Fatrell R.T., Shafer D.F., Shafer L.I. Upravleniye programmnymi proyektami: dostizheniye optimal'nogo kachestva pri minimume zatrat. M.: Vil'yams. 2004. 1136 s.
  13. Forsberg K., Mooz H. The Relationship of System Engineering to the Project Cycle. International Symposium of the International Council on Systems Engineering (INCOSE) / USA, Tennessee, Chattanooga, 20–23 Oct. 1991. V. 1. № 1. P. 57–65. DOI 10.1002/j.2334-5837.1991.tb01484.x
  14. Raccoon L.B.S. The Chaos Model and the Chaos Life Cycle. ACM SIGSOFT Software Engineering Notes. New York: ACM Press, Jan. 1995. Vol. 20. № 1. P. 55-66. DOI 10.1145/225907.225914
  15. Mooz H., Forsberg K. The Dual Vee – Illuminating the Management of Complexity. Sixteenth Annual International Symposium of the International Council on Systems Engineering (INCOSE) / USA, Florida, Orlando, 9-13 July 2006. Vol. 16. № 1. P. 1368-1381. DOI 10.1002/j.2334-5837.2006.tb02819.x
  16. Yourdon E. Structured Design. New York: Yourdon Press. 1975. 599 p.
  17. Vendrov A.M. CASE-tekhnologii. Sovremennyye metody i sredstva proyektirovaniya informatsionnykh sistem. M.: Finansy i statistika. 1998. 176 s.
  18. Yourdon E., Constantine L.L. Structured Design: Fundamentals of a Discipline of Computer Program and Systems Design. New York: Yourdon Press. 1978. 464 p.
  19. Coad P., Yourdon E. Object-Oriented Analysis. New Jersey, Englewood Cliffs: Yourdon Press. 1991. 233 p.
  20. Gane С., Sarson T. Structured Systems Analysis: Tools & Techniques. New York: Improved System Technologies. 1977. 373 p.
  21. Warnier J.D. Logical Construction of Programs. New York: Van Nostrand Reinhold. 1976. 230 p.
  22. Orr K. Structured Systems Development. New York: Yourdon Press. 1977. 170 p.
  23. Higgins D.A. Designing Structured Programs. New Jersey, Englewood Cliffs: Prentice-Hall. 1983. 258 p.
  24. Jackson M.A. A Systems Development Method. Tools and notions for program construction: An advanced course / Nice 1981. Cambridge University Press. 1982. P. 1–25.
  25. Jackson M.A. System Development. New Jersey, Englewood Cliffs: Prentice-Hall. 1983. 418 p.
  26. Martin J. Information Engineering / In 3 vol. New Jersey, Englewood Cliffs: Prentice-Hall, 1989. V. 1: Introduction. 178 p.; V. 2: Planning and analysis. 497 p.; V. 3: Design and construction. 625 p.
  27. Finkelstein C. An Introduction to Information Engineering: From Strategic Planning to Information System. Australia, Sydney; Massachusetts, Reading: Addison-Wesley. 1989. 393 p.
  28. Kalyanov G.N. Konsalting pri avtomatizatsii predpriyatiy. Podkhody, metody, sredstva. M.: SINTEG. 1997. 316 s.
  29. Buch G. Ob"yektno-oriyentirovannyy analiz i proyektirovaniye s primerami prilozheniy na S++ / Per. s angl., 2-ye izd. M.: Binom, SPb.: Nevskiy dialekt, 2000. 560 s.
  30. Shlaer S., Mellor S.J. Object-Oriented Systems Analysis: Modeling the World in Data. New Jersey, Englewood Cliffs: Yourdon Press, 1988. 141 p.
  31. Shlaer S., Mellor S.J.  Object Lifecycles: Modeling the World in States. New Jersey, Englewood Cliffs: Yourdon Press, 1991. 245 p.
  32. Odintsov I.O. Professional'noye programmirovaniye. Sistemnyy podkhod. SPb.: BKHV-Peterburg. 2004. 624 s.
  33. Booch G. Object Oriented Design with Applications. California, Redwood City: Benjamin/Cummings. 1991. 580 p.
  34. Booch G. Object-Oriented Analysis and Design with Applications. California, Redwood City: Benjamin/Cummings. 1994. 589 p.
  35. Jacobson I., Christerson M., Jonsson P., Övergaard G. Object-Oriented Software Engineering: A Use Case Driven Approach. New York: ACM Press, Addison-Wesley. 1992. 524 p.
  36. Goodland M., Riha K. SSADM – an Introduction. 20.01.1999. 24 p.
  37. GOST R 59853-2021. Informatsionnyye tekhnologii. Kompleks standartov na avtomatizirovannyye sistemy. Avtomatizirovannyye sistemy. Terminy i opredeleniya. M.: RST. 2021. 16 s.
  38. GOST 24.104-2023. Yedinaya sistema standartov avtomatizirovannykh sistem upravleniya. Avtomatizirovannyye sistemy upravleniya. Obshchiye trebovaniya. M.: RST. 2023. 20 s
  39. GOST R 59793-2021. Informatsionnyye tekhnologii. Kompleks standartov na avtomatizirovannyye sistemy. Avtomatizirovannyye sistemy. Stadii sozdaniya. M.: RST. 2021. 8 s.
  40. GOST 34.602-2020. Informatsionnyye tekhnologii. Kompleks standartov na avtomatizirovannyye sistemy. Tekhnicheskoye zadaniye na sozdaniye avtomatizirovannoy sistemy. M.: RST. 2022. 11 s.
  41. GOST 34.201-2020. Informatsionnyye tekhnologii. Kompleks standartov na avtomatizirovannyye sistemy. Vidy, komplektnost' i oboznacheniye dokumentov pri sozdanii avtomatizirovannykh sistem. M.: RST. 2022. 12 s.
  42. GOST R 59795-2021. Informatsionnyye tekhnologii. Kompleks standartov na avtomatizirovannyye sistemy. Avtomatizirovannyye sistemy. Trebovaniya k soderzhaniyu dokumentov. M.: RST. 2021. 31 s.
  43. GOST R 59792-2021. Informatsionnyye tekhnologii. Kompleks standartov na avtomatizirovannyye sistemy. Vidy ispytaniy avtomatizirovannykh sistem. M.: RST. 2021. 8 s.
  44. DATARUN Concepts. Computer Systems Advisers Research. 1994.
  45. Oracle CDM Method: Handbook. Oracle. 1996.
  46. Dorsey P., Koletzke P. Oracle Designer/2000: Handbook. California, Berkeley: Osborne McGraw-Hill. 1997. 644 p.
  47. Barker R. CASE*Method: Entity-Relationship Modelling. UK, Wokingham: Addison-Wesley. 1990. 250 p.
  48. Zinder Ye.Z. Sootneseniye i ispol'zovaniye standartov organizatsii zhiznennykh tsiklov sistem. Sistemy upravleniya bazami dannykh. № 03. 1997. URL: https://www.osp.ru/dbms/1997/03/13031545?ysclid=luio3ckoyt272453383 (data obrashcheniya: 10.03.2024).
  49. Oracle Unified Method (OUM). Oracle’s Full Lifecycle Method for Deploying Oracle-Based Business Solutions: Oracle White Paper. Sep. 2016. California, Redwood Shores: Oracle, 2016. 16 p. URL: https://www.academia.edu/31239860/Oracle_Unified_Method_OUM_
    Oracles_Full_Lifecycle_Method_for_Deploying_Oracle_Based_Business_Solutions (date of the application: 10.03.2024).
  50. McCarthy J. Dynamics of Software Development. Microsoft Press. 1995. 184 p.
  51. David J.-L., Loton T., Gunvaldson E. et al.  Professional Visual Studio 2005 Team System. Indiana, Indianapolis: Wiley. 2006. 746 p.
  52. Smol'yaninov A., Lozhechkin A. Nekotoryye sekrety komandnoy razrabotki. Otkrytyye sistemy. SUBD. 2005. № 07-08. URL: https://www.osp.ru/os/2005/07-08/185764?ysclid=ltdjo3og2z646901703 (data obrashcheniya: 10.03.2024).
  53. Essama Ze S. Microsoft Solutions Framework (MSF) for Agile Software Development. 2014. 10 p. URL: https://lirenligne.net/oeuvre-a-decouvrir/Li1LLcdCv8cH./Microsoft%20Solutions%20Frameworks.pdf (date of the application: 10.03.2024).
  54. Kale V. Vnedreniye SAP R/3: Rukovodstvo dlya menedzherov i inzhenerov. M.: AyTi. 2006. 511 s.
  55. Babenchuk S.P. Metodologii vnedreniya ERP-sistem i upravleniya proyektami. Podkhody k otsenke effektivnosti vnedreniya ERP. Otkrytoye obrazovaniye. 2011. № 6. S. 51–59.
  56. Jacobson I.,  Booch G.,  Rumbaugh J. The Unified Software Development Process. Massachusetts, Reading: Addison-Wesley. 1999. 520 p.
  57. Scott K. The Unified Process Explained. Massachusetts, Boston: Addison-Wesley. 2002. 212 p.
  58. Martin J. Rapid Application Development. New York: Macmillan. 1991. 824 p.
  59. Martin J., Odell J.J. Object-Oriented Analysis and Design. New Jersey, Englewood Cliffs: Prentice-Hall. 1992. 527 p.
  60. Stapleton J. DSDM. Dynamic Systems Development Method: The Method in Practice. Massachusetts, Reading: Addison-Wesley. 1997. 163 p.
  61. Coad P., Lefebvre E., De Luca J. Java Modeling in Color with UML: Enterprise Components and Process. New Jersey, Upper Saddle River: Prentice Hall PTR. 1999. 218 p.
  62. Palmer S.R., Felsing J.M. A Practical Guide to Feature-Driven Development. New Jersey, Upper Saddle River: Prentice Hall PTR. 2002. 304 p.
  63. Beck K., Beedle M., Bennekum A., Cockburn A., Cunningham W., Fowler M. et al. Manifesto for Agile Software Development. URL: https://agilemanifesto.org (date of the application: 10.03.2024).
  64. Shvaber K., Sazerlend Dzh. Rukovodstvo po Scrum. Ischerpyvayushcheye rukovodstvo po Scrum: Pravila igry. 2020. URL: https://scrumguides.org/docs/scrumguide/v2020/2020-Scrum-Guide-Russian.pdf (data obrashcheniya: 10.03.2024).
  65. Krishna V., Basu A. Scrum+:: Is it “ScrumBut” or “ScrumAnd”. 2011 Annual IEEE India Conference / India, Hyderabad, 16–18 Dec. 2011. IEEE, 2012. P. 1–4. DOI 10.1109/INDCON.2011.6139625
  66. Ashraf S., Aftab S. IScrum: An Improved Scrum Process Model. International Journal of Modern Education and Computer Science (IJMECS). 2017. V. 9. № 8. P. 16–24. DOI 10.5815/ijmecs.2017.08.03
  67. Vriens C. Certifying for CMM Level 2 and ISO 9001 with XP@Scrum. Proceedings of Agile Development Conference, 2003. ADC 2003 / USA, Utah, Salt Lake City. 25–28 June 2003. IEEE. 2003. P. 120–124. DOI 10.1109/ADC.2003.1231461
  68. Qureshi M.R.J. Empirical Evaluation of the Proposed eXSCRUM Model: Results of a Case Study. International Journal of Computer Science Issues. 2011. V. 8 (3). № 2. P. 150–157.
  69. Ladas C. Scrumban. And Other Essays on Kanban Systems for Lean Software Development. Washington, Seattle: Modus Cooperandi. 2009. 180 p.
  70. Bashir M.S., Qureshi M.R.J. Hybrid Software Development Approach for Small to Medium Scale Projects: RUP, XP & SCRUM. Science International (Lahore). 2012. V. 24. № 4. P. 381–384.
  71. Sharma N., Wadhwa M. eXSRUP: Hybrid Software Development Model Integrating Extreme Programing, Scrum & Rational Unified Process. TELKOMNIKA. Indonesian Journal of Electrical Engineering. 2015. V. 16. № 2. P. 377–388.
  72. Larman C., Vodde B. Scaling Lean & Agile Development: Thinking and Organizational Tools for Large-Scale Scrum. New York: Addison-Wesley. 2008. 368 p.
  73. Paasivaara M., Durasiewicz S., Lassenius C. Distributed Agile Development: Using Scrum in a Large Project / 2008 IEEE International Conference on Global Software Engineering / India, Bangalore, 17-20 Aug. 2008. IEEE, 2008. P. 87–95. DOI 10.1109/ICGSE.2008.38
  74. Al Qurashi S., Qureshi M.R.J. Scrum of Scrums Solution for Large Size Teams Using Scrum Methodology. Life Science Journal. 2014.
    V. 11. № 8. P. 443–449.
  75. Scrum Team Role & Responsibilities. URL: https://www.mountaingoatsoftware.com/agile/scrum/roles/team (date of the application: 10.03.2024).
  76. The Nexus™ Guide. URL: https://www.scrum.org/resources/nexus-guide/ (date of the application: 10.03.2024).
  77. Knaster R., Leffingwell D. SAFe 4.0 Distilled: Applying the Scaled Agile Framework for Lean Software and Systems Engineering. Massachusetts, Boston: Addison-Wesley Professional. 2017. 416 p.
  78. Beck K. Extreme Programming Explained: Embrace Change. Massachusetts, Reading: Addison-Wesley. 2000. 224 p.
  79. Amber S.W. The Agile Unified Process (AUP). Ambysoft, 2001–2005. URL: https://web.archive.org/web/20190808110832/ http:/www.ambysoft.com/unifiedprocess/agileUP.html (date of the application: 10.03.2024).
  80. Kroll P. OpenUP – eto prosto: Tekhnicheskiye materialy. IBM. 03.04.2008. URL: https://web.archive.org/web/20120403075046/ http:/www.ibm.com/developerworks/ru/library/kroll/index.html?S_TACT=105AGX99&S_CMP=GR01 (data obrashcheniya: 10.03.2024).
  81. Poppendieck M., Poppendieck T. Implementing Lean Software Development: From Concept to Cash. Massachusetts, Boston: Addison-Wesley Professional. 2006. 304 p.
  82. The Kanban Method. URL: https://kanbantool.com/kanban-method (date of the application: 10.03.2024).
  83. Gene Kim. Talk Notes: John Allspaw and Paul Hammond: “10+ Deploys Per Day: Dev and Ops Cooperation at Flickr”: Velocity 2009. 2012. URL: http://realgenekim.squarespace.com/blog/2012/1/4/talk-notes-john-allspaw-and-paul-hammond-10-deploys-per-day.html (date of the application: 10.03.2024).
  84. Kim G., Behr K., Spafford G. The Phoenix Project: A Novel about IT, DevOps, and Helping Your Business Win. Oregon, Portland: IT Revolution. 2018. 432 p.
  85. Rasool G., Aftab S., Hussain S., Streitferdt D. eXRUP: A Hybrid Software Development Model for Small to Medium Scale Projects. Journal of Software Engineering and Applications. 2013. V. 6. № 9. P. 446–457. DOI 10.4236/jsea.2013.69055
  86. Fowler M. The New Methodology. Wuhan University Journal of Natural Sciences. 2001. V. 6. № 1-2. P. 12–24. DOI 10.1007/BF03160222
  87. Dillman A.E. Selecting a Software Development Life Cycle (SDLC) Methodology. A Practical Decision Framework to Maximize Business Value (The D3 Cube): Project Management Solutions White Paper Series. Pennsylvania, Havertown: PM Solutions & Park Hill Technologies. 2003. P. 1–12.
  88. Myshenkov K.S., Belyashov A.N. Metodologii, metody i modeli dlya analiza i proyektirovaniya sistem upravleniya. Vestnik MGTU «Stankin». 2013. № 3 (26). S. 76–82.
  89. Myshenkov K.S. Metodika obosnovaniya vybora CASE-sredstv dlya analiza i proyektirovaniya sistem upravleniya predpriyatiyami. Innovatsii. 2013. № 10. S. 33–43.
  90. Cockburn A. Selecting a Project's Methodology. IEEE Software. 2000. V. 17. № 4. P. 64–71. DOI 10.1109/52.854070
  91. Dingsøyr T., Nerur S., Balijepally V., Moe N.B. A Decade of Agile Methodologies: Towards Explaining Agile Software Development. The Journal of Systems and Software. 2012. V. 85. № 6. P. 1213–1221. DOI 10.1016/j.jss.2012.02.033
  92. Gur'yanov D.A., Myshenkov K.S. Klassifikatsiya metodologiy razrabotki programmnogo obespecheniya. Integrirovannyye modeli i myagkiye vychisleniya v iskusstvennom intellekte: Sb. nauch. tr. XI Mezhdunar. nauch.-prakt. konf. / IMMV-2022, Kolomna, 16-19 maya 2022. V 2-kh t. M.: RAII, 2022. T. 2. S. 279–292. EDN ITPVGR.
  93. Gurianov D.A., Myshenkov K.S., Terekhov V.I. Software Development Methodologies: Analysis and Classification // 2023 5th International Youth Conference on Radio Electronics, Electrical and Power Engineering (REEPE) / Russian Federation, Moscow, 16-18 March 2023. M.: IEEE, 2023. V. 5. P. 1-8. DOI 10.1109/REEPE57272.2023.10086852. EDN XKKKPU.
  94. Myshenkov K.S., Simonov M.F., Korostelov V.M. Obosnovaniye vybora programmnykh sredstv modelirovaniya baz dannykh. Dinamika slozhnykh sistem – XXI vek. 2020. T. 14. № 2. S. 77–83. DOI 10.18127/j19997493-202002-09. EDN XCGFXG.
  95. Goryachkin B.S., Myshenkov K.S., Kharlashkin A.I. Analiz metodov kontseptual'nogo proyektirovaniya avtomatizirovannykh informatsionnykh system. Dinamika slozhnykh sistem – XXI vek. 2020. T. 14. № 3. S. 23–34. DOI 10.18127/j19997493-202003-02. EDN DTECTE.
  96. Myshenkov K.S., Simonov M.F., Guzilov A.V. Obosnovaniye vybora programmnykh sredstv postroyeniya funktsional'nykh modeley informatsionnykh sistem. Dinamika slozhnykh sistem – XXI vek. 2020. T. 14. № 4. S. 38–45. DOI 10.18127/j19997493-202004-04. EDN UVTKYC.
Date of receipt: 18.04.2024
Approved after review: 26.04.2024
Accepted for publication: 23.05.2024