Aucun titre de diapositive - PowerPoint PPT Presentation

1 / 52
About This Presentation
Title:

Aucun titre de diapositive

Description:

why a system is needed, based on current or foreseen conditions, ... optative statements (as opposed to descriptive), (Jackson95) expressions of intents, (Rolland98) ... – PowerPoint PPT presentation

Number of Views:72
Avg rating:3.0/5.0
Slides: 53
Provided by: CRI1151
Category:

less

Transcript and Presenter's Notes

Title: Aucun titre de diapositive


1
Goal Oriented Requirements Engineering A Guided
Tour
What is? Why? Where? When? How requirements
engineering (RE) with goals
2
Recap
What is RE about?
The WHY question Why the system needs to be
developed?
The WHAT question What the system shall do?
 Requirements definition must say why a
system is needed, based on current or foreseen
conditions, what system features will satisfy
this context, . (Ross77) (Bubenko94,
Mylopoulos92, Dardenne93, Loucopoulos95, etc..)
3
What is RE with goals ?
Introducing explicit goal representations in
requirements models
Requirements are complete if they are
sufficient to establish the goal they are
refining (Yue87)
"RE is concerned with the real-world goals
for, functions of, constraints on software
systems and with their link to precise
specifications of software behaviour,
evolution over time families " (Zave97)
"RE is concerned with the identification of goals
to be achieved by the envisioned system, the
operationalization of such goals into services
and constraints." (Lamnsweerde00)
4
What is RE about?
Mission statements strategic objectives
System Requirements
(from Axel van Lamsweerde)
5
Goal Orientation
  • found in traditional methodologies for system
    engineering
  • context analysis (Ross77), definition study
    (Hice Turner74), participative analysis
    (Munford81), object oriented analysis (Rubin
    Golberg92)..
  • addressed by IEEE-Std-830
  • ignored by UML, "but needed" (Fowler97)
  • increasingly considered in RE research

6
Goal Oriented Requirements Engineering
Roles of Goals in RE
  • requirements elicitation
  • exploration of alternatives
  • requirements completeness
  • requirements pre-traceability
  • detection resolution of conflicts
  • documentation
  • negotiation
  • evolution change

7
Outline
  • Goals... what? why? where? when?
  • Modelling goals
  • Formulating goals
  • Conclusion

8
What are Goals?
  • Objectives that the system under consideration
    must achieve
  • optative statements (as opposed to descriptive),
    (Jackson95)
  • expressions of intents, (Rolland98)
  • Screen passengers entering the lift (goal)
    Create ET Passenger (action)
  • related to the system in its environment,
  • bounded by the subject matter, (Zave
    Jackson97)
  • Keep door closed when moving relates to Transport
    passengers safely
  • through co operation of agents, van Lamsweerde00
  • Lift system depends on lift software to Keep door
    closed when moving
  • associated with the current system (As-Is) or
    the future system (To-Be)

9
What are Goals?
Goals are expressed at different levels of
abstraction
  • Increase the number of
  • contracts by 20

10
What are Goals?
  • More examples
  • high-level goals
  • strategic, global, organization-wide
  • more passengers served"
  • "ubiquitous cash service provided 
  • low-level goals
  • technical, local, design-specific
  • Trigger acceleration every 3 seconds"
  • " Keep card after 3 wrong password entries"

11
What are Goals?
Goals cover different types of concerns
  • functional goals what the system is expected
    to do
  • non-functional goals quality of the system
    behaviour
  • security, safety, accuracy,
  • performance, cost, usability,
  • adaptability,

12
What are Goals?
Achieving goals require co operation among
agents/actors
Safe Transportation
Goal
13
What are Goals?
Goals may be owned by stakeholders "train
frequency increased" (passengers) "number of
passengers increased" (train company) potential
for conflicting viewpoints "card kept when
KO-customer" (banks) "card returned when
KO-customer" (customers) (Robinson89,
Nuseibeh94, Boehm95, Lamsweerde98a)
14
Exercise (1)
  • Assume that you have to set the goals for an
    insurance claim system
  • Elicit some goals
  • Classify them into functional and non functional
    goals
  • Draw some dependencies of the form lt actor1, goal
    g, actor2gt
  • expressing the fact that goal g requires the
    cooperation
  • between actor1 (dependee) and actor2 (depender)
  • 4. Identify two (or more) conflicting goals

Assumption The company employs appraisers to
estimate damages car owners are reimbursed of
repairs done by body shops accordingly
15
Why are goals needed ?
  • Goals help deriving purposeful requirements !
  • Goals drive the elaboration of requirements to
    support them
  • (Ross77, Dardenne91, Rubin92, Anton98, Kaindl00,
    ... )
  • Goals provide rich structuring mechanism
  • AND/OR refinement, abstraction (Dardenne91,
    Mylopoulos92)
  • Goals are roots for conflict detection
    resolution
  • (Robinson89, Boehm95, Nuseibeh94, Lamsweerde98a)

