Software Development Models: Waterfall, V-Model, Spiral, and Prototyping, Study Guides, Projects, Research of Software Development

Software Development Life Cycle - Assignment 1

Typology: Study Guides, Projects, Research

2022/2023

Uploaded on 08/30/2023

thanhcoolz
thanhcoolz 🇻🇳

2 documents

1 / 26

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
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a

Partial preview of the text

Download Software Development Models: Waterfall, V-Model, Spiral, and Prototyping and more Study Guides, Projects, Research 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:

  • Task 1 – SDLC model........................................................................................................................................................................
    • model, specify whether it is most, moderately or least suitable.......................................................................................................................................................... I. Describe the following SDLC models: waterfall, v-model, scrum and spiral model. Discuss the suitability of each of the SDLC models for the project. For each
        1. Waterfall model............................................................................................................................................................................................................................
        1. V-Model (V-Shaped Model)..........................................................................................................................................................................................................
        1. Spiral model................................................................................................................................................................................................................................
        1. Prototyping model.....................................................................................................................................................................................................................
        1. Discuss the suitability of each of the SDLC models for the project. For each model, specify whether it is most, moderately or least suitable.........................
    • II. Identify some risks and discuss an approach to manage them.......................................................................................................................................................
        1. What is Risk Management process?...........................................................................................................................................................................................
        1. Risk Management Matrix to assess and manage risks of Tune Source project...........................................................................................................................
  • Task 2 – Feasibility study................................................................................................................................................................
    • I. Discuss the purpose of conducting a feasibility study for the project..............................................................................................................................................
        1. What Is a Feasibility Study?........................................................................................................................................................................................................
        1. Types of Feasibility Study............................................................................................................................................................................................................
        1. The purpose of conducting a feasibility study for the project.....................................................................................................................................................
    • alternative technical solutions using the alternative matrix............................................................................................................................................................... II. Discuss how the three feasibility criteria (technical, economic, organizational) are applied to the project. Discuss whether the project is feasible. Discuss
        1. How the three feasibility criteria (technical, economic, organizational) are applied to the project. Discuss whether the project is feasible
        1. Discuss alternative technical solutions using the alternative matrix...........................................................................................................................................
  • References.........................................................................................................................................................................................
  • Figure 1 Waterfall model (Munassar & A. Govardhan, 2010)................................................................................................................................................................... Table of Figures
  • Figure 2 V-model (Munassar & A. Govardhan, 2010)...............................................................................................................................................................................
  • Figure 3 Spiral model (Munassar & A. Govardhan, 2010).......................................................................................................................................................................
  • Figure 4 Prototyping Model Phases (Martin, 2023)................................................................................................................................................................................
  • Table 1 Advantages and Disadvantages of the waterfall model............................................................................................................................................................... List of Tables
  • Table 2 Advantages and Disadvantages of V-model...............................................................................................................................................................................
  • Table 3 Advantage and Disadvantage of Spiral model............................................................................................................................................................................
  • Table 4 Advantage and Disadvantage of Prototyping model..................................................................................................................................................................
  • Table 5 Analyze project criteria..............................................................................................................................................................................................................
  • Table 6 List of software risk items in Spiral model..................................................................................................................................................................................
  • Table 7 List of software risk items maybe face in Tune Source project..................................................................................................................................................
  • Table 8 Alternative technical solutions using the alternative matrix......................................................................................................................................................

Task 1 – SDLC model I. Describe the following SDLC models: waterfall, v-model, scrum and spiral model. Discuss the suitability of each of the SDLC models for the project. For each model, specify whether it is most, moderately or least suitable.

1. Waterfall model 1.1. Overview and definition of waterfall model The traditional approach to software engineering is called the waterfall model. This model, which is among the earliest models, is frequently utilized in government initiatives and by numerous significant businesses. This strategy ensures that design faults are prevented before they manifest by emphasizing early preparation. Also, because of its extensive documentation and preparation, it is a good choice for projects where quality control is a top priority. The following figure illustrates the various non-overlapping stages that make up the pure waterfall lifecycle. The architectural design, detailed design, coding, testing, and maintenance phases of the model follow the definition of system requirements and software requirements. Numerous more lifecycle models start from the waterfall model. (Munassar & A. Govardhan, 2010) The following list details the steps for using the waterfall model:

Figure 1 Waterfall model (Munassar & A. Govardhan, 2010) 1.2. Advantages and Disadvantages of the waterfall model Advantage Disadvantage Easy to understand and implement. Idealized, doesn’t match reality well. Widely used and known Doesn’t reflect iterative nature of exploratory development. Reinforces good habits: define-before- design, design- before-code. Unrealistic to expect accurate requirements so early in project. Identifies deliverables and milestones. Software is delivered late in project, delays discovery of

serious errors. Reinforces good coding habits to define before implementing design and then code Difficult to integrate risk management. Works well on mature products and weak teams. Significant administrative overhead, costly for small teams and projects Table 1 Advantages and Disadvantages of the waterfall model

2. V-Model (V-Shaped Model) 2.1. Overview and definition of V-model A path of sequential process execution is the V-Shaped life cycle. Before moving on to the next phase, the previous phase must be finished. Compared to the waterfall methodology, this model places a greater emphasis on testing. Prior to any coding being done and throughout each of the steps before implementation, the testing methods are created early in the life cycle. The life cycle model starts with requirements, same like the waterfall model. A system test plan is made before development begins. The functionality provided in the requirements gathering is the main focus of the test plan. The high-level design phase focuses on system architecture and design. An integration test plan is created in this phase in order to test the pieces of the software systems ability to work together. However, the low-level design phase lies where the actual software components are designed, and unit tests are created in this phase as well. The implementation phase is, again, where all coding takes place. Once coding is complete, the path of execution continues up the right side of the V where the test plans developed earlier are now put to use (Munassar & A. Govardhan, 2010)

Higher chance of success over the waterfall model due to the early development of test plans during the life cycle. Software is developed during the implementation phase, so no early prototypes of the software are produced. Works well for small projects where requirements are easily understood. This Model does not provide a clear path for problems found during testing phases Table 2 Advantages and Disadvantages of V-model

3. Spiral model 3.1. Overview and definition of spiral model The spiral model is similar to the incremental model, with more emphases placed on risk analysis. The spiral model has four phases: Planning, Risk Analysis, Engineering and Evaluation. A software project repeatedly passes through these phases in iterations (called Spirals in this model). The baseline spiral, starting in the planning phase, requirements are gathered and risk is assessed. Each subsequent spiral builds on the baseline spiral. Requirements are gathered during the planning phase. In the risk analysis phase, a process is undertaken to identify risk and alternate solutions. A prototype is produced at the end of the risk analysis phase. Software is produced in the engineering phase, along with testing at the end of the phase. The evaluation phase allows the customer to evaluate the output of the project to date before the project continues to the next spiral. (Munassar & A. Govardhan, 2010)

Figure 3 Spiral model (Munassar & A. Govardhan, 2010) In the spiral model, the angular component represents progress, and the radius of the spiral represents cost. Spiral model sectors  Objective setting: Specific objectives for the phase are identified.  Risk assessment and reduction: Risks are assessed and activities are put in place to reduce the key risks.  Development and validation: A development model for the system is chosen which can be any of the general models.  Planning: The project is reviewed and the next phase of the spiral is planned

Figure 4 Prototyping Model Phases (Martin, 2023) Prototyping Model has following six SDLC phases as follow: Step 1: Requirements gathering and analysis A prototyping model starts with requirement analysis. In this phase, the requirements of the system are defined in detail. During the process, the users of the system are interviewed to know what is their expectation from the system. Step 2: Quick design The second phase is a preliminary design or a quick design. In this stage, a simple design of the system is created. However, it is not a complete design. It gives a brief idea of the system to the user. The quick design helps in developing the prototype. Step 3: Build a Prototype In this phase, an actual prototype is designed based on the information gathered from quick design. It is a small working model of the required system. Step 4: Initial user evaluation In this stage, the proposed system is presented to the client for an initial evaluation. It helps to find out the strength and weakness of the working model. Comment and suggestion are collected from the customer and provided to the developer. Step 5: Refining prototype If the user is not happy with the current prototype, you need to refine the prototype according to the user’s feedback and suggestions.

This phase will not over until all the requirements specified by the user are met. Once the user is satisfied with the developed prototype, a final system is developed based on the approved final prototype. Step 6: Implement Product and Maintain Once the final system is developed based on the final prototype, it is thoroughly tested and deployed to production. The system undergoes routine maintenance for minimizing downtime and prevent large-scale failures. Types of Prototyping Models:  Rapid Throwaway prototypes  Evolutionary prototype  Incremental prototype  Extreme prototype 4.2. Advantage and Disadvantage of Prototyping model Advantage Disadvantage Users are actively involved in development. Therefore, errors can be detected in the initial stage of the software development process. Prototyping is a slow and time taking process. Missing functionality can be identified, which helps to reduce the risk of failure as Prototyping is also considered as a risk reduction activity. The cost of developing a prototype is a total waste as the prototype is ultimately thrown away. Helps team member to communicate effectively Customer satisfaction exists because the customer can feel the product at a very early stage. Prototyping may encourage excessive change requests. There will be hardly any chance of software rejection. Sometimes customers may not be willing to participate in the iteration cycle for the longer time duration.

Waterfall V-model Prototyping Spiral Unclear requirements Poor Poor Good Excellent Unfamiliar technology Poor Poor Excellent Excellent Complex Good Good Excellent Excellent Reliable project Good Excellent Poor Excellent Short time schedule Poor Poor Poor Poor Schedule visibility Poor Poor Good Excellent Table 5 The suitability of each of the SDLC models for the project According to the information given, the project of the Tune Source company has an initial investment capital and a planned annual growth of about $2 million; as a result, this is a large-scale business that serves a diverse customer base. The business must carefully plan its organization and development in order to avoid mistakes. Old and often used in smaller projects, the waterfall methodology has a relatively high failure probability when used for complex projects. Furthermore, this paradigm won't work for the project because user needs are always changing. The V-model is unsuitable for our purpose due to additional problems. This paradigm cannot accommodate dynamic changes in requirements because every demand is known in advance. Unfortunately, the V-model has a high rate of project failure, lacks activities for risk analysis, and makes risk management difficult. The following factors make the prototype model inappropriate for this project. The prototyping model must have numerous stages, which increases management complexity and makes it unsuitable for short projects. Moreover, this model may cause user confusion: The worst-case situation for any prototype is for customers to mistake it for the finished product, making it unreliable. Customers mistaking a prototype for the actual product is the worst-case scenario for any prototype, rendering it unreliable. Considering the criteria, the Spiral model is ultimately the best model for this project. Large projects frequently use the spiral concept. It helps development teams to create highly personalized products and incorporate early customer feedback, making it meet all the project's needs

II. Identify some risks and discuss an approach to manage them

1. What is Risk Management process? 1.1. Definition The process of detecting risk, evaluating risk, and taking action to decrease risk to an acceptable level is known as risk management. A successful IT security program must include an efficient risk management procedure. The risk management process should be viewed as an essential management function of the company rather than solely as a technical activity carried out by the IT experts who run and administer the IT system. Protecting the organization and its capacity to carry out its objectives should be the main focus of an organization's risk management procedure. When vulnerability is used, risk is the overall negative effect, taking into account both the likelihood and the consequences of an occurrence. (Sabale & Dr. A.R Dani, 2012) 1.2. Three processes of Risk ManagementRisk assessment: The first step in the risk management methodology is risk assessment. Risk assessment is a tool used by organizations to assess the possible threat's scope and the danger it poses. Risk is a function of the possibility that a given threat source will exploit a specific weakness and the subsequent effects of that negative occurrence on the business. The degree of impact that a possible risk occurrence may have on the accomplishment of organizational goals is known as a consequence. A scale of 1 to 5 will be used to rate consequences. Probability is the possibility that a possible risk event will occur and have the predicted effects. In the risk survey, probability will be evaluated on a 5-level rating scale.  Risk evaluation: Following the completion of the risk assessment is the risk evaluation. Comparing an estimated risk to predetermined risk criteria in order to assess the risk's importance is the process of risk evaluation.  Risk mitigation: Risk mitigation refers to a methodical decrease in the degree of exposure to a risk and/or the probability that it will occur. It is also known as risk mitigation. To calculate the level of reduced risk vs the implementation cost, a risk

Table 6 List of software risk items in Spiral model The hazards that could arise from the Tune Source project's implementation are listed below based on the risks indicated above. Risk priority Risk Category Frequent Severe Mitigation plan 1 Creating incorrect software features Programmer Low High Organizational analysis; mission analysis; operational concept formulation; user surveys; prototyping; user manuals for early adopters 2 Missing data Programmer High High Setting up a disaster recovery strategy, backing up data, employing firewalls and antivirus software 3 Due to unforeseen issues, there are not enough developers Staff Low High Outside job postings for programmers must ensure both attitude and qualifications. 4 Budgeting blunder Accountant Low Low Analyze requirements and hazards thoroughly to assess costs, then design expenses to ensure they stay under budget. Table 7 List of software risk items maybe face in Tune Source project Task 2 – Feasibility study I. Discuss the purpose of conducting a feasibility study for the project

1. What Is a Feasibility Study? A feasibility study evaluates a project's or system's practicality. As part of a feasibility study, the objective and rational analysis of a potential business or venture is conducted to determine its strengths and weaknesses, potential opportunities and threats, resources

required to carry out, and ultimate success prospects. Two criteria should be considered when judging feasibility: the required cost and expected value. A feasibility study is a comprehensive evaluation of a proposed project that evaluates all factors critical to its success in order to assess its likelihood of success. Business success can be defined primarily in terms of ROI, which is the number of profits that will be generated by the project. In a feasibility study, a proposed plan or project is evaluated for its practicality. As part of a feasibility study, a project or venture is evaluated for its viability in order to determine whether it will be successful. (Simplilearn, 2023)

2. Types of Feasibility StudyTechnical Feasibility: This assessment focuses on the technical resources available to the organization. It helps organizations determine whether the technical resources meet capacity and whether the technical team is capable of converting the ideas into working systems. Technical feasibility also involves the evaluation of the hardware, software, and other technical requirements of the proposed system. As an exaggerated example, an organization wouldn’t want to try to put Star Trek’s transporters in their building—currently, this project is not technically feasible.  Economic Feasibility: This assessment typically involves a cost/ benefits analysis of the project, helping organizations determine the viability, cost, and benefits associated with a project before financial resources are allocated. It also serves as an independent project assessment and enhances project credibility—helping decision-makers determine the positive economic benefits to the organization that the proposed project will provide.  Legal Feasibility: This assessment investigates whether any aspect of the proposed project conflicts with legal requirements like zoning laws, data protection acts or social media laws. Let’s say an organization wants to construct a new office building in a specific location. A feasibility study might reveal the organization’s ideal location isn’t zoned for that type of business. That organization has just saved considerable time and effort by learning that their project was not feasible right from the beginning.  Operational Feasibility: This assessment involves undertaking a study to analyze and determine whether—and how well—the organization’s needs can be met by completing the project. Operational feasibility studies also examine how a project plan satisfies the requirements identified in the requirements analysis phase of system development.