Preview

Software Development Process and Waterfall Model

Good Essays
Open Document
Open Document
357 Words
Grammar
Grammar
Plagiarism
Plagiarism
Writing
Writing
Score
Score
Software Development Process and Waterfall Model
The waterfall model is a sequential design process, often used in software development processes, in which progress is seen as flowing steadily downwards (like a waterfall) through the phases of Conception, Initiation, Analysis, Design,Construction, Testing and Maintenance.
The waterfall development model originates in the manufacturing and constructionindustries; highly structured physical environments in which after-the-fact changes are prohibitively costly, if not impossible. Since no formal software developmentmethodologies existed at the time, this hardware-oriented model was simply adapted for software development.
The first formal description of the waterfall model is often cited as a 1970 article byWinston W. Royce,[1] though Royce did not use the term "waterfall" in this article. Royce presented this model as an example of a flawed, non-working model (Royce 1970). This, in fact, is how the term is generally used in writing about software development—to describe a critical view of a commonly used software practice.[2]
Waterfall Model Application
Every software developed is different and requires a suitable SDLC approach to be followed based on the internal and external factors. Some situations where the use of Waterfall model is most appropriate are:
Requirements are very well documented, clear and fixed.
Product definition is stable.
Technology is understood and is not dynamic.
There are no ambiguous requirements.
Ample resources with required expertise are available to support the product.
The project is short.
Pros
Cons
Simple and easy to understand and use
Easy to manage due to the rigidity of the model . each phase has specific deliverables and a review process.
Phases are processed and completed one at a time.
Works well for smaller projects where requirements are very well understood.
Clearly defined stages.
Well understood milestones.
Easy to arrange tasks.
Process and results are well documented.
No working software is

