csci 521 final exam review. why establish a standard process? it is nearly impossible to have a high...

21
CSCI 521 Final Exam Review

Upload: earl-bryan

Post on 04-Jan-2016

213 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: CSCI 521 Final Exam Review. Why Establish a Standard Process? It is nearly impossible to have a high quality product without a high quality process. Standard

CSCI 521 Final Exam Review

Page 2: CSCI 521 Final Exam Review. Why Establish a Standard Process? It is nearly impossible to have a high quality product without a high quality process. Standard

Why Establish a Standard Process?Why Establish a Standard Process?

• It is nearly impossible to have a high quality product without a high quality process.

• Standard set of activities leads to better estimation

• Standard roles leads to improved communication and training

• etc…

Page 3: CSCI 521 Final Exam Review. Why Establish a Standard Process? It is nearly impossible to have a high quality product without a high quality process. Standard

Customer's ProcessCustomer's Process

• Why, if at all, should we spend time analyzing how the customer does their work?

• What are the first questions you should ask and why?

Page 4: CSCI 521 Final Exam Review. Why Establish a Standard Process? It is nearly impossible to have a high quality product without a high quality process. Standard

Goal StatementGoal Statement

• Manages expectations and helps limit scope

• Measurable

• Short

• Communicated

Page 5: CSCI 521 Final Exam Review. Why Establish a Standard Process? It is nearly impossible to have a high quality product without a high quality process. Standard

Standard DocumentsStandard Documents

• SOW - Statement of Work

• Project Management Plan

• WBS - Work Breakdown Structure– inside the PMP– used for planning, estimation, etc.– probably only 2 or 3 levels deep

Page 6: CSCI 521 Final Exam Review. Why Establish a Standard Process? It is nearly impossible to have a high quality product without a high quality process. Standard

Estimation TechniquesEstimation Techniques

• Analogy

• Decomposition Methods– lines of code– function points

• Empirical Methods

Page 7: CSCI 521 Final Exam Review. Why Establish a Standard Process? It is nearly impossible to have a high quality product without a high quality process. Standard

Accuracy of Estimate is based on:Accuracy of Estimate is based on:• degree to which the planner has properly

estimated the size of the product

• ability to translate a size estimate to a time estimate

• degree to which the project plan reflects the abilities of the software team

• stability of product requirements and project environment

Software Engineering: Practitioner's Approach by Pressman

Page 8: CSCI 521 Final Exam Review. Why Establish a Standard Process? It is nearly impossible to have a high quality product without a high quality process. Standard

Team SelectionTeam Selection

A successful project requires:

1. quality people hire for trait, train for skills

2. effective use of individuals– match tasks with personality– give authority to those with responsibility– make responsibilities crystal clear

Page 9: CSCI 521 Final Exam Review. Why Establish a Standard Process? It is nearly impossible to have a high quality product without a high quality process. Standard

How to build a schedule:How to build a schedule:1. Determine dependencies of activities found in WBS.

2. Use dependencies to build activity network diagram (eg PERT).

3. Perform resource leveling and consider uncertainty.

4. Insert Milestones

5. Map network to a timeline (eg Gantt Chart) using the effort estimates.

• Use a software tool to help do this work.

Page 10: CSCI 521 Final Exam Review. Why Establish a Standard Process? It is nearly impossible to have a high quality product without a high quality process. Standard

Types of RequirementsTypes of Requirements• Functional

– ex - it must email the sales manager when an inventory item is "low"

• Non-Functional– ex - it must require less than one hour to run

• Explicit– ex – required features

• Implied– ex – software quality

• Forgotten– ex – exists in current process

• Unimagined

Page 11: CSCI 521 Final Exam Review. Why Establish a Standard Process? It is nearly impossible to have a high quality product without a high quality process. Standard

Req Gathering ProblemsReq Gathering Problems• Accommodating changing reqs

• Being complete, without being constraining

• Conflicting views

• Ease of omitting obvious info

• Identifying the experts and getting authority to talk to people

• Incomplete understanding of the problem on the part of the user/customer

• Sticking with “what” and not “how”

• Determining what is critical

• Avoiding mission creep

Page 12: CSCI 521 Final Exam Review. Why Establish a Standard Process? It is nearly impossible to have a high quality product without a high quality process. Standard

Characteristics of Good RequirementsCharacteristics of Good Requirements

1. Unambiguous

2. Complete

3. Verifiable, Measurable

4. Modifiable

5. Traceable

6. Prioritized

Page 13: CSCI 521 Final Exam Review. Why Establish a Standard Process? It is nearly impossible to have a high quality product without a high quality process. Standard

RisksRisks

RE = likelihood x impact

RRL =

RE = risk exposureRRL = risk reduction leverage

REbefore – REafter

risk reduction cost

Page 14: CSCI 521 Final Exam Review. Why Establish a Standard Process? It is nearly impossible to have a high quality product without a high quality process. Standard

MetricsMetrics

• Product Metrics– direct measures - number of bugs, LOC– indirect measures - usability, maintainability

• Project and Process Metrics– direct measures - costs, LOC per month– indirect measures - quality, reliability

Page 15: CSCI 521 Final Exam Review. Why Establish a Standard Process? It is nearly impossible to have a high quality product without a high quality process. Standard

Goals of Configuration ManagementGoals of Configuration Management

• Identify Change

• Control Change• Stability vs Progress

• Ensure Change is Properly Implemented

Page 16: CSCI 521 Final Exam Review. Why Establish a Standard Process? It is nearly impossible to have a high quality product without a high quality process. Standard

BaselinesBaselines

• What is a baseline?

• Baseline change control process– change request form

• Config Management Tools Features

Page 17: CSCI 521 Final Exam Review. Why Establish a Standard Process? It is nearly impossible to have a high quality product without a high quality process. Standard

SQA ActivitiesSQA Activities

• Contract Review

• Formal Technical Reviews

• Peer Inspections– driven by checklists, coding standards, etc

• Work Instructions

• Statistical SQA

Page 18: CSCI 521 Final Exam Review. Why Establish a Standard Process? It is nearly impossible to have a high quality product without a high quality process. Standard

Statistical SQA, six sigma, TQM, et.al.

• Goal is to remove cause of problems

• Data Gathering– bug reports– customer feedback– random sampling

• Categorize problems, then trace the critical 20% back to their root cause

• Control Charts, Scatter Charts

Page 19: CSCI 521 Final Exam Review. Why Establish a Standard Process? It is nearly impossible to have a high quality product without a high quality process. Standard

Test ManagementTest Management

• When to White Box. When to use Black Box.

• Stop testing when cost of finding and removing errors today is more expensive than releasing the product and fixing errors during maintenance.

• Laws of Testing:– someone else should test your code– complete test coverage is impossible

• Test Plan: what to test, when to test, what is acceptable…

• Keep Records of types of errors found

Page 20: CSCI 521 Final Exam Review. Why Establish a Standard Process? It is nearly impossible to have a high quality product without a high quality process. Standard

MaintenanceMaintenance

• Types of Maintenance– Corrective– Adaptive– Perfective

• Does software wear out?

• How do we reduce maintenance costs?

Page 21: CSCI 521 Final Exam Review. Why Establish a Standard Process? It is nearly impossible to have a high quality product without a high quality process. Standard

CMM LevelsCMM Levels1. Initial

2. Repeatableo past successes can be repeated

3. Definedo each project uses a tailored version of a standard process

4. Managedo Quantitative Quality Goals

5. Optimizingo major focus on eliminating waste in the process