Lecture 4 Flashcards
System modeling
and purpose:
A simplified version of a system
*Shows how a system works
*developers and stakeholders communicate
*Easier to understand systems
Perspectives in system modeling
- External - system’s interactions with environment
- Interaction - how users and systems connects
- Structural - How parts and data are organized
- Behavioral - How system responds over time
Unified Modeling Language (UML)
definition:
Language for modeling software
Unified Modeling Language (UML)
Versions:
*UML 1.0 : introduced object oriented modeling
*UML 2.0: Added more diagrams and features
Unified Modeling Language (UML)
Diagrams Types
*Structural: class, object, component, deployment, package
*Behavioral: Use case, sequence, activity, state, communication
Unified Modeling Language (UML)
Communication Principles in Software Specification
- Listen actively
- Be prepared
- Facilitate discussions
- Talk face-to-face
- Take notes
- Encourage teamwork
- stay focused
- Use visuals
- Move forward
- Negotiate wisely
Class and Object Diagrams in UML
definition:
Class diagram: Blueprint of system components.
Object diagram: Shows real examples of classes and their connections.
Class and Object Diagrams in UML
Key elements:
*Class name
*Attributes
*Methods
*Relationships
- Binary association
- n - Ary Association
- Association Class
Class and Object Diagrams in UML
Aggregation vs. Composition:
Aggregation (Weak link): Parts can exist separately, (e.g., students in a college)
Composition (Strong link): Parts depend on the whole, (e.g., rooms in a house)
Class and Object Diagrams in UML
Inheritance (Generalization):
Single: One parent class
Multiple: Inherits from multiple parents
Class and Object Diagrams in UML
Abstract Classes and Interfaces:
Abstract Class: Cannot be directly used; serves as a base
Interface: Defines behaviors multiple classes must follow.