The phases in software development process

28 311 0
The phases in software development process

Đ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

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 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: Requirement phase Design phase Implementation phase Test phase Installation and check out phase Operation and maintenance phase 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). 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) 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 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 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. 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 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. 10 SDLC MODELS - Build and Fix Model • An adhoc approach and not well defined • 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 Fix Build Code [...]... Testing Implementation & Unit Testing Integration & System Testing Integration & System Testing Operation & Maintenance Operation & Maintenance 13 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 prototypes, the detailed design is derived and the rapid prototype is fine-tuned using code or external utilities to create a final working product 14 SDLC MODELS - Prototype Model (3) • Customer get early interaction... 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 processThe focus is the identification of problems and the classification of these into different levels of risks aim eliminate high-risk problems before they threaten 20 SDLC MODELS Spiral Model (2) 21 SDLC... Testing Testing Integration Integration & System & System Testing Testing Operation Operation Release 1 Design Design Implementation Implementation & Unit & Unit Testing Testing Integration Integration & System & System Testing Testing Operation Operation Release 2 Design Design Implementation Implementation & Unit & Unit Testing Testing Integration Integration & System & System Testing Testing Operation... Testing & Unit Testing Integration Integration & System Testing & System Testing Operation & Operation & Maintenance Maintenance 11 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... 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 18 SDLC MODELS Evolutionary Development Model (2) • Should be used when it is not necessary to provide a minimal... 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 15 SDLC MODELS Iterative Enhancement Model (1) Requirement Requirement Design Design Implementation Implementation & Unit & Unit Testing... 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 19 SDLC MODELS Spiral Model (1) • Originally proposed by Berry Boehm in 1988 • Each cycle of the spiral consists of four stages, and... of training if required No No Yes Yes No Development Team 25 Selection of Life Cycle Model Based on User’s participation User involvement in all phases Waterfall Prototype Iterative enhancement Evolutionary development Spiral No Yes No No Yes Yes Involvement of Users No Yes Yes Yes No Yes Yes Yes Yes No Yes Yes Yes No Limited user participation User have no previous experience of participation in similar... Can we define requirements early in the cycle? Yes No Yes Yes No No Yes Yes Yes Yes Requirements are indicating a complex system to be build? 24 Selection of Life Cycle Model Based on Status of Development Team Waterfall Prototype Iterative enhancement Evolutionary development Spiral Less experience on similar projects No Yes No No Yes Less domain knowledge (new to the technology) Yes No Yes Yes Yes

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

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan