• No results found

Estimating Work with Use Cases. Estimating Work with Use Cases. We need to forecast. Use Case Point Estimator. We need to quantify

N/A
N/A
Protected

Academic year: 2021

Share "Estimating Work with Use Cases. Estimating Work with Use Cases. We need to forecast. Use Case Point Estimator. We need to quantify"

Copied!
6
0
0

Loading.... (view fulltext now)

Full text

(1)

Desarrollo de Software con UML

Desarrollo de Software con UML Cursada 2004Cursada 2004

Estimating Work with

Estimating Work with

Use Cases

Use Cases

Desarrollo de Software con UML

Desarrollo de Software con UML

Desarrollo de Software con UML

Desarrollo de Software con UML Cursada 2004Cursada 2004

Estimating

Estimating

Work

Work

with

with

Use Cases

Use Cases

We need to forecast

We need to forecast

How

How

long it

long

it

will

will

take

take

to

to

develop

develop

the

the

system

system

and

and

How many people will be needed to do it

How many people will be needed to do it

How long it will take a software engineer to accomplish a

How long it will take a software engineer to accomplish a

given task is primarily a function of the complexity of

given task is primarily a function of the complexity of

the problem and the engineer

the problem and the engineer

´

´

s ability

s ability

Desarrollo de Software con UML

Desarrollo de Software con UML Cursada 2004Cursada 2004

Estimating

Estimating

Work

Work

with

with

Use Cases

Use Cases

We need to quantify

We need to quantify

The

The

complexity

complexity

of

of

the

the

system

system

Functionality

Functionality

Technical

Technical

complexity

complexity

The

The

experience

experience

level

level

of

of

the

the

people

people

on

on

the

the

project

project

The

The

time

time needed

needed

to

to

produce a unit

produce a

unit

of

of

complexity

complexity

The goal is to arrive at a single number that completely

The goal is to arrive at a single number that completely

characterizes the system and correlates with observed

characterizes the system and correlates with observed

engineer productivity

engineer productivity

Desarrollo de Software con UML

Desarrollo de Software con UML Cursada 2004Cursada 2004

Estimating

Estimating

Work

Work

with

with

Use Cases

Use Cases

Use Case Point Estimator

Use Case Point Estimator

An

An

estimating

estimating

method

method

by Gustav

by

Gustav

Karner

Karner

of

of

Rational

Rational

Software

Software Corporation

Corporation

It characterizes the complexity of a system by

It characterizes the complexity of a system by

Use Case Points

Use Case Points

It is preliminary and should be used to get an idea of the

It is preliminary and should be used to get an idea of the

number of man

number of man

-

-

hours for your project

hours for your project

It was derived empirically, and the limited amount of

It was derived empirically, and the limited amount of

experimentation to date shows that it applies well in

experimentation to date shows that it applies well in

business applications, e.g., information systems

business applications, e.g., information systems

Desarrollo de Software con UML

Desarrollo de Software con UML Cursada 2004Cursada 2004

Use Case

Use Case Point

Point

Estimator

Estimator

This

This

method

method

involves

involves

the

the

following

following

steps

steps

Calculating

Calculating

the

the

Unadjusted

Unadjusted

Use Case

Use Case Points

Points

Weighting

Weighting

Actors

Actors

(UAW) &

(UAW) &

Weighting

Weighting

Use Cases (UUCW)

Use Cases (UUCW)

UUCP

UUCP

=

=

ƒ

ƒ

(

(

UAW

UAW; UUCW

; UUCW) =

) =

UAW +

UAW +

UUCW

UUCW

Calculating Use Case Points

Calculating Use Case Points

Weighting

Weighting

Technical

Technical

Factors

Factors

(TCF)

(TCF)

Weighting

Weighting

Environmental

Environmental

Factors

Factors

(EF)

(EF)

UCP

UCP

=

=

ƒ

ƒ

(

(

UUCP;

UUCP; TCF; EF

TCF; EF) =

) =

