Software Process Flashcards

1
Q

Types of life cycle models

A

1) Sequential Models: Waterfall Model
2) Phased Models: Evolutionary, Incremental
3) Iterative Models: Spiral
4) Other Models: Agile, Formal Transformation, Component-Reuse

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

Sequential models: waterfall

A

requirements - design - implementation - integration - operation/maintenance

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

Phased models: Evolutionary Development

A

work with customer making various different versions of a system until it is complete

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

Phased models: Incremental Development

A

delivery is broken down into increments with each
increment delivering part of the required functionality

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

Phased models: Iterative Development

A

Process is represented as a spiral rather than as a sequence of activities with backtracking. each loop represents a phase.

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

Agile

A

lightweight and flexible way to make software that is people based rather than plan based

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

agile manifesto

A

● Individuals and interactions over processes and tools
● Working software over comprehensive documentation
● Customer collaboration over contract negotiation
● Responding to change over following a plan

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

formal methods model

A

a set of activities that leads to formal mathematical specification of computer software

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

Z Formal specification Language

A

applies types sets, relations, and functions within the context of first-order predicate logical to build schema- a means for structuring the formal specification (IDK GAY AND PROBS NOT IMPORTANT)

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

Software Evolutionary Changes

A

Maintenance:
1. repair software faults
2. adapt software to dif environment (ex. upgrade OS)
Reengineering:
1. add or modify system functionality
2. improve system structure/performance

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

CASE (Computer-Aided Software Engineering) classification

A

● Functional perspective: Tools classified according to their specific function
● Process perspective (activity-based): Tools classified according to process activities that are supported
● Integration perspective: Tools classified according to their organization into integrated units

ex. group into either specification, design, implementation, verification

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

Case Integration

A

Tools: support individual process tasks
Work benches: support process phase
Environment: support all or main part of software process

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