1. Trang chủ
  2. » Công Nghệ Thông Tin

1631 assignment 1 (pass)

34 10 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề Software Development Life Cycle - Assignment 1
Tác giả Đào Vĩnh Khang
Người hướng dẫn Vo Thao
Trường học BTEC Level 5 HND Diploma in Computing
Chuyên ngành Software Development Life Cycle
Thể loại assignment
Năm xuất bản 2023
Thành phố Unknown
Định dạng
Số trang 34
Dung lượng 1,28 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

1631 assignment 1 (pass) 1631 assignment 1 (pass) 1631 assignment 1 (pass) 1631 assignment 1 (pass) 1631 assignment 1 (pass) 1631 assignment 1 (pass) 1631 assignment 1 (pass) 1631 assignment 1 (pass) 1631 assignment 1 (pass) 1631 assignment 1 (pass) 1631 assignment 1 (pass) 1631 assignment 1 (pass) 1631 assignment 1 (pass) 1631 assignment 1 (pass) 1631 assignment 1 (pass) 1631 assignment 1 (pass) 1631 assignment 1 (pass) 1631 assignment 1 (pass) 1631 assignment 1 (pass) 1631 assignment 1 (pass) 1631 assignment 1 (pass) fpt Greenwich

Trang 1

Software Development Life Cycle - Assignment

1

Trang 2

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 Received 2nd submission Student Name ĐÀO VĨNH KHANG Student ID GCS200222

Class GCS0905B Assessor name VO THAO

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

Trang 3

Internal Verifier’s Comments:

Signature & Date:

Trang 4

CONTENTS

CONTENTS 1

I SOFTWARE DEVELOPMENT LIFE CYCLES MODELS (P1)

3 1 Iterative models 3 i Spiral Model 3 ii Agile Model 5 2 Sequential models 7 i Waterfall Model 7

ii Prototype model 9

II HOW RISK IS MANAGED IN THE SPIRAL LIFECYCLE MODEL (P2) 12

1 Why a life cycle model is chosen for a specific development environment Error! Bookmark not defined 2 Changing in requirements Error! Bookmark not defined 3 For instance: TUNE SOURCE Error! Bookmark not defined i Identification Error! Bookmark not defined ii Design Error! Bookmark not defined iii Construct Error! Bookmark not defined iv Evaluation and Risk Analysis Error! Bookmark not defined IV FEASIBILITY STUDY (P3) 16

1 Feasibility study 16

2 Feasibility report 16

V FEASIBILITY CITERIA (P3) 19

1 Technical feasibility 19

2 Schedule feasibility 20

3 Legal issues (Wen, 2018) 20

4 Social issues 21

5 Economic feasibility 21

VI HOW TECHNICAL SOLUTIONS CAN BE COMPARED (P4) 24

4 Outcome Error! Bookmark not defined VIII References 25

Trang 5

Figure 5: FEASIBILITY STUDY 19 Figure 6: GANTT CHART OF ESTIMATING SCHEDULE 23

Table 1: RISK RESPOND PLAN 15 Table 2: WORDPRESS, JOOMLA AND DRUPAL (Walker, 2021) 23 Table 3: ECONOMIC FEASIBILITY REPORT 25 Table 4: TANGIBLE AND INTANGIBLE BENEFITS OF TUNE SOURCE PROJECT (Anon., 2019) 26

Trang 6

I SOFTWARE DEVELOPMENT LIFE CYCLES MODELS (P1)

1 Iterative models

i Spiral Model

DEFINITION: The Spiral Model is a software development process model that is risk-driven

It is a hybrid of the waterfall and iterative models The Spiral Model assists in the adoption of software development aspects from several process models for a software project based on unique risk patterns, guaranteeing an efficient development process (Martin, 2021)

Figure 1: SPIRAL MODEL

The development process in the SDLC Spiral model begins with a limited set of requirements and progresses through each development phase for those criteria The software engineering team adds functionality to meet the new requirements in ever-increasing spirals until the program is ready for production (Martin, 2021)

SPIRAL MODEL PHASES (Martin, 2021)