UUCP *

UUCP *

TCF * EF

TCF * EF

Estimating

Estimating

the

the

Number

Number

of

of

Man

Man-

-hours

hours

Man

Man

-

-

hours

hours

=

=

ƒ

ƒ

(

(

UCP

UCP)

)

Desarrollo de Software con UML

Desarrollo de Software con UML Cursada 2004Cursada 2004

An

An

Example

Example

Customer

Customer

Register

Register

Complaint

Complaint

Get

Get

Catalog

Catalog

Get

Get

Status

Status

on

on

Order

Order

Login

Login

Cancel

Cancel Order

Order

Place

Place Order

Order

Return

Return

Product

Product

Run

Run

Sales

Sales Report

Report

Update

Update

Account

Account

Receive

Receive

Back

Back-

-ordered

ordered

items

items

Fill

Fill

and

and

Ship

Ship

Order

Order

Customer

Customer

Support

Support

Manager

Manager

Accounting

Accounting

System

System

Inventory

Inventory

System

System

Customer

Customer

Rep

Rep

Update

Update

Product

Product

Quantities

Quantities

Get

Get

Product

Product

Information

Information

Clerk

Clerk

Shipping

Shipping

Company

Company

<< <<includeinclude>>>>

Use Case

Use Case

Diagram

Diagram

Order

Order

Processing

Processing

System

System

<< <<includeinclude>>>> << <<includeinclude>>>> << <<includeinclude>>>> << <<includeinclude>>>> << <<includeinclude>>>>

(2)

Desarrollo de Software con UML

Desarrollo de Software con UML Cursada 2004Cursada 2004

Calculating the UUCP

Calculating the UUCP

Weighting

Weighting

Actors

Actors

Start by considering the actors for the system

Start by considering the actors for the system

determining whether each is simple, average, or

determining whether each is simple, average, or

complex based on its interface

complex based on its interface

Actor Type

Actor Type

Description

Description

Simple

Simple

Another system with a defined Application

Another system with a defined Application

Programming Interface

Programming Interface

Average

Average

Another system interacting through a protocol (e.g.,

Another system interacting through a protocol (e.g.,

TCP/IP) or

TCP/IP) or

A person interacting through a text

A person interacting through a text

-

-

based interface

based interface

(e.g., ASCII Terminal)

(e.g., ASCII Terminal)

Complex

Complex

A person interacting through a Graphical User

A person interacting through a Graphical User

Interface (stand

Interface (stand

-

-

alone or web application)

alone or web application)

Desarrollo de Software con UML

Desarrollo de Software con UML Cursada 2004Cursada 2004

Calculating the UUCP

Calculating the UUCP

Weighting

Weighting

Actors

Actors

(Cont.)

(Cont.)

Count how many of each actor type you have

Count how many of each actor type you have

Then multiply each type by a weighting factor

Then multiply each type by a weighting factor

Actor Type

Actor Type

Factor

Factor

Simple

Simple

Average

Average

Complex

Complex

1

1

2

2

3

3

Finally, add these products together to get a total

Finally, add these products together to get a total

Desarrollo de Software con UML

Desarrollo de Software con UML Cursada 2004Cursada 2004

Calculating the UUCP

Calculating the UUCP

Weighting

Weighting

Actors

Actors

Order

Order

-

-

processing

processing

system

system

Determining whether each actor is simple, average, or

Determining whether each actor is simple, average, or

complex based on its interface

complex based on its interface

Actor

Actor

Type

Type

Customer

Customer

Complex

Complex

Inventory System

Inventory System

Simple

Simple

Accounting System

Accounting System

Simple

Simple

Customer Service Manager

Customer Service Manager

Average

Average

Customer Rep

Customer Rep

Complex

Complex

Clerk

Clerk

Complex

Complex

Shipping Company

Shipping Company

Average

Average

Desarrollo de Software con UML

Desarrollo de Software con UML Cursada 2004Cursada 2004

Calculating the UUCP

