CS 3321: Software Engineering - Chapter 1 Flashcards

0.0(0)
Studied by 0 people
call kaiCall Kai
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
GameKnowt Play
Card Sorting

1/27

flashcard set

Earn XP

Description and Tags

These vocabulary flashcards cover the scope, history, economic aspects, and life-cycle models of Software Engineering, as well as the transition from the structured paradigm to the object-oriented paradigm.

Last updated 2:05 AM on 5/20/26
Name
Mastery
Learn
Test
Matching
Spaced
Call with Kai

No analytics yet

Send a link to your students to track their progress

28 Terms

1
New cards

Software Engineering

A discipline whose aim is the production of fault-free software, delivered on time and within budget, that satisfies the client’s needs.

2
New cards

1968 NATO Conference

A conference in Garmisch, Germany, whose aim was to solve the software crisis.

3
New cards

Software Crisis

The historical state of software production where products were delivered late, over budget, and with residual faults.

4
New cards

Standish Group Data

Data from 2006 indicating that successful projects represented just over one in three cases.

5
New cards

Life-cycle model

A theoretical description of the steps (phases) to follow when building software.

6
New cards

Life cycle

The actual steps performed on a specific software product.

7
New cards

Waterfall Life-Cycle Model

The classical model of software development phases introduced in 1970.

8
New cards

Requirements phase

The classical phase dedicated to exploring the concept and eliciting the client’s requirements.

9
New cards

Analysis (specification) phase

The phase dedicated to analyzing client requirements and drawing up a specification document defining "what the product is supposed to do."

10
New cards

Design phase

The phase comprising architectural design and detailed design to determine "how the product does it."

11
New cards

Implementation phase

A phase consisting of coding, unit testing, integration, and acceptance testing.

12
New cards

Postdelivery maintenance

The process of making changes to a software product after it has been delivered and installed.

13
New cards

Classical Maintenance Definition

A temporal definition where an activity is classified as development or maintenance based on when it is performed relative to installation.

14
New cards

Modern Maintenance (ISO/IEC 1995 definition)

The process that occurs when a software artifact is modified because of a problem or because of a need for improvement or adaptation, regardless of timing.

15
New cards

Corrective maintenance

Maintenance activities performed to fix software faults.

16
New cards

Perfective maintenance

Maintenance activities performed when a client wants to increase the functionality of a software product.

17
New cards

Adaptive maintenance

Maintenance activities performed to adjust the software to changes in its operating environment.

18
New cards

Regression testing

Testing required when correcting faults late in the life cycle to ensure no new faults were introduced.

19
New cards

Structured paradigm

A paradigm that is either action-oriented (e.g., data flow diagrams) or data-oriented (e.g., entity-relationship diagrams), but not both.

20
New cards

Object

A software component that incorporates both data and the actions that are performed on that data.

21
New cards

Information Hiding

An object-oriented principle where the implementation details of an object's data are hidden from external modules.

22
New cards

Encapsulation

The grouping of everything related to a real-world item being modeled into a corresponding independent software unit.

23
New cards

Responsibility-Driven Design

Also called design by contract; a design approach where messages are sent to an object's method without the sender knowing the object's internal structure.

24
New cards

Analysis/Design "Hump"

The jolt or disconnect in the structured paradigm between determining "what" (analysis) and "how" (design).

25
New cards

Commercial off-the-shelf (COTS) software

Standard software products that are sold to the general public.

26
New cards

Linus's Law

An open-source software principle stating, "given enough eyeballs, all bugs are shallow."

27
New cards

Attribute

The generic term for the data component of an object, also known as a state variable, instance variable, or field.

28
New cards

Method

The generic term for the action component of an object, also known as a member function.