Midterm Study Guide - Computer Science

advertisement
Midterm
Study Guide
COP 4331 and EEL4884
OO Processes for Software Development
© Dr. David A. Workman
School of EE and Computer Science
University of Central Florida
February 26, 2010
Terms
• Software Process and
Engineering Terms
Software Engineering
Computer Science
Software Process Model
Software Process
Water Fall Model
Spiral Model
Software Life Cycle
Software Development Cycle
Requirements Elicitation
Requirements Elaboration
Architectural Design
Detailed Design
Implementation
Code & Unit Test
Integration and System Test
Delivery & Installation
Maintenance
• Unified Process and UML Terms
Class and Object Diagram (COD)
Use Case Diagram (UCD)
Communication Diagram (CMD)
Activity Diagram (ACD)
Generalize/Specialize Relation
Association Relation
Composition Relation
Aggregation Relation
Includes Relation
Extends Relation
Uses Relation
Use Case
Actor
• Design Focus Areas
Module
Decomposition Principles
Architectural Design
Data Design
Interface Design
Module Design
February 26, 2010
• Design Properties
and Techniques
Abstraction
Procedural Abstraction
Data Abstraction
Information Hiding
Data Encapsulation
Reusability
Control Distribution
(c) Dr. David Workman
•OO Concepts
Object
Active Objects
Passive Objects
Class
Abstract Class
Concrete Class
Message
Analysis Class
Boundary Class
Entity Class
Control Class
Polymorphism
Dynamic Binding
Static Type
Dynamic Type
Overriding
Overloading
Will be covered
In Thursday's
Lecture. Some
will be included
on the exam.
2
C++ Concepts and Features
•
Classes
–
–
–
–
–
–
•
How to declare and implement?
How to define subclasses?
Access or visibility attributes and qualifiers
Inherited attributes and methods
Virtual methods, Polymorphism & Runtime binding
Overriding vs. Overloading
OO Data Protocol
–
–
–
–
External ASCII image reflects declaration of class and its data members
Extract, Get, Insert, Put methods (what they do, how they are structured)
Extraction and Insertion operators (>>) and (<<).
Review Solution 3 of Grocery/Produce example
February 26, 2010
(c) Dr. David Workman
4
Unified Process and UML Concepts
•
Use Case Model
–
–
–
–
–
•
Purpose
Use Case Diagrams, Activity Diagrams, Communication Diagrams
Actors
Use Cases
Relationships (association, includes, extends, generalize/specialize)
Analysis Model
– Purpose
– Contrast with Use Case Model
– Class Diagrams (Boundary, Control & Entity Classes) (Static view),
Communication & Sequence Diagrams (Dynamic view)
– Object and Class relationships
(Composition, Aggregation, Affiliation, Gen/Spec, Association, InstanceOf )
•
Data Flow Diagrams
–
–
–
–
External Entities
Process Bubbles
Stores
Data Flows
February 26, 2010
(c) Dr. David Workman
5
Download