Calculating the UUCP

Weighting

Weighting

Actors

Actors

Order

Order

-

-

processing

processing

system

system

Count how many of each actor type you have

Count how many of each actor type you have

2 Simple, 2 Average and 3 Complex

2 Simple, 2 Average and 3 Complex

Then multiply each type by a weighting factor

Then multiply each type by a weighting factor

2 Simple

2 Simple

*

*

1

1

=

=

2

2

2 Average

2 Average

*

*

2

2

=

=

4

4

3 Complex

3 Complex

*

*

3

3

=

=

9

9

Finally, add these products together to get a total

Finally, add these products together to get a total

Total Actor Weight

Total Actor Weight

=

=

15

15

UAW

UAW

Desarrollo de Software con UML

Desarrollo de Software con UML Cursada 2004Cursada 2004

Calculating the UUCP

Calculating the UUCP

Weighting

Weighting

Use Cases

Use Cases

For each Use Case determine whether it is simple,

For each Use Case determine whether it is simple,

average or complex

average or complex

Alternatives:

Alternatives:

Transaction

Transaction

-

-

based or Analysis Class

based or Analysis Class

-

-

based

based

Count how many of each type of use case type you have

Count how many of each type of use case type you have

Then, multiply each type by a weighting factor

Then, multiply each type by a weighting factor

Finally, add these products together to get a total

Finally, add these products together to get a total

Desarrollo de Software con UML

Desarrollo de Software con UML Cursada 2004Cursada 2004

Calculating the UUCP

Calculating the UUCP

Weighting

Weighting

Use Cases

Use Cases

Transaction

Transaction

-

-

based

based

Determining

Determining

the number of transactions in a use case,

the number of transactions in a use case,

including alternative paths

including alternative paths

A transaction is an atomic set of activities, which is

A transaction is an atomic set of activities, which is

either performed entirely or not at all

either performed entirely or not at all

Use Case

Use Case

Type

Type

Description

Description

It has

It has

Factor

Factor

Simple

Simple

3 or fewer transactions

3 or fewer transactions

5

5

Average

Average

4 to 7 transactions

4 to 7 transactions

10

10

Complex

(3)

Desarrollo de Software con UML

Desarrollo de Software con UML Cursada 2004Cursada 2004

Order

Order

Processing

Processing

System

System

Name:

Place Order

Place Order

Brief Description

This Use Case describes the process by which orders are entered into the

order-processing system.

Flow of Events

Basic Path

1.

The use case begins when the customer selects Place Order in the main screen.

2.

The system displays the Place Order screen.

3.

The customer enters his or her name and address.

4.

The customer enters product codes for products to be ordered.

5.

For each product code entered

a)

Include Get Product Information.

Include Get Product Information.

b) The system adds the price of the item to the total.

end loop

6.

The customer enters credit card payment information.

7.

The customer selects Submit.

8.

The system verifies the information.

9.

The system saves the order as pending –

Include Save Order.

Include Save Order.

10.

10.

Include Update Account.

Include Update Account.

11. The system marks the order as confirmed –

Include Update Order.

Include Update Order.

12. The system returns an order ID to the customer, and the use case ends.

Use Case Documentation

Use Case Documentation

Desarrollo de Software con UML

Desarrollo de Software con UML Cursada 2004Cursada 2004

Order

Order

Processing

Processing

System

System

Name:

Place Order

Place Order

Brief Description

Flow of Events

Alternative Paths

Cancel Placing an Order.

Payment not there or bad.

Shipping address incomplete.

Product code does not match actual products.

Product no longer carried.

Customer pays by check.

Alternative Path:

Cancel Placing an Order

Cancel Placing an Order

Precondition:

The user did not select Submit.

1.

The alternative begins when the user selects Cancel.

2.

The system discards any entered information.

3.

The system returns to the previous display.

4.

The use case ends.

Use Case Documentation

Use Case Documentation

Desarrollo de Software con UML

