StudentShare
Contact Us
Sign In / Sign Up for FREE
Search
Go to advanced search...
Free

Comparison of Software Development Life Cycle Models - Essay Example

Cite this document
Summary
The paper "Comparison of Software Development Life Cycle Models" highlights that spiral project is mainly used in the development of large, complicated and costly projects since it facilitates the project to consider the uppermost dangers and risks at a minimal cost (Maheshwari and Jain, 2012)…
Download full paper File format: .doc, available for editing
GRAB THE BEST PAPER91.3% of users find it useful
Comparison of Software Development Life Cycle Models
Read Text Preview

Extract of sample "Comparison of Software Development Life Cycle Models"

? Comparison of Software Development Life Cycle Models Introduction A software life cycle model is an representation of a configuration enforced on the development of a software invention. A number of models for software development process exist with all describing methodologies to a range of tasks or events that are carried out during the process. The models give a description of a software development course from some particular perspective as specification, design, testing or validation and evolution. In other words, these models aim to be the standard upon which all tasks needed during the software development process and maintenance of the software are defined (Johnson and Higgins, 2007). There are several life-cycle models that have been suggested including waterfall, Agile, Iterative model, prototype model, spiral model etc., each with its different strengths and weaknesses (Thayer, 2005). Moreover, differences exist the way software is developed in theory and in practice. Considering these factors, for a software development organization to make an informed decision on the most appropriate life-cycle model for the particular, organization, the staff and the software process, it is imperative to make a comparative analysis of various life-cycle models (Schach, 2011). This paper therefore, strives to compare and contrast the features and defects of waterfall, Agile, Iterative model, prototype model, and spiral model in order to show the advantages and disadvantages of each. Waterfall Model The idea behind this model is that a subsequent phase can only be initiated upon completion of the previous phases and at the end of each phase or stage, a review is carried out to determine if the project is on course or whether to discontinue or discard the project (Munassar and Govardhan, 2010). The model follows a sequential approach that flows progressively from top to bottom passing through the five stages of the SDLC which include the requirements analysis and maintenance among others. The Waterfall model has various advantages most notably being its ease of use given its popularity among software developers. Moreover, the model is very efficient when working on small projects where requirements are very well understood. The model is also very cost-effective since more time is spent to make sure that all requirements are clearly understood at the earlier stages, which ensure that there remains no need to conduct risk analysis at later stage, which would be more expensive. On the other hand, the model has various drawbacks, the greatest being that once an phase has been initiated, it is impossible to go back to previous stages. For example, is mistakes are made at the design stage, but the situation can get very complex at the implementation level. The client does not have access to the software until it is completed and therefore any changes he might want made during the process may cause problems. Another disadvantage is that the model comes with high amounts of risk and uncertainty, inflexibility and it is generally a poor model for complex and object-oriented projects (Munassar and Govardhan, 2010). Considering these features, the Waterfall model is an appropriate life-cycle model for projects that have clear and well-understood requirements, design and technical tools and infrastructure. Spiral model In the spiral life-cycle model, a lot of emphasis is put on risk analysis and decreasing project risk by disintegrating it into smaller subdivisions. In addition, the model has a greater level of involvement of the client unlike the Waterfall model since reevaluation is carried out every time a new prototype is introduced. Errors are consequently done away with during the early stages of project development only leading to proper control over time and manpower requirement for the development process (Sharma, Sharma and Mehta, 2012). Budget and time estimates can also be made in way that is more realistic because the crucial issues are discovered during the initial phases of the SDLC development process. There is also higher flexibility as the project manager according to the complex level of specific projects can determine development stages. However, the model has major drawbacks most important being the requirement for risk identification, assessment and management at the early stages which is not easy. Evaluation of the risks identified can also raise the costs, which could be higher than the costs of producing the system. The model therefore is not suitable for smaller projects which incur lower costs to develop. The model works well for large and mission-critical projects but not smaller ones and serves as the best choice for businesses with unpredictable goals but where a prototype to manage the complexities in the business procedures is needed. Agile Model The development process of Agile model is specifically customized with the aim of eliminating all kinds of waste manifesting in a product life cycle. The major goal that is threaded into the customization practices of the Agile life cycle model is to improve the quality of the developed software product (DeMarco and Boehm, 2002). The Agile life cycle model has many development approaches that lessen risk by creating software in shorter duration. A unit of time is denoted as iteration and could last between one and 1 month and encompasses an whole software project comprising five stages of SDLC which include planning, maintenance and design among others. The Agile life cycle therefore saves time and money and focuses more on the application rather than documentation of the issues. The model also involves daily meetings and discussions over the project which aids in determination of issues at an appropriate time and working on them. The model also allows for changes in requirements even at later stages of the software development unlike the Waterfall and Spiral life cycle models. However, the model has various disadvantages including lack of focus on the necessary designing and documentation. Since the model allows for change of requirements even at later phases of the development process, the project has the potential of being taken off track easily in case the client is not clear on what he intends the final outcome to be (Pressman, 2005). In summary, Agile life cycle models are therefore only suitable for software projects where reliability is not critical. In consideration of the features of this model that involve quick development, validation and constant feedback from the user, this model is the best approach for projects that are needed to be delivered in a very short time. This model also puts emphasis on the workability of the software as a measure of progress and has very little documentation as face-to-face interactions are more common compared to other life cycle models. Rapid-Prototyping Life Cycle Model Rapid-prototyping model first develops a rapid prototype that is presented to the client to experiment with and upon satisfaction from the client that the prototype indeed does meet the requirements then the developers draw the specification document. This model is not a detached, complete development method but rather one that handles segmented parts of a bigger, more traditional methodology. The model also reduces integral risks of the projects by breaking it into small parts hence making the project easy to modify during the development project. Although the prototypes are developed during the process with the aim of discarding them, there is the possibility of a prototype developed evolving to a working system. Seeing the prototype developed at an earlier stage provides the client and the end users with the opportunity to see what the complete software application would look comparable hence encouraging contribution among the client and developers. The model, unlike the waterfall model, is cost effective and increases system development speed (Maheshwari and Jain, 2012). Conclusion All the models represented here give a systematic way to accomplish a structure way of working during the software development process. There is a testing phase in each of the models albeit with very different meanings and extend. Moreover, some methods work better for specific software development processes but the most important element of each of the life-cycle models that defines the level of success is closely a particular plan was followed. Major large companies for internal institutional projects usually use the waterfall model, this is mainly because the developers are familiar with the environment and it is possible to understand clearly all the software requirements. Rapid-prototyping life cycle on the other hand is used in the development of online systems for transaction processing. Spiral project is mainly used in development of large, complicated and costly projects since it facilitates the project to consider the uppermost dangers and risks at a minimal cost (Maheshwari and Jain, 2012) . References DeMarco, T., & Boehm, B., 2002. The Agile Methods Fray. IEEE Computer, 35, 6, 90-92. Johnson, B., & Higgins, J. (2007). ITIL and the Software Lifecycle: Practice Strategy and Design Principles. Zaltbommel: Van Haren Pub. Maheshwari, S. and Jain, D.C. 2012. A Comparative Analysis of Different types of Models in Software Development Life Cycle International Journal of Advanced Research in Computer Science and Software Engineering: Vol.2, No. 5. 285-289 Munassar, N. M. A. and Govardhan, A. "Comparison Between Five Models Of SoftwareEngineering",IJCSI International Journal of Computer Science Issues, 2010, Vol.7 No 5.94-101 Pressman, R. 2005. Software Engineering: A Practitioner Approach, 5th Ed. , Mcgraw-Hill. Schach, S. R. (2011). Object-oriented and classical software engineering. Boston: McGraw-Hill Higher Education. Sharma, A.K, Sharma, S.A and I C Mehta. A Comparative Analysis of Software Process Models. 2012. IJCA Proceedings on National Conference on Recent Trends in Computing NCRTC(5):16-20. New York, USA: Foundation of Computer Science, Thayer, R. H. and Christensen, M. J. (2005) Software Engineering, Volume 1: The development Process, Third Edition. John Wiley and Sons. Read More
Cite this document
  • APA
  • MLA
  • CHICAGO