16
Where are goals coming from ?
Bottom-up (why)
Top-down (how)
Eliciting goals in not an easy task!!
17
Where are goals coming from ?
Goal identification Top-down asking HOW?
questions about goals available Screen passengers
entering in the lift flows from How to Ensure
security in the building? Bottom-up asking
WHY? questions about technical/operational
details available Why Having the ET passenger in
the conceptual schema forces to come to the
general goal of Ensuring security in the building
18
When should goals be made explicit ?
  • early phases of RE, generally
  • the sooner the better,
  • for goal-driven elaboration, validation,
    negotiation
  • but late identification as well
  • from scenarios, obstacles, conflicts
  • late why questions
  • at every step of the design process (e.g RUP)

19
Exercise (2)
Apply a bottom-up approach to the Room Booking
System to identify one or more high level goals
20
Outline
  • Goals... what? why? where? when?
  • Modelling goals
  • Formulating goals
  • Conclusion

21
Modelling goals
  • Aim to support heuristic,qualitative or formal
    reasoning during RE
  • understanding the context in which the system
    will have to function,
  • the rationale for the To-Be system,
  • deriving the system requirements from the
    explicit representation
  • of the organisations mission objectives
  • bridging organisation objectives to system
    requirements

The goal model is a goal graph build with
AND/OR links
22
Modelling goals AND/OR links
Borrowed from problem reduction methods in AI
AND decomposition/refinement
AND link meaning the father goal is satisfied
only if the children goals are satisfied AND
links help in driving the process of goal
operationalisation
23
Modelling goals AND/OR links
AND
Collect Meter Readings
Physically Collect Readings
Organise Routes
Collect Manage Readings
Produce Daily Routes
Assign Routes
Read Meters
24
Modelling goals AND/OR links
OR refinement
OR link meaning The father goal is satisfied if
one of the children goals is satisfied
Constructing OR links supports identify,
evaluate, negotiate and reason on alternatives
25
Modelling goals AND/OR links
Provide interactive bulletin board on Internet
26
Modelling goals AND/OR links
Estimate efficiently load needs
OR
Use forecast efficiently
Elicit estimation needs
Hire estimation agents
Make forecast
AND
Define estimation criteria
Define forecast periodicity
By district
Centrally
By region
Make long term forecasts
Make short term forecasts
Make shifting forecasts
27
Modelling goals AND/OR links
Operationalize goal
OR (choice)
Operationalize goal following Peris approachgt
Operationalize goal following Axels approachgt
AND (composition)
Identify hypotheses
Formulate decomposition
OR (choice)
Express Pros and Cons for each hypothesis
, Perform an OR reduction based on milestone
Perform an OR reduction based on case
28
Exercise (3)
Decompose the goal Manage Lending Books
29
Modelling goals As-Is To-Be graphs
30
Modelling goals goal types
ELEKTRA taxonomy 7 types of change
goals (Rolland99)
EXTEND
Extend current liaison procedures
IMPROVE
REPLACE
Improve customer satisfaction for new
installation request
Replace manual meter reading by remote meter
reading
INTRODUCE
ADAPT
Introduce a customer oriented culture
Automate the financial aspects for electricity
supply
31
Modelling goals goal types
Anton's taxonomy 2 main types of
goals (Anton96)
Goal Type
Maintenance Provide career tracks Coordinate
training
Achievement Create career track
portfolio Announce available course slots
32
Modelling goals goal types
Dardenne's taxonomy 3 types of behaviours 5
types of goals (Dardenne93)
Goal Type
? Q property Q will hold in all future states
? Q property Q will hold in some future state
33
Modelling goals goal types
Prat's taxonomy (Prat97)
Each class has its set of semantic functions Ex
become Qual keepObject
dissociatesourceetc.
34
Exercise (4)
Classify the following goals (Dardennes
taxonomy) Satisfy book request Provide long
borrowing period Ensure accurate
classification Notify availability Maintain as
many copies as possible Limit borrowing
period Avoid loss of books Cease lending books
manually
35
Modelling goals goal types
Soft versus hard goals
  • hard goals that the goal has been reached can be
    verified
  • ex quantitative criteria (Robinson02)
  • goal satisfaction
  • ex block speed limit, door closed while
    moving
  • soft goals whether the goal has been reached
    cannot be established in clear-cut sense
  • goal satisficing, (Mylopoulos92, Chung00)
  • ex safe transportation

36
Modelling goals AND/OR satisfycing
Qualitative framework
Passenger Transportation
G contributes positively to K - G
contributes negatively to K
(Mylopoulos92, Nixon93, Chung00)
37
Modelling goals goal links
  • Relating goals to
  • other goals
  • AND/OR satisfaction
  • AND/OR satisficing (soft goals)
  • conflict
  • other concepts
  • problem, opportunity, thread, (EKD,Bubenko94)
  • objects, (Dardenne91, Mylopoulos92, Prat97,
    Rolland98)
  • scenarios, (Fickas92, Potts95, Leite97,
    Sutcliffe 98, Haumer98, Rolland98, Anton98)
  • agents (responsibility- Kaos,Leiter01), (goal
    dependency- I,Yu93)

38
Modelling goals goal links
Improve financial results
EKD model
supports
supports
Minimise costs
Increase revenue
hinders
supports
Reduce power failures by 10 in the next 5 years
Enter new markets exploiting existing assets
39
Modelling goals goal links
Object reference
(Dardenne91, Mylopoulos92, Rolland98, ...)
40
Modelling goals goal links
Scenario coverage
41
Modelling goals goal links
Agent/goal dependency (Yu93)
hard goal, task resource dependency
42
Outline
  • Goals... what? why? where? when?
  • Modelling goals
  • Formulating goals
  • Conclusion

43
Formulating goals
  • Aim
  • to document elements of the goal model
  • to enable some form of reasoning

Informal, semi formal, formal
  • In any case informal description is required
  • to make a goal designation precise (Zave
    Jackson97)

Ex Replace manual transfer of meter
readings Capturing data of meter reading sheets
is error-prone. Introducing devices permitting
automatic transfer should reduce errors
44
Formulating goals
  • Semi formal expression of goal statements
  • goal type, parameters

Accuracy account.balance (Mylopoulos92)
Avoid train collision (Dardenne91)
Maintain Career tracks (Anton96)
45
Formulating goals
  • Linguistic approach (Prat97)
  • Goal Verb ltTargetgt ltparametergt
  • Target verb complement
  • ex Grant Verb (a loan)Target
  • The Target can be Object or Result
  • The Object pre-exists to the goal achievement
  • ex DecideVerb (on the offer)Object
  • The Result is produced by the goal achievement
  • ex CollectVerb (the offer data)Result

46
Formulating goals
  • Semi-Formal
  • Goal Verb ltTargetgt ltparametergt
  • Other parameters source, beneficiary,
    destination, means, manner, place, time,
    quantity, quality, reference
  • ex ImproveVerb (services)Oj (to our customer)Ben
    (by providing an ubiquitous cash service)Man
  • ex Respond-toVerb (a loan request)Ob presented
    (by a customer)So (in 8 days)Time

47
Formulating goals
Source where the goal originated from
(information source or physical
location) Exclude (competitor)Obj (from
market)So
Destination reverse of source Transfer
(research department)Obj (in Nice)dest
Location situate the goal in space Reduce
(delay)obj (on the ground)loc Time situate
goal in time Renew (product catalogue)obj (every
year) time
48
Formulating goals
Reference entity by reference to which a state
is preserved/reached or an action is
executed Adjust (prices) obj (to inflation rate)
ref
Quality a quality criterion that must be
preserved/satisfied Become (a big CD
exporter)qual Remain (more reliable)qual (than
competitors)ref
Quantity express a positive/negative evolution
that must occur Reduce (production costs)obj (by
10) Increase (turnover)obj (by 15)quant
(compare to last year turnover)ref
49
Formulating goals
Mean tool used for the goal achievement Present
(new enterprise products)Obj (on the Internet)moy
Manner an approach to reach the goal Define
(car models)obj (taking into account (customer
surveys)obj)man Improve (services)obj (to our
customers)ben (installing (a service to pay
invoices)obj (with an ATM )moy)man
A manner may be a goal (recursive definition of a
goal)
50
Exercise (5)
1- Elicit verbs and parameters of the following
goal statements Give more autonomy to traffic
controllers Withdraw cash from an ATM in the fast
mode Reduce air pollution Add Entity Type to E/R
schema Improve services to our customers by
providing an ubiquitous cash service with card
based ATM 2- Formulate 5 goals related to your
activity and formalise their statements with the
case template
51
Formulating goals
  • Formal specification in Kaos Achieve
    BookRequestSatisfied
  • (? bor Borrower, b Book, lib Library)
  • Requesting (bor, b)? b.subject ?
    lib.coverageArea
  • ? ? (? bcBookCopy) (Copy(bc,
    b)?Borrowing(bor, bc))

52
Conclusion Open Issues
Goal based reasoning is central to RE for -
elicitation of requirements - exploration of
alternatives - exception handling - conflict
management
Goals provide - better abstractions for
decision makers - support to pro-actively guide
the RE process - pre-traceability links
Open issues - architecture derivation - change
management - monitoring of requirements -
quality assessment
Write a Comment
User Comments (0)
About PowerShow.com