Desarrollo de Software con UML Cursada 2004Cursada 2004

Order

Order

Processing

Processing

System

System

Order From Displayed

[ place order selected ]

Enter Name and Address

Give Product Information

[ Product code entered ]

New Total Calculated

[ Product code entered ]

Enter Credit Card Information [ no more product codes ]

Submit Order Marked Pending [ info complete ] Charge Account Order Market Confirmed [ Payment good ] Order ID Displayed

cancel

submit

Cancelable

Actions

Activity

Activity

Diagram

Diagram

(Place

(Place

Order

Order

)

)

Desarrollo de Software con UML

Desarrollo de Software con UML Cursada 2004Cursada 2004

C ustomer

Place Order

Save Order

Update Order

Update Account

Get Product Information

<<include>>

<<include>>

<<include>>

<<include>>

Order

Order

Processing

Processing

System

System

Use Case

Use Case

Context

Context

(Place

(Place

Order

Order

)

)

Desarrollo de Software con UML

Desarrollo de Software con UML Cursada 2004Cursada 2004

Calculating the UUCP

Calculating the UUCP

Weighting

Weighting

Use Cases

Use Cases

Analysis Class

Analysis Class

-

-

based

based

Watching which analysis classes are used to realize a

Watching which analysis classes are used to realize a

particular use case

particular use case

Use Case

Use Case

Type

Type

Description

Description

It can be realized with

It can be realized with

Factor

Factor

Simple

Simple

Fewer than 5 analysis classes

Fewer than 5 analysis classes

5

5

Average

Average

5 to 10 analysis classes

5 to 10 analysis classes

10

10

Complex

Complex

More than 10 analysis classes

More than 10 analysis classes

15

15

Desarrollo de Software con UML

Desarrollo de Software con UML Cursada 2004Cursada 2004

Calculating the UUCP

Calculating the UUCP

Weighting

Weighting

Use Cases

Use Cases

Order

Order

-

-

proc

proc

system

system

Determining whether each use case is simple, average,

Determining whether each use case is simple, average,

or complex

or complex

Use Case

Use Case

Type

Type

Place Order

Place Order

Average

Average

Return Product

Return Product

Average

Average

Cancel Order

Cancel Order

Simple

Simple

Get Status on Order

Get Status on Order

Simple

Simple

Send Catalog

Send Catalog

Run Sales Report

Run Sales Report

Simple

Simple

Register Complaint

Register Complaint

Simple

Simple

Simple

Simple

Fill and Ship Order

Fill and Ship Order

Back

Back

-

-

Ordered Items Received

Ordered Items Received

Average

Average

Average

(4)

Desarrollo de Software con UML

Desarrollo de Software con UML Cursada 2004Cursada 2004

Calculating the UUCP

Calculating the UUCP

Weighting Use Cases

Weighting Use Cases

Order

Order

-

-

proc system

proc system

Count how many of each use case type you have

Count how many of each use case type you have

5 Simple, 4 Average and 0 Complex

5 Simple, 4 Average and 0 Complex

Then multiply each type by a weighting factor

Then multiply each type by a weighting factor

5 Simple

5 Simple

*

*

5

5

=

=

25

25

4 Average

4 Average

*

*

10

10

=

=

40

40

0 Complex

0 Complex

*

*

15

15

=

=

0

0

Finally, add these products together to get a total

Finally, add these products together to get a total

Total Use Case Weight

Total Use Case Weight

=

=

65

65

UUCW

UUCW

Desarrollo de Software con UML

Desarrollo de Software con UML Cursada 2004Cursada 2004

Calculating

Calculating

the

the

UUCP

UUCP

Calculating

Calculating

the

the

Unadjusted

Unadjusted

Use Case

Use Case

Points

Points

UUCP

UUCP

=

=

UAW

UAW

+

+

UUCW

UUCW

UUCP

UUCP

Order

Order

-

-

proc

proc

system

system

=

=

15

15

+

+

65

65

=

=

80

80

