Principles of System Development Life Cycle
The software development life cycle (SDLC) is a methodology used to determine the steps involved in producing software. It involves the preparation of the phases involved in developing software from scratch. It tries to optimize the available resources and time such that the product that is to be produced is made possible in the shortest time and with the lowest cost. There are several types of Software Development Life Cycle models. Some of these include the waterfall model, agile model, spiral model, etc. (Curran, 2020)
If you need assistance with writing your essay, our professional essay writing service is here to help!Essay Writing Service
The SDLC principles include the steps of planning where the whole process of developing the software is planned out according to an SDLC model, analysis of the process, and finding the best alternative of building the software (Niero & Rivera, 2018). Design where the blueprint of the software that is to be built is made including all the parts that will be included in the design building where the software is building step by step from the blueprint made in the design step. It involves the actual development and making of the software by a team of developers. Testing where the software that is developed is tested to find and fix the errors in the system and also to see if it meets the requirements of the client. Deployment, where the final product that is developed is handed over to the client to be used. The last step is maintenance where regular checkups are done on the software to see that it works properly (Pozin, 2018).
The Structured development methodology is a type of method used to design and analyze information systems. It involves the building of a structured methodology to build a durable information system. They helped design systems that could store large amounts of data and could design steps by which these systems could be accessed. In all different SDLC models, the V-model is a specific type of model where all the steps involved in the project's life cycle are executed sequentially, such that it resembles a V shape. It resembles the waterfall model, with the only difference being that the testing phase is also associated and done individually with each step. The methodology's advantage is that it makes the development process easier to understand and implement (Tomyim & Pohthong, 2016).
RAD model is based on the philosophy that the software should be developed as quickly as possible, due to which it is an incremental and iterative model. It implements the rapid development of software models. Throwaway prototyping involves building software that can be discarded or eventually made part of the original software. The advantage behind these models is that they can be built faster, while the disadvantage lies in the fact that they are prone to errors.
The agile methodology involves building a set of loosely related software that is similar by principles. It involves the least time of building and is iterative in nature. It requires minimum documentation against the traditional process and is driven by methods that are more flexible and dynamic. Extreme programming is a type of agile methodology of software development where the whole model is made in a process responsive to the customer (F. Tripp & Armstrong, 2018). Scrum is also a type of agile methodology of software development used to build sustainable products where the emphasis is on creativity and is iterative in nature (Al-Zewairi, Biltawi, Etaiwi & Shaout, 2017).
Object-oriented methodology is a type of software development method in which the emphasis is put on objects and their applications. The whole model is designed using an object-oriented approach (Sandberg & Crnkovic, 2017). Rational Unified approach is a type of object-oriented methodology. The basic advantage behind this methodology is that it can help reuse software and thus cut down the project's cost.
Al-Zewairi, M., Biltawi, M., Etaiwi, W., & Shaout, A. (2017). Agile software development methodologies: survey of surveys. Journal of Computer and Communications, 5(05), 74.
Curran, M. A. (1994). Life-cycle assessment: inventory guidelines and principles. CRC Press.
F. Tripp, J., & Armstrong, D. J. (2018). Agile methodologies: organizational adoption motives, tailoring, and performance. Journal of Computer Information Systems, 58(2), 170-179.
Niero, M., & Rivera, X. C. S. (2018). The role of life cycle sustainability assessment in the implementation of circular economy principles in organizations. Procedia CIRP, 69, 793-798.
Pozin, B. Α. (2018). The principles of life cycle supporting system for mission-critical systems. РАН, 30(1).
Sandberg, A. B., & Crnkovic, I. (2017, May). Meeting industry-academia research collaboration challenges with agile methodologies. In 2017 IEEE/ACM 39th International Conference on Software Engineering: Software Engineering in Practice Track (ICSE-SEIP) (pp. 73-82). IEEE.
Tomyim, J., & Pohthong, A. (2016, August). Requirements change management based on object-oriented software engineering with unified modeling language. In 2016 7th IEEE International Conference on Software Engineering and Service Science (ICSESS) (pp. 7-10). IEEE.
Cite This Work
To export a reference to this article please select a referencing stye below:
Related ServicesView all
DMCA / Removal Request
If you are the original writer of this essay and no longer wish to have your work published on UKEssays.com then please: