Download as pdf or txt
Download as pdf or txt
You are on page 1of 28

lOMoARcPSD|26048061

7408 GCD1105 ASM1 Pham Thi Thanh Thien GCD210520

Unit 9: Software Development Life Cycle (Trường Đại học FPT)

Scan to open on Studocu

Studocu is not sponsored or endorsed by any college or university


Downloaded by Ton That Quan (FPI DN) (quanttbd00333@fpt.edu.vn)
lOMoARcPSD|26048061
lOM oA R cP S D| 10 09 583 0

lOM oA R cP S D| 10 09 583 0

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 Pham Thi Thanh Thien Student ID GCD210520

Class GCD1105 Assessor name Phan Thanh Tra

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

Downloaded by Ton That Quan (FPI DN) (quanttbd00333@fpt.edu.vn)


lOMoARcPSD|26048061
lOM oA R cP S D| 10 09 583 0

P1 P2 P3 P4 M1 M2 D1 D2

❒ Summative Feedback: ❒ Resubmission Feedback:

Grade: Assessor Signature: Date:

Internal Verifier’s Comments:

Downloaded by Ton That Quan (FPI DN) (quanttbd00333@fpt.edu.vn)


lOMoARcPSD|26048061
lOM oA R cP S D| 10 09 583 0

Signature & Date:

Downloaded by Ton That Quan (FPI DN) (quanttbd00333@fpt.edu.vn)


lOMoARcPSD|26048061
lOM oA R cP S D| 10 09 583 0

Contents
I. Introduction ..................................................................................................................................................................................................................... 6
II. Describe two iterative and two sequential software lifecycle models ................................................................................................................................. 6
1. Describe the following SDLC ............................................................................................................................................................................................................ 6
a. Waterfall model ........................................................................................................................................................................................................................... 7
b. V-model ....................................................................................................................................................................................................................................... 9
c. Prototyping ................................................................................................................................................................................................................................ 11
d. Scrum ......................................................................................................................................................................................................................................... 12
e. Spiral .......................................................................................................................................................................................................................................... 14
f. Model suitable for the project ................................................................................................................................................................................................... 15
2. Discuss the suitability of each of the SDLC models for the project................................................................................................................................................ 16
III. Explain how risk is managed in the Spiral lifecycle model ..............................................................................................................................................16
1. Identify some risks and discuss an approach to manage them ..................................................................................................................................................... 16
2. Risk Management process with clear illustrations and explanations ............................................................................................................................................ 17
IV. Explain the purpose of a feasibility report .....................................................................................................................................................................18
1. Definition of feasibility report ....................................................................................................................................................................................................... 18
2. Discuss the purpose of conducting a feasibility study ................................................................................................................................................................... 18
3. Discuss how the three feasibility criteria ....................................................................................................................................................................................... 19
 Technical feasibility ................................................................................................................................................................................................................... 19
 Economic feasibility ................................................................................................................................................................................................................... 19
 Organizational feasibility ........................................................................................................................................................................................................... 20
4. Discuss whether the project is feasible or not............................................................................................................................................................................... 20

 Technical feasibility ................................................................................................................................................................................................................... 20


 Economic feasibility ................................................................................................................................................................................................................... 20

Downloaded by Ton That Quan (FPI DN) (quanttbd00333@fpt.edu.vn)


lOMoARcPSD|26048061
lOM oA R cP S D| 10 09 583 0

 Organizational feasibility ........................................................................................................................................................................................................... 21


V. Describe how technical solutions can be compared...........................................................................................................................................................21
VI. References ...................................................................................................................................................................................................................23

Downloaded by Ton That Quan (FPI DN) (quanttbd00333@fpt.edu.vn)


lOMoARcPSD|26048061
lOM oA R cP S D| 10 09 583 0

