csci 387 quiz 3 Flashcards
software design and implementation is the stage in which
an executable software system is developed
you should identify software components and relationships based on
requirements
implementation is
realizing the design as a program
build vs buy: why is build problematic?
building to be used once
object-oriented design using UML: labels show
number of components (1..n means up to n)
how to identify objects
what shows behavior in different states?
scenario-based analysis
two kinds of design models
structural and dynamic
interface specification: want to be able to design objects and components
in parallel
objects may have ?
several interfaces
abstract class doesn’t have
objects
abstract classes are ?
extended; they implement the interface
interfaces define
how classes communicate
design pattern
a way of reusing abstract knowledge about a problem and its solution
pattern
description of the problem, essence of solution; should be sufficiently abstract to be reused
design patterns should make use of
object-oriented characteristics (i.e., inheritance, polymorphism)
can have multiple ? in one application
design patterns
observer pattern
separates display of object from state itself
when is the observer pattern used?
when multiple displays of state are needed
observer pattern: all displays must be update when?
the state is changed
observer pattern: object (does/does not) need to know about display formats
does not
enhancing display performance is (practical/impractical)
impractical
singleton falls under
creational
adapter falls under
structural
bridge falls under
structural
observer falls under
behavioral
strategy falls under
behavioral
design challenge of observer
observers need to know more