UUCP provides an idea of the complexity of

UUCP provides an idea of the complexity of

the use cases and interfaces, but

the use cases and interfaces, but

What about the technical and environmental

What about the technical and environmental

factors?

factors?

Desarrollo de Software con UML

Desarrollo de Software con UML Cursada 2004Cursada 2004

Calculating the UCP

Calculating the UCP

Technical

Technical

Factors

Factors

Technical

Technical

Factor

Factor

Factor Description

Factor Description

Weight

Weight

T1

T1

Distributed System

Distributed System

2

2

T2

T2

Response or throughput performance objectives

Response or throughput performance objectives

1

1

T3

T3

End

End

-

-

user efficiency (on line)

user efficiency (on line)

1

1

T4

T4

Complex internal processing

Complex internal processing

1

1

T5

T5

Code must be reusable

Code must be reusable

1

1

T6

T6

Easy to install

Easy to install

0,5

0,5

T7

T7

Easy to use

Easy to use

0,5

0,5

Desarrollo de Software con UML

Desarrollo de Software con UML Cursada 2004Cursada 2004

Calculating the UCP

Calculating the UCP

Technical

Technical

Factors

Factors

(Cont.)

(Cont.)

Technical

Technical

Factor

Factor

Factor Description

Factor Description

Weight

Weight

T8

T8

Portable

Portable

2

2

T9

T9

Easy to change

Easy to change

1

1

T10

T10

Concurrent

Concurrent

1

1

T11

T11

Includes special security features

Includes special security features

1

1

T12

T12

Provides direct access for third parties

Provides direct access for third parties

1

1

T13

T13

Special user training facilities required

Special user training facilities required

1

1

Desarrollo de Software con UML

Desarrollo de Software con UML Cursada 2004Cursada 2004

Calculating the UCP

Calculating the UCP

Weighting

Weighting

Technical

Technical

Factors

Factors

Go through Table and rate each factor from 0 to 5

Go through Table and rate each factor from 0 to 5

A rating of

A rating of

0 means

0 means

that the factor is

that the factor is

irrelevant

irrelevant

A rating of

A rating of

5 means

5 means

that the factor is

that the factor is

essential

essential

A rating of

A rating of

3 means

3 means

that the factor is

that the factor is

average

average

Then multiply each factor´

Then multiply each factor

´s rating (

s rating (TLevel

TLevel) by its weight

) by its weight

Finally, add these products together to get a total

Finally, add these products together to get a total

(

(TFactor

TFactor)

)

Desarrollo de Software con UML

Desarrollo de Software con UML Cursada 2004Cursada 2004

Calculating the UCP

Calculating the UCP

Weighting

Weighting

Technical

Technical

Factors

Factors

Order

Order

-

-

proc

proc

system

system

Technical

Technical

Factor

Factor

Weight

Weight

TLevel

TLevel

TLevel

TLevel

* Weight

* Weight

Reason

Reason

T1

T1 22 11 22 Just ClientJust Client--ServerServer T2

T2 11 33 33 Speed is likely limited by input humanSpeed is likely limited by input human T3

T3 11 55 55 Needs to be efficient Needs to be efficient T4

T4 11 11 11 Easy processingEasy processing

T5

T5 11 00 00 Nice, but laterNice, but later

T6

T6 0,50,5 55 2,52,5 Needs to be easy for nonNeeds to be easy for non--technical technical people people T7

T7 0,50,5 55 2,52,5 Needs to be easy for nonNeeds to be easy for non--technical technical people people T8

T8 22 00 00 Not at this time Not at this time T9

T9 11 33 33 SureSure

T10

T10 11 55 55 Not exactly, but it is multiNot exactly, but it is multi--useruser T11

T11 11 33 33 Simple securitySimple security T12

T12 11 55 55 CustomersCustomers

T13

T13 11 00 00 So easy we donSo easy we don’’t need trainingt need training

TFactor

(5)

Desarrollo de Software con UML

