Download week5a

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project

Document related concepts
no text concepts found
Transcript
Jackson System
Development
From Models to Networks
SSPD
1
Entity Models
• See web site for some JSD notes.
• Events  entities
• Entities are the components of our
model
• e.g., CUSTOMER, VEHICLE,
INVOICE
• Describe using Entity Structure
Diagrams
SSPD
2
Entity Structure Diagrams
The ESD shows the life cycle of each
entity class from birth to death.
VEHICLE
WORKING
LIFE
PURCHASE
HIRING
HIRE
DISPOSE
*
RETURN
SSPD
3
Give events meaning
• The ESDs give a meaning and context
to the events
• We use them to build our real world
model
• They form the basis of our
specification and our system design
SSPD
4
Some Considerations
• Entities with ambiguous/deeply nested
selection trees can be simplified using
backtracking techniques.
• Real world concurrency is not shown
by a single ESD. We need marsupial
entities to solve this problem
SSPD
5
Backtracking
• The normal ESD shows a life history
which doesn’t allow for abnormal
termination.
• Redrawing to allow for exceptional
terminal conditions makes for a messy
and hard to comprehend diagram
SSPD
6
Backtracking Example
• Consider an entity CAR
– We ORDER a car. If the order
confirmation is for the right car then we
take DELIVERy of the car.
– If the right car is DELIVERed then we put
the car in the showroom to SELL it. If the
car becomes damaged then we don’t
SELL it.
– We might draw this as:
SSPD
7
Messy
CAR ESD
CAR
check
ORDER
o.k.
DELIVER
O
RETURN
O
check
o.k.
damage?
O
O
RETURN
RETURN
O
O
SELL
SSPD
8
With backtracking
CAR
ADMIT ?
abnormal
POSIT ?
normal
ORDER
Quit !
Wrong car
DELIVER
SELL
Quit !
Wrong car
RETURN
Quit !
Damaged
SSPD
9
Marsupials
• Sometimes concurrency clouds the
issue
• We need to define new roles for the
entity = emerging marsupial
SSPD
10
SOP Example
Customer
Place
Possible
Amends
Amend
*
Deliver/
Cancel
o
Deliver
Cancel
o
• Problem: PLACE, PLACE
SSPD
11
Hidden Marsupial
• There is an entity hidden inside this
one.
• It’s really just a different role for
customer
• It represents the actions of a customer
as they relate to a single order
• Effectively, reduces data to first
normal form
SSPD
12
Marsupial emerges...
Customer
Order
Place
Possible
Amends
Amend
*
Deliver/
Cancel
o
Deliver
Cancel
o
• Remains to redraw CUSTOMER...
SSPD
13
Redrawn Customer
Customer
Action
Place
o
Amend
o
*
Deliver
o
Cancel
o
• We are now modelling the
concurrency inherent in the real world.
SSPD
14
Structure Text
• The entities can also be represented
by Structure Text (JSP Schematic
Logic).
• Complete the picture with an entity
description for each entity in our
model
SSPD
15
Entity description
Entity BOOK
– Summary: This entity models the life of a copy of a book,
from acquisition by the library through to disposal by
either sale or inter-library swap.
– Action List:
• ACQUIRE
• CLASSIFY
• LEND
• RENEW
• RETURN
• SELL
• WITHDRAW
SSPD
16
Networking
• Models of real world objects and
events complete
• Next draw a network diagram
showing the real world interactions
amongst these objects
• This network will become our system
specification.
SSPD
17