Spiral Model: An Iterative Approach to Software Development, Assignments of Design

The Spiral Model is an iterative software development process that focuses on risk assessment and combines elements of prototyping and waterfall methods. It consists of four phases: planning, risk analysis, engineering, and evaluation. an overview of the Spiral Model, its characteristics, advantages, and disadvantages compared to other methodologies, such as Agile. It also discusses the Agile methodology, Extreme Programming, and Scrum, as well as verification and validation.

Typology: Assignments

2019/2020

Uploaded on 08/23/2020

salim.s
salim.s 🇹🇿

1 document

1 / 5

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
SPIRAL MODEL
life cycle sometimes is iterative;the phases are repeated as required until an acceptable
system is found
The spiral model have the following characteristics.
Is iterative
Focus on risk assessment Risks are assessed and activities are put in place to
reduce key risks
Combines features of prototyping and waterfall
Used for large, complex project
It has four phase: planning,risk analysis, engineering and evaluation
PLANNING PHASE: Requirements are collected during the planning phase.
RISK ANALYSIS: on this phase it involves process that identify risk and find
alternate solution.if a risk if found then the solution is suggested and implemented.
ENGINEERING: In this phase software is developed, along with testing at the end
of the phase. Hence in this phase the development and testing is done
EVALUATION: This phase allows the customer to evaluate the output of the project
to date before the project continues to the next spiral.
Advantage of spiral mode
1. It can be used in large projects
2. Estimates (budgets, schedule etc) are more realistic as work progresses
3. Possible to cope with changes that software development generally entails
4. Engineers can start working on the project earlier
Disadvantages
1. Rely on risk-assessment expertise
Qn what are different between spiral and other methodologies
SPIRAL MODE OTHER METHODOLOGIES
Works in evolutionary method Works in sequential method eg waterfall
Low amount of risks High amount of risks
pf3
pf4
pf5

Partial preview of the text

Download Spiral Model: An Iterative Approach to Software Development and more Assignments Design in PDF only on Docsity!

SPIRAL MODEL

life cycle sometimes is iterative;the phases are repeated as required until an acceptable system is found The spiral model have the following characteristics.  Is iterative  Focus on risk assessment Risks are assessed and activities are put in place to reduce key risks  Combines features of prototyping and waterfall  Used for large, complex project It has four phase: planning,risk analysis, engineering and evaluation

PLANNING PHASE: Requirements are collected during the planning phase. RISK ANALYSIS: on this phase it involves process that identify risk and find alternate solution.if a risk if found then the solution is suggested and implemented. ENGINEERING: In this phase software is developed , along with testing at the end of the phase. Hence in this phase the development and testing is done EVALUATION: This phase allows the customer to evaluate the output of the project to date before the project continues to the next spiral. Advantage of spiral mode

  1. It can be used in large projects
  2. Estimates (budgets, schedule etc) are more realistic as work progresses
  3. Possible to cope with changes that software development generally entails
  4. Engineers can start working on the project earlier Disadvantages
  5. Rely on risk-assessment expertise

Qn what are different between spiral and other methodologies SPIRAL MODE OTHER METHODOLOGIES Works in evolutionary method Works in sequential method eg waterfall Low amount of risks High amount of risks

More flexibility in terms of new requirement and change in midle of process

Its is not flexible eg waterfall modal

More customer interaction customer can interact with development team at any iteration

Fewer customer interaction eg waterfall modal

Complex modal compared to other Not complex e.g. waterfall modal Time management is very complex which make delay in delivering

Doesn't take more time e.g. waterfall modal

28 What is agile methodology

AGILE

Agile means being able to move quickly and easily. Agile software development is an approach to software development under which requirements and solutions evolve through the collaborative effort of self-organizing and cross-functional teams and their customers/ end-users

characterized by short iterative cycles and extensive testing; active involvement of users for establishing, prioritizing, and verifying requirements; and a focus on small teams of talented, experienced programmers, Deliver product or services in the way the customer wants and Simple design.

There are Example of Existing Agile Methods which are Extreme Programming (“XP”), Agile Unified Process, Scrum.

PROBLEM WITH AGILE DEVELOPMENT 1.It can be difficult to keep the interest of customers who are involved in the process. 2.Team members may be unsuited to the intense involvement that characterizes agile methods. 3.Prioritizing changes can be difficult where there are multiple stakeholders

Here’s an example of how Scrum works: sleyman meets with a customer to discuss her company’s needs. Those needs are the product backlog. sleyman chooses the most important tasks to work on in the next two weeks. His team meets in a daily scrum to target work for the day ahead and address roadblocks. At the end of the sprint, Bill delivers the work, reviews the backlog, and sets the goal for the next sprint. The cycle repeats until the software is complete.

VERIFICATION AND VALIDATION

is intended to show that a system conforms to its specification and meets the requirements of the system customer.

What are difference between verification and validation

Verification

 The verifying process includes checking documents, design, code, and program.

 It does not involve executing the code  team does verification and make sure that the software is as per the requirement in the SRS document

while

Validation

 Validation is a dynamic mechanism of Software testing and validates the actual product.  It always involve the execution of code  It checks whether the software meets the requirements and expectations of a customer  With the involvement of testing team validation is executed on software code.

The criteria in software testing are determined based on the test strategy. Generally, the criteria are determined for the four test levels of Software Testing:

 Unit Testing,  Integration Testing,  System Testing,  Acceptance Testing

  1. UNIT TEST  Focus on very small functional units.  The simplest way to check smallest unit for isolation Generally performed by developers
  2. INTEGRATION TESTING  This is next step to performed on developers side  Provide mechanism to test interaction inter-operation and communication between different modules of software
  3. SYSTEM TESTING  Test all the integrated modules as collectives system  Combines multiple features into end-to-end scenarios.
  4. ACCEPTANCE TESTING  Generally final level of testing where software product is examined as user perspective by testers.  The results of this step is subjective and takes a little to find exact issue. Advantages of waterfall model 1.Easy to understand and implement. 2.Widely used and known (in theory!) 3.Reinforces good habits: define-before- design, design-before-code 4.Identifies deliverables and milestones 5.Document driven. 6.Works well on mature products and weak teams

References https://www.tutorialspoint.com/index.htm https://www.geeksforgeeks.org/software-engineering-spiral-model/