Desarrollo de Software con UML Cursada 2004Cursada 2004

Calculating the UCP

Calculating the UCP

Weighting

Weighting

Technical

Technical

Factors

Factors

Order

Order

-

-

proc

proc

system

system

TFactor

TFactor

=

=

(

(

TLevel

TLevel

*

*

Weight

Weight

)

)

=

=

32

32

TCF

TCF

=

=

0,6

0,6

+

+

(

(

0,01

0,01

*

*

TFactor

TFactor

)

)

TCF

TCF

=

=

0,6

0,6

+

+

(

(

0,01

0,01

*

*

32

32

)

)

=

=

0,92

0,92

Desarrollo de Software con UML

Desarrollo de Software con UML Cursada 2004Cursada 2004

Calculating the UCP

Calculating the UCP

Environmental

Environmental

Factors

Factors

Environmental

Environmental

Factor

Factor

Factor Description

Factor Description

Weight

Weight

E1

E1

Familiar with Rational Unified Process

Familiar with Rational Unified Process

1,5

1,5

E2

E2

Application experience

Application experience

0,5

0,5

E3

E3

Object

Object

-

-

oriented experience

oriented experience

1

1

E4

E4

Lead analyst capability

Lead analyst capability

0,5

0,5

E5

E5

Motivation

Motivation

1

1

E6

E6

Stable requirements

Stable requirements

2

2

E7

E7

Part

Part

-

-

time workers

time workers

-

-

1

1

E8

E8

Difficult programming language

Difficult programming language

-

-

1

1

Desarrollo de Software con UML

Desarrollo de Software con UML Cursada 2004Cursada 2004

Calculating the UCP

Calculating the UCP

Weighting

Weighting

Environmental

Environmental

Factors

Factors

Go through Table and rate each factor from 0 to 5

Go through Table and rate each factor from 0 to 5

For factors E1 through E4

For factors E1 through E4

A rating of 0 means no experience in the subject

A rating of 0 means no experience in the subject

5 means expert; 3 means average

5 means expert; 3 means average

For E5 (Motivation)

For E5 (Motivation)

0 means no motivation for the project;

0 means no motivation for the project;

5 means high motivation

5 means high motivation

For E6 (Stable Requirements)

For E6 (Stable Requirements)

0 means extremely unstable requirements;

0 means extremely unstable requirements;

5 means unchanging requirements

5 means unchanging requirements

For E7 (Part

For E7 (Part

-

-

time Workers)

time Workers)

0 means no part

0 means no part

-

-

time technical staff;

time technical staff;

5 means all part

5 means all part

-

-

time technical staff

time technical staff

For E8 (Programming Language)

For E8 (Programming Language)

0 means easy

0 means easy

-

-

to

to

-

-

use programming language;

use programming language;

5 means very difficult programming language

5 means very difficult programming language

Desarrollo de Software con UML

Desarrollo de Software con UML Cursada 2004Cursada 2004

Calculating the UCP

Calculating the UCP

Weighting

Weighting

Environmental

Environmental

Factors

Factors

Then multiply each factor´

Then multiply each factor

´s rating (

s rating (ELevel

ELevel) by its weight

) by its weight

Finally, add these products together to get a total

Finally, add these products together to get a total

(

(EFactor

EFactor)

)

Desarrollo de Software con UML

Desarrollo de Software con UML Cursada 2004Cursada 2004

Calculating the UCP

Calculating the UCP

Weighting

Weighting

Environm

Environm

.

.

Factors

Factors

Order

Order

-

-

proc

proc

system

system

Environm

Environm

.

.

Factor

Factor

Weight

Weight

ELevel

ELevel

ELevel

ELevel

*

*

Weight

Weight

Reason

Reason

E1

E1

1,5

1,5

1

1

1,5

1,5

Most of team unfamiliar

Most of team unfamiliar

E2

E2

0,5

0,5

3

3

1,5

1,5

Most of team are programmers

Most of team are programmers

E3

E3

