Software Modeling and UML Flashcards
a) Software Modeling involves the use of Techniques, Methodologies, and Tools. Define the following terms as they can be used in software development.
i. Techniques:
ii. Methodologies:
iii. Tools:
i. Techniques: Specific methods or procedures used in software development to achieve a particular result or perform a task.
ii. Methodologies: Comprehensive and systematic approaches that provide guidelines and principles for software development.
iii. Tools: Software applications or utilities that assist in the development, testing, and maintenance of software.
State three (3) ways to deal with software complexity.
Abstraction: Focus on essential details and hide unnecessary complexities.
Modularization: Break down the software into smaller, manageable modules.
Encapsulation: Group related functionalities together and hide internal details.
State any Three (3) UML diagram types.
Class Diagram: Represents the static structure of a system.
Use Case Diagram: Describes the interactions between a system and its external entities.
Sequence Diagram: Illustrates the interactions between objects over time
Give an example of the following UML Elements.
i. Structural elements
ii. Behavioral
iii. Grouping
iv. Annotational
i. Structural elements: Class, Interface, Package.
ii. Behavioral: Activity, State Machine, Use Case.
iii. Grouping: Package.
iv. Annotational: Note.
State and define three (3) UML building Blocks.
Class: Represents a blueprint for objects, defining their attributes and behaviors.
Association: Represents relationships between classes, indicating how they are connected.
Package: A grouping mechanism to organize and structure model elements.