Final Flashcards
What are the 3 Object-Oriented Methods?
Object-Oriented Development (Booch), Object Modeling Technique (Rumbaugh), Object-Oriented SE (Jacobson)
What does UML stand for?
Unified Modeling Language, standard in system development, merges the 3 OO languages
What are 6 things UML is used for specifying/visualizing/documenting?
functions, entities with whom the software interacts, sequence of events during run-time for a function, classes & relationships, states of objects at run-time, physical architecture of the software
How are UML diagrams useful for stakeholders?
Stakeholders view the system from different perspectives using the set of UML diagrams that make up the system model
What are the 10 Common UML Diagrams?
Use case, Activity, Collaboration, Sequence, Class, Object, State Transition, Component, Deployment, Package
What are the 3 views for software systems?
Use case (interactions), static (structure), dynamic (behaviour)
What does the use case view describe?
Describes the functionality of the system from the user’s POV [use case diagram]
What does the static view describe?
Describes the entities of the system and their relationships [class, object, component, deployment, and package diagrams]
What does the dynamic view describe?
Describes the behaviour of the system (shows changes and progress) [state transition, activity, interaction (sequence and collaboration) diagrams]
What are UML tools used for?
Drawing UML diagrams, fixing errors, some code generation (in Java and C++)
What does OMG stand for?
Object Management Group
What are the Object-Oriented Concepts with UML?
Abstraction, Information Hiding, Inheritance, Polymorphism, Composition, Strong Cohesion, Loose Coupling
What is Abstraction?
Details are ignored
What is Information Hiding?
Details are hidden
What is Inheritance?
Reusability through specialization
What is Polymorphism?
Many forms
What is Composition?
Larger classes
What is Strong Cohesion?
One responsibility
What is Loose Coupling?
Low dependency
What is the object-oriented approach?
Focus on both data and actions, system state is decentralized, system viewed as a collection of interacting objects, objects communicate via message passing (method invocation)
What does a use case diagram include?
Functions of the system (set of use cases) and who will interact with them (actors [initiating and benefiting]), and relationships (extension, inclusion, inheritance)
What needs to be included in a use case diagram?
Pre-conditions, primary scenario, alternate scenarios, post-conditions
What is a scenario?
A sequence of related actions performed by the actor and system
What are the 3 Types of use case relationships?
Inclusion, Extension, Inheritance