• No results found

Softenr-4

N/A
N/A
Protected

Academic year: 2020

Share "Softenr-4"

Copied!
64
0
0

Loading.... (view fulltext now)

Full text

(1)

Software Engineering

Project Management &

Estimation

(2)

Chapter-24: Project Management

Objectives

SPM

Team organization

Project management ActivitiesRisk Management

(3)

3

Project

Definition: A group of tasks performed in a definable time period in order to meet a specific set of objectives

Project Features:

likely to be unique (one-time program)

have specific start and end time (life cycle)

have work scope that can be categorized into

definable tasks

(4)

4

The Four P’s

People — the most important element of a

successful project

Product — the software to be built

Process — the set of framework activities and

software engineering tasks to get the job done

Project — all work required to make the

(5)

5

Software Teams

How to lead?

How to organize?

How to motivate? How to collaborate?

(6)

6

A Simple Project

“Plan for a friendly match” People ?

(7)

7

Management

(8)

8

Definition of Project Management

The planning, organizing, directing, and

(9)

9

Software Teams

the difficulty of the problem to be solved

the size of the resultant program(s) in lines of code or function

points

the time that the team will stay together (team lifetime)the degree to which the problem can be modularized

the required quality and reliability of the system to be builtthe rigidity of the delivery date

the degree of sociability (communication) required for the

project

(10)

Assembling a team

May not be possible to appoint the ideal people to work on a

project

Project budget may not allow for the use of highly-paid staff;Staff with the appropriate experience may not be available;

An organisation may wish to develop employee skills on a software

project.

Managers have to work within these constraints especially when

there are shortages of trained staff.

(11)

Groupcomposition

In creating a group for assistive technology development, Alice is aware of the

importance of selecting members with complementary personalities. When interviewing potential group members, she tried to assess whether they were task-oriented, self-oriented, or interaction-oriented. She felt that she was primarily a self-oriented type because she considered the project to be a way of getting noticed by senior

management and possibly promoted. She therefore looked for one or perhaps two interaction-oriented personalities, with task-oriented individuals to complete the team. The final assessment that she arrived at was:

(12)

Project

Activity or set of activities that span the duration of the

Project

For instance :

Project management Documentation , Training

Quality Control (Verification and validation) Configuration Management

Smallest unit of work subject to management

Small enough for adequate planning and tracking

Large enough to avoid micro management

(13)

13

Project Management Activities

Establish project objectives

Defining work requirement

Determining work timing

Establishing resource availability and requirements

Establishing a cost baseline

(14)

14

Project Management Activities

(Continued)

Freezing the baseline planTracking the actual costs

Comparing the progress and cost to the baseline plan

Evaluating performance

Forecasting, analysing and recommending

(15)

15

The Process

Once a process framework has been establishedConsider project characteristics

Determine the degree of rigor required

Define a task set for each software engineering

activity

Task set =

– Software engineering tasks

– Work products

– Quality assurance points

(16)

The Project

Projects get into trouble when …

– Software people don’t understand their customer’s needs.

The product scope is poorly defined. – Changes are managed poorly.

– The chosen technology changes.

Business needs change [or are ill-defined].Deadlines are unrealistic.

– Users are resistant.

Sponsorship is lost [or was never properly obtained]. – The project team lacks people with appropriate skills.

(17)

Project Management Concerns

staffing?

cost estimation?

project scheduling?

project monitoring? other resources?

customer communication? risk assessment?

product quality?

(18)

To Get to the Essence of a Project

Why is the system being developed?What will be done?

When will it be accomplished?Who is responsible?

Where are they organizationally located?How will the job be done technically and

managerially?

How much of each resource (e.g., people,

software, tools, database) will be needed?

(19)

Resources of A Company

Money

Manpower

Equipment

FacilitiesMaterials

(20)

Project Management Skills

Communication Skills

Organizational SkillsTeam Building SkillsLeadership Skills

Coping Skills

(21)

Project Plan Elements

Project Objective & ScopeSchedule

Team Organization

Project Standards and ProceduresDocumentation Plan

Quality Assurance Plan

Resource Management Plan

(22)

Examples of common project,

product, and business risks

Risk Affects Description

Staff turnover Project Experienced staff will leave the project before it is finished.

Management change Project There will be a change of organizational management with different priorities.

Hardware unavailability Project Hardware that is essential for the project will not be delivered on schedule.

Requirements change Project and product There will be a larger number of changes to the requirements than anticipated.

Specification delays Project and product Specifications of essential interfaces are not available on schedule.

Size underestimate Project and product The size of the system has been underestimated. CASE tool

underperformance

Product CASE tools, which support the project, do not perform as anticipated.

Technology change Business The underlying technology on which the system is built is superseded by new technology.

Product competition Business A competitive product is marketed before the system is completed.

(23)

The risk management process

Risk identification

– Identify project, product and business risks;

Risk analysis

Assess the likelihood and consequences of these

risks;

Risk planning

– Draw up plans to avoid or minimise the effects of the risk;

Risk monitoring

– Monitor the risks throughout the project;

(24)
(25)
(26)

The risk management process

(27)

Organizational Paradigms

random paradigm—structures a team loosely and depends on individual initiative of the team members

closed paradigm—structures a team along a traditional

(28)

28

(29)

29

Hierarchical Planning System

1. Goals must be specified.

2. Identifying the set of required activities to achieve the goals.

3. Each activities and events can be

(30)

30

Planning Steps

1. Establish objectives 2. Develop a plan

3. Construct project planning diagram

4. Identify timing duration of each activity in planning diagram

(31)

31

Establish Objectives

State objectives

Project start/end dates

Budgets

Technical results

List milestones

Milestone: a scheduled event for which some person

is held accountable and which is used to measure and control progress.

(32)

32

Develop A Plan

List activities

Develop Work Breakdown Structure (WBS): The WBS

reflects the decomposition of a project into subtasks down to the level for effective planning and control.

Determine relationships of activities

job precedence/succession

(33)
(34)

WBS of a simple project

Design Test plan

Code Test

Project

Code A Code B

•Each activity has a duration and consumes resources. •Each activity has a constraint(example: one must be finished before the other starts; so activities are

(35)

35

Example of WBS: “Holiday”

holiday

travel documents

passport tickets

insurance

booking

choose

resort confirm brochures

household

(36)

36

List of activities

•Booking:

• get brochures • choose resort • make booking • confirm booking •Travel documents:

• check passport • book tickets • get insurance

•Household:

• feeding the cat! •This is a simple example:

• inoculations • visas

(37)
(38)

38

Program Evaluation and Review

Technique (PERT) diagram

•The numerical number represents the duration of each activity.

•PERT is mainly concerned with time of each activity and interrelations among activities.

Design 15

Test plan 10

Test 15

Code A 18

(39)
(40)
(41)

Activity-on-Arrow (AOA) Diagram

G

1

2 5

3

4

6

B

C A

F E

D

(42)

Activity Precedence

Activity Immediate

Predecessor

Duration

A - 2

B - 1

C - 3

D A 2

E B,C 4

F C 5

(43)
(44)

44

Critical Path Method (CPM)

By drawing a network diagram, you can figure out

the critical path of your project.

The critical path is the longest path through the

network. If something falls behind schedule on the

critical path, the whole project falls behind schedule unless time is made up elsewhere.

It’s easier to adjust other activities (allocate

(45)

45

Terms

Activity - A task or job which takes time & use up

resources

Represented by labeled arrow A

Event - An instantaneous point representing the start or

finish of an activity Represented by node

Slack time: indicates that the corresponding activity may

consume more than its estimated time, or start later than the earliest possible start time, without affecting the total duration of the project.

Critical path: a path that has activities without any slack

time

(46)

46

What is Scope?

Software scope describes

the functions and features that are to be delivered to

end-users

the data that are input and output

the “content” that is presented to users as a consequence of

using the software

the performance, constraints, interfaces, and reliability that

bound the system.

Scope is defined using one of two techniques:

A narrative description of software scope is developed after

communication with all stakeholders.

(47)

47

Problem Decomposition

Sometimes called partitioning or problem

elaboration

Once scope is defined …

It is decomposed into constituent functions

It is decomposed into user-visible data objects

or

It is decomposed into a set of problem classes

Decomposition process continues until all

(48)

48

A Good Manager Measures

process

process

measurement

measurement

What do we

What do we

use as a

use as a

basis?

basis?

size?size?

function?function?

(49)

49

Software Process Improvement

SPI

Process model

Improvement goals

Process metrics

(50)

50

Why Do We Measure?

assess the status of an ongoing projecttrack potential risks

uncover problem areas before they go “critical,”adjust work flow or tasks,

evaluate the project team’s ability to control

(51)

Some suggested metrics

Plot planned and actual staffing levels over time

Record number & type of code and test errors

Plot number of resolved & unresolved problem reports over time

Plot planned & actual number of units whose V&V is completed over time:

a) design reviews completed b) unit tests completed

c) integration tests completed

Plot software build size over time

Plot average complexity for the 10% most complex units over time

(using some suitable measure of complexity)

Plot new, modified and reused SLOCs over time SLOC = Source Lines Of Code

Plot estimated schedule to completion based on deliveries achieved

