Midterm Exam Flashcards

1
Q

What are the laws of simplicity?

A
Law 1: Reduce
Law 2: Organize
Low 3: Time
Low 4: Learn
Low 5: Differences
Low 6: Content
Law 7: Emotion
Law 8: Trust
Law 9: Failure
Law 10: The one (subtracting the obvious and adding the meaningful)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What does well-engineered mean?

A

Qualify factors (usability, reliability, safety, well constructed, use of technology, aesthetically pleasing). Cost, schedule, maintainability.

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

What is a process?

A

A process is a series of steps involving activities, constraints and resources that produces an intended output of some kind.

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

What are the common “life-cycle” activities?

A
  • Formulate the problem
  • Design, Modeling, Prototyping
  • Evaluate different solutions/ trade-offs
  • Detailed technical specifications
  • Construction or manufacturing
  • Testing/ Evaluation
  • Delivery and Maintenance.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

What are common engineering management activities?

A

Developing schedules, establishing budgets, securing and allocating resources, managing risks, tracking progress, coordinating teams.

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

Why software engineering?

A

Lots of programs being generated, little discipline, ad-hoc processes, only grew worse with technology advances.

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

When was the birth of modern project managements?

A

Manhattan Project.

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

Compare and contrast traditional vs software engineering.

A

Traditional engineering: bounded problems (specifications), operates within the framework of the immutable laws of nature, well established unviersal guidelines, competent engineers design within these limits.

Software Engineering: Software can compute all that is computable, variety of domain (applications), change & complexity.

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

What are some software engineering challenges?

A

Change & Complexity = RISK.
Change cannot be prevented, but can be managed.

complexity - moderately sized software systems quickly become too complex for a single person to understand.

  • all software processes address the management of risk.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Examples of successful teams?

A

Chris Farley and David Spade, Fantastic 4, The Manhatten Project (Average age: 25) The A-Team, Tom Brady and the Patriots

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

What is the software project need hierarchy?

A

Survival needs (project not cnaceled, team not fired, adequate physical working conditions, and so on) -> Safety Needs (meeting personal promises for schedule and functionality), Belongingness and Love ( healthy team dynamics), self-esteem (feeling productive, belief in project’s importance), self-actualization (ongoing professional development)

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

What are the five dysfunctions of a team?

A

Absence of trust, fear of conflict, lack of commitment, avoidance of accountability, inattention to results.

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

Dysfunction #1 - Building Trust

A

Trust is the foundation of teamwork and is all about vulnerability. Takes time and needs to be maintained over time. Techniques include behavioral profiling (Myers-Briggs) that helps to admit strengths and weaknesses.

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

Dysfunction #2 - Mastering Conflict

A

Good conflict among team members requires trust, which is all about engaging in unflitered, passionate debate around issues. Conflict will at times be uncomfortable. Conflict norms vary in each team.

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

Dysfunction #3 - Achieving commitment

A

Commitment requires clarity & buy-in. Clarity requires that teams avoid assumptions and ambiguity and end discussions with a clear understanding about what they’ve decided upon.

Buy-in does not require consensus. Members of great team learn to disagree with one another and still commit to a decisions.

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

Dysfunction #4 - Embracing Accountability

A

Accountability on a strong team occurs directly amoung peers. A leader must demonstrate a willingness to confront accountability. Best opportunity occurs during meetings and regular reviews of accomplishments.

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

Dysfunction #5 - Focusing on Results

A

True measure of a great team is that it accomplishes the results it set out to achieve. To avoid distractions, team members must prioritize the results of the team over their individual or organizational (dept) needs.To stay focused, team must publicly clarify their desired results and keep them visible.

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

What is tuckman’s model for team development?

A

Forming, Storming, norming, and performing.

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

What is forming?

A

The group comes togheter and gets to initially know one another and form as a group.

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

What is storming?

A

A chaotic vying for leadership and trails of group processes.

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

What is norming?

A

Eventually agreement is reached on how the group operates.

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

What is performing?

A

The group practices its craft and becomes effective in meeting its objectives.

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

What is project risk?

A

Characterized by:

  • Uncertainty
  • An associated loss
  • Manageable.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
24
Q

What is risk exposure?

A

THe product of probability and potential loss.

25
Q

What is a problem?

A

A risk that has materialized.

26
Q

What is schedule risks?

A

Schedule compression (customer, marketing, etc)

27
Q

What is cost Risks?

A

Unreasonable budgets.

28
Q

What is requirements risk?

A

Incorrect, incomplete, unclear or inconsistent, volatile.

29
Q

What are types of Risks?

A
  • Quality Risks
  • Operational Risks
  • Most of the “classic mistakes”
30
Q

What is the risk management process?

A

Risk management - Risk Assessment, Risk Control. Risk Assesment: Risk identification, Risk Analysis, Risk prioritization. Risk Control: Risk management planning, risk resolution, risk monitoring.

31
Q

How do you estimate the probability of loss?

