43
Planning and Scheduling: 1

Chapter 2 ASE

  • Upload
    mr-smak

  • View
    543

  • Download
    1

Embed Size (px)

DESCRIPTION

 

Citation preview

Page 1: Chapter 2 ASE

Planning and Scheduling:

1

Page 2: Chapter 2 ASE

• FUNDAMENTAL ENGINEERING.• FIRST DO THE PROBLEM ANALYSIS.• THEN DEVELOP A SOLUTION TO THE DEFINED NEEDS.

– SPECIFY OBJECTIVES.– DETERMINE ACTIVITIES & RESOURCES.– PRESENT RESULTS IN A SCHEMATIC THAT CAN BE USED BY

THE TEAM.

2

PLANNING & SCHEDULING

Page 3: Chapter 2 ASE

OBJECTIVES FOR PLANNING AND SCHEDULING

• EFFECTIVE TIME MANAGEMENT.

• OPTIMZE SEQUENCE OF EVENTS.

• DEFINE NECESSARY RESOURCES.

• TIMLY PROJECT PROGRESS.

3

Page 4: Chapter 2 ASE

• Allocation of resources to activities over time so that input demands are met in a timely and cost-effective manner

• Most typically, this involves determining a set of activity start and end times, together with resource assignments, which– satisfy all temporal constraints on activity execution

(following from process considerations)– satisfy resource capacity constraints, and– optimize some set of performance objectives to the

extent possible

4

Page 5: Chapter 2 ASE

Planning and Scheduling:

Gantt Chart• A Gantt chart is a type of bar chart,

developed by Henry Gantt, that illustrates a project schedule. Gantt charts illustrate the start and finish dates of the terminal elements and summary elements of a project. Terminal elements and summary elements comprise the work breakdown structure of the project. Some Gantt charts also show the dependency (i.e., precedence network) relationships between activities. 5

Page 6: Chapter 2 ASE

• Use a Gantt chart to plan how long a project should take. A Gantt chart lays out the order in which the tasks need to be carried out.

Early Gantt charts did not show dependencies between tasks but modern Gantt chart software provides this capability.

Henry Laurence Gantt, an American mechanical engineer, is credited with the invention of the Gantt chart.

6

Page 7: Chapter 2 ASE

• Gantt charts have become a common technique for representing the phases and activities of a project work breakdown structure.

• A work breakdown structure (WBS) is a deliverable oriented decomposition of a project into smaller components.

• A work breakdown structure element may be a product, data, a service, or any combination.

7

Page 8: Chapter 2 ASE

• Gantt charts only represent part of the triple constraints of projects.

• Gantt charts do not represent the size of a project or the relative size of work elements.

• Magnitude of a behind-schedule condition is easily mis communicated.

8

Page 9: Chapter 2 ASE

Planning and Scheduling: Gantt Chart

• List tasks• Graphically represent dependencies among tasks• Show duration and time period of each task• Heavily dependent on prediction regarding:

– Activities involved– Effort and time required

9

Page 10: Chapter 2 ASE

Gantt chart example• Programmer working on a small software

project

10

ID Task Name Start FinishDuratio

n

Dec 2002

5 6 7 8 9 10 11 12 13 14 15 16 17 18

1 2d12/6/200212/5/2002Requirement gathering

2 1d12/9/200212/9/2002Analysis

3 2d12/11/200212/10/2002Design

4 4d12/17/200212/12/2002Coding

5 10d12/31/200212/18/2002Testing

19 20 21 22 23 24 25 26 27 28 29 30 31

Explicit start time, end time, and duration (in days )

Explicit calendar bar

Page 11: Chapter 2 ASE

Another Gantt

11

Page 12: Chapter 2 ASE

Planning and Scheduling: Pert chart

• Alternative to Gantt chart• Different perspective

– Focuses on dependencies more than calendar time

• No fixed format

12

2 12/6/2002

Late Start Slack Late Finish

12/5/2002

Requirement gathering

1 12/9/2002

Late Start Slack Late Finish

12/9/2002

Analysis

2 12/11/2002

Late Start Slack Late Finish

12/10/2002

Design

4 12/17/02

Late Start Slack Late Finish

12/12/2002

Coding

10 12/31/2002

Late Start Slack Late Finish

12/18/2002

Testing

Start time

Duration

End timeTask

Page 13: Chapter 2 ASE

Another Pert

13

Page 14: Chapter 2 ASE

So how do you know how long a task is going to take?

14

Page 15: Chapter 2 ASE
Page 16: Chapter 2 ASE

16

Page 17: Chapter 2 ASE

17

Page 18: Chapter 2 ASE

18

Page 19: Chapter 2 ASE

19

Page 20: Chapter 2 ASE

20

Page 21: Chapter 2 ASE

21

Page 22: Chapter 2 ASE

22

Page 23: Chapter 2 ASE

Function Points• A.J. Albrecht of IBM, ~1979.• FP is a unit for estimating time and effort

independent of programming language.• Identify set of application activities (building

blocks) and sum the weights assigned to each.• From user’s viewpoint.

23

Page 24: Chapter 2 ASE

24

Page 25: Chapter 2 ASE

25

Page 26: Chapter 2 ASE

26

Page 27: Chapter 2 ASE

Determine the Unadjusted Function Point Count• The unadjusted function point count (UFPC) reflects

