0% found this document useful (0 votes)
348 views22 pages

Assignment 1 Front Sheet: Qualification BTEC Level 5 HND Diploma in Computing Unit Number and Title Submission Date

The document is an assignment front sheet for a BTEC Level 5 HND Diploma in Computing unit on the Software Development Life Cycle. It provides information such as the student name and ID, class, assignment submission date, and grading criteria. The front sheet establishes guidelines for the assignment and acts as a cover page for the submitted work.

Uploaded by

Nguyễn Mạnh
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
348 views22 pages

Assignment 1 Front Sheet: Qualification BTEC Level 5 HND Diploma in Computing Unit Number and Title Submission Date

The document is an assignment front sheet for a BTEC Level 5 HND Diploma in Computing unit on the Software Development Life Cycle. It provides information such as the student name and ID, class, assignment submission date, and grading criteria. The front sheet establishes guidelines for the assignment and acts as a cover page for the submitted work.

Uploaded by

Nguyễn Mạnh
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 22

ASSIGNMENT 1 FRONT SHEET

Qualification BTEC Level 5 HND Diploma in Computing

Unit number and title Unit 9: Software Development Life Cycle

Submission date Date Received 1st submission

Re-submission Date Date Received 2nd submission

Student Name Nguyen Van Manh Student ID BHAF200079

Class PBTIT17101 Assessor name Ngo Thi Mai Loan

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

Nguyễn Văn Mạnh - BHAF200079 Page 1


 Summative Feedback:  Resubmission Feedback:

Grade: Assessor Signature: Date:


Internal Verifier’s Comments:

Signature & Date:

Nguyễn Văn Mạnh - BHAF200079


TABLE OF CONTENTS

I. INTRODUCTION

1. What is SDLC and their roles?

2. My task in this assignment

II. DESCRIBE TWO ITERATIVE AND TWO SEQUENTIAL SOFTWARE LIFECYCLE MODELS (P1)

1. Describe two iterative software life cycle model

2. Describe two sequential software life cycle model

3. Select the right model for project

III. EXPLAIN HOW RISK IS MANAGED IN THE SPIRAL LIFECYCLE MODEL (P2)

1. What is Spiral model?

2. Phases of Spiral model

3. What is manage risk and how to manage risk?

4. How to manage risk in Spiral model?

IV. EXPLAIN THE PURPOSE OF A FEASIBILITY REPORT (P3)

1. What is the feasibility of the project?

2. Feasibility study for what and benefits?

3. Components of the feasibility report

V. DESCRIBE HOW TECHNICAL SOLUTIONS CAN BE COMPARED (P4)

VI. CONCLUSION

VII. REFERENCES

Nguyễn Văn Mạnh - BHAF200079


I. Introduction

1. What is SDLC and their roles?

- SDLC stands for Software development life cycle.

- SDLC is a process used in building software. Plan, define, design, build, test, and finally develop
It aims to guarantee the quality and correctness of the software built for the customer. The SDLC
process aims to produce high-quality software.

- This methodology is also known as the Application Development life cycle.

(Key Development Team Roles within the Software Development Lifecycle, 2021) .

2. My task in this assignment

- In this assignment, I am the project manager of ABC company and collaborated with Tune
Source to complete the project.
- I need to report on 4 contents:
 Describe 4 SDLC models: Waterfall, V-Model, Spiral, Rapid Development. Which method is
best for Tune Source and why?
 My report have list some risks and offer an approach to manage risks.
 Discuss why a team need to conduct feasibility study and what areas should be conducted in
feasibility study?
 My team now is offering several technical solutions for Tune Source. Describe how can you
choose a solution over the others.

II. Describe two iterative and two sequential software life cycle models (P1)

1. Describe two iterative software life cycle model.

A. Agile model

Nguyễn Văn Mạnh - BHAF200079


- Agile model is a combination of iterative and incremental process models with focus on process
adaptability and customer satisfaction by rapid delivery of working software product.

- The various phases of Agile model are as follows:

 Requirements gathering: In this phase, you must define the requirements. You should
explain business opportunities and plan the time and effort needed to build the project.
Based on this information, you can evaluate technical and economic feasibility.

 Design the requirements: When you have identified the project, work with stakeholders
to define requirements. You can use the user flow diagram or the high-level UML
diagram to show the work of new features and show how it will apply to your existing
system.

 Construction/ Iteration: When the team defines the requirements, the work begins.
Designers and developers start working on their project, which aims to deploy a working
product. The product will undergo various stages of improvement, so it includes simple,
minimal functionality.

