• Shuffle
    Toggle On
    Toggle Off
  • Alphabetize
    Toggle On
    Toggle Off
  • Front First
    Toggle On
    Toggle Off
  • Both Sides
    Toggle On
    Toggle Off
  • Read
    Toggle On
    Toggle Off
Reading...
Front

Card Range To Study

through

image

Play button

image

Play button

image

Progress

1/31

Click to flip

Use LEFT and RIGHT arrow keys to navigate between flashcards;

Use UP and DOWN arrow keys to flip the card;

H to show hint;

A reads text to speech;

31 Cards in this Set

  • Front
  • Back
List and define the "Five Steps in Software Development"
Requirements Specification
Analysis
Design
Implementation
Testing: Verification and Validation
Define "Requirements Specification"
Determine what the software must do to satisfy the customer's needs.
Define "Analysis"
Study the requirements to fully understand what the software must do and restate the requirements in more detailed, technical terms.
Define "Design"
Develop a plan detailing how the software will be implemented.
Define "Implementation"
Write the source code in the chosen programming language.
Define "Testing"
Test to insure all parts of the application work correctly and all requirements have been met.
Define "Software Engineering"
A disciplined approach to the design, production, and maintenance of computer programs that are developed on time and within cost estimates, using tools to help manage the size and complexity of the resulting software products.
Define "Requirements"
A statement of what is to be provided by a computer system or software product.
Define "Software Specification"
A detailed description of the functions, inputs, processing, outputs, and special requirements of a software product.
Define "Algorithm"
A logical sequence of discrete steps that describes a complete solution to a given problem computable in a finite amount of time.
Define "Driver"
A special function written to use as a testing function. It passes known inputs to selected functions and reports the return values.
Define "Stub"
A special function written to use as a testing function. A stub returns known outputs to a calling function to determine how the calling function handles the returned values.
Define "Verification"
The process of determining the degree to which software functions properly. (Did we build the software right?)
Define "Validation"
The process of determining the degree to which software does, in fact, produces results that satisfy the original requirements. (Did we build the right software?)
Define "Module"
A unit of organization of a software system.
What is "Algorithm Analysis"?
A measure of the amount of resources necessary to execute a section of code.
What is "Big O Notation"?
A notation that expresses computing time (complexity) as a term in a function that increases most rapidly relative to the size of a problem.
List from best to worst the eight standard measures used in Big O notation.
O(1) - Constant
O(log n) - Logarithmic
O(n) - Linear
O(n log n) - n log n
O(n^2) - Quadratic
O(n^3) - Cubic
O(2^n) - Exponential
O(10^n) - Exponential
What is meant by "Program Design"?
An organized plan consisting of a detailed description of the software system from the top level down to the individual functions level.
Define "Top-down" program design.
Procedural programming. The focus is on the processes.
Define "Bottom-up" program design.
Object oriented programming. The focus is on the data objects.
What is the "Requirements Definition Document"?
A document written for the customer in terms the customer will understand, stating what the product will do.
What is the "Requirements Specification Document"?
A document written for the SW designers in more technical terms that they understand, describing the information needed to design and implement the program.
What is the "Software Design Document"?
A document that contains all of the details of how the software will be implemented. It is written for the programmers.
What is the "Test Plan"?
A document written for the SW testers, including detailed testing procedures.
What is the "Statement of Work"?
A document written by the customer, outlining the requirements of what the software product should do.
What is "Top-down" testing?
Testing using function "Stubs" which mimic the actions of functions which are called by upper level functions.
What is "Bottom-up" testing?
Testing using function "Drivers" which mimic the actions of functions which are calling lower level functions.
What are the four types of software testing?
Unit - Testing single functions.
Integration - Testing how functions work together.
Acceptance - Testing against stated software requirements.
Regression - Testing after fixing bugs or adding new features.
What is "Black-box" testing?
All that is known about the software is the inputs and expected outputs. Nothing about what the software does or how things are done is known to the tester.
What is "White-box" or "Clear-box" testing?
The specifics of what the software does and how it is done is known to the tester.