Midterm Flashcards

1
Q

What are the three informed efforts that distinguish between ad hoc dev. and engineering software?

A

Design, Quality, and Ethics.

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

What are the three charts?

A

Gantt, PICK, and Burndown

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

What is a PICK chart used for?

A

Determining what task to work on depending on difficulty and payoff.

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

What is a Gantt chart used for?

A

Shows you what has to be done and by when.

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

What is a Burndown chart used for?

A

Showing the remaining tasks versus the time required to complete it.

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

What are the types of tools Software Engineers use to help develop software?

A

Version control (Git)
Automated testing (Maven)
Product and Project tracking (Github)

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

What is the EDI?

A

Equity, Diversity, and Inclusion

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

What are the three layers to the Ethical Design Pyramid? (Top to bottom)

A

Human Experience
Human Effort
Human Rights

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

What are the stages of the Software Lifecycle? And which stage ends the cycle?

A

Support
Requirements
Architecture
Design
Implementation
Testing
Deployment

Finally:
Decomision

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

What is Iterative Development?

A

You start out with a conceptual
vision of what needs to be built.
And you fill in the
details as you build.

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

What is Incremental Development?

A

You know exactly what the result should look like.
And you build it piece by piece.

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

Is RUP Incremental or Iterative?

A

Both!

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

What is RUP?

A

A processing model that breaks the design process into Development Workflows and Supporting Workflows. Both of which break into other categories.

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

What is the Agile Manifesto?

A

An improvement on RUP with significantly less modeling and documentation.

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

Name all the Agile Manifesto value statements.

A

Value:
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
16
Q

What are the goals of good structural design?

A

Easy to communicate & develop
Easy to maintain and extend
Easy to reuse

17
Q

What are the 2 characteristics that need to be balanced to maintain good structural design?

A

Simple and Flexible

18
Q

What 4 characteristics of a codebase help to achieve the goals of good structural design?

A

Manageable Size

Manageable Complexity

High Cohesion with Components

Low Coupling

19
Q

Briefly describe 3 different reasons why establishing requirements for a software application is hard.

A

Customers dont’t always know what they want.

Customers can’t always agree on what they need.

Developers can’t always understand what customers need.

20
Q

What are the fundamental events in SCRUM?

A

Sprint Planning

Daily Scrum (Stand-up)

The Sprint

The Sprint Review

The Retrospective

21
Q

List some of the influences on prioritization of requirements.

A

Current user views.
Technical Capability.