Nguyễn Văn Mạnh - BHAF200079


 Testing/ Quality assurance: In this phase, the Quality Assurance team examines the
product's performance and looks for the bug.

 Deployment: In this phase, the team issues a product for the user's work environment.

 Feedback: After releasing the product, the last step is feedback. In this, the team
receives feedback about the product and works through the feedback.

- Advantages of Agile method:

 Frequent delivery.

 Face-to-face Communication with clients.

 Efficient design and fulfils the business requirement.

 Anytime changes are acceptable.

 It reduces total development time.

- Disadvantages of Agile method:

 Not suitable for handling complex dependencies.

 There are many risks in terms of sustainability, maintainability, and scalability.

 Need an experienced team.

 Depends heavily on clear customer interaction.

- When to use the Agile model?

 When frequent changes are required.

 When a highly qualified and experienced team is available.

 When a customer is ready to have a meeting with a software team all the time.

 When project size is small.

(Agile Model (Software Engineering) - javatpoint, 2021).

B. Iterative model

Nguyễn Văn Mạnh - BHAF200079


- In this Model, you can start with some of the software specifications and develop the first
version of the software. After the first version if there is a need to change the software, then a
new version of the software is created with a new iteration. Every release of the Iterative Model
finishes in an exact and fixed period that is called iteration.

- The various phases of Iterative model are as follows:

 Requirement gathering & Analysis: In this phase, requirements are gathered from
customers and check by an analyst whether requirements will fulfil or not. Analyst
checks that need will achieve within budget or not. After all of this, the software team
skips to the next phase.

 Design and Development: In the design phase, team design the software by the
different diagrams like Data Flow diagram, activity diagram, class diagram, state
transition diagram, etc.

 Implementation: In the implementation, requirements are written in the coding


language and transformed into computer programmes which are called Software.

Nguyễn Văn Mạnh - BHAF200079


 Testing: After completing the coding phase, software testing starts using different test
methods. There are many test methods, but the most common are white box, black box,
and grey box test methods.

 Deployment: After completing all the phases, software is deployed to its work
environment.

 Review: In this phase, after the product deployment, review phase is performed to
check the behaviour and validity of the developed product. And if there are any error
found then the process starts again from the requirement gathering.

 Maintenance: In the maintenance phase, after deployment of the software in the


working environment there may be some bugs, some errors or new updates are
required. Maintenance involves debugging and new addition options.

- Advantages of Iterative model:

 Testing and debugging during smaller iteration is easy.

 A Parallel development can plan.

 It is easily acceptable to ever-changing needs of the project.

 Risks are identified and resolved during iteration.

 Limited time spent on documentation and extra time on designing.

- Disadvantages of Iterative model:

 It is not suitable for smaller projects.

 More Resources may be required.

 Design can be changed again and again because of imperfect requirements.

 Requirement changes can cause over budget.

 Project completion date not confirmed because of changing requirements.

- When to use the Iterative model?

 When requirements are defined clearly and easy to understand.

Nguyễn Văn Mạnh - BHAF200079


 When the software application is large.

 When there is a requirement of changes in future.

(Iterative Model (Software Engineering) - javatpoint, 2021)

2. Describe two sequential software life cycle model

A. Waterfall model

- The waterfall model is a classical model used in the system development life cycle to create a
system with a linear and sequential approach.

- The various phases of Waterfall model are as follows:

 Requirements analysis and specification: The aim of this phase is to understand the
exact requirements of the customer and to document them properly. Both the customer
and the software developer work together so as to document all the functions,
performance, and interfacing requirement of the software. It describes the "what" of the
system to be produced and not "how."In this phase, a large document called Software
Requirement Specification (SRS) document is created which contained a detailed
description of what the system will do in the common language.

Nguyễn Văn Mạnh - BHAF200079


 Design: This phase aims to transform the requirements gathered in the SRS into a
suitable form which permits further coding in a programming language. It defines the
overall software architecture together with high level and detailed design. All this work
is documented as a Software Design Document (SDD).

 Implementation and unit testing: During this phase, design is implemented. If the SDD is
complete, the implementation or coding phase proceeds smoothly, because all the
information needed by software developers is contained in the SDD. During testing, the
code is thoroughly examined and modified. Small modules are tested in isolation
initially. After that these modules are tested by writing some overhead code to check the
interaction between these modules and the flow of intermediate output.

 Integration and System testing: This phase is highly crucial as the quality of the end
product is determined by the effectiveness of the testing carried out. The better output
will lead to satisfied customers, lower maintenance costs, and accurate results. Unit
testing determines the efficiency of individual modules. However, in this phase, the
modules are tested for their interactions with each other and with the system.

 Operation and maintenance: Maintenance is the task performed by every user once the
