Waterfall
Model :Waterfall model is the most ideal and simple
way to develop software.
The classical waterfall model divides the life cycle of a software
into 6 phases:
1) Feasibility study : The main focus of feasibility study is to
determine whether it would be financially and technically feasible
to develop the software. This phase consists of :
i) Development of an overall
understanding of the problem
ii) Formulation of various possible
strategies for solving the problem
iii) Evaluation of the different
solution strategies
2) Requirement Analysis and Specification: This phase consists of
two distinct activities:
i) Requirement gathering and analysis:
Requirements are gathered from the customers and then the
gathered
requirements are analysed.
ii) Requirement specification: After the
requirement gathering and analysis activities are complete, the
identified
requirements are documented.
3) Design: The goal of the design phase is to transform the
requirements specified in the SRS document into a structure that is
suitable for implementation in some programming language. Design
can be procedural or object oriented.
4) Coding and unit testing: This phase is used to translate a
software design into source code and to ensure that individually
each function is working correctly. Coding phase is also called
Implementation phase. The modules coded are then tested under unit
testing.
5) Integration and system testing : Integration of individual
modules are done in a planned manner and the whole software
undergoes system testing.
6) Maintenance: Corrective, perfective and adaptive maintenance is
carried out in this phase to ensure the correct working and repair
of any module if needed.
Development phase: The phases starting from
feasibility study to integration and system testing.
Maintenance phase: It is the last phase of the life
cycle.
Cons :
1) No feedback policy
2) Difficult to accommodate change requests
3) Inefficient error corrections
4) No overlapping of phases.
Pros:
The waterfall model is ideal but hard to use for real
projects.
Iterative
Waterfall Model: The main change brought about by
the iterative waterfall model to the classical waterfall model is
in the form of providing feedback paths from every phase to its
preceding phases.
Special features and pros include:
1) Phase containment of errors: It is advantageous to detect the
errors in the same phase in which they take place, since early
detection of bugs reduces the effort and time required for
correction.
2) Phase overlap: Overlapping phases help in detection of errors in
the same phase where committed and helps in work division amongst
programmers in a smooth and pipelined way.
Cons:
1) Difficult to accommodate change requests
2) Incremental delivery not supported.
3) Error correction is expensive
4) Limited Customer interactions
5) No support for risk handling and code reuse.
V-
model : A variation of the waterfall model.
Verification and validation carried out throughout the development
life cycle.
Pros:
1) Much of the testing is carried out in parallel with the
development.
2) Quality of test cases is usually better
3) More man power utilization as test team involved from the
beginning itself.
Cons:
1) Feedback from customers yet not solved.
2) Being derived from waterfall model, it derives its weaknesses
too.
Difference between V-model and waterfall
model:
The main difference between waterfall model and V-model is that in
waterfall model, the testing activities are carried out after the
development activities are over. On the other hand in V-model,
testing activities start with the first stage itself and carried
out till the end. Waterfall model is a continuous process, while
the V-model is a simultaneous process. Also making changes in the
software in waterfall model is a difficult task, and also proves to
be a costly affair than in V-model.
Please find the attachment of the images of the 3 different types
of testing: The first one on the left top is classical water
model.
According to me, V-model will prove to be a better choice in
software development as the testing and validation methods are
incorporated from the starting phases of the life cycle, which
ensures the end product to be less erroneous. More so, nipping a
bug in the code in its bud is easier than detecting and finding the
errors and correcting them at the end phases.
Describe the characteristics of each software development model: V-model, waterfall and iterative models/frameworks and the key...
Explain what enterprise resource planning (ERP) systems. Outline several of their key characteristics. Describe in reasonable detail how a company leverages an ERP system and how its operations are improved after installing an ERP system like SAP. Explain how a supply chain management system helps an organization make its operations more efficient What is Upstream and Downstream management of the supply chain? Explain the concept of “Supply Network”, its benefits, and how technology made this concept available Explain the difference...
i need summery of this Using Apple Technology to Support Learning for Students with Sensory and Learning Disabilities The science of learning seeks to understand the relationship between brain development, social interaction, and learning by drawing on the fields of psychology, neuroscience, machine learning, and education.1 This research holds great promise for improving our teaching practices for all students and helping us develop more effective approaches to teaching children with sensory and learning disabilities. Many of the universal design features...
A new version of the operating system is being planned for installation into your department’s production environment. What sort of testing would you recommend is done before your department goes live with the new version? Identify each type of testing and describe what is tested. Explain the rationale for performing each type of testing. [ your answer goes here ] Would the amount of testing and types of testing to be done be different if you were installing a security...
First, read the article on "The Delphi Method for Graduate Research." ------ Article is posted below Include each of the following in your answer (if applicable – explain in a paragraph) Research problem: what do you want to solve using Delphi? Sample: who will participate and why? (answer in 5 -10 sentences) Round one questionnaire: include 5 hypothetical questions you would like to ask Discuss: what are possible outcomes of the findings from your study? Hint: this is the conclusion....
How can we assess whether a project is a success or a failure? This case presents two phases of a large business transformation project involving the implementation of an ERP system with the aim of creating an integrated company. The case illustrates some of the challenges associated with integration. It also presents the obstacles facing companies that undertake projects involving large information technology projects. Bombardier and Its Environment Joseph-Armand Bombardier was 15 years old when he built his first snowmobile...