Domain 8: Programming Concepts Flashcards

1
Q

Programming language instructions that are written in text must be translated into machine code before execution by the CPU

A

Source Code

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

Source code functions that can be called from classes other than the classes to which they belong

A

Private functions

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

Uses programs to assist in the creation and maintenance of other computer programs

A

Computer-aided software engineering (CASE)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q
  • Type of Computer-aided software engineering (CASE) software
  • Supports only specific task in the software-production process
A

Tools

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q
  • Type of Computer-aided software engineering (CASE) software
  • Supports one or a few software process activities by integrating several tools in a single application
A

Workbenches

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

Type of Computer-aided software engineering (CASE) software

Support all or at least part of the software-production process with a collection of Tools and workbenches

A

Environments

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

A software development sequential model in which each phase is followed by the next phase

A

Waterfall Model

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

Similar to waterfall method but each phase overlaps

A

Sashimi Model

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q
  • Iterative and incremental process, rather than the linear process is found in other software development models
  • Breaks up work into smaller units allowing work to be done more quickly with less upfront planning
A

Agile

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q
  • Agile development method
  • Framework for product development that provides teams a means to establish a hypothesis of how they think something works , try it out, reflect on the experience, and make appropriate adjustments
A

Scrum

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q
  • Agile development method
  • Programmers work in teams
  • Relies on constant communication with customers and fellow programmers
A

XP (Extreme Programming)

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

Uses linear development concepts but adds an interactive process that revisits four phases multiple times during the development life cycle to gather more detailed requirements

A

Spiral

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q
  • Functional components of the code being developed in parallel and then integrated to produce the finishing product
  • No planning phase; instead planning is done as a software is written
A

Rapid application Development (RAD)

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

Customer facing group that focuses on the entire lifecycle of a project

A

Integrated product team (IPT)

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

Allows an application to communicate with another web application, database, network, etc.

A

Application Programming Interface (API)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q
  • Failure state implemented into a program
  • Puts system into a high level of security until admin can diagnose the problem and restore the system to normal operation
  • i.e. Blue Screen of Death in Windows OS
A

Fail-secure failure state

17
Q
  • Failure state implemented into a program

- Allows users to bypass failed security controls

A

Fail-open state

18
Q

Provides a graphical illustration of a schedule that helps to plan, coordinate, and track specific tasks in a project

A

Gantt Charts

19
Q

Project scheduling tool used to judge the size of a software product in development and calculate the standard deviation (SD) for risk assessment

A

Program Evaluation Review Technique (PERT)

20
Q
  • Software change management process

- Allows users to request modifications, managers can conduct cost/benefit analysis, and developers can prioritize tasks

A

Request Control

21
Q
  • Software change management process
  • Used by developers to recreate the situation encountered by the user and analyze the appropriate changes to remedy the situation
A

Change control

22
Q
  • Software change management process
  • Code is double checked and any code inserted as an programming aid during the change process (i.e. debugging code back doors) is removed before being pushed into production
A

Release control

23
Q

What is the purpose of Configuration Management?

A

Process used to control the version(s) of software used throughout an organization and to formally track and control changes to the software configuration

24
Q
  • Configuration Management component

- Admins document the configuration of covered software products throughout the organization

A

Configuration Identification

25
Q
  • Configuration Management component

- Changes to software versions are made in accordance with the change control and configuration management policies

A

Configuration Control

26
Q
  • Configuration Management component

- Formalized procedure used to keep track of all authorized changes that take place

A

Configuration Status Accounting

27
Q
  • Configuration Management component
  • Conducted to ensure that the actual production environment is consistent with the accounting records and that no authorized configuration changes have taken place
A

Configuration Audit

28
Q
  • Software testing method
  • Examines the internal logical structures of a program and steps through the code line by line, analyzing the program for potential errors
A

White-Box Testing

29
Q
  • Software testing method
  • Examines the program from a user perspective by providing a wide variety of input scenarios and inspecting the output
  • Testers do not have access to the internal source code
A

Black-Box Testing

30
Q
  • Software testing method
  • Examines the software from a user perspective
  • Testers have access to the internal source code
  • Testers do not analyze the inner workings of the program during their testing
A

Gray-Box Testing

31
Q

Accumulated knowledge base from experts on a particular subject used to make future decisions using a series of “if/then” statements

A

Expert Systems

32
Q
  • Expert Systems Component

- Collection of hundred or thousands of expert assertions

A

Knowledge base

33
Q
  • Expert Systems Component

- Analyzes info in the database to arrive at the appropriate decision

A

Inference engine

34
Q

Algorithmically analyzes and learn directly from data, developing and updating models of activity

A

Machine Learning

35
Q
  • Machine Learning Category

- Dataset contains the correct answers allowing the algorithm to develop a model that can be applied to in future cases

A

Supervised learning

36
Q
  • Machine Learning Category

- Dataset does not contain the correct answers instead the algorithm is asked to develop a model independently

A

Unsupervised learning

37
Q

Chains of computational units are used in an attempt to imitate the biological reading process of the human mind

A

Neural networks