Software Development Life Cycles: Waterfall Model and Risk Management in Spiral Model, Assignments of Computer Science

The application of the Waterfall Model and the Spiral Model in software development projects, with a focus on risk management. The Waterfall Model's advantages and disadvantages are explored, followed by an explanation of risk management in the Spiral Model. The importance of risk assessment is also highlighted.

Typology: Assignments

2021/2022

Uploaded on 07/04/2022

nguyen-huu-hieu-fgw-dn
nguyen-huu-hieu-fgw-dn 🇻🇳

4.8

(17)

15 documents

1 / 31

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
UNIT 9: SOFTWARE DEVELOPMENT LIFE CYCLES
ASSIGNMENT 1
Assessor name:
Learner's name:
ID:
Class:
Subject code:
Assignment due: Assignment submitted:
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f

Partial preview of the text

Download Software Development Life Cycles: Waterfall Model and Risk Management in Spiral Model and more Assignments Computer Science in PDF only on Docsity!

UNIT 9: SOFTWARE DEVELOPMENT LIFE CYCLES

ASSIGNMENT 1

Assessor name:

Learner's name:

ID:

Class:

Subject code:

Assignment due: Assignment submitted:

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 HIEU Grading grid P1 P2 P3 P4 M1 M2 D1 D

Assignment Brief 01 (RQF)

Higher National Certificate/Diploma in Business

Student Name/ID Number: NGUYEN GIA HUY / GCS Unit Number and Title: Unit 09: Software Development Life Cycle Academic Year: 2022 Unit Assessor: Assignment Title: Plan a software development life cycle Issue Date: 07/12/ Submission Date: Internal Verifier Name: Date: Submission Format: Format: ● The submission is in the form of 1 document. ● You must use the Times font with 12pt size, turn on page numbering; set line spacing to 1.3 and margins to be as follows: left = 1.25cm, right = 1cm, top = 1cm, bottom = 1cm. Citation and references must follow the Harvard referencing style. Submission: ● Students are compulsory to submit the assignment in due date and in a way requested by the Tutor. ● The form of submission will be a soft copy posted on http://cms.greenwich.edu.vn/. ● Remember to convert the word file into PDF file before the submission on CMS. Note: ● The individual Assignment must be your own work, and not copied by or from another student. ● If you use ideas, quotes or data (such as diagrams) from books, journals or other sources, you must reference your sources, using the Harvard style. ● Make sure that you understand and follow the guidelines to avoid plagiarism. Failure to comply this requirement will result in a failed assignment. Unit Learning Outcomes:

LO1 Describe different software development lifecycles. LO2 Explain the importance of a feasibility study. Assignment Brief and Guidance: Assignment scenario Tune Source is a company headquartered in southern California. Tune Source is the brainchild of three entrepreneurs with ties to the music industry: John Margolis, Megan Taylor, and Phil Cooper. Originally, John and Phil partnered to open a number of brick-and-mortar stores in southern California specialising in hard-to-find and classic jazz, rock, country, and folk recordings. Megan soon was invited to join the partnership because of her contacts and knowledge of classical music. Tune Source quickly became known as the place to go to find rare audio recordings. Annual sales last year were $40 million with annual growth at about 3%–5% per year. Tune Source currently has a website that enables customers to search for and purchase CDs. This site was initially developed by an Internet consulting firm and is hosted by a prominent local Internet Service Provider (ISP) in Los Angeles. The IT department at Tune Source has become experienced with Internet technology as it has worked with the ISP to maintain the site. System Request 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 website. Business Requirements: Using the Web or in-store kiosks, customers will be able to search for and purchase digital music downloads. The specific functionality that the system should have includes the following: ● Search for music in our digital music archive. ● Listen to music samples. ● Purchase individual downloads at a fixed fee per download. ● Establish a customer subscription account permitting unlimited downloads for a monthly fee. ● Purchase music download gift cards. Business Value: We expect that Tune Source will increase sales by enabling existing customers to purchase specific digital music tracks and by reaching new customers who are interested in our unique archive of rare and hard-to-find music. We expect to gain a new revenue stream from customer subscriptions to our download services. We expect some increase in cross-selling, as customers who have downloaded a track or two of a CD decide to purchase the entire CD in a store or through our website. We also expect a new revenue stream from the sale of music download gift cards. Conservative estimates of tangible value to the company include the following: ● $757,500 in sales from individual music downloads. ● $950,000 in sales from customer subscriptions. ● $205,000 in additional in-store or website CD sales. ● $153,000 in sales from music download gift cards.

  1. Explain the components of a feasibility report. Discussion economic feasibility study on Tune Source project (NPV, Cashflow, Break-Even Point) ● Word limit 350 – 500 words. Discussion organisational feasibility study on Tune Source project ● Word limit 350 – 500 words.
  2. Assess the impact of each feasibility criterion on a software investigation. Discussion and represent as feasibility alternatives matrix for Tune Source project ● Word limit: 500 – 700 words.