• Planning: It entails calculating the iteration's cost, timeline, and resources It also

entails comprehending the system requirements in order to maintain constant communication between the system analyst and the client

• Risk Analysis: While a risk mitigation strategy is created and approved, prospective risks are identified

Trang 7

• Engineering: It entails testing, developing, and deploying software at the customer's location

• Evaluation: The consumer evaluates the software Identifying and monitoring risks such as schedule slippage and cost overruns is also part of the job

WHO WOULD USE SPIRAL MODEL: One of the most interesting aspects of the Spiral

SDLC model is that Microsoft utilized it to launch new versions of Windows? A model was also used

to create the software for the Gantt chart As a result, it's no surprise that the Spiral Model is used for huge, high-risk initiatives that are likewise aimed at a large audience Another economic field that makes use of the Spiral model is game development The method enables prototypes to be developed with attention and speed Given that the gaming business must rely heavily on early versions of games, Spiral has become a safe option Businesses in the game development industry may use the strategy

to collect consumer input rapidly and produce a playable game that would progress quicker into equivalently playable games (Anon., 2019)

ADVANTAGES: (Gurendo, 2015)

• Risk monitoring is one of the main components that makes it appealing, especially when managing large and expensive projects Furthermore, such an approach makes your project more visible because each spiral is required to be examined and assessed by design

• At the early phases of the software development lifecycle, customers may view the functional product

• At the late phases of the life cycle, many adjustments might be implemented

• The project may be divided into different segments, and the more dangerous ones can

be developed early, reducing management challenges

• Project estimations in terms of schedule and money grow more and more realistic as the project progresses, and spiral loops are completed

DISADVANTAGES: (Gurendo, 2015)

• Because risk monitoring necessitates additional resources, this technique can be rather costly to employ Each spiral needs specialized knowledge, thus complicating the

Trang 8

management process As a result, the Spiral SDLC Model is unsuitable for short projects

• There are a lot of intermediary levels As a result, there is a massive volume of paperwork

• Time management may be challenging Typically, the finish date of a project is unknown in the early phases

ii Agile Model

DEFINITION: Rather than a top-down procedure with a single sequence of phases, Agile

SDLC methodology emphasizes collaborative decision-making and development over several short cycles or sprints

The basis of an Agile SDLC is a cyclical development technique for software in iterations rather than all at once Your teams operate in various cycles that normally span two to four weeks (Anon., 2020)

Figure 2: AGILE MODEL

SIX PHASES OF AGILE MODEL: (Anon., 2018)

• Requirements: The idea phase comes first A product owner will define the scope of

their project here If there are several initiatives, the most significant ones will be prioritized The product owner will meet with a customer to discuss important needs and develop documentation outlining them, including which features will be supported

and the suggested end outcomes

Trang 9

• Design: After the concept has been defined, it is time to assemble the software

development team A product owner will examine the availability of their colleagues and select the best individuals for the project, while also providing them with the

required tools and resources

• Development: The iteration phase, often known as development, comes next It is

usually the longest phase because the majority of the work is done here The developers will collaborate with UX designers to integrate all product requirements and user input

before converting the design to code

• Testing: The product is almost ready for distribution However, the quality assurance

team must first do several tests to guarantee that the program is completely working These Agile team members will test the system to verify that the code is clean; if any

problems or flaws are discovered, the developers will resolve them as soon as possible

• Deployment: Customers will now be able to access the software when it has been fully

delivered This operation puts it in the maintenance mode During this phase, the software development team will provide continuing assistance to ensure that the

system runs properly and that any new defects are resolved

• Review: A product enters the retirement phase for one of two reasons: it is being

replaced with new software, or the system itself has grown obsolete or incompatible with the organization over time The software development team will tell users first

that the software will be decommissioned

ADVANTAGES (Anon., 2016)

• The project is structured into short and clear iterations

• It has a change management system that is adaptable

• It reduces the risk associated with software development

• The initial product version was released quickly

• The development process incorporates the validity of functional requirements

• The customer may view the outcome and decide whether or not he or she is happy with

