1. Trang chủ
  2. » Luận Văn - Báo Cáo

assignment name software development life cycle

24 6 0
Tài liệu đã được kiểm tra trùng lặp

Đ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
Tác giả Ngo Van Huy
Người hướng dẫn Nguyen Quang Huy
Trường học Standard format not all caps
Thể loại assignment
Năm xuất bản 2021
Định dạng
Số trang 24
Dung lượng 4,32 MB

Nội dung

Designing project architectureAt the second phase of the software development life cycle, the developers are actuallydesigning the architecture.. This departmentprovides user feedback; c

Trang 1

0383930441

Trang 2

Table of Contents

A Introduction 4

B Contents 5

LO1 Describe different software development lifecycles 5

I Describe two iterative and two sequential software lifecycle models (P1) 5

II Explain how risk is managed in the Spiral lifecycle model (P2) 10

III Describe, with an example, why a particular lifecycle model is selected for a development environment (M1) 12

LO2 Explain the importance of a feasibility study 14

I Explain the purpose of a feasibility report (P3) 14

II Describe how technical solutions can be compared (P4) 16

III Discuss the components of a feasibility report (M2) 20

References 23

Trang 3

Summative Feedback:

Internal verification:

Trang 4

A Introduction

Software development lifecycle is the application of standard business practices to build software applications It is generally divided into six to eight steps: Plan, Request, Design, Build, Document, Test, Implement, Maintain Some project managers will combine, break down, or skip steps, depending on the scope of the project These are the core components recommended for all software development projects

SDLC is a way to measure and improve development It allows for detailed analysis of each step of the process This will help companies maximize efficiency at each stage As computing power increases, it places higher demands on software and developers Companies must reduce costs, deliver software faster, and meet or exceed customer needs SDLC helps to achieve these goals by identifying inefficiencies and higher costs and fixing them for smooth functioning.

Trang 5

B Contents

LO1 Describe different software development lifecycles.

I Describe two iterative and two sequential software lifecycle models (P1)

BASIC STAGES OF SOFTWARE DEVELOPMENT LIFE CYCLE

Stage 1 Planning and requirement analysis

Each software development life cycle model starts with the analysis, in which the stakeholders of the process discuss the requirements for the final product The goal of this stage is the detailed definition of the system requirements Besides, it is needed to make sure that all the process participants have clearly understood the tasks and how every requirement is going to be implemented.

Stage 2 Designing project architecture

At the second phase of the software development life cycle, the developers are actually designing the architecture All the different technical questions that may appear on this stage are discussed by all the stakeholders, including the customer Also, here are defined the technologies used in the project, team load, limitations, time frames, and budget.

Stage 3 Development and programming

After the requirements are approved, the process goes to the next stage – actual development Programmers start here with the source code writing while keeping in mind previously defined requirements The system administrators adjust the software environment, front-end programmers develop the user interface of the program and the logic for its interaction with the server.

The programming by itself assumes four stages

Trang 6

testing process repeats until all the critical issues are removed and software workflow is stable.

Stage 5 Deployment

When the program is finalized and has no critical issues – it is time to launch it for the end users After the new program version release, the tech support team joins This department provides user feedback; consult and support users during the time of exploitation Moreover, the update of selected components is included in this phase, to make sure, that the software is up-to-date and is invulnerable to a security breach.

SDLC MODELS

Waterfall SDLC Model

Waterfall – is a cascade SDLC model, in which development process looks like the flow, moving step by step through the phases of analysis, projecting, realization, testing, implementation, and support This SDLC model includes gradual execution of every stage completely This process is strictly documented and predefined with features expected to every phase of this software development life cycle model.

Simple to use and understand The software is ready only after the last

stage is over Management simplicity thanks to its

rigidity: every phase has a defined result

and process review

High risks and uncertainty

Development stages go one by one Not the best choice for complex and

object-oriented projects Perfect for the small or mid-sized

projects where requirements are clear

and not equivocal

Inappropriate for the long-term projects

Easy to determine the key points in the

development cycle

The progress of the stage is hard to measure while it is still in the development

Trang 7

ADVANTAGES DISADVANTAGES

Easy to classify and prioritize tasks Integration is done at the very end, which

does not give the option of identifying the problem in advance

Use cases for the Waterfall SDLC model:

The requirements are precisely documented

Product definition is stable

