1. Science
  2. Publications
  3. Information Processing Systems
  4. 2(157)'2019
  5. Comparison of models of life cycle of software with the purpose of identifying the most effective

Comparison of models of life cycle of software with the purpose of identifying the most effective

V. Golian, O. Kravchenko
Annotations languages:


Description: The article substantiates the relevance of the study of models of software life cycles. The analysis of such software life cycles as a waterfall model, V-model, incremental model, RAD model, iterative model, Agile model, and spiral model was carried out. And also the architecture of the software system and the database scheme for the software product, which is to collect information about the life-cycle model with which you can compare them, is designed. The paper considers comparisons of seven models through the development of two different categories of software products by two development teams with the same staffing structure. To compare selected life cycle software models, you should select the following comparison criteria that will best show the advantages and disadvantages of each. The benchmarking benchmarks must demonstrate which software lifecycle models are best used in some situations and in which opportunities they have. Here is a list of selected criteria for comparison of life cycle software models: - time of implementation; - the cost of realization; - category of software. The time of implementation of a software product can simultaneously affect its cost and relevance to the market of software products. A quick entry into the market will allow the software product to earn much more in the first time. We can say that the implementation time is inversely proportional to the product. The cost of implementation affects the quality of the software product, the quality of service and the quality of future support. The composition of the developer team depends on the capabilities of the software product capital. We can say that the cost of implementation is inversely proportional to the time of implementation of the software product. To develop a software product, with emphasis on the speed and quality of the program and documentation, compare all the given models to two characteristics: time and cost of development. The development trend is practically the same for all models. If development time is the most important criterion for the success of a software product, then you should choose a software life cycle model in the order of Agile, iterative, waterfall, incremental, RAD, V, spiral models. Note that Agile is expected better than the iterative model, and the V-model is unknowingly worse than the waterfall. If the cost of development is the most important criterion for the success of a software product, then choose a software life cycle model in the order of Agile, iterative, waterfall, incremental, V, spiral model, RAD. Only the RAD model has a disproportionately high cost of development. To develop a software product with an emphasis on the look and feel of the interface and convenient use, compare all of the models given by two characteristics: time and cost of development. The development trend is practically the same for all models. If development time is the critical success factor for a software product, then you should choose a software life cycle model in the same order as RAD, iterative, Agile, iterative, incremental, waterfall, V, spiral models. Note that RAD for the second category is the best model, and for the first result is reverse. If the cost of development is the most important criterion for the success of a software product, then choose a software life cycle model in the order of RAD, Agile, iterative, waterfall, incremental, V, spiral. The result for the two indicators is identical. In the general case, for category 1 only models such as Agile, iterative model and waterfall should be considered. For Category 2, only RAD, Agile, iterative, and waterfall should be considered. At the beginning of the project, when choosing a software lifecycle model, it is not always possible to determine which type of software to implement. In this case, one must look at the stability of the software life cycle model and the dependence on the software product categories. Studies have shown that the order of choosing a software life cycle model will be as follows: Agile model, iterative model, waterfall model, RAD, V-model, incremental model and spiral model. It is worth noting that this procedure reduces the risk of losing time and increasing development costs.


Keywords: model, life cycle, software, software product

References

1. Dobryak, P. (2016), “Modely zhyznennogo cykla” [The lifecycle models], Symvol-Plus, Saint Petersburg, 132 p.
2. Kosyakov, A. (2017), “Systemnaya inzheneryiya. Pryncypi y praktyka” [System engineering. Principles and practice], DMK-Press, Saint Petersburg, 624 p.
3. Cohen, S., Dori, D. and de Haan Cohen, U. (2010), A Software System Development Life Cycle Model for Improved Stakeholders Communication and Collaboration, International Journal of Computers, Communications & Control, Vol. V, No. 1, pp. 20-41. https://doi.org/10.15837/ijccc.2010.1.2462.
4. Ruparelia, N.B. (2010), Software Development Lifecycle Models, ACM SIGSOFT Software Engineering Notes, Vol. 35, No. 3, pp. 8-13. https://doi.org/10.1145/1764810.1764814.
5. Bhuvaneswar, T. and Prabaharan, S. (2013), A Survey on Software Development Life Cycle Models, International Journal of Computer Science and Mobile Computing, Vol. 2, Issue 5, pp. 262-267.
6. Rastogi, V. (2015), Software Development Life Cycle Models Comparison, Consequences, International Journal of Computer Science and Information Technologies, Vol. 6, No. 1, pp. 168.
7. Bassil, Y. (2012), A Simulation Model for the Waterfall Software Development Life Cycle, International Journal of Engineering & Technology (iJET), Vol. 2, No. 5, рp. 16.
8. Barjtya, S., Sharma, A. and Rani, S. (2017), A detailed study of Software Development Life Cycle (SDLC) Models, International Journal Of Engineering And Computer Science, Vol. 6, Issue 7, pp. 22097.
9. Rana, P. and Bilandi, N. (2012), A Genetic Based Intelligent Approach to Estimate Software Release Using Agile, International Journal of Advanced Research in Computer Science and Software Engineering, Vol. 2, Issue 8, рp. 311.
10. Lehman, Tobin J. and Sharma, A. (2011), Software development as a service: agile experiences, SRII Global Conference (SRII), Annual. IEEE, рр. 749-758. https://doi.org/10.1109/srii.2011.82.
11. Ahmed, A., Ahmad, S., Ehsan, N., Mirza, E. and Sarwar, S.Z. (2010), Agile software development: Impact on productivity and quality, Management of Innovation and Technology (ICMIT), IEEE International Conference on. IEEE, pp. 287-291. https://doi.org/10.1109/icmit.2010.5492703.
12. Mnkandla, E. (2009), About Software Engineering Frameworks and Methodologies, IEEE AFRICON, pp. 1-5. https://doi.org/10.1109/afrcon.2009.5308117.

Reference:
 Holian, V.V. and Kravchenko, O.K. (2019), “Porivniannia modelei zhyttievykh tsykliv prohramnoho zabezpechennia z metoiu vyiavlennia naiefektyvnishoho” [Comparison of models of life cycle of software with the purpose of identifying the most effective], Information Processing Systems, Vol. 2(157), pp. 63-70. https://doi.org/10.30748/soi.2019.157.08.