POM L14 Flashcards

1
Q

What are root causes for Antipatterns (Most common mistakes in software
project management and development) ?

A
  1. Insufficient communication with the client
  2. Unfulfilled requirements
  3. Insufficient testing
  4. Cost overruns and schedule slips
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Reason for these mistakes: “The 7

deadly sins” ?

A
#Haste: Solutions based on hasty
decisions
#Pride: Not invented here 
#Ignorence : Failure to seek understanding 
#Narrow-Mindedness: The refusal to use solutions
that are widely known 
#Sloth: poor decisions based on easy answers
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Wha is a pattern ?

A

A pattern has two parts: A

Problem and a Solution

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

What is an Antipatterns ?

A
#Antipatterns consists of a
problem and two solutions:
a) The Problematic Solution:
      describes a commonly
occurring solution that
generates overwhelming
negative consequences
b) The Refactored Solution:
      describes how the problematic
solution can be reengineered to
avoid these negative
consequences and lead to
benefits again
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

What are 3 types of Antipatterns (Anti Pattern

Taxonomy) ?

A

Development Antipatterns

• Focus on the viewpoint of the software developer
• Issues: Software refactoring,
#Architecture Antipatterns
• Focus on the viewpoint of the software architect
• Issues: Partitioning of subsystems and components, platform

• Focus on the viewpoint of the software project manager
• Issues: software project
management,

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

Why using Antipatterns ?

A

Patterns are good for problems which have no solution yet

#Patterns emphasize the use of proven good design
principles
#Antipatterns are good for emphasizing the recognition of
mistakes in existing systems, software projects and
software processes

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

What is Incremental Reengineering (Refactoring) ?

A
#The process of incrementally changing the bad structure of a
system, project or organization into a better structure with the use
of antipatterns
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Explain Analysis Paralysis Antipattern (also Symptoms & Causes, refactored solution)!

A

• Goal to achieve perfection and completeness of the analysis phase
• Generation of very detailed models
• Assumption, that everything about a problem can be known a priori
# Sympthoms: Cost of analysis exceeds expectation without a predictable
end point
#Causes :Management assumes a waterfall progression of phases.
#Refactores Solution: iterative development, vertical prototryping

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

Explain Plan-Driven Software Development !

A
#Linear, Phase-oriented software development,  no itteration
#Goal: Minimize risk by upfront planning
#Analysis >>Design >> Implementation
#eg. Waterfall modell
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Explain Functional Decomposition Antipattern !

A
#  Every thing is a function
# Management of complexity, change management is difficult
# Symptoms: Code is hard to understand
# Causes : Designers trained with a functional decomposition method  
####Refactored solution : Object oriented analysis
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Explain Corncob Antipattern !

A
#  Corncobs are difficult people
# Corncobs usually create additional stress in what may be an already overstressed environment especially in the software projects
#Reasons: Individual personality 
#Root causes : Pride, Avarice, Ignorance,
Narrow-Mindedness
# Corncobs focus much more on
politics than technology
#Refactored Solution :
a) Transfer the responsibility
b) Corrective interview with person: 
c) Friendly outplacement
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Explain Death By Planning !

A

Many projects fail from either over-planning or underplanning.

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

Name and explain two types of plans by Death By Planning!

A

Glass Case Plan: Gives the management a ‘comfortable

view’ of delivery, often before the project starts
- symptom: lack of an up-to-date project plan
- Consequence : cost overrun,
-Causes: Overambitious initial planning
#Detailitis Plan: Over-planning in projects, resulting in
delays, staff attrition, and project failure.
Effective delivery is assumed to be achieved by a high
degree of control via continuous planning
-Symptoms: A lot of time is spent on planning
-Causes : Overambitious continuous planning

. Estimate the tasks in terms of effort and elapsed time
• Evaluate captured against the project plan

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

Explain Mushroom Management Antipattern ( Pseudo-Analysis) !

A

Requirements change frequently

#Bad understanding of the requirements leads to the poor design decisions
# Management policy isolates
the developers from the
system’s end users , Management assumes that
the requirements are stable
and well understood by
developers.
## Refactored solution:
- Introduce incremental and iterative development
- Include a user in the development process

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

What is Pseudo-Analysis

A

Analysis that takes place without end-user participation.

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