Week 1 Flashcards

1
Q

What are the 6 phases involved in software development activities?

A

Requirement specification
Analysis & Design
Implementation
Testing
Deployment
Maintenance

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

Which of the 6 phases is the most problematic and expensive?

A

Maintenance

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

Rationale of the waterfall method?

A

The earlier you catch a bug. the cheaper it is to fix it

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

What is the importance of post-delivery maintenance?

A

Good software is maintained

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

Advantages of the waterfall method?

A

▪ Waterfall model is easy to understand
due to its simple linear structure and
clearly defined stages
▪ Provides structure to less experienced
staff
▪ Facilitates project management
▪ It helps to define the goals and
deliverables at the early stage of the
project

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

Disadvantages of the waterfall method?

A

▪ Success depends on precise requirements
▪ No working model of the software until
the end of the life cycle
▪ High amounts of risk / uncertainty.
▪ When in a later stage, it is very difficult to
make any changes to the product
▪ Not realistic: Does not reflect real
processes
▪ Expensive

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

When to use waterfall?

A

▪ Requirements are very well known
and understood
▪ Technology is understood
▪ If you are building a new version of
an existing product (with some
exceptions)
▪ Low-risk in-house projects
▪ Small and simple Projects
▪ Government projects that heavily
regulated.

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

When to not use waterfall?

A

▪ Not a great choice for complex and
long-term project
▪ Doesn’t work for maintenance type
project
▪ When client is strict with timeline
and budget
▪ New idea that have not done before
▪ Technology is new or team doesn’t
know it.

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

What is the difference between waterfall method and the rapid prototyping method?

A

Replace requirements phase with a rapid prototype to get feedback from customer.

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

What is similar about waterfall method and the rapid prototyping method?

A

Both have only one shot for delivery at the end.

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

What are the advantages of the spiral method?

A

▪ Customers see the product as it
evolves.
▪ Risk management is part of the life-
cycle (in every iteration)
▪ Project monitoring and scheduling are
easy because of the clear phases
▪ Features can be added

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

What are the disadvantages of the spiral method?

A

▪ Iterations are very long - they could be 0.5-2
years
▪ A lot of documentation for every iteration
▪ You can’t start a phase till the other ends
▪ Need staff who are experts in risk
▪ identification and resolution
▪ Cost of the process is high (eg. time in
prototyping)
▪ Requires Stakeholder engagement

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

When to use the spiral model?

A

▪ High Risk and large systems
▪ Can be used for totally new
ideas

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

When to not use the spiral model?

A

▪ Client is not available
▪ Progress is urgent
▪ When client is strict with
timeline and budget
▪ Low risk and low budget projects
(unnecessary expenses)

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

What are the 4 business phases of RUP?

A

Inception, Elaboration, Construction, Transition

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

What are the advantages of RUP?

A

▪ Business Process tied to the development
process
▪ Tool support for gradual improvement of a
project
▪ Risk Mitigation
▪ Focus on quality of design
▪ A framework that allows the use of other
models
▪ Doesn’t need all requirements to be known at
the beginning
▪ Deliver value early (if needed)

17
Q

What are the disadvantages of RUP?

A

▪ Complicated
▪ Expensive tools are needed
▪ Only good for medium and large- scale
projects
▪ Extensive Documentation and planning (a lot
of overhead)

18
Q

When to Use the Rational Unified Process?

A

▪ Medium to large projects
▪ Budget and schedule can be
strict
▪ You need to show value early
(you can show something
working in the first iteration of
construction phase)
▪ Engineers experienced with
object-oriented design

19
Q

When to not Use the Rational Unified Process?

A

▪ Small simple projects
▪ Limited budget projects

20
Q

What are the advantages of agile methodology?

A

▪ Flexible to change and continuous
feedback which increases the change
of building the right product
▪ Customer Satisfaction
▪ Early value delivery and early to
market
▪ Team Ownership (self organizing
team)

21
Q

What are the disadvantages of agile methodology?

A

▪ May require some rework (since we
didn’t know EVERYTHING upfront)
▪ Requires close collaboration with the
client
▪ Good tools for automation are a must
have (poor ones might delay you)
▪ Not every individual/team can adopt
Agile values, setup needs trust and
communication

22
Q

When to use agile methodology?

A

▪ Lightweight methods suit small-
to medium-size projects (or
large projects divided into
components)
▪ Used for time-critical
applications and prototypes
▪ Requirements are sure to
change, new or uncertain
▪ Technology is new

23
Q

When to not use agile methodology?

A

▪ Do not have a good team
(attitude and skills)
▪ For large projects where
customer needs specific
documentation and formal
communication
▪ Large Systems that can’t be
broken into modules for smaller
teams