software has been delivered to the customer, installed, and operational.

- Advantages of Waterfall model:

 This model is simple to implement also the number of resources that are required for it
is minimal.
 The requirements are simple and explicitly declared; they remain unchanged during the
entire project development.
 The start and end points for each phase is fixed, which makes it easy to cover progress.
 The release date for the complete product, as well as its final cost, can be determined
before development.
 It gives easy to control and clarity for the customer due to a strict reporting system.
- Disadvantages of Waterfall model:
 In this model, the risk factor is higher, so this model is not suitable for more significant
and complex projects.
 This model cannot accept the changes in requirements during development.

Nguyễn Văn Mạnh - BHAF200079


 It becomes tough to go back to the phase. For example, if the application has now
shifted to the coding phase, and there is a change in requirement, It becomes tough to
go back and change it.
 Since the testing done at a later stage, it does not allow identifying the challenges and
risks in the earlier phase, so the risk reduction strategy is difficult to prepare.
- When to use the Waterfall model?
Some Circumstances where the use of the Waterfall model is most suited are:
 When the requirements are constant and not changed regularly.
 A project is short.
 The situation is calm.
 Where the tools and technology used is consistent and is not changing.
 When resources are well prepared and are available to use.
(Waterfall Model (Software Engineering) - javatpoint, 2021)
B. V-Model

- V-Model also referred to as the Verification and Validation Model. In this, each phase of SDLC
must complete before the next phase starts. It follows a sequential design process same as the

Nguyễn Văn Mạnh - BHAF200079


waterfall model. Testing of the device is planned in parallel with a corresponding stage of
development.

- The various phases of V-model are as follows:

 Business requirement analysis: This is the first step where product requirements
understood from the customer's side. This phase contains detailed communication to
understand customer's expectations and exact requirements.

 System Design: In this stage system engineers analyze and interpret the business of the
proposed system by studying the user requirements document.

 Architecture Design: The baseline in selecting the architecture is that it should


understand all which typically consists of the list of modules, brief functionality of each
module, their interface relationships, dependencies, database tables, architecture
diagrams, technology detail, etc. The integration testing model is carried out in a
particular phase.

 Module Design: In the module design phase, the system breaks down into small
modules. The detailed design of the modules is specified, which is known as Low-Level
Design.

 Coding Phase: After designing, the coding phase is started. Based on the requirements, a
suitable programming language is decided. There are some guidelines and standards for
coding. Before checking in the repository, the final build is optimized for better
performance, and the code goes through many code reviews to check the performance.

- Advantages of V-model:

 Easy to understand.

 Testing method like planning, test designing happens well before coding.

 This saves a lot of time. Hence a higher chance of success over Waterfall model.

 Avoids the downward flow of the defects.

 Works well for small plans where requirements are easily understood.

- Disadvantages of V-model:

 Very rigid and least flexible.

Nguyễn Văn Mạnh - BHAF200079


 Not a good for a complex project.

 Software is developed during the implementation stage, so no early prototypes of the


software are produced.

 If any changes happen in the midway, then the test documents along with the required
documents, has to be updated

- When to use the V-model?

 When the requirement is well defined and not ambiguous.

 The V-shaped model should be used for small to medium-sized projects where
requirements are clearly defined and fixed.

 The V-shaped model should be chosen when sample technical resources are available
with essential technical expertise.

(V-model (Software Engineering) - javatpoint, 2021)

3. Select the right model for the project

Model Requirement Response Suitable or not

Agile model Suitable for small projects, easy to use, requirements Moderately suitable
can change frequently.

Iterative model Suitable for big projects and important tasks, Not suitable
requirements must be clearly and specifically
defined.

Waterfall model Suitable for short projects and infrequently changing Most suitable
requirements.

V-Model Suitable for small or medium projects, easy to Moderately suitable


understand. Save a lot of time.

- Based on the comparison table above, we decided to choose the Waterfall model for software
development because the project is not too large, the partner side also makes specific

Nguyễn Văn Mạnh - BHAF200079


requirements and needs to be quick in the development process. All of the above factors are
very suitable for us to choose Waterfall model.

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

1. What is Spiral model?

- Spiral model is one of the most important Software Development Life Cycle models, which
provides support for Risk Handling. In its diagrammatic representation, it looks like a spiral with
many loops. The exact number of loops of the spiral is unknown and can vary from project to
project. Each loop of the spiral is called a Phase of the software development process.

