Lecture 5 - The concept of agility, The Rational Unified Process (RUP) Flashcards

1
Q

Why do we need agility in ISD?

A

requirements are changing, technology evolving, unpredictable ISD process,

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

what are the downsides of traditional waterfall development?

A

inflexible when changes occur, costly when deviating from the plan in later part of development

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

Mention the 4 phases of waterfall method

A

analysis -> design -> code/test ->implementation

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

what are the agile values in the 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
5
Q

mention some important agile principles

A

satisfying customer, continuous delivery of software, welcome changing requirements, deliver working software frequently(as in sprints), close collaboration with the customer, working software is measure of progress, simplicity when developing, self-organizing teams

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

benefits of agile ISD

A

handles changing requirements, lowers cost of change, provides better visibility into projects progress, reduces risk, maximizes ROI as business value is prioritized, higher quality with simpler code, delivers business value early and often

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

Is the waterfall method agile or traditional?

A

traditional, but also has agile elements as the sequential steps can step backwards as well

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

Is the agile manifesto a method?

A

No, The agile manifesto is not a method, but general guideline that can help. So even practitioners are not using methods!

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

Are Scrum and XP techniques or methods?

A

They are techniques that together with other techniques are partial elements of a method in a company - som jeg forstår det, er det fordi en method aldrig følger 100% og derfor er de teknikker, som tilsammen udgør method-in-action?

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

How can agile development work without documentation?

A

Agile want’s to avoid documentation, so the software should document itself by being build up intuitive

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

What is on-premise development?

A

On-premise development: sitting at the customer and developing the system to know how it works in practice.

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

How do you measure progress in agile?

A

delivering features is only measure of progress for agile

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

What is timeboxing? and can you give an example of how this is used in scrum or xp?

A

Timeboxing refers to the act of putting strict time boundaries around an action or activity. An example of this in scrum are the sprints that are time to 7 days or 14 days. But could also be daily standup meetings that are timeboxed 15’ each morning.

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

What is K-03 in danish standard contracts?

A

The agile contracts for government projects

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

How would you explain agile ISD using the fitzgerald framework?

A

Context is the reason for having agile methods.
The IT-system is influenced by agile, if the requirements form plan-based(mentioned in the beginning) are present, then agile isn’t needed.
Role of method is influenced by agile. If we change the job descriptions to be more agile, the political role also changes. Can also empower the software developpers.

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

What is refactoring code and what are the advantages of this?

A

Code can become messy, when you have no structure. Refactoring is necessary to decompose the whole system, and create the architecture based on this, so it’s exposed to our new learning. But often customers don’t want to pay for this. But for maintenance of the system, it’s a lot easier when it’s refactored.

17
Q

what is a sprint review in scrum?

A

sprint review: what did we do? with stakeholders/PO

18
Q

What is sprint retrospective?

A

sprint retrospective: how did we do it. internally with focus on the process of the development

19
Q

Mention the roles, artifacts and ceremonies in scrum?

A

roles: PO, Scrum Master, development team
artifacts: Product backlog, sprint backlog(items chosen for the specific sprint), Burndown chart
Ceremonies: Sprint Planning, Daily Scrum, Sprint Review, Sprint Retrospective
see slide for explanation of each: http://www.newtechusa.com/Resources/Scrums3333.pdf

20
Q

which techniques can be described as adaptive, iterative and predictive?

A

Scrum and XP are adaptive, while Spiral, RAD and RUP are iterative, and waterfall predictive.

21
Q

what is the rational unified process?

A

an iterative development method.
six best practices for modern software engineering:

  • Develop iteratively, with risk as the primary iteration driver (Important to notice!)
  • Manage requirements
  • Employ a component-based architecture
  • Model software visually
  • Continuously verify quality
  • Control changes (important to notice!)
22
Q

core structure of Rational Unified Process?

A

Workers (who): roles that individuals or teams are taking
 Activities (how): task of a specific worker affecting artifacts
 Artifacts (what): tangible products (information), used as an input by workers to perform an activity
 Workflows (when): a sequence of activities that produce a result

23
Q

what are the phases of Rational Unified Process?

A

Inception:you establish the business case for the system and delimit the project scope. Heavy focus on business modeling and requirements.
Elaboration: analyze the problem domain, establish a sound architectural foundation, develop the project plan, and eliminate the highest risk elements of the project. At the end of this phase, the hard “engineering” is considered complete
Construction: components and application features are developed and integrated into the product, and all features are thoroughly tested.
Transition: transition of the software product to the user community

note: in end of elaboration phase you choose whether continuing to construction and transition or abandon project.

24
Q

Core and supporting workflows in RUP?

A

Core: business modelling, analysis & design, requirements, implementation, testing, implementation
supporting: Project management, configuration/change management, environment

25
Q

benefits and drawbacks of RUP?

A

Benefits: Improved management, Regular feedback to stakeholders, Improved risk management, You implement the actual requirements, You discover what really works early
Drawbacks:  Process is too complex and can become disorganized, The process need experts, Can be very demanding on the user’s
time, Costs can increase, Needs the right working culture in the organization, Commercial angle