Chapter 6.1.ppt

25
OHT 6.1 Galin, SQA from theory to implementation © Pearson Education Limited 2004 Development plan and quality plan objectives The elements of the development plan Elements of the quality plan Development and quality plans for small and for internal projects Software development risks and

Transcript of Chapter 6.1.ppt

Page 1: Chapter 6.1.ppt

OHT 6.1

Galin, SQA from theory to implementation © Pearson Education Limited 2004

• Development plan and quality plan objectives

• The elements of the development plan

• Elements of the quality plan

• Development and quality plans for small and for internal projects

• Software development risks and software risk management

Page 2: Chapter 6.1.ppt

OHT 6.2

Galin, SQA from theory to implementation © Pearson Education Limited 2004

Introduction• Project managers prepare

– development and – quality plans.

• Onerous task, – Senior level management on one end and – Developers on the other

• Two dance to different drummers.

• These plans are vitally important to meet contractual commitments

• Thus, we need to look at:

Page 3: Chapter 6.1.ppt

OHT 6.3

Galin, SQA from theory to implementation © Pearson Education Limited 2004

• Objectives of development and quality plans

• Elements of development plans

• Elements of quality plans

• Major software risks

• Process of software risk management

• Importance of development and quality plans for small projects

• Importance of development and quality plans for internal projects.

Page 4: Chapter 6.1.ppt

OHT 6.4

Galin, SQA from theory to implementation © Pearson Education Limited 2004

Planning is meant to prepare adequate foundations for successful and timely completion of the project. The planning process includes:

1. Scheduling development activities and estimating therequired manpower resources and budget

2. Recruiting team members and allocating development resources

3. Resolving development risks

4. Implementing required SQA activities

5. Providing management with data needed for project control

6.1 Development Plan and Quality Plan Objectives

Page 5: Chapter 6.1.ppt

OHT 6.5

Galin, SQA from theory to implementation © Pearson Education Limited 2004

Each of the following 10 components of a development plan are appropriate to different parts of a project. 

1.   Project Products, specifying “deliverables”Critically important.Must decide on deliverables!

dates and itemsinstallation site – local or physical installtraining – customer service

dates, participants, and sites(much is done on line

now…) 

6.2 Elements of the Development Plan

Page 6: Chapter 6.1.ppt

OHT 6.6

Galin, SQA from theory to implementation © Pearson Education Limited 2004

2.   Project Interfaces

• How does the new software interface with existing software?

– (major consideration in large corporation)

• How does the software affect other parts of a larger system or similar systems??

• Often requires ‘escalation.’

• Any hardware considerations for interfacing? Special hardware?

6.2 Elements of the Development Plan

Page 7: Chapter 6.1.ppt

OHT 6.7

Galin, SQA from theory to implementation © Pearson Education Limited 2004

3.   Project methodology and development tools for various phases during development, maintenance.

• Heuristic: never use untested tool / methodology on a new project with high visibility!!

• Methodology must be decided upon.– Usually organizations have ‘established’ ways of proceeding…

4. Software Development Standards and ProceduresMust be conventions!! Standards and Integration!!

a MUST!

6.2 Elements of the Development Plan

Page 8: Chapter 6.1.ppt

OHT 6.8

Galin, SQA from theory to implementation © Pearson Education Limited 2004

5. Laying out the Development ProcessDefine the project’s phases

Planning: inputs/outputs/activities/activity duration/sequence and dependencies/resources needed for each activity/ design reviews/ testing/ training for customer support/ more…

GANTTT Charts / CPM , PERT all include sequence dependencies and duration.Microsoft Project and Rational Conductor

6. Project Milestonescompletion dates, products clearly define.Must synchronize with Overall Plan.More detailed than Overall PlanMore detailed than iteration plans

6.2 Elements of the Development Plan

Page 9: Chapter 6.1.ppt

OHT 6.9

Galin, SQA from theory to implementation © Pearson Education Limited 2004

7.   Project Staff OrganizationOrganizational structure – teams, tasks, sub contractors, temporary workers. Pecking order…

much risk!

Professional requirements of teams / leadershiprisk!!

Numbers for periods of timeteam size varies from beginning to fully

staffed, to...

Designate team leaders and membersteam composition will change throughout a

long development effort.staff evaporation; reassignments; illness, …..

6.2 Elements of the Development Plan

Page 10: Chapter 6.1.ppt

OHT 6.10

Galin, SQA from theory to implementation © Pearson Education Limited 2004

8.   Development Facilities

Hardware, software, tools, development environments, training on these, space

Very important.

Many very nice facilities nowadays – break rooms, ping pong; nice coffee / beverage facilities; day care.

10. Control MethodsHow to control the monitoring process / reporting process

with respect to plans, test reports, reviews, howgoesit, and more

6.2 Elements of the Development Plan

Page 11: Chapter 6.1.ppt

OHT 6.11

Galin, SQA from theory to implementation © Pearson Education Limited 2004

11. Project Cost Estimation

An art in itself based on many models and experience.COCOMO and COCOM II Models (Barry Boehm)

human resource estimates, contracts with suppliers, internal development and unavailability, budget changes,risk considerations.travel first go gotraining second to go…

6.2 Elements of the Development Plan

Page 12: Chapter 6.1.ppt

OHT 6.12

Galin, SQA from theory to implementation © Pearson Education Limited 2004

9. Development Risks - Inherent in any project

Risk: “a state or property of a development task or environment, which, if ignored, will increased the likelihood of project failure.”

Technology risks – experience of team members

Personnel shortages – can arise during project

Environmental risks

Budget risks

Interdependence on others (hardware; subcontractors, etc.)

6.2 Elements of the Development Plan

Page 13: Chapter 6.1.ppt

OHT 6.13

Galin, SQA from theory to implementation © Pearson Education Limited 2004

More on Risks

Risk Management: identification, evaluation, planning actions, implementation, monitoring…Calculation of RiskMonitoring of risk throughout development cycle!!

The Spiral Model – specifically incorporating risk to every cycle (next chapter)

Page 14: Chapter 6.1.ppt

OHT 6.14

Galin, SQA from theory to implementation © Pearson Education Limited 2004

1.Developing wrong software functions *2.Unrealistic schedules and budgets *3.Developing wrong user interface4.Gold plating *5.Continuing stream of requirement changes *6.Shortfalls in externally furnished components7.Shortfalls in externally performed tasks8.Personnel shortfalls *9.Real-time performance shortfalls *10.Straining computer science capabilities

Page 15: Chapter 6.1.ppt

OHT 6.15

Galin, SQA from theory to implementation © Pearson Education Limited 2004

Pre-project

Risk identification and assessment

Planning risk management activities

New project

Planning and updating risk management activities

Implementing risk management actions

(risk resolution)

Monitoring software risk management activities

Identifying and assessing new software

risks

Ongoing projects

Evaluate monitoring

results

Required results achieved Unsatisfactory results

Page 16: Chapter 6.1.ppt

OHT 6.16

Galin, SQA from theory to implementation © Pearson Education Limited 2004

1.         List of quality goals These refer to the quality requirements in the developed

software system.

Quantitative measures usually preferred to qualitative measures when choosing goals because they are usually easier to assess objectively during testing.

Quality goals should reflect the major acceptance criteria found in the requirement’s document (an RFP)

correctness, reliability, robustness, maintainability….

RFP is often used to measure successful achievement of the customer’s quality requirements.

6.3 The Elements of a the Quality Plan

Page 17: Chapter 6.1.ppt

OHT 6.17

Galin, SQA from theory to implementation © Pearson Education Limited 2004

2.         Planned Review Activities The planned reviews should include a listing of all reviews.

design reviewstechnical reviews

managerial reviewscode inspections

Pros and Cons……………………

All reviews need to include: Scope – what does it coverType – emphasis – managerial, technical, super detailed…Schedule – often based on previous reviews and outcomesProcedures – action lists; present and discuss; …Who is to attend? Collateral interest?? *****Responsibilities for review; documents needed, by when…

6.3 The Elements of a the Quality Plan

