Waterfall and Spiral Models in Software Development: Comparison and Risk Management, Assignments of Software Development

An overview of the Waterfall and Spiral models in software development, highlighting their differences, advantages, and disadvantages. The text also discusses the V-model as an extension of the Waterfall model and the importance of risk management in the Spiral model. It includes a case study of Tune Source Company and its implementation of the Spiral model to manage risks in software development.

Typology: Assignments

2021/2022

Uploaded on 09/29/2022

hazover
hazover 🇻🇳

4.5

(14)

19 documents

1 / 16

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
ASSIGNMENT 01 FRONT SHEET
Qualification
BTEC Level 5 HND Diploma in Computing
Unit number and title
Unit 09: Software Development Life Cycle
Submission date
Date Received 1st submission
Re-submission Date
Date Received 2nd submission
Student Name
Student ID
Class
Assessor name
Student declaration
I certify that the assignment submission is entirely my own work and I fully understand the consequences of plagiarism. I understand that making a
false declaration is a form of malpractice.
Student’s signature
Grading grid
P1
P2
P3
P4
M1
M2
D1
D2
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff

Partial preview of the text

Download Waterfall and Spiral Models in Software Development: Comparison and Risk Management and more Assignments Software Development in PDF only on Docsity!

ASSIGNMENT 01 FRONT SHEET

Qualification BTEC Level 5 HND Diploma in Computing Unit number and title Unit 09: Software Development Life Cycle Submission date Date Received 1st submission Re-submission Date Date Received 2nd submission Student Name Student ID Class Assessor name Student declaration I certify that the assignment submission is entirely my own work and I fully understand the consequences of plagiarism. I understand that making a false declaration is a form of malpractice. Student’s signature Grading grid P1 P2 P3 P4 M1 M2 D1 D

❒ Summative Feedback: ❒ Resubmission Feedback: Grade: Assessor Signature: Date: Internal Verifier’s Comments: Signature & Date:

LO1. The description of different software development life

cycles (P).

I. Description two iterative and two sequential software life

cycle models (P1).

1. Waterfall model.

 Description: This is the first software development model that was employed. This model relates to the phases of software development in a sequential manner. It is very simple to understand and use. The previous stage's output becomes the next stage's input. Only once the preceding step has been completed is the next stage started. Do not go back to the previous stage to process requests when you wish to make a change.  Waterfall Model Design: The Waterfall Approach was the first SDLC Model to be widely utilized in Software Engineering to ensure project success. The entire software development process is separated into several phases in "The Waterfall" technique. Typically, the output of one phase serves as the input for the following phase in this Waterfall approach. The different phases of the Waterfall Model are represented in the following figure.

Figure 1. Waterfall model. The sequential phases in Waterfall model are: Requirement gathering: Requirements gathering and analysis are documented in the requirements specification document during this phase. System Analysis: Analyze and design software systems, determine the overall system architecture of the software. Coding: The system is developed by unit and integrated in the next phase. Each Unit developed and tested by the dev is called a Unit Test. Testing: Install the software and run it through its paces. The primary goal of this phase is to check for and rectify any flaws that are discovered so that the software functions appropriately and in accordance with the requirements specification document. Implementation: Deploy the system in a customer environment and bring it to market. Operations and Maintenance: Maintain the system when there are any changes from customers and users.  Application:

Figure 2. V-model.  Verification Phases - There are several Verification phases in the V-Model: Business Requirement Analysis: The product requirements are grasped from the customer's perspective during the initial phase of the development cycle. This phase entails extensive communication with the consumer in order to fully comprehend his expectations and requirements. System Design: It is time to design the entire system once you have the clear and thorough product requirements. The system design will include a thorough grasp of the hardware and communication configuration for the product in development. Architectural Design: During this phase, architectural specifications are understood and designed. The system is further divided into modules, each of which performs a separate purpose. High Level Design is another term for this (HLD). Module Design: This phase specifies the exact internal design for all system modules, often known as Low Level Design (LLD). It's critical that the design works with the other modules in the system architecture as well as external systems.

Coding Phase: In the Coding phase, the actual coding of the system modules designed in the Design phase is completed. Before the final build is checked into the repository, the code is subjected to several code reviews and is optimized for maximum performance.  Validation Phases - There are several Validation Phases in the V-Model: Unit Testing: During the validation phase, unit tests created in the module design phase are run against the code. Unit testing is code-level testing that helps in the detection of errors early in the development process, however it cannot detect all defects. Integration Testing: Integration testing is associated with the architectural design phase.Integration tests are used to ensure that internal modules within the system can coexist and communicate with one another. System Testing: The phase of system design is inextricably linked to the phase of system testing. System tests examine the overall system's functionality as well as the system's connection with external systems. Acceptance Testing: Acceptance testing is associated with the business requirement analysis phase and involves testing the product in user environment.  Application: Requirements are clearly defined. Determine the stable product. The technology is unchanged and well understood by the project team. There are no ambiguous or unspecified requirements. Short project.  Advantages and Disadvantages: Advantages Disadvantages This is a highly disciplined pattern and the stages are completed at the same time. Works well for small projects, when the requirements are very well understood. Simple and easy to understand and easy to use, Difficult to manage and control risks, high risk. Not a good pattern for complex and object- oriented projects. Poor model for long and ongoing projects.

