Software Modeling Flashcards
What is a model?
A model is a map that guides us in solving wicked software problems
What is a system?
A system is a collection of subsystems described by a set of models from different viewpoints
What is a subsystem?
A subsystem is a grouping of elements, some of which constitute a specification of behavior.
What is a model in model concept terms?
A model is a semantically closed abstraction of a system
What is a view?
A view is a projection into the organization and structure of a system’s model.
What is a diagram?
A diagram is the graphical presentation of a set of things connected through relationships.
List modeling views
Scenarios View Logical View Development View Process View Physical View
How is Scenarios View also called?
Use-case View
How is Logical View also called?
Design View
How is Development View also called?
Implementation View
How is Process View also called?
Interaction View
How is Physical View also called?
Deployment View
What is Use-Case View?
Describes the behavior as see by its users
What is Design View?
Classes, interfaces and collaborations that form the vocabulary of the problem and its solution
What is Interaction View?
Flow of control between system’s active components, concurrency and synchronization addressing performance.
What is Implementation View?
Artifacts used to assemble and release the physical system
What is Deployment View?
Nodes that form the hardware topology on which the system executes
Every object has what?
Identity
State
Behaviour
Where is UML used?
With development processes that are
- Use-case driven
- Architecture centric
- Iterative
- Incremental
Who created UML?
Booch
Rumbaugh
Jacobson
UML usage contexts?
Specification Language
Construction Language
Levels of Abstraction with UML?
Conceptual Level
Specification Level
Implementation Level
What is Conceptual Level?
Used to create domain models that are solution independent
What is Specification Level?
Platform and language agnostic to be further refined by implementation models
What is Implementation Level?
Diagrams describe software implementation that are language and platform specific
UML Building Blocks?
Things
Relationships
Diagrams
List Things of UML
Structural Thing
Behavioral Thing
Grouping Thing
Annotational Thing
What is a Structural Thing?
Collectively called classifiers
What is a Behavioral Thing?
Are dynamic elements of UML models which represent behaviour
What is Grouping Thing?
Organize Things and behavior
What are Annotiational Thing?
Things that are explanatory elements of the model
What is a Relationship in UML?
Relate things to each other allowing them to communicate and use each other
What are Diagrams in UML?
Visualize meaningful groups of things to communicate a modeling intent
Types of UML diagrams?
Structural
Behavioral
What is a Structural Diagram?
Static aspects of the system, its structure.
Define / describe the structure of the system
Centered around thingsan and relationships between them
What is a Behavioral Diagram?
Describe dynamic aspects of a system
Define functionality of a system
Centered around behavioral elements
Some examples of Structural Diagrams?
Class Diagram
Object Diagram
Package Diagram
Some examples of Behavioral Diagrams?
Use-case diagram
Activity Diagram
State Machine Diagram