Page 18: Chapter 6.1.ppt

OHT 6.18

Galin, SQA from theory to implementation © Pearson Education Limited 2004

3.         Planned Software Tests

Must include a complete list of planned tests

Each test must include the following:

coverage of test: unit, integration, system, subsystem….type of test: may include computer-generated tests and

their application via test suites, and morePlanned test schedule – prioritized and follow upExact procedures (for different types of tests…)Who is responsible for carrying out tests

notification, time, date, materials, facilities, etc…Different people responsible at different times!!

**

6.3 The Elements of a the Quality Plan

Page 19: Chapter 6.1.ppt

OHT 6.19

Galin, SQA from theory to implementation © Pearson Education Limited 2004

4.         Planned Acceptance Tests for Externally Developed Software

A complete set of acceptance tests to be run for externally developed software must be provided within the quality plan!

(Complete set must be run for our own developed software!)

Especially critical for purchased software, contracted software, customer-supplied software.

These tests can be run in parallel with internally-developed software tests (tests that internally are developed to supplement other tests)

6.3 The Elements of a the Quality Plan

Page 20: Chapter 6.1.ppt

OHT 6.20

Galin, SQA from theory to implementation © Pearson Education Limited 2004

5.         Configuration Management The quality plan MUST include configuration management tools and procedures for managing the software configurations, versions, etc.

Must be an intrinsic part of the entire project!

The Quality Plan may be included within the Development Plan

or as an independent document.

The document, however compiled, must be reviewed and approved by the organization’s standard approval process.

6.3 The Elements of a the Quality Plan

Page 21: Chapter 6.1.ppt

OHT 6.21

Galin, SQA from theory to implementation © Pearson Education Limited 2004

Natural for many to try to avoid hassle of preparing all these plans.

In fact, heavy-weight methodologies are often called plan-centric; Agile methods try to avoid much planning and documentation

The question is simply does a short, small project (likw 30-60 days; two or three individuals) deserve the time spent on planning a development and quality plan?

Answer: No, not exactly.

Development / Quality Plans for Small and Internal Projects

Page 22: Chapter 6.1.ppt

OHT 6.22

Galin, SQA from theory to implementation © Pearson Education Limited 2004

Lots of issues here…

Sometimes not done due to short duration / manpower

Sometimes planning is left up to the project leader’s discretion.

Perhaps a critically-important and high risk but short duration effort with high-penalty shouts for a plan…

Sometimes, via contract, both development and quality plans are simply required.

Development / Quality Plans for Small Projects

Page 23: Chapter 6.1.ppt

OHT 6.23

Galin, SQA from theory to implementation © Pearson Education Limited 2004

Several advantages to planned over unplanned projects:

1.A more comprehensive / thorough understanding of the task is likely (gained when developing the plan)

2.Greater responsibility for meeting obligations can be assigned, as they can be ‘seen’ more clearly since articulated (who does what)

3.Easier to share control of the project and identify unexpected delays (any plan better than no plan at all!)

4.Better understanding of requirements and timetable can be reached between customer and developer.

Development / Quality Plans for Small Projects

Page 24: Chapter 6.1.ppt

OHT 6.24

Galin, SQA from theory to implementation © Pearson Education Limited 2004

Lots of projects done for the internal use of organization.

Here, normally no external body is a customer

Can be medium or large scale.

Tendency to avoid adequate development / quality plans

avoiding plans is fraught with errors.

cost overruns, finger pointing, missed dates, internal friction among cooperating shops, …

Often put on back burner!!

Development / Quality Plans for Internal Projects

Page 25: Chapter 6.1.ppt

OHT 6.25

Galin, SQA from theory to implementation © Pearson Education Limited 2004

Internal Customers ‘can’ enjoy advantages.

smaller deviations from planned completion dates

smaller budget overruns

better control over development process – problems can be addressed locally,

Organizationally,

reduced risk of market loss (done for internal use)

reduced risk of litigation (late arrival; non-compliance)

reduced risk of impairing a firm’s reputation

reduced risk of requesting a budget supplement.

Preparing Plans provides Advantages