the specific countable functionality provided to the user by the project or application.

• The application's specific user functionality is evaluated in terms of what is delivered by the application, not how it is delivered. Only user-requested and defined components are counted.

• The unadjusted function point count has two function types—data and transactional.

27

Page 28: Chapter 2 ASE

28

Page 29: Chapter 2 ASE

Count Data Functions

1. An internal logical file (ILF) is a user identifiable group of

logically related data or control information maintained

within the boundary of the application. The primary

intent of an ILF is to hold data maintained through one

or more elementary processes of the application being

counted.• Tables in a relational database. • Application control information, perhaps things like user

preferences that are stored by the application. 29

Page 30: Chapter 2 ASE

2. An external interface file (EIF) is a user identifiable

group of logically related data or control information

referenced by the application, but maintained within

the boundary of another application. This means an

EIF counted for an application must be in an ILF in

another application.

30

Page 31: Chapter 2 ASE

Count Transactional Functions

• An external input (EI) is an elementary process that processes data or control information that comes from outside the application’s boundary.

• The primary intent of an EI is to maintain one or more ILFs and/or to alter the behavior of the system.

31

Page 32: Chapter 2 ASE

• An external output (EO) is an elementary process that

sends data or control information outside the application’s

boundary. The primary intent of an external output is to

present information to a user through processing logic

32

Page 33: Chapter 2 ASE

• An external inquiry (EQ) is an elementary process that sends data or control information outside the application boundary. The primary intent of an external inquiry is to present information to a user through the retrieval of data or control information. The processing logic contains no mathematical formula or calculation, and creates no derived data. No ILF is maintained during the processing, nor is the behavior of the system altered.

33

Page 34: Chapter 2 ASE

Low Medium High

Input files 3 4 6

Output files 4 5 7

Inquiries 3 4 6

Internal files 7 10 15

External interfaces

5 7 10

34

Page 35: Chapter 2 ASE

35

Determine the Value Adjustment Factor

The value adjustment factor (VAF) indicates the general

functionality provided to the user of the application. The

VAF is comprised of 14 general system characteristics

(GSCs) that assess the general functionality of the

application. Each characteristic has associated

descriptions that help determine the degree of influence

of the characteristic. The degrees of influence range on

a scale of zero to five, from no influence to strong

influence

Page 36: Chapter 2 ASE

Value Adjustment Factor

36

1. System Complexity 2. I/O Complexity 3. Application Complexity

1.1 Data communication

2.1 Reliable and transaction-oriented data management

3.1 Algorithms and processing ability

1.2 Distributed data processing

2.2 Online data management

3.2 Need to reuse the code later

1.3 Relevance of performance

2.3 Usability and efficiency of end user

3.3 Installation easiness

1.4 Configuration of hardware and software

2.4 Online update of the data

3.4 Startup, shutdown, and operation easiness

Partial (1) Partial (2) 3.5 Requirements to run on multiple sites

        3.6 Readiness to change

        Partial (3)

Total

Page 37: Chapter 2 ASE

37

Page 38: Chapter 2 ASE

Function Points• 14 “technical factors” related to complexity

– Grouped under 3 classes of complexity:system, I/O, application

– Each factor ranked from 0 to 5• Technical complexity factor (TCF)

• Adjusted function points (AFP or FP)FP = UFP * (0.65 + TCF)

38

01.014

1 i iTCFTCF

The sum of the 14 factors’ ranks

Page 39: Chapter 2 ASE

Determine Type of Count

Development Project• Functions provided to the users with the first installation.

Enhancement Project• Measures the modifications to the existing application that add,

change, or delete user functions delivered.• Application function point count must be updated to reflect

changes in the application's functionality.

39

Page 40: Chapter 2 ASE

Application Project

• Referred to as the baseline or installed function point count. This number is initialized when the development project function point count is completed. It is updated every time completion of an enhancement project alters the application's.

40

Page 41: Chapter 2 ASE

UFP for Making Cappuccino

41

Name Type (building block)

Complexity Value

Milk Input File Medium 4

Coffee Input File Medium 4

Water Input File Low 3

Cappuccino Output File High 7

Water Temperature Inquiry Low 3

External Temperature External Interface Medium 7

Total Unadjusted Function Points 28

Page 42: Chapter 2 ASE

FP for Making Cappuccino

42

1. System Complexity 2. I/O Complexity 3. Application Complexity

1.1 Data communication 5 2.1 Reliable and transaction-oriented data management

0 3.1 Algorithms and processing ability

1

1.2 Distributed data processing

3 2.2 Online data management

4 3.2 Need to reuse the code later

0

1.3 Relevance of performance

4 2.3 Usability and efficiency of end user

4 3.3 Installation easiness 5

1.4 Configuration of the hardware and the software

4 2.4 Online update of the data

2 3.4 Startup, shutdown, and operation easiness

3

Partial (1) 16 Partial (2) 10 3.5 Requirements to run on multiple sites

2

        3.6 Readiness to change 2

        Partial (3) 13

Total = 39

Page 43: Chapter 2 ASE

FP for Making Cappuccino

• FP = UFP * (0.65 + TCF) = 28 * (0.65 + (39 * 0.01)) = 29.12

• So what was the time/effort required last time your firm implement 29 FPs?

43