1

1

3

3

3

3

OO programmers

OO programmers

E4

E4

0,5

0,5

5

5

2,5

2,5

The leader is really good

The leader is really good

E5

E5

1

1

5

5

5

5

Team is really eager

Team is really eager

E6

E6

2

2

5

5

10

10

We don

We don

t expect changes

t expect changes

E7

E7

-

-

1

1

0

0

0

0

Not part

Not part

-

-

timers

timers

E8

E8

-

-

1

1

3

3

-

-

3

3

We

We

re looking at Java

re looking at Java

EFactor

EFactor

=

=

ELevel

ELevel

*

*

Weight

Weight

20,5

20,5

Desarrollo de Software con UML

Desarrollo de Software con UML Cursada 2004Cursada 2004

Calculating the UCP

Calculating the UCP

Weighting

Weighting

Environm

Environm

.

.

Factors

Factors

Order

Order

-

-

proc

proc

system

system

EFactor

EFactor

=

=

(

(

ELevel

ELevel

*

*

Weight

Weight

)

)

=

=

20,5

20,5

EF

EF

=

=

1,4

1,4

+

+

(

(

-

-

0,03

0,03

*

*

EFactor

EFactor

)

)

EF

(6)

Desarrollo de Software con UML

Desarrollo de Software con UML Cursada 2004Cursada 2004

Calculating

Calculating

the

the

UCP

UCP

Calculating

Calculating

the

the

Use Case

Use Case

Points

Points

UCP

UCP

=

=

UUCP

UUCP

*

*

TCF

TCF

*

*

EF

EF

UCP

UCP

Order

Order

-

-

proc

proc

system

system

=

=

80

80

*

*

0,92

0,92

*

*

0,785

0,785

=

=

57,77

57,77

UCP provides an idea of the complexity of the

UCP provides an idea of the complexity of the

system adjusted to the technical and environmental

system adjusted to the technical and environmental

factors

factors

Desarrollo de Software con UML

Desarrollo de Software con UML Cursada 2004Cursada 2004

Estimating the Project

Estimating the Project

Estimating

Estimating

Man

Man

-

-

hours

hours

In general, Karner

In general,

Karner

suggests using

suggests using 20 man

20 man

-

-

hours per UCP

hours per UCP

Man

Man-

-hours

hours

Order

Order

-

-

proc system

proc system

=

=

57,77

57,77

*

*

20

20

= 1155,52

= 1155,52

~ 29 weeks at 40 hours a week, for one person

~ 29 weeks at 40 hours a week, for one person

Taking a small team of 6 persons working full

Taking a small team of 6 persons working full

-

-

time

time

~ 5 weeks of effort

~ 5 weeks of effort

Add some weeks for working out any team issues

Add some weeks for working out any team issues

Too many problems of communication or synchronization

Too many problems of communication or synchronization

Desarrollo de Software con UML

Desarrollo de Software con UML Cursada 2004Cursada 2004

Estimating the Project

Estimating the Project

Estimating

Estimating

Man

Man

-

-

hours

hours

Schneider & Winters suggest

Schneider & Winters suggest a refinement based on

a refinement based on

Environmental Factors

Environmental Factors

EF factors measure the experience level of your staff and

EF factors measure the experience level of your staff and

the stability of your project.

the stability of your project.

Any negatives in this area mean that you will have to spend

Any negatives in this area mean that you will have to spend

time training people or fixing problems due to instability.

time training people or fixing problems due to instability.

Desarrollo de Software con UML

Desarrollo de Software con UML Cursada 2004Cursada 2004

Estimating the Project

Estimating the Project

Estimating

Estimating

Man

Man

-

-

hours

hours

Schneider & Winters suggest a refinement based on EF

Schneider & Winters suggest a refinement based on EF

Start by Calculating TNEF:

Start by Calculating TNEF:

Count how many of E1 through E6 are below 3 (average

Count how many of E1 through E6 are below 3 (average

level value) and how many in E7 and E8 are above 3.

level value) and how many in E7 and E8 are above 3.

