Chapter 1 - Introduction to Software Design Flashcards

1
Q

dynamic multi-dimensional arrays

A

arrays of pointers

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

software life cycle (6)

A
  1. Planning
  2. Requirements
  3. Analysis and Design
  4. Implementation
  5. Unit and Integration Testing
  6. Operation and Maintenance
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

top-down design

A

stepwise refinement

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

object-oriented design (OOD)

A

focuses on data elements and operations together, identify objects that participate in the problem then identify how the objects interact to form a solution (messages) then provide an operator (function) to process the message

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

abstraction

A

powerful technique that helps programmers deal with complex issues in a piecemeal fashion

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

procedural abstraction

A

the concept that procedural development should separate the concern of what is to be achieved from the details of how it is achieved

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

data abstraction

A

specifies the data objects and the operations to be performed on these objects without being overly concerned with how the data objects will be represented and stored in memory

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

UML

A

Unified Modeling Language, diagrams that illustrate the interaction between classes and between classes and external entities

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

information hiding

A

the process of “hiding” the details of a class’s implementation

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

waterfall development model

A

flaw is that it assumes that each stage can be completed correctly and fully before advancing to the next stage

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

dot operator

A

CANNOT be overloaded

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

class

A

data type and pattern for creating objects, must have a class definition and a class implementation

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

class definition

A

describes the names of the class operations and the internal data contents

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

class implementation

A

provides the implementations of the operands (the member functions)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

data members

A

data fields, primitive or class types, instance variables (each class instance has its own storage)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

member functions

A

operators, functions or methods, operates on any object of the class of which it is a member and has access to all the data members of a class for that object

17
Q

friend function

A

has the same access to the private and protected data as the class member functions, is not two directional

18
Q

ADT

A

Abstract Data Type, encapsulation of data and methods, does NOT have an implementation, allows for reusable code, represented by a class consisting of abstract functions

19
Q

precondition

A

a statement of any assumptions or constraints on the operation’s data that are expected to apply before the operation is performed

20
Q

postcondition

A

a statement that describes the result of performing and operation