(Spiral Model (Software Engineering) - javatpoint, 2021)

Nguyễn Văn Mạnh - BHAF200079


2. Phases of Spiral model

Each cycle in the spiral is divided into four parts:

 Objective setting: Each cycle in the spiral starts with the identification of purpose for
that cycle, the various alternatives that are possible for achieving the targets, and the
constraints that exists.

 Risk Assessment and reduction: The next phase in the cycle is to calculate these various
alternatives based on the goals and constraints. The focus of evaluation in this stage is
located on the risk perception for the project.

 Development and validation: The next phase is to develop strategies that resolve
uncertainties and risks. This process may include activities such as benchmarking,
simulation, and prototyping.

 Planning: Finally, the next step is planned. The project is reviewed, and a choice made
whether to continue with a further period of the spiral. If it is determined to keep, plans
are drawn up for the next step of the project.

3. What is manage risk and how to manage risk?

Nguyễn Văn Mạnh - BHAF200079


- Risk management encompasses the identification, analysis, and response to risk factors that
form part of the life of a business. Effective risk management means attempting to control, as
much as possible, future outcomes by acting proactively rather than reactive. Therefore,
effective risk management offers the potential to reduce both the possibility of a risk occurring
and its potential impact.

- All risk management processes follow the same basic steps, although sometimes different
jargon is used to describe these steps. Together these 5 risk management process steps combine
to deliver a simple and effective risk management process:

 Step 1: Identify the risk. You and your team uncover, recognize and describe risks that
might affect your project or its outcomes. There are a number of techniques you can use
to find project risks. During this step you start to prepare your Project Risk Register.

Nguyễn Văn Mạnh - BHAF200079


 Step 2: Analyze the risk. Once risks are identified you determine the likelihood and
consequence of each risk. You develop an understanding of the nature of the risk and its
potential to affect project goals and objectives. This information is also input to your
Project Risk Register.

 Step 3: Evaluate the risk. You evaluate or rank the risk by determining the risk
magnitude, which is the combination of likelihood and consequence. You make decisions
about whether the risk is acceptable or whether it is serious enough to warrant
treatment. These risk rankings are also added to your Project Risk Register.

 Step 4: Treat the risk. This is also referred to as Risk Response Planning. During this step
you assess your highest ranked risks and set out a plan to treat or modify these risks to
achieve acceptable risk levels. How can you minimize the probability of the negative
risks as well as enhancing the opportunities? You create risk mitigation strategies,
preventive plans and contingency plans in this step. And you add the risk treatment
measures for the highest ranking or most serious risks to your Project Risk Register.

 Step 5: Monitor and Review the risk. This is the step where you take your Project Risk
Register and use it to monitor, track and review risks.

(Development, 2021)

4. How to manage risk in Spiral model?

- Spiral model is a pattern that is repeated sequentially in a spiral. There the risk control is
captured from the beginning of the cycle until the end of a round, they are repeated until the
whole process is finished or the process cannot be continued.

- Before the start of the spiral, it is common to identify risks and possible measures, the end of
each spiral cycle is a review and assessment of risk. For each spiral, The prototype is gradually
being completed. The risk analysis will lead to whether the project should be continued or
stopped….

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

1. What is the feasibility of the project?

Nguyễn Văn Mạnh - BHAF200079


- A feasibility study is an analysis that considers all of a project's relevant factors—including
economic, technical, legal, and scheduling considerations—to ascertain the likelihood of
completing the project successfully.

(Considering a New Venture? Consider a Feasibility Study, 2021)

2. Feasibility study for what and benefits?

A. Feasibility study for what?


- Feasibility studies help project managers determine the viability of a project or business venture
by identifying the factors that can lead to its success.
- The feasibility study is the second step of the SDLC. It is the stage at which all of the software
needs and requirements are written down and thoroughly documented.
B. Benefits of feasibility studies.
- Below are the benefits of doing a feasibility study:
 Identifies valid reasons to advance or veto a project idea.
 Improves the focus of the project team.
 Provides useful information for next steps at the conclusion of the study.
 Narrows potential business alternatives.

Nguyễn Văn Mạnh - BHAF200079


 Enhances the success or failure rate of the project by assessing all variables.
3. Components of the feasibility report

- Once the initial due diligence has been completed, listed below are several of the components
that are typically found in a feasibility study:

 Economic: Is it possible to complete this project within the budget approved by upper
management and stakeholders?

 Schedule: Determine whether or not the project can be completed within the timeframe
provided.

 Legal: Can this project meet the requirements of cyberlaw as well as other regulatory