Learning Outcomes and Assessment Criteria (Assignment 01): Learning Outcome Pass Merit Distinction LO1 Describe different software development lifecycles P1 Describe two iterative and two sequential software lifecycle models. P2 Explain how risk is managed in the Spiral lifecycle model. M1 Describe, with an example, why a particular lifecycle model is selected for a development environment. D1 Assess the merits of applying the Waterfall lifecycle model to a large software development project. LO2 Explain the importance of a feasibility study P3 Explain the purpose of a feasibility report. P4 Describe how technical solutions can be compared. M2 Discuss the components of a feasibility report. D2 Assess the impact of different feasibility criteria on a software investigation.

 During this phase, detailed requirements of the software system to be developed are gathered from the client Requirement Gathering stage Different phases Activities performed in each stage

Assignment 1

P1. Describe two iterative and two sequential software lifecycle models

1. What is the software development life cycle (SDLC)? The SDLC, or Software Development Life Cycle, is a process for generating high-quality software at the lowest possible cost in the shortest period of time. SDLC stands for Software Development Life Cycle. It is a well-structured flow of stages that helps a company to quickly generate high-quality software that has been completely tested and is ready for production. The SDLC has six phases, according to the introduction. The most prevalent SDLC models are waterfall, spiral, and Agile. Waterfall Model The Waterfall Paradigm is a software development approach that divides the process into pre-defined phases. Before moving on to the following phase, each one must be finished without any gaps. During the SDLC phase, each step is designed to complete a certain task. It was first introduced by Winston Royce in

Different Phases of Waterfall Model in Software Engineering

 Plan the programming language, for example Java, PHP, .net Design Stage or databases like Oracle, MySQL, etc.  Or other high-level technical details of the project Test Stage  In this phase, you test the software to verify that it is built as per the specifications given by the client. Maintenance stage  Once your system is ready to use, you may later require to change the code as per customer request Advantages of Waterfall Model  Before the next phase of development, each phase must be completed  Suited for smaller projects where requirements are well defined  They should perform quality assurance test (Verification and Validation) before completing each stage  Elaborate documentation is done at every phase of the software's development cycle  The project is entirely dependent on a project team with minimum client intervention  Any changes in software are made during the process of the development Disadvantages of Waterfall Model  The error can be fixed only during the phase  It is not desirable for a complex project where requirement changes frequently  The testing period comes quite late in the developmental process  Documentation occupies much time for developers and testers Deployment stage  Deploy the application in the respective environment  Built Stage After the design stage, it is the built stage, which is nothing but coding the software Different phases Activities performed in each stage

Integration Testing: The high-level design phase is linked to integration testing. After introducing new features or changes, integration testing verifies that all system parts work together.  System Testing: System testing is linked to the requirements and design phases of the system. It includes software, hardware, and the system's connection with other external systems.  User Acceptance Testing: The business and operational analysis phase include user acceptance testing. Customers are the principal performers of this testing based on test cases and scenarios that cover business needs to confirm that they have provided the correct software according to the specifications. Prototyping model The prototyping model has the following six SDLC phases as follow: Step 1: Gathering and analysing requirements Requirement analysis is the first step in prototyping. The system's requirements are defined in depth at this phase. Throughout the process, users of the system are interviewed to learn what they anticipate from it. Step 2: Create a quick design Sometimes known as a fast design, a preliminary design is the second step. A basic system design is built at this stage. It is, however, not a complete design. It offers the user a quick overview of the system. The prototype development is aided by rapid design. Step 3: Create a Model The information acquired during rapid design is used to create an actual prototype in this step. It is a scaled-down version of the needed system. Step 4: Initial user assessment

The proposed system is submitted to the client for an initial review at this stage. It aids in determining the working model's strengths and weaknesses. Customer feedback and suggestions are gathered and forwarded to the developer. Step 5: Make the prototype better If the user is dissatisfied with the present prototype, you must modify it in response to their feedback and ideas. This phase will continue until all of the user's criteria have been fulfilled. A final system is produced based on the authorised final prototype if the user is pleased with the developed prototype. Step 6: Install and maintain the product After being designed based on the final prototype, the final system is thoroughly tested and put into production. Routine maintenance is performed on the system to prevent large-scale breakdowns and minimise downtime. Scrum Scrum is a methodology for project management. It describes responsibilities, procedures, tools, and processes to ensure the timely delivery of an efficient and effective project as part of the agile strategy. According to a poll, roughly 70% of software teams use scrum or a hybrid of scrum and agile. Accountability,teamwork, and iterative progress toward a well-defined business goal are all emphasized in the Scrum Software Development Methodology. Advantages:

 Because the prototype is built in small chunks, cost estimating is simple.  Risk management benefits from continuous or repeated development.  Spiral development is quick and methodically adds features. Disadvantages:  There is a chance you will not make it on time or within budget.  Spiral development is most effective for large projects, although it does need risk assessment competence.  The spiral model protocol must be followed appropriately for smooth functioning.  Documentation is more extensive since it includes intermediate stages.  Spiral software development is not recommended for small projects since it may be expensive.