(“Compare and contrast different software life- Research Paper”, n.d.)
Retrieved from https://studentshare.org/information-technology/1485265-compare-and-contrast-different-software-life-
(Compare and Contrast Different Software Life- Research Paper)
https://studentshare.org/information-technology/1485265-compare-and-contrast-different-software-life-.
“Compare and Contrast Different Software Life- Research Paper”, n.d. https://studentshare.org/information-technology/1485265-compare-and-contrast-different-software-life-.
  • Cited: 0 times

CHECK THESE SAMPLES OF Comparison of Software Development Life Cycle Models

Development and Relevance of System Development Life Cycles

The term paper "Development and Relevance of System Development Life Cycles " states that the System development life cycle (SDLC) is the method of developing information systems through investigation, analysis, design, implementation, and maintenance.... nbsp; The System development life cycle (SDLC) is also known as Information Systems Development or Application Development.... If the management decision is to purchase commercial software rather than developing a new customized application, the system development life cycle in most parts remains the same....
11 Pages (2750 words) Term Paper

Comparison between two methods

The design should initially reflect on the foremost activity of software, and then break this activity into sub activities and decompose each sub activities until the lowest level of detail has been achieved.... SSADM is now utilized as an expressive practice to additional argument of information systems development.... SSADM is a group of conventional, methodical and certification principles for information systems development.... The theoretical procedure model, examine a development as a position of process described from the position of observation of the administration policies of the corporation....
12 Pages (3000 words) Essay

