1. Trang chủ
  2. » Giáo án - Bài giảng

The phases in software development process

28 311 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

Định dạng
Số trang 28
Dung lượng 9,94 MB

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

Nội dung

A software life cycle model is often called a Software Development Life Cycle SDLC... SDLC MODELS - Waterfall Model 2• The phases always occur in fixed order and not overlap • This model

Trang 1

Trường Đại học Công nghiệp Tp.HCM Trung tâm Công nghệ Thông tin http://ttcntt.wordpress.com

GV: Lê Ngọc Tiến Email: letien.dhcn@gmail.com Blog: http://tienhuong.wordpress.com

The Phases in Software Development process

Trang 2

Software Life Cycle Models

• Software Life Cycle:

– The period of time that start when a software is conceived and end when the product no longer available for use

– The Software Life Cycle typically includes:

Trang 3

Software Life Cycle Models (cont)

• Software Life Cycle Models:

Is a particular abstraction that represents a software life cycle A software life cycle model is often called a Software Development Life Cycle (SDLC)

Trang 4

Requirement Phase

• The goal is: Understand exact requirements of

the customer and document them properly

• Executed together with the customer

• Produces documents, written in natural language

-description “What the system will do” (not “How” the system will be done)

• The resultant document is know as “Software

Requirement Specification” (SRS)

Trang 5

Design Phase

• The goal is: Transform the requirements

specification into a structure that suitable for

implementation in some programming language

• Overall software architecture is defined

• Produce “Software Design Description” (SDD)

document

• SDD contains sufficient information to begin coding

phase

Trang 6

Implementation Phase

• Design representations are translated into

actual programs (Design is implemented)

• Programmers are responsible for documenting the

program, providing an explanation of how procedures are coded

• Documentation is essential to test the program and

carry on maintenance once the application has been installed

Trang 7

Test Phase

• After a system has been developed, it is very

important to check if it the customer requirements For this purpose, testing of the system is done

• The major activities are centered around the

examination and modification the code

Trang 8

Installation and Check Out Phase

• Implementation of system means putting up system on user's site Acceptance testing ensures that the system meets all the requirements If it fulfils the needs then the system is accepted by the customer and put into use

Trang 9

Operation and Maintenance Phase

• The purpose of this phase is to preserve the value of software over time This phase may span for 5 to 50 years whereas development may be 1 to 3 years

• Software maintenance is a very board activity that includes error correction, enhancement of capabilities, deletion of obsolete capabilities, and optimization

• This is very crucial for the system's life

Trang 10

SDLC MODELS - Build and Fix Model

• Product is constructed without specification and design

• May work well on small programming (100-200 lines of code)

• Maintenance can be extremely difficult without

specification or design documents

Build Code

Trang 12

SDLC MODELS - Waterfall Model (2)

• The phases always occur in fixed order and not overlap

• This model is only appropriate when the requirements are well-understood and changes will be fairly limited during the design process

• Difficult to define all requirements at beginning of the project

• Real project rarely sequential

• Difficult to accommodate change after the process is underway

Trang 13

Implementation & Unit Testing

Implementation & Unit Testing

Integration & System Testing

Integration & System Testing

Operation & Maintenance

Operation & Maintenance

Trang 14

SDLC MODELS - Prototype Model (2)

• A quick partial implementation of the system is

created before or during the requirements definition phase

• The end users of the system use the rapid prototype and then supply feedback to the project team for

further refinement of the requirements of the system

• This refinement process continues until the user is

satisfied

• When the requirements definition process has been completed, through the development of rapid

Trang 15

• Customer get early interaction with system

• Developers learn from customers’ reaction to

demonstrations of one or more facets of system

behavior

• Suitable for the projects whose requirements that

frequently changing

• Sometimes a system with poor performance is

produced, especially if the tuning stage is skipped

• The customer may want to have the prototype

delivered rather than waiting for full, well engineered system

Trang 16

Integration

& System Testing

Integration

& System Testing Operation

Integration

& System Testing

Integration

& System Testing Operation

Trang 17

SDLC MODELS

Iterative Enhancement Model (2)

• In the first phase, customers & Developers specify as many requirements as possible Then prioritize these requirements

• Developers implement the specified requirements in one or more cycles of design, implementation and test based on priorities

• Delivery an operational quality product at each release and one that satisfies only a subset of the customer’s requirements

Trang 18

SDLC MODELS

Evolutionary Development Model (1)

• Resembles Iterative Enhancement model, but in this model the requirements are implemented by category rather than by priority

• Example: in a sample database application, one cycle implement GUI, another File manipulation, another

queries, another updates All four cycles must be

complete before there is working produce available

Trang 19

SDLC MODELS

Evolutionary Development Model (2)

• Should be used when it is not necessary to provide a minimal version of the system quickly

• Useful for projects using new technology that not well understood also used for complex projects where all functionality must be delivered at one time, but the

requirements not well understood at the beginning

Trang 20

SDLC MODELS

Spiral Model (1)

• Originally proposed by Berry Boehm in 1988

• Each cycle of the spiral consists of four stages, and

each stage is represented by one quadrant

• The radius of the spiral represents the cost

accumulated so far in the process and the angular

dimension represents the progress in the process

• The focus is the identification of problems and the

classification of these into different levels of risks

-aim eliminate high-risk problems before they threaten

Trang 21

SDLC MODELS

Spiral Model (2)

Trang 22

SDLC MODELS

Spiral Model (3)

Trang 23

Selection of Life Cycle Model

Based on following characteristic:

Trang 24

Selection of Life Cycle Model Based on

Characteristics Requirements

Requirements Waterfall Prototype Iterative

enhancement

Evolutionary development Spiral

Are requirements easily

understandable and define? Yes No No No No

Do we change requirements

Can we define requirements

early in the cycle? Yes No Yes Yes No

Requirements are indicating

Trang 25

Selection of Life Cycle Model Based on

Status of Development Team

Development Team Waterfall Prototype Iterative

enhancement

Evolutionary development Spiral

Less experience on similar

Less domain knowledge

(new to the technology) Yes No Yes Yes Yes

Less experience on tool to

Available of training if

Trang 26

Selection of Life Cycle Model Based on

User’s participation

Involvement of Users Waterfall Prototype Iterative

enhancement

Evolutionary development Spiral

User involvement in all

Limited user participation

Yes No Yes Yes Yes

User have no previous

experience of participation in

similar projects

No Yes Yes Yes Yes

Users are experts of problem

Trang 27

Selection of Life Cycle Model Based on

Type of Project with Associated Risk

Project Type and Risk Waterfall Prototype Iterative

enhancement

Evolutionary development Spiral

Project is the enhancement

of the existing system No No Yes Yes NoFunding is stable for the

High reliability requirements No No Yes Yes Yes

Tight project schedule No Yes Yes Yes YesUse of reusable components No Yes No No Yes

Are resource (time, money,

Trang 28

Thank You

Ngày đăng: 12/05/2014, 11:07