A life cycle for creating an uncomplicated software
Abstract
Modern software development life cycle models tend to be less formal and less rigid then Waterfall based models of the past. However, creating software without following
even the most basic of plans often results in poorly structured, faulty, and hard to maintain software. This paper proposes a practical development model for the purpose for software development. Following some sort of plan produces better code than no plan at all. This model has been shown to be successful even with inexperienced developers.
Downloads
References
Alliance, S. (2015, July). The 2015 state of scrum, scrum-alliance-state-of-scrum-2015.pdf. Retrieved from https://www.scrumalliance.org
Banker, R. D., Datar, S. M., Kemerer, C. F., & Zweig, D. (1993, November). Software complexity and maintenance costs. Commun. ACM, 36(11), 81–94. Retrieved from http://doi.acm.org.ezproxy.stthomas.edu/10.1145/163359.163375 doi:10.1145/163359.163375
Basili, V. R., & Selby, R. W. (1987). Comparing the effectiveness of software testing strategies. IEEE transactions on software engineering (12), 1278–1296.
Beck, K., Beedle, M., Van Bennekum, A., Cockburn, A., Cunningham, W., Fowler, M., . . . others (2001). Manifesto for agile software development.
Cohn, M. (2018). Scrum certification via certified scrummaster training. Retrieved from https://www.mountaingoatsoftware.com/training/courses/certified-scrummaster
Dorin, M. A. (2018). Coding for inspections and reviews. New York, NY, USA: Association for Computing Machinery.
Foote, B., & Yoder, J. (1997). Big ball of mud. Pattern languages of program design, 4, 654–692.
Henrikkniberg. (2012, Oct). Agile product ownership in a nutshell. YouTube. Retrieved from https://www.youtube.com/watch?v=502ILHjX9EE
Hurme, J., et al. (2011). The benefits of using uml-modeling tools in evaluation and testing of etm software.
Jeremiah, J. (2018, May). Agile vs. waterfall: Survey shows agile is now the norm. TechBeacon. Retrieved from https://techbeacon.com/survey-agile-new-norm
Larman, C. (2012). Applying uml and patterns: An introduction to object oriented analysis and design and interative development. Pearson Education India.
Larman, C., Kruchten, P., & Bittner, K. (2001). How to fail with the rational unified process: Seven steps to pain and suffering. Valtech Technologies & Rational Software.
Nerur, S., Mahapatra, R., & Mangalaraj, G. (2005). Challenges of migrating to agile methodologies. Communications of the ACM, 48(5), 72–78.
Nugroho, A., & Chaudron, M. R. (2009). Evaluating the impact of uml modeling on software quality: An industrial case study. In International conference on model driven engineering languages and systems (pp. 181–195).
Rosenbloom, A. (2018). A simple mvc framework for web development courses.In Proceedings of the 23rd western canadian conference on computing education (pp. 13:1–13:3).
New York, NY, USA: ACM. Retrieved from http://doi.acm.org.ezproxy.stthomas.edu/10.1145/3209635.3209637 doi: 10.1145/3209635.3209637
Schach, S. R. (2007). Object-oriented and classical software engineering (Vol. 6). McGraw-Hill New York.
Shah, S. M. A., Morisio, M., & Torchiano, M. (2012). The impact of process maturity on defect density. In Proceedings of the acm-ieee international symposium on empirical software engineering and measurement (pp. 315–318). New York, NY, USA: ACM. Retrieved from http://doi.acm.org.ezproxy.stthomas.edu/10.1145/2372251.2372308 doi: 10.1145/2372251.2372308
Singhto, W., & Phakdee, N. (2016, Dec). Adopting a combination of scrum and waterfall methodologies in developing tailor-made saas products for thai service and manufacturing smes. In 2016 international computer science and engineering conference (icsec) (p. 1-6). doi: 10.1109/ICSEC.2016.7859882
Sturtevant, D., MacCormack, A., Magee, C., & Baldwin, C. (2013). Technical debt in large systems: Understanding the cost of software complexity. Unpublished thesis, MIT.
Williams, L. (2012). What agile teams think of agile principles. Communications of the ACM, 55(4), 71–76.
Zhang, X., Hu, T., Dai, H., & Li, X. (2010). Software development methodologies, trends, and implications. Information Technology Journal, 9(8), 1747–1753.