Alternate evaluation- Risk assessment and mitigation: assess risk and take actions to reduce risk. Product development- Product development: Selecting the right model for system development. Next phase planning- Planning: evaluate the project and plan for the next phase.  Application: The Spiral Model is commonly employed in the software industry because it is in line with any product's natural development process, — in other words learning with maturity while posing the least amount of risk to both the client and the development business. This model is often used for large applications and systems built in small phases or in segments.  Advantages and Disadvantages: Advantages Disadvantages Good for large-scale software systems. Easy to control the adventure at each level of evolution. Evaluation is more realistic as a workflow, because important problems are detected earlier. Development can be divided into smaller parts and the risky parts can be developed earlier which helps in better risk management. Managers need to have good skills to manage projects and assess risks in a timely manner. The cost is high and it takes a long time to complete the project. Complex and not suitable for small and low-risk projects. Frequent change requests lead to infinite iterations. Not widely used.

4. Agile Model

 Description: Agile is a flexible software development method to get products into the hands of users as quickly as possible and is seen as an improvement over older models such as the "waterfall" model or the "waterfall" model. "CMMI". Agile software development is a set of iterative and incremental development methodologies in which requirements and solutions are developed through collaborative alignment between autonomous and cross-functional teams. This is based on the

iterative and incremental model. The requirements and solutions develop based on the combination of functions. In Agile, tasks are broken down into small time frames to deliver specific features to the final release. Here is a graphical illustration of the Agile Model: Figure 4. Agile Model.  Agile model Design: The Agile thought process started early in software development and started becoming popular with time due to its flexibility and adaptability. The Agile Manifesto principles are listed below: Individuals and interactions: Self-organization and motivation, as well as interactions like co- location and pair programming, are critical in Agile development. Working software: Instead of relying solely on documentation, demo working software is regarded the greatest way to communicate with consumers and understand their needs. Customer collaboration: Because needs cannot be fully acquired at the start of the project owing to a variety of variables, ongoing customer involvement is critical to obtaining accurate product specifications. Responding to change: Agile development emphasizes rapid change reaction and continual improvement.  Application:

Figure 5. Five steps of Risk Management Process. Step 1: Identify the Risk Identifying the hazards that the business is exposed to in its operating environment is the first stage in the risk management process. There are many different types of risks:  Legal risks.  Environmental risks.  Market risks.  Regulatory risks etc. It is critical to recognize as many of these risk variables as possible. These risks are manually recorded in a manual environment. If the company uses a risk management solution, all of this data is entered immediately into the system. This strategy has the advantage of making these risks accessible to all stakeholders in the company who have access to the system. Rather than being locked away in a report that must be requested via email, anyone interested in seeing which risks have been identified can view the information in the risk management system. Step 2: Analyze the Risk It is necessary to examine a risk once it has been recognized. The risk's scope must be determined. It's also crucial to comprehend the relationship between risk and other internal components. It is crucial to establish the severity and gravity of the risk by looking at how many business operations

it affects. There are dangers that, if realized, may bring the entire firm to a halt, while others will merely cause minor hassles in the analysis. This analysis must be done manually in a manual risk management setting. One of the most critical basic steps in implementing a risk management solution is mapping risks to various documents, rules, procedures, and business processes. Step 3: Evaluate the Risk or Risk Assessment Risks must be prioritized and ranked. Depending on the severity of the risk, most risk management solutions include several risk categories. Risks that can result in catastrophic loss are rated the highest, while risks that may cause some inconvenience are rated the lowest. Ranking risks is crucial because it allows the organization to get a holistic view of the risk exposure across the board. There are two types of risk assessments: Qualitative Risk Assessment and Quantitative Risk Assessment. Step 4: Treat the Risk Every risks must be minimized or eliminated to the greatest extent practicable. This is accomplished by contacting specialists in the field to which the risk pertains. In a manual system, this means calling each and every stakeholder and then scheduling up meetings for everyone to talk about and debate the concerns. Upper management can also keep a close check on the remedies proposed and the system's progress. Rather from everyone having to contact each other for updates, everyone can obtain them straight from the risk management solution. Step 5: Monitor and Review the Risk Not all risks can be completely removed; certain risks will always exist. Market and environmental risks are two examples of risks that must be constantly managed. Manual systems rely on dedicated personnel to keep track of things. These specialists must ensure that all risk factors are closely monitored. The risk management system in a digital environment monitors the organization's whole risk framework. If any aspect or danger changes, it is immediately accessible to everyone. Computers are also far superior than humans at continuously monitoring dangers. Your company's continuation can also be ensured by monitoring risks.

2. Explanation how risk is managed in the Spiral life cycle model for

developing Tune Source Company.

2.1 Requirement of the Tune Source company.

Project Sponsor: Carly Edwards, Assistant Vice President, Marketing. Business Need: This project has been initiated to increase sales by creating the capability of selling digital music downloads to customers through kiosks in our stores, and over the Internet using our

2.2 Risk with Spiral model for Tune Source company.

The risks of Tune Source includes:  The company's concept has been in existence for quite some time, but it still lacks a few key elements that would help it develop more safely and securely, namely, no wealthy professionals. Experienced and expert field experts can quickly assess the hazards that arise on a regular basis in the project.  Because project time and cost are not assured, tune-up companies cannot expect all past revenue predictions. The snail approach also runs the risk of failing to satisfy the company's deadlines and budget constraints.  Furthermore, the company's concept is too simplistic to meet all of the software's requirements for downloading music in order to employ the Spiral Model.  We must address all of the needs when employing the Spiral Model and Spiral Pattern. Additionally, when there are many highly experienced professionals and experts in the field of expertise to examine all forms of project risks, the Spiral Model will be more secure and secure. Not only that, but all risk analysts had to begin the project ahead of schedule. When projecting revenue for the company, Tune Source is also quite likely to confront a variety of high risks. In summary, the company's software requirements are either unfinished or too simple to use this Spiral Model.