it

Trang 10

DISADVANTAGES (Anon., 2016)

• The development staff should be extremely professional and customer-focused

• The new need may clash with the old architecture

• There is a potential that the project will take longer than predicted if further corrections and changes are made

• Because of the ongoing iteration, estimating the project's eventual cost may be challenging

• There is no clearly stated requirement

2 Sequential models

i Waterfall Model

DEFINITION: A Sequential model is shown by the waterfall model The software

development activity is separated into distinct phases in this paradigm, and each phase consists of a succession of activities with varied objectives

The SDLC procedures were pioneered by the Waterfall methodology In fact, it was the first widely used model in the software business It is separated into phases, with the output of one phase becoming the input of the next A phase must be completed before proceeding to the next step In summary, the Waterfall model has no overlap (Anon., 2021)

Trang 11

Figure 3: WATERFALL MODEL

SIX PHASES OF WATERFALL MODEL: (Sharma, 2021)

• Requirements: The first phase is to design, understand its function, purpose, etc Here,

the inputs and outputs, or the specifications of the final product, are examined and marked

• Design: In this phase, the specifications of the first phase are investigated and the

system design is prepared System design helps specify hardware and system requirements, and also helps define the overall system architecture This will create the software code that you will write in the next step

• Development: With input from the system design, the system is initially developed in

small programs, so-called units, and then integrated into the next phase Each unit is developed and tested for its functionality This is called a unit test

• Testing: All units developed during the implementation phase are integrated into the

system after each unit has been tested The developed software should undergo regular software testing to check for bugs and errors The tests are performed to ensure that the customer has no problems installing the software

• Deployment: Once functional and non-functional tests are complete, the product is

deployed or marketed in your environment

• Maintenance: This step is performed after installation and includes changes to the

system or individual components to change attributes and improve performance These changes are caused either by a customer-initiated change request or by a defect found during actual use of the system Customers receive regular maintenance and support for the developed software

ADVANTAGES: (Martin, 2021)

• Each step of development must be accomplished before moving on to the next

• Suitable for smaller projects with well-defined criteria

• Before finishing each stage, they should conduct a quality assurance test (verification and validation)

Trang 12

• Elaborate documentation is accomplished at each segment of the software’s improvement cycle

• Project is absolutely depending on assignment crew with minimal customer intervention

• Any changes in software package are formed throughout the method of the event

DISADVANTAGES: (Martin, 2021)

• Error can be fixed only during the phase

• Not desirable for complex projects where requirements change frequently

• The testing phase occurs much later in the development process

• Documentation takes a lot of time for developers and testers

• Valuable customer feedback cannot be incorporated into the ongoing development phase

• Small changes and bugs that appear in the finished software can cause many problems

Prototype is a working model of software with some limited functionality Prototypes do not always hold the exact logic used in the actual software application This prototype is developed based on currently known requirements The prototype model is a software development model Prototyping is used to allow users to evaluate a developer's proposals and try them out before implementation It also helps to understand requirements that are user specific and may not be considered by the developer during product design

Trang 13

• Developers lose focus of the true purpose of the prototype and can, therefore, compromise the quality of the software For example, developers may use some inefficient algorithms or inappropriate programming languages while developing prototypes

• Prototyping can lead to skewed expectations For example, a situation can be created where the user believes that the development of the system is completed when it is not

• The main goal of prototyping is rapid development, so the system design can suffer when it is developed in series without considering the integration of all other components

2/ Choose one that you think suitable for the project and explain why

I choose the Incremental model because incremental modeling can show us the details of the plan from how

it works to the risks that may be encountered during project development Customers can see the details of the project development steps so that they can trust and invest in the project

Trang 14

THE MOST SUITABLE MODEL FOR TUNE SOURCE: SCRUM

I am a project manager for a company called ABC My company was hired by Tune Source to undertake a project which helped them develop software that meets the requirements specified in system requirement

From the situation we have a business requirement below: Using the We or in-store kiosks customers will be able to search and purchase digital music downloads Specific must-have system functions include the following:

