issues
search
jimin-kiim
/
OOP
Object Oriented Programming
0
stars
0
forks
source link
UML
#12
Open
jimin-kiim
opened
1 year ago
jimin-kiim
commented
1 year ago
Modeling
UML (Unified Modeling Language)
3 categories of UML diagrams
jimin-kiim
commented
1 year ago
Modeling
describing a software system at a high level of abstraction
motivation
realistic and useful systems are large and complex
systems require the work of many people
systems have an extended life cycle, hence they evolve
Systems
a set of interacting or interdependent entities forming an integrated whole.
subsystem : a system itself and a part of a larger system
common characteristics of system
structure : defined by parts and their composition
behavior : involves inputs, processing and outputs of materials, energy or information
interconnectivity : the various parts of a system have functional as well as structural relationships between each other
Model
an abstraction describing a system (or a subset)
a complete description of a system from a particular perspective
use case diagram, class diagram, object diagram, component diagram, deployment diagram, activity diagram, statechart diagram, collaboration diagram, sequence diagram
View
selected aspects of a model
views and models of a single system can overlap each other
jimin-kiim
commented
1 year ago
UML (Unified Modeling Language)
emerging standard for modeling complex object-oriented software
Unified -> "UML has become a world standard"
Modeling -> "describing a software system at a high level of abstraction"
Language -> "UML expresses idea, not a methodology"
a industry standard graphical language for specifying, visualizing, constructing and documenting the artifacts of software systems
uses mostly graphical notations to express the OO analysis and design of software projects
simplifies the complex process of software design
the purpose of diagrams is to provide views from different perspective
Why we use UML
using graphical notation, it's clearer than natural language and code. (natural language is imprecise and code is too detailed)
UML helps us to acquire an overall view of a system
UML is not dependent on any one language or technology
it's standard
good for sharing idea and the results of system design among clients, system analysis and programmers
jimin-kiim
commented
1 year ago
there are multiple aspects of a complex system
3 categories of UML diagrams
Structure Diagram
Behavior Diagram
Interaction Diagram
Structure Diagram
what things must be in the system being modeled
class diagram, component diagram, composite diagram, deployment diagram, object diagram, package diagram
class diagram
describes the static structure of the system
objects, attributes and associations
Behavior Diagram
what must happen in the system being modeled
activity diagram, state diagram, use case diagram
use case diagram
shows the functions provided by a system in terms of actors, their goals represented as use cases, and any dependencies between those use cases
activity diagram
step by step workflows
shows overall flow of control (flowchart)
state diagram (statechart diagram)
describe the dynamic behavior of an individual object as a finite state machine
Interaction Diagram
subset of behavior diagram
the flow of control and data among the things in the system being modeled
communication diagram, interaction overview diagram, sequence diagram, timing diagram
sequence diagram
describe the dynamic behavior between actors and the system and between objects of the system