Design Process (Lesson 8) Flashcards
SDLC stands for?
System development life cycle
The ___ phase defines a program’s goals.
analysis phase
The ___ phase defines specifics of how to build a program.
design phase
The ___ phase involves writing the program.
implementation phase
The ___ phase checks that the programs correctly meets the goals.
testing phase
A programmer is asked to make a finance software for an accounting firm that helps them with calculations. He decides that this finance software will support the five most common statistical calculations used in finance: mean, median, mode, max, and min.
What SDLC phase is this?
analysis; the problem that must be solved is presented and goals are thought of
A programmer making a weight loss app for joggers decides it will respond to voice command input; the user speaks a command to invoke each of the algorithms that calculate approximate calories burned, time spent at rest, or distance traveled.
What SDLC phase is this?
design; he has started to define the specifics of how the program will be built
A programmer begins writing functions using statements in a spell checking software. These functions compare an input word to common typos he has organized in an array. If there is a match it returns a true statement and outputs “Typo detected”
What SDLC phase is this?
implementation; the writing the program has begun.
When working on a project a programmer checked that each function for her software was working properly.
What SDLC phase is this?
testing; they have begun ensuring the program meets the initial goals.
A program can be built by carrying out the SDLC phases in a linear sequence, known as the
Waterfall approach
A program can be built by doing small amounts of each SDLC phases in sequence, and then repeating is known as the
Agile approach (AKA spiral approach)
Which approach is more responsive to user feedback about a program?
Agile
In which approach would carrying out one phase, like implementation, likely take longer?
Waterfall
A grouping of data, and functions that can be performed on that data, in order to keep them easy to understand
Objects
Programs commonly are not viewed as variables and functions/methods, but rather as ___
Objects
___ means to have a user interact with an item at a high-level, with lower-level internal details hidden from the user.
Abstraction
ADT stands for what?
abstract data type
a data type whose creation and update are constrained to specific well-defined operations.
abstract data type (ADT)
A code design for creating an object that is composed of data members and functions that operate on those data members.
class
Objects strongly support ___, exposing only certain functions to a user.
abstraction
A modeling language for software design that uses different types of diagrams to visualize the structure and behavior of programs.
Universal Modeling Language (UML)
UML stands for what?
Universal Modeling Language
A ___ visualizes static elements of software, such as the types of variables and functions used in the program.
structural diagram
A ___ visualizes dynamic behavior of software, such as the flow of an algorithm.
behavioral diagram
A ___ is a flowchart used to describe the flow of an activity or set of activities.
activity diagram
Should a behavioral diagram or a structural diagram should be used for the following?
A list of components necessary to build an online shopping system.
Structural; A list of components describes the system’s structure, not behavior.
Should a behavioral diagram or a structural diagram should be used for the following?
An overview showing how a customer uses a particular software product.
Behavioral; A diagram showing how a customer uses a program would describe the customer’s behavior, so a behavioral diagram is best.
Should a behavioral diagram or a structural diagram should be used for the following?
A flowchart illustrating a program’s logic, including operations, branches, and loops, for converting a multiple temperature measurements from C to F.
Behavioral; A flowchart/activity chart, illustrating an algorithm’s operations is a behavioral UML diagram.
A behavioral diagram used to visually model how a user interacts with a software program.
use case diagram
Actions from users and the accompanying actions in software, as well as connections between different components of the software, are illustrated in a ___. Often used to specify behavioral requirements of programs.
use case diagram
A UML ___ is a structural diagram that can be used to visually model the classes of a computer program, including data members and functions.
class diagram
A behavioral diagram that shows interaction between software components and indicates the order of events.
sequence diagram
The analysis phase of each approach commonly produces a ___, a document describing all requirements for the software product.
software requirements specification (SRS)
Programs may be developed in various phases known as the ___
SDLC