You May Also Find These Documents Helpful

  • Good Essays

    The positive aspects of the Waterfall process include being simple to use. Each stage has entrance and exit criteria in order to move on to the next stage. This allows you to fully know when each stage is complete. According to Waterfall Model (2012), "The project requires the fulfillment of one phase, before proceeding to the next. Therefore if there is a fault in this software it will be detected during one of the initial phases and will be sealed off for correction.” (Advantages of the Waterfall Model). The waterfall model has been around for many years. Part of the success of this model is that it is easy to understand and people are comfortable using it. This is one reason it has survived as long as it has. The waterfall process is easy to manage since each phase has specific criteria and review process. This process allows for resource allocation which means people can be matched to tasks by analyzing their strengths. This process works well with small projects…

    • 1239 Words
    • 5 Pages
    Good Essays
  • Good Essays

    Bsa 385 Week 2

    • 791 Words
    • 4 Pages

    The term SDLC has been tied to a certain type of development style as Waterfall. Waterfall SDLC is the concept where each phase of the development process is completed before the next begins. There has been much debate on who was the originator of the Waterfall SDLC process, most reference Dr. Winston Royce. Dr. Royce described a development methodology where each phase is completed before the next begins but never used the term Waterfall in its description. In his description of what is known now as Waterfall, Dr. Royce did not recommend this as a viable SDLC (Font, 2010). There are five phases that need to be completed in sequence during the Waterfall process which are:…

    • 791 Words
    • 4 Pages
    Good Essays
  • Better Essays

    The Waterfall model is credited to Winston W. Royce in an article he published in 1970, although he did not refer to it as "Waterfall" in the commentary (Royce 1970). The Waterfall model is comprised of series of steps which include: gathering requirements; analysis; design; coding; testing and debugging; and acceptance. It is designed to be a simple one way process where one step must be completed and fully reviewed before the next can be undertaken. In this model the phases do not overlap and movement is from one phase to the following, with no opportunity to reverse the movement back to the previous stage.…

    • 965 Words
    • 4 Pages
    Better Essays
  • Good Essays

    Software development is the full-cycle process of developing a software product. The software development cycle, assuming the software project management follows the waterfall model, includes: requirement gathering, system analysis, designing, coding, testing, and implementation. A software development team must commit to creating and maintaining (i.e. bug fixes) the source code to remain relevant and progressive against competition.…

    • 665 Words
    • 3 Pages
    Good Essays
  • Satisfactory Essays

    “The classic waterfall model views the optimal process for software development as a linear or sequential series of phases that take developers from initial high-level requirements through system testing and product shipment.” 2 Microsoft isn’t the only one either. “Due to the success of the Waterfall model, many software development firms and industrial manufacturers have adopted it as their prime development framework and SDLC to plan, build, and maintain their products.” ¬3 Though it is one of the first software project development methods, the waterfall method remains one of the…

    • 321 Words
    • 2 Pages
    Satisfactory Essays
  • Better Essays

    There are two kinds of SDLCs approaches, one is predictive and another one is adaptive. A predictive approach which is organised and planned well in advance and new information can be developed according to the plan. While adaptive approach is when the exact requirement or user’s need are not known in advance. In this approach, some requirement of the system has be to determined after the initial development work. Generally projects have both the approaches. Predictive approaches are more traditional and were invented in 1970. Most of the adaptive approaches are created during 1990.…

    • 947 Words
    • 4 Pages
    Better Essays
  • Good Essays

    The development of this system can be done in the traditional waterfall method or in a newer agile methodology. It is important to develop the system within the next year, as there will be an audit by the government and this system will have to meet the functionality and standards that the government sets in order for the company to maintain their certification. In the past, the company has used the waterfall methodology and at the end of development there have been significant lags in the expected delivery time and the actual delivery time. Many times there is more development needed after the end of the project because the customer have felt that they did not get what they asked for. The Director has been given a choice of using the traditional waterfall methodology or go with the new agile methodology which allows for a more flexible iteration in development and has been proven to meet customer needs in the end of development more often than waterfall.…

    • 893 Words
    • 4 Pages
    Good Essays
  • Best Essays

    Delta currently uses a planned software development methodology that is a variant or the waterfall approach. I will explain this methodology in the following section and compare it to agile methodologies when we consider the migration to agile software development.…

    • 3598 Words
    • 15 Pages
    Best Essays
  • Powerful Essays

    Agile Methodology

    • 2132 Words
    • 9 Pages

    Agile methodology is an approach to the project management which help to respond to the unpredictability of building software through incremental, iterative work cadences, known as sprints. This methodology was developed to deal with situation where the waterfall model fails. The biggest drawback of waterfall model is that it assumes that every requirement of the project can be identified before any design or coding occurs. This may always be applicable for the development of a automobile on an assembly line, in which each piece is added in sequential phases. However it may or may not be applicable for software development. For example, for a BAU (Business as Usual) projects where the software is already in use for a long time, waterfall model is the best method to implement any changes requests because amount of uncertainly is very less compared to developing a new product. However for developing brand new software, waterfall model is not an ideal choice as the amount of uncertainty in terms of requirement and user quality expectation. It might be the case that end product is not exactly what user has expected due to mismatch of requirement understanding between user and developer. It might also be the case that a team might have built the software it was asked to build, but, in the time it took to create, business realities have changed so dramatically that the product is irrelevant. In that scenario, a company has spent time and money to create software that no one wants.…

    • 2132 Words
    • 9 Pages
    Powerful Essays
  • Powerful Essays

    Agile development methodologies are emerging in the software industry. In this chapter, we provide an introduction to agile development methodologies and an overview of four specific methodologies: • Extreme Programming • Crystal Methods • Scrum • Feature Driven Development Plan-driven methods work best when developers can determine the requirements in advance . . . and when the requirements remain relatively stable, with change rates on the order of one percent per month. -- Barry Boehm [11] Plan-driven methods are those that begin with the solicitation and documentation of a set of requirements that is as complete as possible. Based on these requirements, one can then formulate a plan of development. Usually, the more complete the requirements, the better the plan. Some examples of plan-driven methods are various waterfall approaches and others such as the Personal Software Process (PSP) [28] and the Rational Unified Process (RUP) [30, 31]. An underlying assumption in plan-driven processes is that the requirements are relatively static. On the other hand, iterative methods, such as spiralmodel based approaches [12, 14], evolutionary processes described in [5, 22, 32, 33], and recently agile approaches [45] count on change and recognize that the only constant is change. The question is only of the degree and the impact of the change. Beginning in the mid-1990’s, practitioners began finding the rate of change in software requirements increasing well beyond the capabilities of classical development methodologies [11, 27]. The software industry, software technology, and customers expectations were moving very quickly and the customers were becoming increasingly less able to fully state their needs up front. As a result, agile methodologies and practices emerged as an explicit attempt to more formally embrace higher rates of requirements change. . In this chapter, we provide background information on agile principles, and…

    • 8016 Words
    • 33 Pages
    Powerful Essays
  • Good Essays

    In agile approach, better object oriented processes are followed so the product is ready to be deployed on production well within timelines but in waterfall model, there is only one major release which is a major challenge.…

    • 878 Words
    • 4 Pages
    Good Essays
  • Good Essays

    In the information technology industry, SDLC plays a big role. No software development process will ever be completed efficiently and also meeting the budget client requirements without SDLC. This is because SDLC involves a structural framework which describes the phases involved in information system development. SDLC in management is an important factor which needs to be taken into consideration if you want a software development project to be resounding success.…

    • 808 Words
    • 4 Pages
    Good Essays
  • Good Essays

    Software Development includes all the activities starting with an idea for the software to the maintenance of the software. This Software Development includes all the phases from planning to acceptance. There are several models in Software Development Life Cycle, but understanding the difference between these models will make me easier to decide, which is the right model to be used for developing the project. There are three differences between Waterfall model and Spiral model.…

    • 782 Words
    • 4 Pages
    Good Essays
  • Satisfactory Essays

    mid term

    • 280 Words
    • 1 Page

    1. Provide three examples of Software projects that would be amenable to the waterfall model. Be specific.…

    • 280 Words
    • 1 Page
    Satisfactory Essays
  • Powerful Essays

    s agile methods become more popular, some view iterative, evolutionary, and incremental software development—a cornerstone of these methods—as the “modern” replacement of the waterfall model, but its practiced and published roots go back decades. Of course, many software-engineering students are aware of this, yet surprisingly, some commercial and government organizations still are not. This description of projects and individual contributions provides compelling evidence of iterative and incremental development’s (IID’s) long existence. Many examples come from the 1970s and 1980s—the most active but least known part of IID’s history. We are mindful that the idea of IID came independently from countless unnamed projects and the contributions of thousands and that this list is merely representative. We do not mean this article to diminish the unsung importance of other IID contributors. We chose a chronology of IID projects and approaches rather than a deep comparative analysis. The methods varied in such aspects as iteration length and the use of time boxing. Some attempted significant up-front specification work followed by incremental time-boxed development, while others were more classically evolutionary and feedback driven. Despite their differences, however, all the approaches had a common theme—to avoid a single-pass sequential, document-driven, gated-step approach. Finally, a note about our terminology: Although some prefer to reserve the phrase “iterative devel-…

    • 7030 Words
    • 29 Pages
    Powerful Essays