Software Development Methodology

nbsp;There are several kinds of software development methodologies, out of which the three which would be compared and used in this paper.... he model, if used in the development of the software library, would have positive results because this is the simplest kind of software development methodology out there; it runs on basic common sense and uses orthodox ways to develop the software which would be beneficial in developing the electronic library as it does not involve very complex programming or development....
5 Pages (1250 words) Coursework

Standard drive cycle recreation from general driving behaviour

In many parts of the world car manufacturers are required by law to state the fuel economy performance of their vehicles when undertaking one or more Standard Drive Cycles such as the Urban and Extra Urban test cycle definitions required in Western Europe.... This paper documents the early stages of a research project which aims to segment the Standard Drive cycle definitions into a series of operating characteristic windows which can then be searched for and automatically extracted from general driving behaviour of a car on the road, and thereafter concatenated to re-creating a real-world equivalent of the Standard Drive cycle without the need for rolling road or laboratory testing....
4 Pages (1000 words) Essay

Success of Different Traceability Tools

eywords: Requirements traceability, Successful implementation, Unsuccessful implementation, software development process, Requirement traceability matrix.... The deficiency of sufficient details relating to software progress practice is a basic source of software project breakdowns.... Undertaking a consistent history in the improvements executed during the progress cycle remains essential in providing details for development in the progress practice....
8 Pages (2000 words) Essay

Requirements Analysis and Design in Software Development

This essay "Requirements Analysis and Design in Software Development" presents a detailed analysis of the two most important stages of a traditional software development life cycle, these stages are: requirements analysis and software design.... hellip; This essay compares these two stages of the traditional software development life cycle with agile software methodologies.... However, the software development process is followed through a software development life cycle....
20 Pages (5000 words) Essay

Integration Testing and Systems Testing

It comprises the complete life cycle of building complex engineering systems using the style & methodology of an engineering manager.... Systems test engineers today are designing and testing models to solve integration and system testing problems.... hellip; The author states that Systems Engineering is associated with conceptualizing, design, development, testing & make-live of large scale & complex engineering systems for various industrial & software applications....
18 Pages (4500 words) Research Paper

Models for Improvement and Process Assessment of Software Development

This term paper "Models for Improvement and Process Assessment of software development" discusses minimal processes capability profiles that focus on each and every maturity level for CMMI.... In the world of software development, there are three components that determine product quality.... Although there is a little skepticism about people and technology, the processes have not always been accepted in the sphere of software development.... Nevertheless, organizations around the world have recognized the need of having process management and employing process models and other details to be profitable (Ferreira and Machado 2009)....
16 Pages (4000 words) Term Paper
sponsored ads
We use cookies to create the best experience for you. Keep on browsing if you are OK with that, or find out how to manage cookies.
Contact Us