I. Introduction
The Software Development Life Cycle (SDLC) encompasses the various stages involved in determining how an information system can
meet business needs, including system design, construction, and delivery to users. It serves as a structured framework, outlining specific
tasks to be completed at each stage of the software development process. The SDLC process ensures a comprehensive understanding of
software project development, design, and maintenance by addressing all functional requirements, user needs, goals, and final objectives
collectively. By adhering to SDLC, the quality of the software project and the overall software development process can be significantly
improved. While this might appear straightforward if you have coding experience or have taken coding classes, implementing SDLC in the
real world is far from easy. Therefore, in my assignment, I will provide a clear and comprehensive explanation of the importance of SDLC.
II. Describe two iterative and two sequential software lifecycle models(P1)
1. Describe the following SDLC
SDLC or the Software Development Life Cycle is a process that produces software with the highest quality and lowest cost in the
shortest time possible. SDLC provides a well-structured flow of phases that help an organization to quickly produce high-quality software
which is well-tested and ready for production use.
In detail, the SDLC methodology focuses on the following six phases of software development, popular SDLC models include the
waterfall model, spiral model, and Agile model (ALEXANDRA AL TVATER, 2020).
There are six phases of SLDC:
 Requirement analysis
At this stage comprises receiving input from various stakeholders, including customers, salespeople, industry experts, and
programmers. Determine the present system's strengths and flaws in order to improve it (Altvater, 2020).
 Planning
At this stage of the SDLC, the team assesses the cost and resources required to accomplish the analyzed requirements. It also
discusses the dangers and suggests sub-plans for minimizing them (Altvater, 2020).
 Software design such as architectural design

Downloaded by Ton That Quan (FPI DN) (quanttbd00333@fpt.edu.vn)


lOMoARcPSD|26048061
lOM oA R cP S D| 10 09 583 0

The software specifications are turned into a design plan known as the Design Specification in this level of the SDLC. All
stakeholders then analyze the proposal and provide feedback and ideas. It is critical that a strategy for obtaining and
incorporating stakeholder feedback into this document be in place. Collapse at this stage nearly often results in expense
overruns at best and project failure at worst (Altvater, 2020).
 Software development
Actual development begins in this stage. Each developer must strictly stick to the agreed-upon strategy. Also, ensure that
developers have a proper coding style and process norms in place (Altvater, 2020).
 Testing
At this stage, the developers check and detect the errors that arise in the software and fix them so that the software has the
best quality before it comes to customers (Altvater, 2020).
 Deployment
The purpose of this step is to deploy the software to the production environment so that users can begin utilizing the product.
Furthermore, this permits any last flaws to be identified before the product is released (Altvater, 2020).
SDLC is important because it provides an effective framework and method to develop software applications. It helps in effectively
planning before starting the actual development. SDLC allows developers to analyze the requirements. It helps in reducing unnecessary costs
during development.
a. Waterfall model
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 (Matthew Martin, 2022).

Downloaded by Ton That Quan (FPI DN) (quanttbd00333@fpt.edu.vn)


lOMoARcPSD|26048061
lOM oA R cP S D| 10 09 583 0

Figure1: Waterfall Model


*Different Phases of Waterfall Model in Software
Engineering:

Different phases Activities performed in each stage


Requirement Gathering stage During this phase, detailed requirements of the software system to be developed are gathered
from client
Design Stage  Plan the programming language, for Example Java, PHP, .net
 or database like Oracle, MySQL, etc.
 Or other high-level technical details of the project
Built Stage After design stage, it is built stage, that is nothing but coding the software
Test Stage In this phase, you test the software to verify that it is built as per the specifications given by the
client
Deployment stage Deploy the application in the respective environment

Downloaded by Ton That Quan (FPI DN) (quanttbd00333@fpt.edu.vn)


lOMoARcPSD|26048061
lOM oA R cP S D| 10 09 583 0

Maintenance stage Once your system is ready to use, you may later require change the code as per customer request

*Advantages and Disadvantages of Waterfall Model:

Advantages Disadvantages
Before the next phase of development, each phase must be Error can be fixed only during the phase
completed
Suited for smaller projects where requirements are well defined It is not desirable for complex project where
requirement changes frequently
They should perform quality assurance test (Verification and Testing period comes quite late in the developmental process
Validation) before completing each stage
Elaborate documentation is done at every phase of the Documentation occupies a lot of time of developers and testers
software’s development cycle
Project is completely dependent on project team with minimum Clients valuable feedback cannot be included with ongoing
client intervention development phase
Any changes in software is made during the process of the Small changes or errors that arise in the completed software
development may cause a lot of problems

b. V-model
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 (Thomas Hamilton, 2022).

Downloaded by Ton That Quan (FPI DN) (quanttbd00333@fpt.edu.vn)


lOMoARcPSD|26048061
lOM oA R cP S D| 10 09 583 0

Figure2: V-Model

*Different phases of the Software Development Cycle:

Different phases Activities performed in each stage


Requirement Gathering Gather as much information as possible about the details & specifications of the desired software from
stage the client. This is nothing but the Requirements gathering stage.
Design Stage Plan the programming language like Java, PHP, .net; database like Oracle, MySQL, etc. Which would be
suited for the project, also some high-level functions & architecture.
Build Stage After the design stage, it is build stage, that is nothing but actually code the software
Test Stage Next, you test the software to verify that it is built as per the specifications are given by the client.
Deployment stage Deploy the application in the respective environment

Downloaded by Ton That Quan (FPI DN) (quanttbd00333@fpt.edu.vn)


lOMoARcPSD|26048061
lOM oA R cP S D| 10 09 583 0

Maintenance stage Once your system is ready to use, you may require to change the code later on as per customer
request

*Advantages and Disadvantages of V-Model:

Advantages Disadvantages
Simple and easy to use Very inflexible, like the waterfall model.
Each phase has specific deliverables. Adjusting scope is difficult and expensive.
Higher chance of success over the waterfall model due to the The software is developed during the implementation phase, so
development of test plans early on during the life cycle. no early prototypes of the software are produced.
Works well for where requirements are easily understood. The model doesn’t provide a clear path for problems found
during testing phases
V-Model Improves the quality and reliability of the software. Moreover, it is costly and required more time, in addition to a
detailed plan
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

c. Prototyping
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

Downloaded by Ton That Quan (FPI DN) (quanttbd00333@fpt.edu.vn)


lOMoARcPSD|26048061
lOM oA R cP S D| 10 09 583 0

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 (Sarah Lewis, 2019).

Figure3: Prototype Model


d. Scrum
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 (StarAgile, 2020).

Downloaded by Ton That Quan (FPI DN) (quanttbd00333@fpt.edu.vn)


lOMoARcPSD|26048061
lOM oA R cP S D| 10 09 583 0

Figure4: Scrum Model


*Advantages and disadvantages of Scrum Model:

Advantages Disadvantages
Transparent system pushes developers to comply with their Difficult to plan, structure and organize a project with no clear
assignments and deliver it on time mission and vision
Defined deadline at every step keep developers motivated and Frequent changes in the project lead to a delay in the delivery
empowered at every step time of the project
Feedback at every level of the project ensures that quality project Utilizes more resources and stakeholder’s involvement in every
is delivered in the end small detail change and discussion

Downloaded by Ton That Quan (FPI DN) (quanttbd00333@fpt.edu.vn)


lOMoARcPSD|26048061
lOM oA R cP S D| 10 09 583 0

e. Spiral
Spiral Model is a risk-driven software development process model. It is a combination of the waterfall model and the iterative model.
Spiral Model helps to adopt software development elements of multiple process models for the software project based on unique
risk patterns ensuring an efficient development process (Matthew Martin, 2022).

Figure5: Spiral Model


*Spiral Model
Phases:

Spiral Model Phases Activities performed during phase


