Title: Computing and SE II Chapter 4: Requirements Engineering
1Computing and SE II Chapter 4 Requirements
Engineering
- Er-Yu Ding
- Software Institute, NJU
2Main Contents
- What is requirement?
- Why RE (requirements engineering)?
- Activities of RE
31. What is requirement?
- ????IEEE
- (1)????????????????????????
- (2)???????????????????????????????????????????
- (3)?(1)?(2)????????????????????
4What is requirement?--???????(1)
51. What is requirement?--??????? (2)
- ???????????????????,???????
- ?????,??????????????????????????????,?????????????
?? - ???????????????????,?????????(Problem Domain)
- ???????????,??????????,?????
61. What is requirement?--????
- ????????????????????????,?????????????????????????
??? - ????,??????????????????(???),?????????????????????
?? - ????????????????????????
- ?????????????,????????????????
71. What is requirement?--??
- ????????????????????????
- R1???????,??????,?????????
- R2???????30???????,????????????
- ????
- ????????????????
- ????
- ????????,????????????????
81. What is requirement? --????
- ???????????????????????,???????????
- ????????
- (1)?????(??)???
- (2)?????????????????
91. What is requirement?--?????
- ????????????????
- ????????????
- ?????????
- ??????,???????????,???????????????
- ?????????????????????????
101. What is requirement?--????????????????????
- ??????????E ?????????S ?????R
- ???????????E,??S,??
- ?????????
- (1)????????E
- (2)????????S?????R
- (3) ??????????
- ?????????
- ????,?? R
- ??????,???????E
- ?????,???????S,??
111. What is requirement?--?????IEEE
- ????(Functional Requirement)
- ????????????,?????????????,??????????????,????????
????????????????????????????? - ????(Performance Requirement)
- ????????????????????,??CPU???????????
- ????(Quality Attribute)
- ?????????,???????????????????,????????????????
- ????(External Interface)
- ???????????????????,????????????????????
- ??
- ??????????????,????????????
121. What is requirement?--????????
131. What is requirement?--????????
- ????
- ??????????,?????????(Objective),??????????????
- ????????????????????,??????????(Vision)
- ????
- ????????????????????????,???????????????
- ??
- ??????
- ?????
- ?????
- ?????
- ??????????,???????????????????????,??????
- ???????????????,?????????????,?????????????
141. What is requirement?--????????
- ???????????????????????
- ??????????????,??????????????????,?????????
- ????????????????,??????????,?????????????,????????
???????? - ??????????????????????,??????????
152. Why RE ?--From theory (1) ???
- ?????????????????
- ?????????
????
????
162. Why RE ?--From theory (2)????
- ??
- ???1????????,??????????
- ???2????????????,??????????????????
- ?????????
- ??
- ??
-
172. Why RE ?--From theory (3)????
- ??
- ??
- ?????
- ?????
- ????
- ??
??????
??????
182. Why RE ?--From theory (4)????
- ????
- ??????
- ????(??????)???????????????????
- ????????,?????????????????????
- ?????????????(??? VS ????)?????
192. Why RE ?--From Practices (1)
202. Why RE ?--From Practices (2) ,Standish Group
1995
????????? ????
???? 15.9
?????? 13.9
??????? 13.0
??????? 9.6
??????? 8.2
???????? 7.7
???? 7.2
????? 5.3
???????? 2.9
???? 2.4
?? 13.9
212. Why RE ?--From Practices (3) , Standish
Group1995
????????? ????
???????? 13.1
?????? 12.4
???? 10.6
??????? 9.9
???????? 9.3
???? 8.7
???? 8.1
??????? 7.5
??IT?? 6.2
?????? 4.3
?? 9.9
222. Why RE ?--From Practices (4) , Standish
Group1995
- ????
- ????(????)
- ??????
- ???????
- ???????
- ????????
- ????
- ???????
- ????,????
- ???????????53.9
- ???????????60.9
232. Why RE ?--From Practices (5) , ESPITI,1996
- ??????ESI
- ??????????????ESPITI
- 17??????3800???
242. Why RE ?--People think requirements is main
troubles
- There is little doubt that project requirements
are the single biggest cause of trouble on the
software project front. Study after study has
found that, where there is a failure,
requirements problems are usually at the heart of
the matter. GLAS98 - 'as much as 90 of subsequent troubles can be
traced back to erroneous original
specifications. BRUC89
252. Why RE ?--????
- ??????????
- ????????????????????????????????????????
- ???????????????????????????
- ???????????????????????????????
263. Activities of RE
273. Activities of RE--???????
- Inception
- Elicitation
- Elaboration
- Negotiation
- Specification
- Validation
- Requirements management
Elicitation
Analysis
283. Tasks of RE---Inception
- Establishing project vision and scope
- basic understanding of the problem (Objectives)
- the nature of the solution that is desired
(Vision) - How many things needed to developing the solution
(Scope) - Stakeholders Analysis
- the people who want a solution
- Characteristics of Stakeholders
- the effectiveness of preliminary communication
and collaboration between the customer and the
developer - Make usage of characteristics of Stakeholders
293. Activities of RE---Inception
- Identify stakeholders
- who else do you think I should talk to?
- Recognize multiple points of view
- Understand stakeholders
- Work toward collaboration
- Establish common objectives, vision and scope
- The first questions
- Who is behind the request for this work?
- Who will use the solution?
- What will be the economic benefit of a successful
solution - Is there another source for the solution that you
need?
303. Tasks of RE---Elicitation
- From where? (Source)
- Stakeholders, hard data, environments
- Elicit what? (Content)
- How many requirements
- How many elicit activities
- Which requirements in each elicit activities
- How to elicit (technique)
- Interview, prototype, observe, scenario (use
case) - Up to source and content
313. Activities of RE--- Eliciting Requirements
- the goal is
- to identify the problem
- propose elements of the solution
- negotiate different approaches, and
- specify a preliminary set of solution
requirements
323. Activities of RE--- Elicitation Work Products
- a statement of need and feasibility.
- a bounded statement of scope for the system or
product. - a list of customers, users, and other
stakeholders who participated in requirements
elicitation - a description of the systems technical
environment. - a list of requirements (preferably organized by
function) and the domain constraints that apply
to each. - a set of usage scenarios that provide insight
into the use of the system or product under
different operating conditions. - any prototypes developed to better define
requirements.
333. Activities of RE---Elaboration
- Create an analysis model that identifies data,
function and behavioral requirements - ?????
- Analysis models can describe requirements more
precise - In analysis, solution requirements can be deduced
- Elaboration and elicitation are interweaved
activities - Get something, understand them, and need more
343. Activities of RE--- Negotiating Requirements
- Agree on a deliverable system that is realistic
for developers and customers - Identify the key stakeholders for conflicts
- These are the people who will be involved in the
negotiation - Determine each of the stakeholders win
conditions - Win conditions are not always obvious
- Negotiate
- Work toward a set of requirements that lead to
win-win
353. Activities of RE---Specification
- Writing what you know
- For communication to
- Developers
- Projects managers
- Users
- Testers
- User manual writers
-
- With documents
- Using template
- Using writing techniques
363. Activities of RE--- Validating Requirements
- Assure the specifications are according to users
requirements - Misunderstanding
- Writing error
- missing
- Validating focus
- See textbook
- Validating with some standards
- Good enough, but not perfect
373. Activities of RE--- Requirements management
- Establishing baseline after requirements
development - Putting RE products into Software Configuration
Management - Maintaining track matrix
- Knowing the impacts of each requirements
- Change control
- Not every change is forbidden
- Not every change is permitted
38The End
- Recommend Paper
- Software Requirements A Tutorial
- The World and The Machine
- Next Lecture
- Requirement Analysis