tailieunhanh - Lecture Software design and architecture – Chapter 19

Lecture 19 – Software requirement specification. Requirements are the descriptions of the services provided by a system and its operational constraints. It may range from a high level abstract statement to a detailed mathematical specification. | SOFTWARE DESIGN AND ARCHITECTURE LECTURE 19 Review Basic Concepts of Object Oriented Modeling UML and OO Modeling Out line Software Requirements Requirements Engineering Process What is a requirement? It is about WHAT not HOW Requirements are the descriptions of the services provided by a system and its operational constraints It may range from a high level abstract statement to a detailed mathematical specification What is requirements engineering? It is the process of discovering, analyzing, documenting and validating the requirements of the system Each software development process goes through the phase of requirements engineering Why requirements? What are the advantages of a complete set of documented requirements? Ensures the user (not the developer) drives system functionalities Helps avoiding confusion and arguments Helps minimizing the changes Changes in requirements are expensive. Changing the requirements costs: 3 x as much during the design phase 5-10 x as much during . | SOFTWARE DESIGN AND ARCHITECTURE LECTURE 19 Review Basic Concepts of Object Oriented Modeling UML and OO Modeling Out line Software Requirements Requirements Engineering Process What is a requirement? It is about WHAT not HOW Requirements are the descriptions of the services provided by a system and its operational constraints It may range from a high level abstract statement to a detailed mathematical specification What is requirements engineering? It is the process of discovering, analyzing, documenting and validating the requirements of the system Each software development process goes through the phase of requirements engineering Why requirements? What are the advantages of a complete set of documented requirements? Ensures the user (not the developer) drives system functionalities Helps avoiding confusion and arguments Helps minimizing the changes Changes in requirements are expensive. Changing the requirements costs: 3 x as much during the design phase 5-10 x as much during implementation 10-100 x as much after release [Code Complete, p30] Why requirements? 2/3 of finished system errors are requirements and design errors [RG] A careful requirements process doesn’t mean there will be no changes later Average project experiences about 25% changes in the requirements This accounts for 70-80% if the rework of the project [Code Complete, p40] Important to plan for requirements changes The case of critical applications Different levels of abstraction User requirements (abstract +) Usually the first attempt for the description of the requirements Services and constraints of the system In natural language or diagrams Readable by everybody Serve business objectives System requirements (abstract -) Services and constraints of the system in detail Useful for the design and development Precise and cover all cases Structured presentation Example User requirement: The library system should provide a way to allow a patron to borrow a book from the library. System .

TỪ KHÓA LIÊN QUAN
crossorigin="anonymous">
Đã phát hiện trình chặn quảng cáo AdBlock
Trang web này phụ thuộc vào doanh thu từ số lần hiển thị quảng cáo để tồn tại. Vui lòng tắt trình chặn quảng cáo của bạn hoặc tạm dừng tính năng chặn quảng cáo cho trang web này.