A
  • Use team member estimates and have a risk-estimate review.
  • Use Delphi or group-consensus techniques.
  • use gambling analogy “how much would you bet”.
  • use “adjective calibration”: highly likely, probably, improbable, unlikely, highly likely.
32
Q

Risk Prioritization

A
  • Remember the 80-20 rule
  • Often want larger-loss risks higher.
  • Possibly group ‘related risks
  • Helps identify which risks to ignore.
33
Q

What are the types of unknowns?

A
  • Known Unknowns: Information you know someone else has.

- Unknown Unknowns: Information that does not yet exist.

34
Q

What are some risk avoidance?

A
  • Don’t do the project al all.
  • Scrub from system
  • Off-load to another party.
35
Q

What is risk assumption?

A
  • Don’t do anything about it, accept that it might occur, but still watch for it.
36
Q

How do you do problem control?

A

Develop contingency plans, allocate extra test resources.

37
Q

How do you do risk transfer

A

Move it to another part of the project or team, move off the critical path at least.

38
Q

How do you do knowledge acquisition?

A

Investigate, buy information or expertise about it, do research.

39
Q

What are some risk resolution strategies?

A

Risk avoidance, risk assumption, problem control, risk transfer, knowledge acquisition

40
Q

Why minature milestones?

A

Reduces risk of undetected project slippage.

Pros: Enhances status visibility, good for project recovery. Cons: Increase project tracking effort.

41
Q

What are the four pillars of rapid development?

A

Pillar 1: Avoid classic mistakes
Pillar 2: Risk Management
Pillar 3: Development Fundamentals such as experience, source, control, waterfall>
Pillar 4: Schedule oriented practice.

42
Q

What are some plan driven methodologies??

A

Personal software process, team software process, and rational unified process.

43
Q

What is a software development model?

A

It is a simplified, abstracted description of a software development process.

44
Q

What is a software development process?

A

It’s the process by which user needs are translated into a software product. Invovles translating user needs into software requirements, transforming software req into design, implementing design in code, testing the code, and sometimes installing and checking out the software for operational use.

45
Q

What is a software development practice?

A

A disciplined, uniform approach to software development process that need to be followed.

46
Q

What is the relationship between models and software processes?

A

Abstract superclass to subclass relationship. The model specifies the generally common techniques and philosophies, while the methodology overides and specializes the general specifications with details of the specific practices.

47
Q

What is the Personal Software Process?

A

Process to be followed by an individual programmer. Follows the evolutionary improvement approach. When learning to integrate PSP into his or her own process beigns at Level0 and progresses into process maturity to Level3. Each level has detailed scripts, checklists, and templates to guide the engineer through required steps.

48
Q

What are the levels of PSP?

A

PSP0: Gather data on current. Personal Measurement.
PSP1: Estimate using historical data from PSP1. (Personal Planning)
PSP2: Manage product quality.use checklists for design and code reviews. (Personal quality).
PSP3 Apply PSP2 iteratively.(Scaling up). Divides the problem into smaller section and use PSP principles as each section is implemented.

49
Q

What are the tenets of PSP?

A
  1. Longer a sw defect remains in a product, the more costly it is to detect and remove it. Remove it through design and code reviews.
  2. Defect prevention is more efficient than defect removal.
50
Q

What are the artifacts in the PSP process?

A

scripts: provides an orderly structure of steps the engineer should go through to complete the process step and refer to relevant standards, forms, templates, guidelines, and measures Types of scripts:
- Process script which lays the inputs and steps to compelte a process.
- Planning script provides instructions for planning development activities.
- High-level design script: provides instructions for creating high-level design
- High-level design review script: provides instructions for reviewing the PS3 high level design.
- Development script - outlies the steps for design, code, complie, and test.
- Postmortem script - provides the instructions for analyzing and summarizing the data collected in the forms and templates.

templates, standards, and checklists.

51
Q

What are some advantages of PSP?

A
  • Improved productivity, Reduced testing time, improved quality.
52
Q

What are some disadvantages of PSP?

A
  • Some people are not receptive to detailed data recording

- requires discipline.

53
Q

What is the TSP (Team Software Process)?

A

provides a
structure for self-directed teams to plan and track their work, to establish goals, and to
create and own their processes and plans. It also provides guidance to individual software
engineers on how to perform as an effective team member.

54
Q

What are the roles in TSP?

A

Team Leader, Development manager, Planning manager, quality/process manager, support manager.

55
Q

What are the iterative steps in the TSP cycle?

A

development strategy, development plan, requirements, design, implementation, test, postmortem.

56
Q

How the Rational Unified Process (RUP) different from PSP and TSP?

A

RUP embeds object-oriented techniques and uses UML as its principle notation.

It is a customizable process framework. Can be tailored and extended to match the needs of an adopting organization.

57
Q

What is a role in RUP?

A

Defines responsibilities of team members

58
Q

What is an activitiy in RUP?

A

An operation that can be executed by one role. Must have clear purpose.

59
Q

What is an artifact in RUP?

A

Peice of info or phusical entity produced, modified, or used by the activities of se process. Used as input to workers performig an activity and are also results of such activities.