2. How the SDLC Works? SDLC reduces the cost of software development while both enhancing quality and speeding up the development process. SDLC accomplishes these seemingly disparate objectives by adhering to a strategy that avoids the expected hazards of software development projects. This strategy begins with an assessment of current systems for flaws. It then goes on to specify the new system's needs. It then goes through analysis, planning, design, development, testing, and deployment to produce the software. SLDC may reduce duplicate rework and after-the-fact corrections by predicting costly mistakes such as forgetting to consult the end-user or customer for input. It is also vital to note that the testing phase is given much attention. Because the SDLC is a cyclical technique, you must verify code quality at each stage. Many organisations put little emphasis on testing, despite the fact that a higher focus on testing might save them a lot of rework, time, and money. Let's look at the various stages of the Software Development Life Cycle now.

3. What are the phases of SDLC? The SDLC process is broken down into the following SDLC steps:  Phase 1: Analysis  Phase 2: Design  Phase 3: Develop  Phase 4: Testing  Phase 5: Installation/Deployment  Phase 6: Maintenance All of these Software Development Life Cycle Phases have been described in this lesson. Phase 1: Requirement collection and analysis The first stage of the SDLC is the requirement. It is led by senior team members, with input from all stakeholders and industry domain specialists. At this point, the quality assurance needs and associated hazards are planned. This stage provides a fuller understanding of the project's overall scope and the expected difficulties, opportunities, and instructions that prompted it. Requirements Teams must collect particular and exact requirements throughout the gathering step— this aids businesses in determining the timeframe required to complete the system's work. Phase 2: Design During the third phase, the system and software design documents are created according to the requirement specification document—this aids in the definition of the system's general architecture. This phase of the model's creation is used as input for the following. High-Level Design (HLD):  Each module is given a short description and a name.  A description of each module's capabilities.  Module dependencies and their interface relationships  The main elements of database tables are highlighted.  Diagrams of the entire architecture, as well as technical information

Following are the three actions that occur once the system is installed and clients begin to use it.  Bug fixing - certain cases are not tested at all, resulting in issues being reported.  Upgrade - Changing the software version of the program to a newer version.  Enhancement - Adding additional functionality to the program that already exists. The primary goal of this SDLC phase is to make sure that demands are still being addressed and that the system is still performing according to the first phase's specifications.

4. Benefits of the SDLC When the SDLC is done correctly, the maximum management control and documentation level may be achieved. Developers are aware of what they should construct and why they should do so. All parties agree on a defined objective and a plan to achieve it. The prices and resources needed are well understood by everybody. Several issues can make an SDLC implementation more a stumbling block to development than a helpful tool. Failure to consider the demands of customers, all users, and all stakeholders from the beginning can lead to a misunderstanding of the system requirements. SDLC's advantages are only realised if the plan is strictly implemented. 5. What is the suitable model for the project, and explain why? Because the TUNE SOURCE project is so large, the initial investment is significant, and the estimated return on investment is roughly $2 million each year. As a result, this is a massive undertaking. To prevent making mistakes, paying close attention to the details is necessary. As a result, we will choose the Spiral model for this project, as it meets nearly all of our clients' requirements. Once we have used the model, explain why:

  • Requirements do not change frequently.
  • The application is not complicated or time-consuming.
  • The project has a set deadline.
  • There is a clear requirement.
  • The setting is safe to be in.
  • The technology and tools used are both static and non-dynamic.
  • Training and resources are available. 6. Discuss the merits of applying the waterfall model to a large software development project Because the software development process involves relatively little customer involvement and the product can only be demoed once it is complete, if an issue arises after the software is completed, correcting those errors is prohibitively high since we must alter everything from documentation to reasoning. Another risk is that we will probably get lost when constructing this product if the software development documentation isn't done effectively. When requirement have a medium to high risk of change, applying this paradigm lacks project relevance. If we use this strategy for complex, object- oriented applications, the chances of failure are pretty significant. **P2. Explain how risk is managed in the Spiral lifecycle model
  1. What is Risk Management process?** In projects, a risk management process is a systematic set of actions carried out by decisionmakers under order to keep the project on track in specific circumstances. Throughout the project's life cycle, decision-makers must identify, analyse, and evaluate risks and then use their organisational structure and administrative processes to reduce those risks in favor of the project. The intricacy of the project and the maturity of the organisation are viewed as key factors that may impact project success. 2. Why is risk assessment important? Risk assessment are critical because they are a key component of an occupational health and safety management strategy. They aid in the following:  Raising awareness of potential dangers and risks.  Determine who might be in danger (e.g., employees, cleaners, visitors, contractors, the public, etc.).  Determine if the specific danger necessitates the implementation of a control plan.  Determine if current control measures are adequate or whether further measures are required.  Prevent injuries or diseases, mainly when done early in the design or planning process.  Make a list of the most critical risks and mitigation strategies.  If relevant, follow all legal requirements. 3. What is the goal of risk assessment? The goals of the risk assessment process is to analyse risks and then remove or reduce their risk by implementing control measures as needed. As a result, your workplace is now safer and healthier. The objective is to attempt to respond to the following questions: