Docsity
Docsity

Prepare for your exams
Prepare for your exams

Study with the several resources on Docsity


Earn points to download
Earn points to download

Earn points by helping other students or get them with a premium plan


Guidelines and tips
Guidelines and tips

Software Development Life Cycle (SDLC) Models: A Comprehensive Guide, Assignments of Information Technology

A comprehensive overview of various software development life cycle (sdlc) models, including waterfall, v-model, prototyping, scrum, and spiral. It delves into the advantages and disadvantages of each model, highlighting their suitability for different project types and complexities. The document also emphasizes the importance of risk management in the spiral model and explores the feasibility of different technical solutions for a hypothetical project. It concludes with a comparison of the models based on their strengths and weaknesses, offering valuable insights for software development professionals.

Typology: Assignments

2023/2024

Uploaded on 10/24/2024

shanthi_48
shanthi_48 🇺🇸

4.8

(36)

901 documents

1 / 7

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
Evaluating SDLC Models for
Software Development Projects
Software Development Life Cycle (SDLC)
Software Development Life Cycle (SDLC) is the process of determining how
an information system can support business needs, designing the system,
building it, and delivering it to users. It is a framework that has a set of
tasks to be performed at each stage in the software development process. It
is a process of giving a complete idea of the development, design and
maintenance of a software project by ensuring that all functionality along
with user requirements, goals and final objectives are resolved together.
With SDLC, the quality of the software project and the overall software
development process is enhanced.
Iterative and Sequential Software Lifecycle Models
Waterfall Model
The Waterfall Model is a sequential model that divides software
development into pre-defined phases. Each phase must be completed before
the next phase can begin with no overlap between the phases. Each phase is
designed for performing specific activity during the SDLC phase. It was
introduced in 1970 by Winston Royce.
Advantages: - 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 - Project is completely dependent
on project team with minimum client intervention - Any changes in software
is made during the process of the development
Disadvantages: - Error can be fixed only during the phase - It is not
desirable for complex project where requirement changes frequently -
Testing period comes quite late in the developmental process -
Documentation occupies a lot of time of developers and testers - Clients
valuable feedback cannot be included with ongoing development phase -
Small changes or errors that arise in the completed software may cause a lot
of problems
V-Model
The V-Model is a highly disciplined SDLC model in which there is a testing
phase parallel to each development phase. The V-Model is an extension of
the waterfall model in which testing is done on each stage parallel with
pf3
pf4
pf5

Partial preview of the text

Download Software Development Life Cycle (SDLC) Models: A Comprehensive Guide and more Assignments Information Technology in PDF only on Docsity!

Evaluating SDLC Models for

Software Development Projects

Software Development Life Cycle (SDLC)

Software Development Life Cycle (SDLC) is the process of determining how an information system can support business needs, designing the system, building it, and delivering it to users. It is a framework that has a set of tasks to be performed at each stage in the software development process. It is a process of giving a complete idea of the development, design and maintenance of a software project by ensuring that all functionality along with user requirements, goals and final objectives are resolved together. With SDLC, the quality of the software project and the overall software development process is enhanced.

Iterative and Sequential Software Lifecycle Models

Waterfall Model

The Waterfall Model is a sequential model that divides software development into pre-defined phases. Each phase must be completed before the next phase can begin with no overlap between the phases. Each phase is designed for performing specific activity during the SDLC phase. It was introduced in 1970 by Winston Royce.

Advantages: - 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 - Project is completely dependent on project team with minimum client intervention - Any changes in software is made during the process of the development

Disadvantages: - Error can be fixed only during the phase - It is not desirable for complex project where requirement changes frequently - Testing period comes quite late in the developmental process - Documentation occupies a lot of time of developers and testers - Clients valuable feedback cannot be included with ongoing development phase - Small changes or errors that arise in the completed software may cause a lot of problems

V-Model

The V-Model is a highly disciplined SDLC model in which there is a testing phase parallel to each development phase. The V-Model is an extension of the waterfall model in which testing is done on each stage parallel with

development in a sequential way. It is known as the Validation or Verification Model.

Advantages: - Simple and easy to use - Higher chance of success over the waterfall model due to the development of test plans early on during the life cycle - Works well for where requirements are easily understood - V-Model Improves the quality and reliability of the software - It reduces the amount of re-work because of the early detection of defects and issues - It provides better management for project risks - Verification and validation of the product in the early stages of product development ensure better quality - The V-Model concept can be combined with other models, for example, the iterative and agile models

Disadvantages: - Very inflexible, like the waterfall model. Each phase has specific deliverables. Adjusting scope is difficult and expensive. - The software is developed during the implementation phase, so no early prototypes of the software are produced. - The model doesn't provide a clear path for problems found during testing phases - It is costly and required more time, in addition to a detailed plan

Prototyping Model

The prototyping model is a systems development method in which a prototype is built, tested, and then reworked as necessary until an acceptable outcome is achieved from which the complete system or product can be developed. This model works best in scenarios where not all of the project requirements are known in detail ahead of time. It is an iterative, trial-and-error process that takes place between the developers and the users.

Scrum Model

Scrum is a framework for projects. It follows the agile methodology and defines roles, procedures, tools, processes to make sure to deliver an efficient and effective project well on time through iterative development cycles. This methodology is basically followed where there is the demand of high development process, high involvement of stakeholders. Scrum methodology repeatedly monitors software development while the project is being developed.

Advantages: - Transparent system pushes developers to comply with their assignments and deliver it on time - Defined deadline at every step keep developers motivated and empowered at every step - Feedback at every level of the project ensures that quality project is delivered in the end

Disadvantages: - Difficult to plan, structure and organize a project with no clear mission and vision - Frequent changes in the project lead to a delay in the delivery time of the project - Utilizes more resources and stakeholder's involvement in every small detail change and discussion

Suitability of SDLC Models for the Project

Waterfall Model

Poor for Unclear User Requirements, Unfamiliar Technology, Complex System, Short Time Schedule, and Component Reusability Good for Reliable System, Strong Project Management, Cost Limitation, and Documentation Excellent for Visibility of Stakeholders and Skills Limitation

Prototyping Model

Good for Unclear User Requirements and Complex System Excellent for Unfamiliar Technology and Visibility of Stakeholders Poor for Reliable System, Short Time Schedule, Cost Limitation, Skills Limitation, and Component Reusability

Spiral Model

Excellent for Unclear User Requirements, Unfamiliar Technology, and Reliable System Poor for Short Time Schedule, Cost Limitation, Skills Limitation, and Component Reusability

Iterative and Incremental Model

Good for Unclear User Requirements, Unfamiliar Technology, Complex System, and Component Reusability Excellent for Reliable System, Short Time Schedule, and Visibility of Stakeholders

Scrum

Excellent for Unclear User Requirements, Complex System, Reliable System, Short Time Schedule, and Strong Project Management Poor for Unfamiliar Technology, Cost Limitation, Skills Limitation, and Component Reusability

Risk Management in the Spiral Lifecycle

Model

Identifying and Managing Risks

Outdated Technology : 40% risk due to employees not being trained or lazy to learn new technologies. Solution: Always update to the newest and latest technology. Lack of Personnel : 10% risk due to employees resigning or being fired. Solution: Prepare more staff and manage them to work together.

Lack of Budget : 15% risk due to COVID-19 affecting the source of income. Solution: Take advantage of old but highly effective technologies to reduce costs. Slow Progress : 20% risk due to unequal distribution of work. Solution: Bind tasks for easy management and unified opinions.

Risk Management Process

The risk management process involves a rational chain of practices taken by decision agents to keep the project implementation under certain conditions. The process includes: 1. Identifying risks in all project life cycles 2. Analyzing and evaluating the risks 3. Using organizational structure and administrative practices to act on the risks in favor of the project

Importance of Risk Assessment

Risk assessments are important because they: - Create awareness of hazards and risks - Identify who may be at risk - Determine if a control program is required for a particular hazard - Determine if existing control measures are adequate or if more should be done - Prevent injuries or illnesses, especially when done at the design or planning stage - Prioritize hazards and control measures - Meet legal requirements

Goal of Risk Assessment

The goal of the risk assessment process is to evaluate hazards and then remove the hazard or minimize the level of its risk by adding control measures, creating a safer and healthier workplace.

Feasibility Report

Definition of Feasibility Report

A feasibility report evaluates proposed project paths or solutions to determine if they are viable. The person who prepares the report evaluates the feasibility of different solutions and then chooses their recommendation for the best solution, which is then presented to the company.

Purpose of Conducting a Feasibility Study

The purpose of the feasibility report is to present the project parameters and define the potential solutions to the defined problem, need, or opportunity. The report provides sufficient detail, including high-level costing information, to permit the project leader to recommend to the approving authority all viable potential solutions for further analysis.

Feasibility Criteria

Technical Feasibility : Evaluates the engineering feasibility of the project, including civil, structural, and other relevant aspects, as well

Finoit Technologies. "SDLC Models and Methodologies: Pros, Cons, and When to Use Them." Finoit, 8 July 2019, www.finoit.com/blog/sdlc- models-methodologies/. Indeed Editorial Team. "What Is a Feasibility Report?" Indeed Career Guide, 2021, www.indeed.com/career-advice/career-development/ feasibility-report. Templates Free Download. "Business Feasibility Study Analysis." Templates Free Download, 6 Apr. 2020, templatesfreedownload.com/ business-feasibility-study-analysis/. Guru99. "What Is Waterfall Model in SDLC?" Guru99.com, 4 Apr. 2019, www.guru99.com/what-is-sdlc-or-waterfall-model.html. GeeksforGeeks. "Types of Feasibility Study in Software Project Development." GeeksforGeeks, 26 June 2020, www.geeksforgeeks.org/ types-of-feasibility-study-in-software-project-development/ #:~:text=Economic%20Feasibility%20%E2%80%93&text=Means%20under%20th