Planning It includes estimating the cost, schedule and resources for the
iteration. It also involves understanding the system

Downloaded by Ton That Quan (FPI DN) (quanttbd00333@fpt.edu.vn)


lOMoARcPSD|26048061
lOM oA R cP S D| 10 09 583 0

requirements for continuous communication between the


system analyst and the customer
Risk Analysis Identification of potential risk is done while risk mitigation
strategy is planned and finalized
Engineering It includes testing, coding and deploying software at the
customer site
Evaluation Evaluation of software by the customer. Also, includes
identifying and monitoring risks such as schedule slippage and
cost overrun

f. Model suitable for the project


According to the information given, the project of Heath Connect has an initial investment capital and an estimated annual income of
about 400 million USD and is fueled by an annual growth rate of 6%-8%, so this is a large-scale project, serving crowded customers.
So, the company must careful organization and development to avoid mistakes.
Water fall model is an old model and is used a lot in a small project, but the percent of failure in the project is very high if it used for
complex and object-oriented projects. Furthermore, the cost of correcting those flaws is too high because we must update
everything from the documentation to the reasoning. Another way, if the software development documentation is not correctly
completed, the project will most likely go astray when developing this product.
V- model also contains some weakness that is not suitable for this project. All requirements are known up-front so this model cannot
readily manage dynamic changes in requirements. But, V-model does not contain risk analysis activities, it is hard to manage risk and
it has high percent of projects failure.
So, after all reason I prepared, Spiral model is the best because:
 Environment is balance
 The technology used is dynamic or stable.
 There are resources and training available.

Downloaded by Ton That Quan (FPI DN) (quanttbd00333@fpt.edu.vn)


lOMoARcPSD|26048061
lOM oA R cP S D| 10 09 583 0

 The requirements do not change on a regular basis


 The project is short.
2. Discuss the suitability of each of the SDLC models for the project
Factors Unclear Unfamiliar Complex Reliable Short Time Strong Cost Visibility of Skills Documentatio Componnt
User Technolog System system Schedule Project limitation Stakeholder limitatio n reusability
Managemnt s n
Requiremen y
t

Waterfall Poor Poor Good Good Poor Excellent Poor Good Good Excellent Excellent

Prototyping Good Excellent Excellent Poor Good Excellent Poor Excellent Poor Good Poor

Spiral Excellent Excellent Excellent Excellent Poor Excellent Poor Excellent Poor Good Poor

Iterative Good Good Good Good Excellent Excellent Excellent Good Good Excellent Excellent
and
Incrementa
l
Scrum Excellent Poor Poor Good Excellent Excellent Excellent Excellent Poor Poor Poor

Discuss the suitability of the model

III. Explain how risk is managed in the Spiral lifecycle model(P2)


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

Downloaded by Ton That Quan (FPI DN) (quanttbd00333@fpt.edu.vn)


lOMoARcPSD|26048061
lOM oA R cP S D| 10 09 583 0

No Risk Possible Cause Consequence Solution


1 Outdated 40% Employees are not Cannot create Always update the
technology trained or lazy to convenient features newest and latest
learn new to attract users and technology
technologies compete with other
brands
2 Lack of personal 10% Employees are Project completed Preparre more staff
resigned or fired over time and manage staff to
do task together
3 Lack of budget 15% Covid-19 affect to Lack of Take advantage of
source of income funds to develop old but highly
effective
technologies to
reduce costs
4 Slow progress 20% Unequal Loss of company bind tasks for easy
distribution of work reputation management as
well as unified
opinions

2. Risk Management process with clear illustrations and explanations


 Risk Management process
A process of risk management in projects is a rational chain of practices taken by decision agents in order to keep the
implementation of the project under certain conditions. The decision-agents need to identify, analyze and evaluate the risks in all
project life cycle and use their organizational structure and administrative practices in order to act on the risks in favor of the

Downloaded by Ton That Quan (FPI DN) (quanttbd00333@fpt.edu.vn)


lOMoARcPSD|26048061
lOM oA R cP S D| 10 09 583 0

project. Project complexity and the maturity of the organizations are viewed as important factors that can affect the success of a
project (Luiz Henrique Rodrigues-da-Silva and José António Crispim, 2014).
 Why is Risk assessment important?
Risk assessments are important because they form an integral part of an occupational health and safety management plan. They
have to:
• Create awareness of hazards and risk.
• Identify who may be at risk (e.g., employees, cleaners, visitors, contractors, the public, etc.).
• Determine whether 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 where applicable
(Government of Canada, 2021)
 What is the goal of risk assessment?
The aim of the risk assessment process is to evaluate hazards, then remove that hazard or minimize the level of its risk by adding
control measures, as necessary. By doing so, you have created a safer and healthier workplace (Government of Canada, 2021).
 Steps of the Risk Management Process

IV. Explain the purpose of a feasibility report(P3)


1. Definition of feasibility report
A feasibility report is a document that evaluates the practicality and viability of a proposed project or initiative. It provides a
comprehensive analysis of various aspects of the project, such as economic, technical, operational, and scheduling factors. The main purpose
of a feasibility report is to assist decision-makers in determining whether the project is feasible and worth pursuing. This report includes an
executive summary, project description, market analysis, technical and financial feasibility assessment, operational considerations, proposed
timeline, risk analysis, and a conclusion with recommendations. By thoroughly examining these factors, a feasibility report helps stakeholders
assess the potential benefits, risks, and challenges associated with the project. It serves as a crucial tool for informed decision-making,
enabling organizations to make well-founded judgments about the viability and potential success of the proposed project.
Downloaded by Ton That Quan (FPI DN) (quanttbd00333@fpt.edu.vn)
lOMoARcPSD|26048061
lOM oA R cP S D| 10 09 583 0

2. Discuss the purpose of conducting a feasibility study

The purpose of a feasibility report is to present the findings and conclusions of a feasibility study in a structured and
comprehensive manner. It serves as a formal document that communicates the results of the study to stakeholders, decision-
makers, and other relevant parties. The key purposes of a feasibility report are as follows:

Information Sharing: The report provides a clear and concise summary of the feasibility study, presenting the gathered data,
analysis, and findings related to the proposed project. It ensures that stakeholders have access to the necessary information to
understand the project's potential and associated risks.

Decision Making: The report assists decision-makers in making informed choices regarding the project. It presents the feasibility
study's outcomes, including assessments of technical, economic, operational, and market feasibility. Decision-makers can review
the report's content and use it as a basis for determining whether to proceed with the project, modify its scope, or discontinue it.

Risk Assessment and Mitigation: The report highlights the identified risks and challenges associated with the project. It provides
insights into potential obstacles and uncertainties that may impact the project's success. By presenting risk mitigation strategies
and recommendations, the report helps stakeholders proactively address and manage risks.

Stakeholder Communication: The report serves as a means of communicating the feasibility study's results to various
stakeholders, including project sponsors, investors, management, and team members. It provides a common reference point for
discussions and facilitates effective communication by conveying the study's findings in a structured and organized manner.

Resource Allocation: The report aids in resource planning and allocation by outlining the project's resource requirements, such as
financial, human, and technical resources. It assists stakeholders in understanding the project's resource implications and guides
decision-making related to resource allocation and budgeting.

Project Documentation: The feasibility report becomes an essential part of the project documentation. It captures the key
aspects of the feasibility study, including the project description, analysis, conclusions, and recommendations. The report serves
as a record for future reference and can be used to assess the project's progress and outcomes.

Downloaded by Ton That Quan (FPI DN) (quanttbd00333@fpt.edu.vn)


lOMoARcPSD|26048061
lOM oA R cP S D| 10 09 583 0

3. Discuss how the feasibility criteria


 Technical feasibility
The engineering feasibility of the project is viewed in the technical feasibility. Certain important engineering aspects are covered
which are necessary for the designing of the project like civil, structural, and other relevant aspects. The technical capability of
the projected technologies and the capabilities of the personnel to be employed in the project is considered (Umar Farooq, 2020).
In certain examples especially when projects are in third world countries, technology transfer between cultures and geographical
areas should be analyzed. By doing so productivity gain (or loss) and other implications are understood due to the differences in
fuel availability, geography, topography, infrastructure support, and other problems (Umar Farooq, 2020).
 Economic feasibility
In the Economic Feasibility study cost and benefit of the project are analyzed. This means under this feasibility study a detailed
analysis is carried out of what will be the cost of the project for development which includes all required costs for final
development like hardware and software resources required, design and development cost and operational cost, and so on.
After that, it is analyzed whether the project will be beneficial in terms of finance for the organization or not
(GeekforGeek,2020).
 ROI in economic feasibility: As the name reflects, the feasibility study use return on investment analysis tool to
measure the profitability of investing money and resources into a business idea. So, ROI calculates the profitability of
the investment in terms of return or gains from an investment. Moreover, the gain of investment over full
investment to calculate the ROI of a business or project plan. Therefore, it’s an important factor of consideration for
investors to do investment in a business or project plan. The one with higher ROI will provide more profit as
compared to others having less ROI (Jawad Ahmad, 2019).

Downloaded by Ton That Quan (FPI DN) (quanttbd00333@fpt.edu.vn)


lOMoARcPSD|26048061
lOM oA R cP S D| 10 09 583 0

 NPV: stand for Net Present Value, is the difference between the present value of cash inflows and the present value
of cash outflows over a period. NPV is used in capital budgeting and investment planning to analyze the profitability
of a projected investment or project. NPV is the result of calculations used to find today’s value of a future stream of
payments (JASON FERNANDO, 2021).
 Cash flow: Cash flow refers to the net balance of cash moving into and out of a business at a specific point in time.
Cash flow can be positive or negative. Positive cash flow indicates that a company has more money moving into it
than out of it. Negative cash flow indicates that a company has more money moving out of it than into it.
 Break-Even Point: The break-even point (BEP) is the point at which cost or expenses and revenue are equal: there is
no net loss or gain. Point in time (or in several units sold) when estimated income exactly equals the assessed
aggregate expenses; where loss ends, and profit begins to accumulate. This is the time when a business, loss ends
and profit begins to accumulate, or a venture turns out to be financially viable (Pooja Mathur University of
Rajasthan)
 Organizational feasibility
Organizational feasibility aims to assess the prowess of management and sufficiency of resources to bring a product or idea to
market. The company should evaluate the ability of its management team on areas of interest and execution. Typical measures
of management prowess include assessing the founders’ passion for the business idea along with industry expertise,
educational background, and professional experience. Founders should be honest in their self-assessment of ranking these
areas.
4. Discuss whether the project is feasible or not
A feasibility report encompasses various dimensions to assess the viability of a proposed project. These include:

• Technical Feasibility: This involves evaluating the company's technical capabilities and infrastructure to develop and
maintain the proposed project. It assesses compatibility with existing systems and determines the availability of
required technology and expertise.

• Economic Feasibility: Conducting a cost-benefit analysis to evaluate the financial viability of the project is crucial.

Downloaded by Ton That Quan (FPI DN) (quanttbd00333@fpt.edu.vn)


lOMoARcPSD|26048061
lOM oA R cP S D| 10 09 583 0

Estimating development, implementation, and maintenance costs in relation to expected benefits, revenue
generation, cost savings, and improved efficiency is essential.

• Legal and Regulatory Feasibility: Identifying and assessing legal and regulatory requirements applicable to the
project, such as data protection, privacy laws, and industry regulations, is critical. It ensures compliance and
evaluates potential legal or compliance risks.

• Operational Feasibility: Evaluating the impact of the project on day-to-day operations is important. Assessing the
readiness and willingness of the organization to adopt and utilize the project effectively, including factors like user
training, change management, and potential disruptions to current processes, is considered.

• Schedule Feasibility: Assessing the proposed timeline for the project and its feasibility is vital. It involves evaluating
resource availability and dependencies that may impact the schedule, as well as identifying critical milestones or
deadlines.

• Social and Ethical Feasibility: Considering the social and ethical implications of the project is necessary. This includes
evaluating aspects such as patient privacy, data security, ethical use of information, and alignment with ethical
guidelines to promote positive social outcomes.
V. Describe how technical solutions can be compared(P4)
1. Requirement:
Within the Software Development Life Cycle (SDLC), requirements play a pivotal role in ensuring the successful development of a
software product. These requirements represent the fundamental needs and expectations that must be met. They serve as a
blueprint, outlining the specific features, components, and services that the software should provide.

In addition to defining desired functionalities, requirements also establish criteria for quality, performance, and security that the
software product should adhere to. They act as guiding principles, setting the standards and benchmarks against which the
software's performance will be evaluated.
Downloaded by Ton That Quan (FPI DN) (quanttbd00333@fpt.edu.vn)
lOMoARcPSD|26048061
lOM oA R cP S D| 10 09 583 0

Furthermore, requirements serve as technical and design constraints, imposing limitations and boundaries that must be
addressed throughout the development process. By meeting these requirements, developers ensure that the software product
aligns with the intended objectives and meets the needs of its intended users.

The process of meeting requirements involves thorough analysis, documentation, and communication. It requires a
comprehensive understanding of stakeholders' expectations and needs, translating them into well-defined and actionable
requirements. This process helps minimize ambiguity, reduce the risk of misinterpretation, and facilitate effective collaboration
among the development team.

Successfully meeting the requirements is a critical step in the SDLC as it lays the foundation for developing a software product
that fulfills its intended purpose, satisfies user expectations, and delivers value to stakeholders. It serves as an important measure
of success, ensuring that the software product meets the necessary functional, performance, and security standards.

Ultimately, meeting the requirements is vital for delivering a successful software product that not only meets user needs but also
addresses the broader objectives of the project. It sets the stage for subsequent stages of the SDLC, such as design, development,
testing, and deployment, where the software is built and refined based on the established requirements.
Types of Requirements:
There are various types of requirements that are commonly identified in software development projects. These types include:

Functional Requirements: These requirements specify the desired functions, features, and capabilities of the software system.
They describe what the software should do and how it should behave in response to specific inputs or events. Functional
requirements are typically expressed as statements such as "The system shall..." or "The software must be able to..."

Non-Functional Requirements: Non-functional requirements define the qualities and constraints of the software system, rather
than its specific functionalities. These requirements address attributes such as performance, reliability, security, usability,
scalability, maintainability, and compatibility. Examples of non-functional requirements include response time, system availability,
data encryption, user interface responsiveness, and system documentation standards.

User Requirements: User requirements capture the needs, expectations, and goals of the software system's end users. They focus
on the user experience, usability, and specific user interactions with the software. User requirements are gathered through user
Downloaded by Ton That Quan (FPI DN) (quanttbd00333@fpt.edu.vn)
lOMoARcPSD|26048061
lOM oA R cP S D| 10 09 583 0

interviews, observations, and surveys, and they help ensure that the software meets the intended user needs and provides a
satisfactory user experience.

Business Requirements: Business requirements represent the high-level objectives and goals of the software project from a
business perspective. They articulate the desired business outcomes, strategic considerations, and benefits that the software
should deliver. Business requirements help align the software development effort with the overall business strategy and provide a
context for decision-making throughout the project.

System Requirements: System requirements define the specifications and constraints of the overall software system, including its
hardware, software, network, and infrastructure components. These requirements address system-level considerations such as
platform compatibility, system architecture, data storage, and integration with other systems.

