SE 05(System Modeling)
SE 05(System Modeling)
SE 05(System Modeling)
System modeling
• System modeling is the process of developing abstract models of a
system,
• with each model presenting a different view or perspective of that system.
Class operations Create record () Create record (): int #Create record (): int
Visibility notations: + , - , #
+ = public class
- = private class
# = protected
Class Diagram (cont..)
• Association
1 1* student
Teacher
• Dependency
consumer supplier
• Aggregation
(no strong dependency)
library books
• Composition
A B
• Generalization person
student teacher
Class diagram Example
Class diagram Example
Class diagram Example
Class diagram Example
Class diagram Example
Class diagram Example
Use Case Diagram
• A use case describes how a user uses a system to accomplish a
particular goal.
• use cases help ensure that the correct system is developed by capturing
the requirements from the user's point of view.
Use Case diagram Components
1. Actor: roleplay (it may be system or group of people
3. Connector: interaction
4. Generalization
5. Stereotype or relationship
Use case diagram relationships
1. <include>
• "Include" is used to extend the base use case and it is a must
condition i.e. included use case run must run successfully to complete
base use.
2. <extend>
• “Exclude" is optional use case which extends the base use case, base
use case can run successfully even without invoking/calling the
extending use case.
Use Case Diagram Example
Use Case Diagram Example
Use Case Diagram Example
Sequence Diagram
• In software engineering, a system sequence diagram (SSD) is a sequence
diagram that shows,
• particular scenario of a use case, the events that external actors generate, their
order, and possible inter-system events.
What is a lifeline?
b) The message goes from the sending object’s lifeline to the receiving
object’s lifeline
c) The dashed arrow is used either to show the return of control from a
synchronous message or to create a new entity
• Architectural models show the system and its relationship with other
systems.
• Use case diagrams and sequence diagrams may be used for interaction
modelling.
Structural models
• Structural models of software display the organization of a system in
terms of the components that make up that system and their
relationships.
• Structural models may be static models, which show the structure of the
system design, or dynamic models, which show the organization of the
system when it is executing.
A. Behavioral Model
B. Context Model
C. Structural Model
D. Object Model
MCQ
A. Structural Model
B. External Model
C. Behavioral Model
D. Data Model
MCQ
A. Data perspective
B. External perspective
C. Behavioral perspective
D. Structural perspective
MCQ
A. Deployment
B. Collaboration
C. State chart
D. All of the above
MCQ
• Which of the following diagram is not supported by UML considering
Data-driven modeling ?
A. Activity
B. Data Flow Diagram (DFD)
C. State Chart
D. Component
MCQ
• Which diagram of UML represent Interaction modeling?
A. Use Case
B. Sequence
C. State Chart
D. Both A and B
Usage of model-driven
engineering
• Model-driven engineering is still at an early stage of development,
and it is unclear whether or not it will have a significant effect on
software engineering practice.
• Pros
• Allows systems to be considered at higher levels of abstraction
• Generating code automatically means that it is cheaper to adapt systems to
new platforms.
• Cons
• Models for abstraction and not necessarily right for implementation.
• Savings from generating code may be outweighed by the costs of developing
translators for new platforms.
Model driven architecture
• Model-driven architecture (MDA) was the precursor of more general
model-driven engineering