Then, you have to use:

Then, you have to use:

20

20

man

man

-

-

hours per UCP

hours per UCP

when TNEF ≤ 2

when TNEF ≤ 2

28

28

man

man

-

-

hours per UCP

hours per UCP

when 3 ≤ TNEF ≤ 4

when 3 ≤ TNEF ≤ 4

36

36

man

man

-

-

hours per UCP

hours per UCP

when TNEF ≥ 4

when TNEF ≥ 4

=> In this case, try very hard to change your project

=> In this case, try very hard to change your project

Desarrollo de Software con UML

Desarrollo de Software con UML Cursada 2004Cursada 2004

Calculating the UCP

Calculating the UCP

Weighting

Weighting

Environm

Environm

.

.

Factors

Factors

Order

Order

-

-

proc

proc

system

system

Environm

Environm

.

.

Factor

Factor

Weight

Weight

ELevel

ELevel

ELevel

ELevel

*

*

Weight

Weight

Reason

Reason

E1

E1

1,5

1,5

1

1

1,5

1,5

Most of team unfamiliar

Most of team unfamiliar

E2

E2

0,5

0,5

3

3

1,5

1,5

Most of team are programmers

Most of team are programmers

E3

E3

1

1

3

3

3

3

OO programmers

OO programmers

E4

E4

0,5

0,5

5

5

2,5

2,5

The leader is really good

The leader is really good

E5

E5

1

1

5

5

5

5

Team is really eager

Team is really eager

E6

E6

2

2

5

5

10

10

We don

We don

t expect changes

t expect changes

E7

E7

-

-

1

1

0

0

0

0

Not part

Not part

-

-

timers

timers

E8

E8

-

-

1

1

3

3

-

-

3

3

We

We

re looking at Java

re looking at Java

We have one EF below the average

We have one EF below the average

=> 20 man

=> 20 man

-

-

hours per UCP

hours per UCP

It is below 3

It is below 3

Desarrollo de Software con UML

Desarrollo de Software con UML Cursada 2004Cursada 2004

Book

Book

Applying Use Cases: A Practical Guide

Applying Use Cases: A Practical Guide

Authors: G.Schneider & J. P. Winters

Authors: G.Schneider & J. P. Winters

Edition: Second

Edition: Second

-

-

Editorial: Addison Wesley

Editorial: Addison Wesley

ISBN: 0

ISBN: 0

-

-

2001

2001

-

-

70853

70853

-

-

1

1

References

References

Papers

Papers

Resource Estimation for

Resource Estimation for

Objectory

Objectory

Projects

Projects

G.

G.

Karner

Karner

-

-

Objectory

Objectory

Systems

Systems

The Estimation of Effort Based on Use Cases

The Estimation of Effort Based on Use Cases

J. Smith

References

Related documents

mtDNA content (MtN) was measured in frontal cortex, parietal cortex and cerebellum from non-diabetic cases with no cognitive impairment (NCI, open circles), non-diabetic

The client application is then able to ask for a receipt from the micro-payment service for the payment token used, and may now use its recently activated media token to download

*UnitedHealth Premium Tier 1 physicians have received the Premium designation for Quality &amp; Cost Efficiency, or Cost Efficiency and Not Enough Data to Assess Quality..

 Use case, activity and sequence diagrams are used to document interaction..  State diagrams and interaction complement

In order to explore teachers’ purposes for and methods of using their personal writing as models, and to investigate whether teachers experience any benefits and

Educational Researcher, Leadership Task Force, Framework for Principal Support and Evaluation, 2011-2012 Oakland Unified School District, Oakland, CA.. Educational Researcher,

Newby indicated that he had no problem with the Department’s proposed language change.. O’Malley indicated that the language reflects the Department’s policy for a number

process, there is less noise in the experimental measurements taken to improve other parts of the process, thereby leading to clearer results. In general, the process is tuned to