(52)

Typical Project Metrics

Effort/time per software engineering taskErrors uncovered per review hour

Scheduled vs. actual milestone dates

Changes (number) and their characteristicsDistribution of effort on software

(53)

53

Process Metrics

Quality-related

– focus on quality of work products and deliverables

Productivity-related

– Production of work-products related to effort expended

Statistical SQA data

– error categorization & analysis

Defect removal efficiency

– propagation of errors from process activity to activity

Reuse data

(54)

54

Typical Size-Oriented

Metrics

errors per KLOC (thousand lines of code)defects per KLOC

$ per LOC

pages of documentation per KLOCerrors per person-month

errors per review hourLOC per person-month

(55)

55

Typical Function-Oriented

Metrics

errors per FP (thousand lines of code)defects per FP

$ per FP

(56)

56

Why Opt for FP?

Programming language independent

Used readily countable characteristics that are

determined early in the software process

Does not “penalize” inventive (short)

implementations that use fewer LOC that other more clumsy versions

Makes it easier to measure the impact of

(57)

57

Object-Oriented Metrics

Number of scenario scripts (use-cases)Number of support classes (required to

implement the system but are not immediately related to the problem domain)

Average number of support classes per key class

(analysis class)

Number of subsystems (an aggregation of classes

(58)

58

Measuring Quality

Correctness — the degree to which a program

operates according to specification

Maintainability—the degree to which a

program is amenable to change

Integrity—the degree to which a program is

impervious to outside attack

Usability—the degree to which a program is

(59)

59

WebApp Project Metrics

Number of static Web pages (the end-user has no control over the

content displayed on the page)

Number of dynamic Web pages (end-user actions result in

customized content displayed on the page)

Number of internal page links (internal page links are pointers that

provide a hyperlink to some other Web page within the WebApp)

Number of persistent data objects

Number of external systems interfacedNumber of static content objects

(60)

60

Defect Removal Efficiency

where:

E is the number of errors found before delivery of the software to the end-user

D is the number of defects found after delivery.

(61)

61

Metrics for Small Organizations

• time (hours or days) elapsed from the time a request is made until evaluation is complete, tqueue.

• effort (person-hours) to perform the evaluation, Weval.

• time (hours or days) elapsed from completion of evaluation to assignment of change order to personnel, teval.

• effort (person-hours) required to make the change, Wchange. • time required (hours or days) to make the change, tchange. • errors uncovered during work to make change, Echange.

(62)

62

Establishing a Metrics Program

Identify your business goals.

Identify what you want to know or learn.Identify your subgoals.

Identify the entities and attributes related to your subgoals.Formalize your measurement goals.

Identify quantifiable questions and the related indicators that you

will use to help you achieve your measurement goals.

Identify the data elements that you will collect to construct the

indicators that help answer your questions.

Define the measures to be used, and make these definitions

operational.

(63)

63

Comparing LOC and FP

Programming LOC per Function point

Language avg. median low high

Ada 154 - 104 205

Assembler 337 315 91 694

C 162 109 33 704

C++ 66 53 29 178

COBOL 77 77 14 400

Java 63 53 77

-JavaScript 58 63 42 75

Perl 60 - -

-PL/1 78 67 22 263

Powerbuilder 32 31 11 105

SAS 40 41 33 49

Smalltalk 26 19 10 55

SQL 40 37 7 110

(64)

Summary

Software project Management involves

planning and risk management .

Typical metrics help to estimate cost and effort

FP & LOC are used to do estimation for a project

References

Related documents

Embellished to folding and corner nine patch quilt by appliqueing dresden plate block was like more.. Lanterns for your list item to remove or

Step 4: Develop a Project Implementation Plan Step 5: Identify and Classify Information Assets Step 6: Identify and Assess Risks.. Step 7: Plan for

OSHA states that when an employee is removing gloves and has had contact, meaning occupational exposure to blood or other potentially infectious materials (OPIM), hands must be

All bulk materials for piping systems and structural components shall comply with relevant NORSOK Material Data Sheets. Note that it is the manufacturer's responsibility to confirm

 Engineering students CAN incorporate a global experience in their undergraduate career.  There are multiple programs with flexible options to explore with regard to program

Các enzym kìm hãm đòi hỏi chất đồng kìm hãm để ức chế phiên mã của gen, còn các enzyme cảm ứng không cần chất đồng kìm hãm.. Dịch mã có sự

have reached such a level of hopelessness as a result of the shattering burden of our living conditions, that we have decided to turn to you in order to obtain your

Table 4.19: Striking velocity and remaining velocity, initial and remaining momentum, initial energy and remaining energy and each loss for the broken glass panes caused