The technologies stack is predefined which makes it not dynamic

No ambiguous requirements

The project is short

Spiral SDLC Model

Spiral model – is SDLC model, which combines architecture and prototyping by stages It is

a combination of the Iterative and Waterfall SDLC models with the significant accent on the risk analysis The main issue of the spiral model – is defining the right moment to make a step into the next stage The preliminary set time frames are recommended as the solution

to this issue The shift to the next stage is done according to the plan, even if the work on the previous stage isn’t done yet The plan is introduced basing on the statistics data, received during the previous projects even from the personal developer’s experience.

Trang 8

ADVANTAGES DISADVANTAGES

Lifecycle is divided into small parts, and if the risk

concentration is higher, the phase can be finished

earlier to address the treats

Can be quite expensive

The development process is precisely documented

yet scalable to the changes

The risk control demands involvement of the highly-skilled professionals

The scalability allows to make changes and add

new functionality even at the relatively late stages

Can be ineffective for the small projects

The earlier working prototype is done - sooner

users can point out the flaws

Big number of the intermediate stages requires excessive documentation

Use cases for the Spiral model

Customer isn’t sure about the requirements

Major edits are expected during the development cycle

The projects with mid or high-level risk, where it is important to prevent these risks The new product that should be released in a few stages to have enough of client feedback

Agile SDLC Model

In the agile methodology after every development iteration, the customer is able to see the result and understand if he is satisfied with it or he is not This is one of the advantages of the agile software development life cycle model One of its disadvantages is that with the absence of defined requirements it is difficult to estimate the resources and development cost Extreme programming is one of the practical uses of the agile model The basis of such model consists of short weekly meetings – Sprints which are the part of the Scrum approach.

Trang 9

ADVANTAGES DISADVANTAGES

Corrections of functional requirements

are implemented into the development

process to provide the competitiveness

Difficulties with measuring the final cost because of permanent changes

Project is divided by short and

transparent iterations

The team should be highly professional and client-oriented

Risks are minimized thanks to the

flexible change process

New requirements may conflict with the existing architecture

Fast release of the first product version With all the corrections and changes

there is possibility that the project will exceed expected time

Use cases for the Agile model:

The users’ needs change dynamically

Less price for the changes implemented because of the many iterations

Unlike the Waterfall model, it requires only initial planning to start the project

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

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

Trang 10

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 The exact number of phases needed to develop the product can be varied by the project manager depending upon the project risks.

The Radius of the spiral at any point represents the expenses(cost) of the project so far, and the angular dimension represents the progress made so far in the current phase The below diagram shows the different phases of the Spiral Model:

Each phase of the Spiral Model is divided into four quadrants as shown in the above figure The functions of these four quadrants are discussed below:

Trang 11

1 Objective determination and identify alternative solutions: Requirements

are gathered from the customers and the objectives are identified, elaborated, and analyzed at the start of every phase Then alternative solutions possible for the phase are proposed in this quadrant

2 Identify and resolve Risks: During the second quadrant, all the possible

solutions are evaluated to select the best possible solution Then the risks associated with that solution are identified and the risks are resolved using the best possible strategy.

3 Develop next version of the Product: During the third quadrant, the

identified features are developed and verified through testing At the end of the third quadrant, the next version of the software is available

4 Review and plan for the next Phase: In the fourth quadrant, the Customers

evaluate the so far developed version of the software In the end, planning for the next phase is started.

Advantages of Spiral Model:

Below are some advantages of the Spiral Model

1 Risk Handling: The projects with many unknown risks that occur as the

development proceeds, in that case, Spiral Model is the best development model to follow due to the risk analysis and risk handling at every phase

2 Good for large projects: It is recommended to use the Spiral Model in large and

complex projects

3 Flexibility in Requirements: Change requests in the Requirements at later phase

can be incorporated accurately by using this model

4 Customer Satisfaction: Customer can see the development of the product at the

early phase of the software development and thus, they habituated with the system

by using it before completion of the total product

Disadvantages of Spiral Model:

Below are some main disadvantages of the spiral model

1 Complex: The Spiral Model is much more complex than other SDLC models

2 Expensive: Spiral Model is not suitable for small projects as it is expensive

3 Too much dependability on Risk Analysis: The successful completion of the

project is very much dependent on Risk Analysis Without very highly experienced experts, it is going to be a failure to develop a project using this model

