functional points

Upload: mamunurrahman

Post on 13-Apr-2018

213 views

Category:

Documents


0 download

TRANSCRIPT

  • 7/27/2019 Functional Points

    1/34

    1

    ..

    Introduction

    to Function Points By: Carlos Colon Riollano, MBA, PMP,

    CPM, MSPC

  • 7/27/2019 Functional Points

    2/34

    2

    ..

    Agenda

    Introduction

    What is a a function point?

    Objectives of Function Point Analysis

    Brief Function Points History

    Questions

  • 7/27/2019 Functional Points

    3/34

    3

    ..

    Function Points are a Unit of

    Measure

    FPs are a unit measure for software muchlike an hour is to measuring time, inches tomeasuring distance and Fahrenheit to

    measuring temperature. A UOM is important to understanding and

    communicating such metrics as AverageCosts, Average Time and so forth.

    For example understating the cost persquare foot to build a house, help a buyer tocompare one house to another, also helpsthe builder to understand the cost and

    predicts future costs.

  • 7/27/2019 Functional Points

    4/34

    4

    ..

    ExternalInterface FilesExternal Input

    External Output

    External Inquiry

    Application Being Considered

    OtherApplications

    External Output

    External Input

    External Inquiry

    InternalLogical

    File

    Function Points are a Unit of

    Measure

    Functionality as viewed from the users perspective

  • 7/27/2019 Functional Points

    5/34

    5

    ..

    Objectives of Function Point

    Analysis

    Measures software by quantifying thefunctionality requested by and provided to

    the customer based primarily on logicaldesign

    Measures software development andmaintenance independently of technologyused for implementation

    Measures software development andmaintenance consistently across all projectsand organizations

  • 7/27/2019 Functional Points

    6/34

    6

    ..

    Why Use Function Points

    To manage your software

  • 7/27/2019 Functional Points

    7/34

    7

    ..

    Software Development

    Challenges

    Size of Requirements

    Changes to Requirements

    Estimation Based on

    Requirements

    Measuring and Improving

    Productivity and Quality

  • 7/27/2019 Functional Points

    8/34

    8

    ..

    Changes to Requirements

    Change InevitableTrade-offs

    Customer Definition of

    Quality

    Size

    Changes to Requirements

  • 7/27/2019 Functional Points

    9/34

    9

    ..

    Size of Requirements

    Requirements

    Complete

    Business Terms

    Mutual Understanding

    Document Assumptions

    Size

  • 7/27/2019 Functional Points

    10/34

    10

    ..

    Changes to Requirements

    100 FPs 120 FPs 130 FPs 135 FPs

    State code input screenchanged (3 FPs)

    Interface to N&A fileadded (10 FPs)

    N&A inquiry and state

    code inquiry added (7FPs)

    New regulatorytable added (10 FPs)

    Summary reportadded (5 FPs)

    Impact

    Effort

    Schedule

    Cost

    + 1 month+ 2 weeks

    + $5 K

    + .5 month+ 1 week

    + $2.5 K

    + .25 month+ 2.5 days

    + $1.25 K

    Delivered

    Application

    Detail

    Design

    Functional

    DesignRequirements

  • 7/27/2019 Functional Points

    11/34

    11

    ..

    Estimation Based on

    Requirements

    Estimation Based on

    Requirements

    Multiple Models

    Weighted Inputs:

    Language

    Skills

    Methodology Risk Factors

    Size

    Historical Base

  • 7/27/2019 Functional Points

    12/34

    12

    ..

    Why Use Function Points

    To manage your Organization

  • 7/27/2019 Functional Points

    13/34

    13

    ..

    Function Points and the CMM

    Function Points are the metric

    of choice for many of theactivities required in the SEI

    CMM Level 2

    With the next release of the

    CMM, metrics becomes a KeyProcess Area in its own right

    SEI Capability

    Maturity Model

    1. INITIALAd hoc

    2. REPEATABLE

    Basic management control

    3. DEFINEDProcess definition

    4. MANAGEDProcess measurement

    5. OPTIMIZINGProcess control

    Process

    Maturity

    Levels

  • 7/27/2019 Functional Points

    14/34

    14

    ..

    Improving Customer

    Relations

    Predictable Time scales

    Predictable Costs

    Predictable Functionality

  • 7/27/2019 Functional Points

    15/34

    15

    ..

    Organizational

    Improvement

    Process Measurement

    Project Management Metrics Estimates

    Productivity

    Defect Densities

    etc.

    Benchmarking

  • 7/27/2019 Functional Points

    16/34

    16

    ..

    Why Use Function Points

    Function Points vs. Lines of Code

  • 7/27/2019 Functional Points

    17/34

    17

    ..

    Function Points not Lines of

    Code Technology and platform independence

    Available from early requirements phase

    Consistent and objective unit of measure

    throughout the life cycle

    Objectively defines software application from the

    customer perspective

    Objectively defines a series of software

    applications from the customers, not thetechnicians perspective

    Is expressed in terms that users can readily

    understand about their software

  • 7/27/2019 Functional Points

    18/34

    18

    ..

    There is no standard for a line of code

    Lines of Code measure components not completed

    products

    Don't measure the panels produced; measure the

    number of cars assembled

    Measuring lines of code

    Rewards profligate design

    Penalizes tight design

    Positively misleading?

    What is Wrong with Lines of

    Code?

  • 7/27/2019 Functional Points

    19/34

    19

    ..

    How to Count Function Points

  • 7/27/2019 Functional Points

    20/34

    20

    ..

    How to Count Function Points

    Displays

    Reports

    Master Files Size

    ReferenceFiles

    Signals

    Control Files

  • 7/27/2019 Functional Points

    21/34

    21

    ..

    Steps in FP Counting

    Determine Type of Count

    Identify Counting Scope and Application

    Boundary Count Data Functions

    Count Transactional Functions

    Determine Unadjusted Function Point

    Count

    Determine Value Adjustment Factor

    Calculate Adjusted Function Point Count

  • 7/27/2019 Functional Points

    22/34

    22

    ..

    FP Overview: What Is

    Counted

    EI

    ILF

    EIF

    EQ

    Key

    Details

    P1

    Update Master File

    Master

    File

    P3

    Master File

    Details

    Weekly

    Summary

    Report

    P2

    Produce Weekly Report

    Reference

    File

    another

    System

    on

    System

    Boundary

    EO

  • 7/27/2019 Functional Points

    23/34

    23

    ..

    Data Storage

    Internal Logical File (ILF)

    Logical group of data maintained

    by the application (e.g., Employeefile)

    External Interface File (EIF)

    Logical group of data referencedbut not maintained (e.g., Global

    state table)

  • 7/27/2019 Functional Points

    24/34

    24

    ..

    Transactions

    External Input (EI)

    Maintains ILF or passes control

    data into the application

    External Output (EO)

    Formatted data sent out of

    application with added value (e.g.,

    calculated totals)

    External Query (EQ)

    Formatted data sent out of

    application without added value

  • 7/27/2019 Functional Points

    25/34

    25

    ..

    Functional Size

    (Unadjusted Function Size)

    Function Type Low Average High

    EI x 3 x 4 x 6

    EO x 4 x 5 x 7

    EQ x 3 x 4 x 6

    ILF x 7 x 10 x 15

    EIF x 5 x 7 x 10

  • 7/27/2019 Functional Points

    26/34

    26

    ..

    Value Adjustment Factor

    Based on 14 General System

    Characteristics (User Business

    Constraints Independent of Technology) Examples: data communications, response

    times, end user efficiency, multiple sites

    and flexibility

    Adjusts FP count by up to + / - 35%

  • 7/27/2019 Functional Points

    27/34

    27

    ..

    IFPUG History

  • 7/27/2019 Functional Points

    28/34

    28

    ..

    History - Early Days

    1979 Function Points introduced by Allan

    Albrecht

    1984 First formal Function Point Guidelines

    1986 IFPUG elects first Board of Directors

    1990 Function Point as Assets Manual

    1991 Certification for training materialsIFPUG Hotline established

  • 7/27/2019 Functional Points

    29/34

    29

    ..

    History - Modern

    1994 CPM release 4.0

    Participation in International Software

    Benchmarking Standards Group (ISBSG)

    1995 Guidelines to Software Measurement

    IFPUG Home Page Introduced

    1997 10th Anniversary Celebration!

    1999 CPM release 4.1

  • 7/27/2019 Functional Points

    30/34

    30

    ..

    IFPUG Structure

  • 7/27/2019 Functional Points

    31/34

    31

    ..

    Counting Practices

    Publish Counting Practices

    Manual

    Update Counting Practices

    Manual

    Make Rulings on areas ofAmbiguity

  • 7/27/2019 Functional Points

    32/34

    32

    ..

    Certification

    Tests for Conformance to

    Counting Practices Manual

    Counters

    Training courses

    Software support tools

    IFPUG

    Seal of Approval

  • 7/27/2019 Functional Points

    33/34

    33

    ..

    IFPUG Benefits

    Free copies of IFPUG standards manuals

    Case Studies at member discounted rates

    Member directory

    PublicationsMetricViews,Metrics Source

    IFPUG E-Mail List Serve & Private Home Page

    Reduced rates for conference & workshops

    Ability to participate on Committees

    Networking, Professional Development

  • 7/27/2019 Functional Points

    34/34

    34

    ..

    How May We Help You?

    Questions????

    Comments!!!

    Suggestions!?!?!?