Stakeholder Requirements: Stakeholder requirements encompass the needs and expectations of all stakeholders involved in the
software project, including end users, customers, managers, developers, and regulatory bodies. These requirements ensure that
the software system meets the diverse perspectives and interests of the stakeholders.

2. Discuss alternative technical solutions using the alternative matrix on Health Connect project:

Evaluation Relative Alternative Score (1- Weigh Alternative Score (1- Weigh Alternative Score (1- Weighted
Criteria Importance 1: using C# 5) * ted Score 2: using 5) * ted Score 2: using 5) * Score
JavaScript PHP
Technical
Issues:
Front-end and 10 Only 5 50 Both 7 70 Only back- 5 50
backend backend frontend end
support and 7 70
Only
backend 5

Downloaded by Ton That Quan (FPI DN) (quanttbd00333@fpt.edu.vn)


lOMoARcPSD|26048061
lOM oA R cP S D| 10 09 583 0

50 back -
end.
Capable of 10 Current 5 50 Current 5 50 Current 5 50
running on system system system fully
Windows uses fully supports J s
Server Window supports
60server
Multimedia 10 Microsoft 6 60 Easy to 5 50 Easy to find 6 60
libraries support find open-

Downloaded by Ton That Quan (FPI DN) (quanttbd00333@fpt.edu.vn)


lOMoARcPSD|26048061
lOM oA R cP S D| 10 09 583 0

source source
code in library
library
Economic
Issues:
The license is 10 Visual 4 40 Free for 5 50 Free for 50 50
less than $5 studio + commercial commercia
2000 .NET use l use
Framework
cost $4500
A server costs 10 Reuse 5 50 Reuse 3 30 Reuse 5 50
less than S1 current server server
1,000 per server
year.
Organizational
Issues
Capable of 10 Very high 3 30 Not easy 5 150 Easy to 5 50
hiring a senior salary to find find
developer
Capable of 40 Easy to find 5 150 Easy to Easy to 5 150
hiring testers find find
for less than
$1 1,000 per
month
Total 100 430 450 460

Downloaded by Ton That Quan (FPI DN) (quanttbd00333@fpt.edu.vn)


lOMoARcPSD|26048061
lOM oA R cP S D| 10 09 583 0

VI. References
1. Altvater, Alexandra. “What Is SDLC? Understand the Software Development Life Cycle.” Stackify, 8 Apr. 2020, stackify.com/what-is-
sdlc/.
2. Guru99. “What Is Spiral Model? When to Use? Advantages & Disadvantages.” Guru99.com, 17 May 2019, www.guru99.com/what-is-
spiral-model-when-to-use-advantages-disadvantages.html.
3. https://www.finoit.com. “Finoit Technologies.” Finoit Technologies, 8 July 2019, www.finoit.com/blog/sdlc-models-methodologies/.
4. Indeed Editorial Team. “What Is a Feasibility Report? (Definition and Template).” Indeed Career Guide, 2021,
www.indeed.com/career-advice/career-development/feasibility-report.
5. Jawad Ahmad. “Feasibility Study Analysis - the Professional’s Guide.” Templates Free Download, 6 Apr. 2020,
templatesfreedownload.com/business-feasibility-study-analysis/. Accessed 5 Apr. 2022.
6. Lewis, Sarah. “What Is the Prototyping Model?” SearchCIO, 2019, www.techtarget.com/searchcio/definition/Prototyping-
Model#:~:text=The%20prototyping%20model%20is%20a.
7. Martin, Matthew. “What Is Waterfall Model in SDLC? Advantages & Disadvantages.” Guru99.com, 4 Apr. 2019,
www.guru99.com/what-is-sdlc-or-waterfall-model.html.
8. “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%20this%20feasibility%20study. Accessed 5
Apr. 2022.

Downloaded by Ton That Quan (FPI DN) (quanttbd00333@fpt.edu.vn)

You might also like