4 Difficulty in time management: As the number of phases is unknown at the start

of the project, so time estimation is very difficult.

Trang 12

III Describe, with an example, why a particular lifecycle model is selected for a development environment (M1)

1 Introduction selecting a Software Development Life Cycle (SDLC)

Selecting a Software Development Life Cycle (SDLC) methodology is a challenging task for many organizations and software engineers What tends to make it challenging is the fact that few organizations know what are the criteria to use in selecting a methodology to add value to the organization Fewer still understand that a methodology might apply to more than one Life Cycle Model Before considering a framework for selecting a given SDLC methodology, we need to define the different types and illustrate the advantages and disadvantages of those models (please see the Software Development Life Cycle Models and Methodologies).

2 Discuss the suitability of each of the SDLC models for the project For each model, specify whether it is most, moderately or least suitable

Strong Project

Management

Excellent Excellent Excellent Excellent

Visibility of

Stakeholders

Trang 13

Waterfall model

As a requirement of Tune Source, the waterfall model is not suitable for projects because waterfall will freeze the requirement of the project and it is difficult to go back to any stage after it is finished More, it is very expensive and takes time, beyond detailed planning Tune source is a big project and the original requirements will be changed because the end-user always makes changes to suit the environment If product is finished but is not the product needed of the end-user or during execution, the end-user wants to change the function or add it End-user must spend any money to change the end user’s requirement In conclusion, Waterfall is not suitable for Tune Source It is suitable for small projects.

Prototyping model

Prototyping model is the same waterfall model that is software requirement clearly defined and know Software development technologies When business analysis takes the request from tune source End-user gives current requests and clearly does not know software development technologies End-user only need to know the product that has the same as they want it an incomplete analysis Users confuse the prototype and the complete system Developers misinterpret user goals It is costly to implement the prototypes Conclusion it is also a suitable fortune source High cost and time to reach the final product It needs special skills to evaluate the risks and assumptions The cost is very expensive In conclusion, it is also not a suitable fortune course.

Spiral model

The spiral model is quite suitable for project because it’s used in the large applications and systems which built-in small phases or segments This will avoid the end product being requested by the end user but it is not really a suitable fortune source In response, the Spiral methodology works best for complicated projects with small functionality or strict budgets It is also suitable for projects with no clear requirements at the early stages, or with requirements that need to be evaluated.

Agile Software development

Agile software development is suitable for Tune Source because It can be used with any type of project, but it needs more engagement from the customer and to be interactive Providing teams with a competitive advantage by catching defects and making changes throughout the development process, instead of at the end It speeds up time spent on evaluations since each evaluation is only on a small part of the whole project Ensures changes can be made quicker and throughout the development process by having consistent evaluations to assess the product with the expected outcomes requested It keeps each project transparent by holding regular consistent meetings with customers and systems that allow everyone involved to access project data and progress It decreases the time required to avail some system features Conclusion, it’s suitable for project.

Ngày đăng: 29/05/2024, 18:12

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
3. Simplilearn. 2021. Feasibility Study And Its Importance in Project Management. [online] Available at: < https://www.simplilearn.com/feasibility-study-article>[Accessed 27 August 2021] Sách, tạp chí
Tiêu đề: [online] Available at: < https://www.simplilearn.com/feasibility-study-article
4. Cprime. 2021. What is AGILE? - What is SCRUM? - Agile FAQ's | Cprime. [online] Available at: &lt;https://www.cprime.com/resources/what-is-agile-what-is-scrum/&gt;[Accessed 27 August 2021] Sách, tạp chí
Tiêu đề: Available at
1. Existek.com. 2021. SDLC. [online] Available at: &lt;https://existek.com/blog/sdlc-models/&gt; [Accessed 27 August 2021] Khác
2. GeeksforGeeks. 2021. Software Engineering | Spiral Model - GeeksforGeeks. [online] Available at: &lt;https://www.geeksforgeeks.org/software-engineering-spiral-model/&gt; [Accessed 27 August 2021] Khác
5. Pahwa, A. and Pahwa, A., 2021. What Is A Prototype? - Examples, Types, &amp; Qualities | Feedough. [online] Feedough. Available at: &lt;https://www.feedough.com/what-is-a-prototype/&gt; [Accessed 27 August 2021] Khác

TỪ KHÓA LIÊN QUAN

w