Warm-up: Software Processes and Agile Sprint Planning Flashcards

(27 cards)

1
Q

What are the main software engineering activities?

A
  1. Specification
  2. Development
  3. Validation
  4. Evolution
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Draw the diagram relating to requirement specification. Including: Requirements elicitation and analysis, Requirements specification and Requirement validation.

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

Draw the key steps in development.

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

Draw the validation diagram steps.

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

Draw the evolution diagram steps.

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

What is the diffenrences between software and systems engineering? (Ouline 4 sub)

A

Systems Engineering also includes:
* Software
* Hardware
* Deployment to physical environment
* Human-in-the-loop

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

Draw the diagram of the software engineering process of Waterfall.

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

Name the pros (2) of the waterfall process and what they are used to design (2).

A

Pros:
* Rigid formal process
* Precise plan-driven

Used to design:
- Embedded systems
- Safety-critical
systems

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

Give the con (1) of the waterfall process and what issues (2) it implies.

A

Activities are isolated:
- Late-changing requirements require
a lot of rework!
- Promotes “silo” mindset

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

Draw the diagram of the software engineering process of Incremental Development.

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

Name the pros (2) of the incremental development process and what they are used to design (3).

A

Pros:
* Flexible
* Informal
Fits well:
- Consumer software
- Web-based systems
- Mobile apps

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

Give the con (1) of the Incremental process and what issues (3) it implies.

A

Con:
Too Flexible
Issues:
- Large organizations with many teams
struggled to adopt
- Nowadays even safety-critical
systems industry is
iterative
- Wrong architecture degrades quickly

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

Name all the Principles of the Agile Manifesto (4)

A
  1. Individuals & interactions > Processes & tools
  2. Working software > Comprehensive documentation
  3. Customer collaboration > Contract negotiation
  4. Reacting to change > Following a plan
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Within the Principles of the Agile Manifesto explain:
1. Individuals & interactions > Processes & tools

A

Build projects around motivated individuals
* Give them support they need
* Trust them to get the job done
Face-to-face conversation is the most effective method of
conveying information
* Applies to inter- and intra-team communication

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

Within the Principles of the Agile Manifesto explain:
2. Working software > Comprehensive documentation

A

Working software should be the primary measure of progress
* Iterate on prototypes that deliver Minimum Viable Products (MVPs)
Top priority is customer satisfaction
* Achieved through early and continuous delivery of valuable software
Simplicity is essential
* Maximizing the amount of work NOT done

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

Within the Principles of the Agile Manifesto explain:
3. Customer collaboration > Contract negotiation

A

Developers must work together with other team members
* Daily interaction throughout the project
Deliver working software frequently every:
* Month, Week, Day, Hour
* Preference is given to shorter timescales!
Project cadence should be sustainable
* Stakeholders should maintain a constant pace

17
Q

Within the Principles of the Agile Manifesto explain:
4. Reacting to change > Following a plan

A

Changing requirements are welcomed
* Even late in development!
Continuous attention to technical details
* Good design enhances “agility”
Team regularly reflects on how to become more effective
* Behavior is adjusted accordingly

18
Q

Explain the Iterative approach from Concepts in Agile Project Planning

A
  • Release planning
  • looks several months ahead, which features
    should be in a release
  • Sprint / Iteration planning
  • plan next increment of system – typically 2-4
    weeks
  • Examples: Scrum, Kanban, Mixed, …
19
Q

Explain Sprints are… from Concepts in Agile Project Planning

A
  • Units of time for agile (scrum-based) software projects
  • Time-boxed rather than story-bound
20
Q

How long are sprints?

A
  • From one week to one month (mode: two weeks)
  • For your project, we will adopt 2-3 week sprints
21
Q

How are sprints organized?

A
  • Sprints begin with a planning session (backlog tasks are selected)
  • End with a retrospective (can we improve the process for the next sprint?)
22
Q

Explain backlogs from Concepts in Agile Project Planning

A

The backlog is a list of outstanding tasks yet to be completed
* New tasks can be added, priorities can be changed
* But a task / user story is never removed from backlog
* Ordered by priority—tasks to which team members assign greater importance are addressed first

23
Q

Explain User stories are… from Concepts in Agile Project Planning

A
  • User requirement written in customer’s language
  • Short descriptions of functionality explained from the perspective of a type of user
    A useful user story template is of the form…
  • As a <type>, I would like <feature> so that</feature></type>

<rationale>
* E.g.: “As a course instructor, I would like to add content to a
course so that enrolled students can access it on demand”
</rationale>

24
Q

Explain Epics are… from Concepts in Agile Project Planning

A
  • Long-term objectives in agile software projects
  • Composed of a set of related user stories that may span multiple sprints
25
Explain Story Points from Concepts in Agile Project Planning
* Story Points: Unit of effort estimation * Purpose: know how long it takes to complete the story * Examples: * Small standard story: 1, Complex stories: 2, 4, 8,... * Planning poker: each participant votes for effort, then it is discussed 0, 1, 2, 3, 5, 8, 13, 20, 40 and 100
26
Explain Velocity from Concepts in Agile Project Planning
How many ranked user stories can be completed in a given time? * counted in the unit of story points * gives an idea about the capacity of the development team
27
Name the 4 types of Meetings in Scrum
1. Sprint Planning 2. Daily Scrum (Stand-up) 3. Sprint/Iteration Review 4. Sprint Retrospective