compliance?

 Technical: Determine whether the software is compatible with the current computer
system.

 Operation feasibility: Are we able to create the operations that the client expects?

- The feasibility study is a significant step in any SDLC process because it examines different
elements like cost necessary for creating and executing the system, the time necessary for each
step of the system, etc.

(Feasibility Study in SDLC - FreeEducator.com, 2021)

V. Describe how technical solutions can be compared (P4)

Solution Advantages Disadvantage


Self-development Low cost, high security, easy Take a lot of time to develop,
to control when there is a requires engineers to have
technical problem. high technical skills
Purchased all Save a lot of time, no need for Expensive, low security,
skilled engineer, on time. difficult to control when
system failure occurs.
Purchased part Save time, take a little effort. Costly, difficult to control
when system failure occurs.

Nguyễn Văn Mạnh - BHAF200079


- Based on the above evaluation table and the available conditions, we decided to choose to self-
development system because we have a highly skilled IT team, the software system is also
available, the project cost is not too big to buy software.

- Compare technical solutions in self-development

Feasibility Weight Code by HTML, Code by JS Code by C#,C++


criteria CSS, PHP
Technical 40% Score: 90 Score: 30 Score: 70
feasibility Team has a lot of Team is not very Team has a lot of
experience, this experienced, the experience, but
system is also system is not the system is not
developed based based on the based on this
on the platform. platform for platform for
development development.
Economical 40% Score: 80 Score 20 Score: 50
feasibility $50.000 for $300.000 for $200.000 for
develop develop develop
Payback within 1 Payback within 2 Payback within 2
year and a half years year
Organization 20% Score: 90 Score: 30 Score: 70
feasibility The organization Big-budget Costly, payback
has a lot of Long payback time is not too
experience period fast
Ranking 100% Score: 86 Score: 26 Score: 62

- Based on the above analysis, we will choose to develop on HTML, CSS and PHP platforms
because the efficiency that it brings is the greatest. The low cost to develop, the quick payback
time, and the team members also have a lot of experience developing on this platform, choosing
them is the most feasible.

VI. Conclusion

VII. References

 Ubiminds. 2021. Key Development Team Roles within the Software Development Lifecycle.
[online] Available at: <https://blog.ubiminds.com/en-us/key-development-team-roles-sdlc/>
[Accessed 3 October 2021].

Nguyễn Văn Mạnh - BHAF200079


 www.javatpoint.com. 2021. Agile Model (Software Engineering) - javatpoint. [online]
Available at: <https://www.javatpoint.com/software-engineering-agile-model> [Accessed 3
October 2021].

 www.javatpoint.com. 2021. Iterative Model (Software Engineering) - javatpoint. [online]


Available at: <https://www.javatpoint.com/software-engineering-iterative-model> [Accessed
3 October 2021].

 www.javatpoint.com. 2021. Waterfall Model (Software Engineering) - javatpoint. [online]


Available at: <https://www.javatpoint.com/software-engineering-waterfall-model>
[Accessed 3 October 2021].

 www.javatpoint.com. 2021. Spiral Model (Software Engineering) - javatpoint. [online]


Available at: <https://www.javatpoint.com/software-engineering-spiral-model> [Accessed 3
October 2021].

 GeeksforGeeks. 2021. Software Engineering | Spiral Model - GeeksforGeeks. [online]


Available at: <https://www.geeksforgeeks.org/software-engineering-spiral-model/>
[Accessed 3 October 2021].

 Investopedia. 2021. Considering a New Venture? Consider a Feasibility Study. [online]


Available at: <https://www.investopedia.com/terms/f/feasibility-study.asp> [Accessed 3
October 2021].

 Indeed.com. 2021. [online] Available at: <https://www.indeed.com/career-advice/career-


development/feasibility-studies> [Accessed 4 October 2021].

 www.javatpoint.com. 2021. V-model (Software Engineering) - javatpoint. [online] Available


at: <https://www.javatpoint.com/software-engineering-v-model> [Accessed 4 October
2021].

 Development, C., 2021. What are the 5 Risk Management Process Steps?. [online]
Continuing Professional Development. Available at:
<https://continuingprofessionaldevelopment.org/risk-management-steps-in-risk-
management-process/> [Accessed 4 October 2021].

 2021 Free Study - 2022. 2021. Feasibility Study in SDLC - FreeEducator.com. [online]
Available at: <https://www.freestudy.com/feasibility-study-in-sdlc/> [Accessed 4 October
2021].

Nguyễn Văn Mạnh - BHAF200079


Nguyễn Văn Mạnh - BHAF200079

You might also like