Week 2.2 Flashcards
What is a Model?
A model is simplification of reality.
A model is a map that guides us in solving wicked software problems
How do models contribute to Software Engineering?
Visualize the system
Specify the structure and behaviour
Guides us in construction of the system
Communicate the decision we make / have made
What is a system in modeling?
A system is a collection of subsystems described by a set of models from different viewpoints?
What is a subsystem?
Is a grouping of elements some of which constitute a specification of behavior
What is a model in modeling concepts?
A model is 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, focused on one aspect of that system
What is a diagram?
A diagram is the graphical presentation of a set of things connected through relationships
What is UML?
Stardardized graphical language for creating software models:
Visualize, specify, construct
What kind of language is UML?
It is a specification language
What is a specification language?
Specifying means building models that are precise, unambiguous and complete
What is a construction language?
Forward engineering - the generation of code from a model
Reverse-Engineering tools can help generate discover and/or update models from code
Levels of Abstraction with UML?
Conceptual Level
Specification Level
Implementation Level
What is Conceptual Level?
Analysis and modeling of the problem domain for the purpose of understanding and defining the problem to be solved.
Used to create domain models that are solution independent
What is Specification Level?
Diagrams describe platform/language independent software abstractions
What is Implementation Level?
Diagrams describe software implementation that are language and platform specific