• Search for music in our digital music archive

• Listen to sample music

• Purchase individual downloads at a fixed price per download

• Set up a customer subscription account for unlimited downloads for a monthly fee of

• Purchase a gift card to download music

And we had some problems:

• The marketing department sees this as a strategic system The ability to offer digital music downloads is essential to staying competitive in our niche Our music archive of rare and hard-to-find music is an underutilized asset right now

• Many of our existing loyal customers have requested this capability and we must provide this service or settle the losing business for these customers

• As customers have several options for downloading music else where we needed to get this system to market as soon as possible

Therefore, the situation of this project can be summarized as follows:

• Requirements for this project are not too clear and may change to match the market situation of and the expectations of Tune Source customers

• Short project completion time

• This is a project in the domain dedicated to Tune Source and requires close

Trang 15

• collaboration between the customer and the development team

 Thanks to the above assessment results as well as the perceived relevance and benefits of

applying the SCRUM model to the project We choose SCRUM

II HOW RISK IS MANAGED IN THE SPIRAL LIFECYCLE MODEL (P2)

DEFINITION: Risk management is the process of identifying, assessing, and controlling

threats to a company's capital and profits These risks arise from a variety of sources, including financial uncertainty, legal obligations, technical issues, strategic management errors, accidents, and natural disasters (Tucci, 2020)

The project manager or product owner is responsible for the risk manager You are responsible for overseeing the project and ensuring that everything is running smoothly In other words, they identify business risk factors, estimate their potential and impact on the project, develop plans, and implement risk management Or take full advantage of risk identification, risk analysis, and risk mitigation (Kochalski, 2021)

Spiral development supports risk management for software projects in various ways abridged below:

• The first risk analysis serves as a visionary step o Identify most of the risks that threaten

your project o Classifying risks into user interface risks and development risks

o Rate these risks to determine risks from to every cycles In addition, this classification helps developers implement risk resolution techniques, such as prototyping and such as benchmarks

• Evolved prototyping spiral aims to solve performance and user interface related risks These coils help the reduce the main risk before proceeding to the development process

• Risk analysis phase of each cycle preceding each phase of the waterfall phase of:

o Addresses the risks of programs, development and interface controls uniquely from the start of the project

Trang 16

o Evaluate and resolve the new risk that may occur after the is changed from to goal, alternative or limit at the beginning of the cycle

• Iterative function of Spiral model allows the development process to return to the first quadrant at any time:

o Goals, alternatives, and constraints that need to change as more attractive alternatives exist o New technologies that are easily introduced during development

o Up to optimization of project Resource Usage o For process with operations

performed poorly in previous periods

• Evaluation is done at the end of each cycle with key stakeholders as a decision point to avoid lack of participation risk in the next cycle

• The risk of time and cost overruns is best managed using spiral development since the risk analysis step is performed in each cycle At this stage the cost and time required

for each cycle are pre-analysed to give a clear picture of the critical status of the project This helps project managers and developers better control these risks

• The risks associated with the increased complexity of the project are also managed using spiral This is achieved by zoning performed during the planning phase

• Breaking the project down into chunks to develop into parallel spirals clearly reduces the risk associated with time constraints as more work can be done in the same amount

RISK

CATEGORY RESPONSE PLAN

Trang 17

1 Scope and objectives

being misunderstood 80% 90% 72% HIGH

Always have another detail papers and manuals about the project’s information

2

Stakeholders modify requirements

Urgent meeting to change the SDLC model of the project

3

Testing phase doesn’t cover enough cases

Need to identify more cases after the product being released and fix in the maintenance phase

4

Lack of engagement

to the implantation process

Giving raises and rewards for employees to motivate them

5

Apply the incorrect

or unsuitable SDLC

Urgent meeting to replace the new SDLC model as soon as possible

6

Misunderstanding the states of SDLC model

Urgent meeting to help employees understand more about the model that

we are currently working

Assign appropriate tasks to each employee regularly check or replace faulty equipment and manage time closely

Ngày đăng: 18/07/2023, 23:59

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN