Cse v Sem Ooad Unit 2
Cse v Sem Ooad Unit 2
UNIT II
For example, consider the conceptual class for the event of a purchase
transaction. We may choose to name it by the symbol Sale. The intension of a
Sale may state that it "represents the event of a purchase transaction, and has a
date and time." The extension of Sale is all the examples of sales; in other words,
the set of all sales.
12) Are domain and Data Models are the same thing?
A domain model is not a data model (which by definition shows persistent data to be
stored somewhere)
13) How a domain model is created?
Steps involved in creating a domain model :
Find the conceptual classes
Draw them as classes in a UML class diagram
Add associations and attributes
6
17) Explain with an example, the method of finding and drawing conceptual classes.
From the category list and known phrase analysis, a list is generated of candidate
conceptual classes for the domain. The list is constrained to the requirements and a
simplified version as for iteration-1. As an example the following are identified list of
conceptal classes for Process Sale scenario :
Sale Cashier
CashPayment Customer
SalesLineItem Store
Item ProductDescription
Register ProductCatalog
Ledger
7
Records-current
Register Sale
Stocks
Store
Item
1 +
Fig. Multiplicity of an Association
22) Give the method of finding Associations using Common Association List.
Category Examples
A is a transaction related to another CashPayment – Sale
transaction B Cancellation - Reservation
A is a line item of a transaction B SalesLineItem - Sale
A is a product or service for a transaction Item – SalesLineItem
B(or line item) (or Sale)
Flight - Reservation
A is a role related to a transaction B Customer – Payment
Passenger - Ticket
A is a physical or logical part of B Drawer – Register
Square - Board
Seat - AirPlane
A is physically or logically contained in /or Register – Store
B Item-Shelf
Square-Board
Passenger - Airline
A is a description for B ProductDescription – Item
FlightDescription - Flight
A is known Sale – Register
/logged/recorded/reported/captured in B Piece – Square
Reservation - Flightmanifest
A is a member of B Cashier – Store
Player – monnopolyGame
Pilot - Airline
8
Maintenance - Airline
A uses or manages or owns B Cashier – Register
Player – Piece
Pilot - Airplane
A is nest to B SalesLineItem – SalesLineItem
Square – Square
City - City
Sale
dateTime
/ total : Money
24) How attributes are used in Domain Models? Explain using examples.
9
25) How domain model is further refined after the first iteration?
Generalization and specializations are fundamental concepts in domain modeling.
Conceptual class hierarchies are often inspiration for Software class hierarchies that exploits
inheritance and reduce duplication of code.
Packages are a way to organize large domain models into smaller units.
Domain model is further refined with Generalization, Specialization,
Association classes, Time intervals, Composition and packages, usage of subclasses
10
27) What are System Sequence Diagrams?
A system sequence diagram is, as the name suggests, a type of sequence diagram in UML System
sequence diagrams, also known as SSD, are actually a sub-type of sequence diagrams, whose style
and notation is dictated by the Unified Modeling Language. This language provides a toolkit for
diagram creators to make and read diagrams that are comprehensible regardless of location or
industry. Standard sequence diagrams show the progression of events over a certain amount of time,
while system sequence diagrams go a step further and present sequences for specific use cases. Use
case diagrams are simply another diagram type which represents a user's interaction with the
system.
A system sequence diagram (SSD) illustrates input and output events. An SSD shows – for one particular
scenario of a use case –
• the events that external actors generate,
• their order, and
• inter-system events
The system is treated as a black-box. SSDs are derived from use cases; SSDs are often drawn for the main
success scenarios of each use case and frequent or complex alternative scenarios. SSDs are used as input for
object design
System Events and System Operations: System operations are the operations that the system as a black box
component offers in its public interface. These are high-level operations triggered by an external input event /
system event generated by an external actor. During system behavior analysis, system operations are
assigned to a conceptual class System
Most elements we cover in use case diagrams remain in use throughout a system sequence diagram,
including:
Objects - this box shape with an underlined title represents a class, or object, in UML. Within
a SSD, this shape models the system as a black box (a system with inner workings that are not
immediately visible).
Actors - shown by stick figures, actors are entities that interact with the system, and yet are
external to it.
11
Events - the system events that the actors generate in the sequence. A dashed line, known as a
lifeline, represents events in an SSD. Lifelines may begin with a labeled rectangle shape or an
actor symbol.
12
application logic layer, and also upon elements of a lower technical service layer, for
logging and so forth.
• A logical architecture doesn't have to be organized in layers. But it's very common, and
hence, introduced at this time.
13
32. How to choose UML CASE tools?
• Choose a UML CASE tool that integrates with popular text - strong IDEs, such as Eclipse or
Visual Studio.
• Choose a UML tool that can reverse - engineer (generate diagrams from code) not only class
diagrams (common), but also interaction diagrams (more rare, but very useful to learn call
- flow structure of a program).
Many developers find it useful to code awhile in their favorite IDE, then press a button, reverse -
engineer the code, and see a UML big - picture graphical view of their design.
14