progressive function point analysis

Upload: ruben

Post on 07-Aug-2018

261 views

Category:

Documents


6 download

TRANSCRIPT

  • 8/20/2019 Progressive Function Point Analysis

    1/19

  • 8/20/2019 Progressive Function Point Analysis

    2/19

    TOPICS

    Function Point Analysis

    Introduction to FPA Identifying the Boundary and Operations Data Functions Transaction Functions Counting Issues Addressed By Progressive FPA

    Progressive FPA Progressive FPA Accounting Process Progressive FPA Practice

    Progressive Function Point Template Use Cases Data Functions Transaction Functions

    Case Study Te!uila University

    a g e r s G u i d e t o P r o g r e s s i v e F P A

  • 8/20/2019 Progressive Function Point Analysis

    3/19

    Transaction Function

    INTRODUCTION TO FUNCTION POINTS

    FPA is used to measure the size of a

    project by counting all the data andtransaction functions and provides themost scientic approach in measuring sizeof a project.

    Most programs/applications consists ofseveral screens to interact ith the data.

    !ommon operations include !"#$ %!reate&"ead& #pdate ' $elete(. )ach screen mayhave one ore more of these functions& andby counting all the elements on screenith any one of these operations illdetermine the $ata )lement *ype%$)*(count for the transaction function& thesame process is repeated for each o+,screen function. -imilarly hen ecreate/delete/update a ne database tableor data store object to save data then the$)* count ill be all the elds in therespective tables.

    nce e have the count of all the $)*

    n c t i o n P o i n t A n a l y s i s

    AF43alue Adjustment Factor

    Prole5. 6ame7. 0ogin 8$9. Passord!ontact:. 8M ;s. 8M #ser 8$

    Address?. Flat,@ld,8d. -treetB. 0ocationC. -tate5D !ountry

    User Records

    11.Photo

    7. $igitalAsset

    Management

    5. $@

    #ser"ecords

    57.#pdate

    Data Function

    User  Records

    5. #ser Prole5. 6ame7. 0ogin 8$9. Passord

    7. !ontact:. 8M>. 8M #ser8$

    9. Address?. Flat,@ld,8d. -treetB.0ocationC. -tate5D!ountry

    !ources "FTR#

    "db$ e%t fi&e source#

    1 D'Ts

    "11. Fie&ds$ 1 action#

    ( !ources "R'T#

    "tab&es)subgrou*s#

    10 D'Ts

    "10. Fie&ds#

  • 8/20/2019 Progressive Function Point Analysis

    4/19

    INTRODUCTION TO FUNCTION POINTS

    8FP#G provides a FP value referencecard that identies an FP value for0o& Medium and igh FPs based onthe number of $)*s ith respect tothe comple1ity involved by countingsubgroups%tables(& logical les orremote interfaces ithin the countedelds of that function.

    For *ransaction functions& $)* countis ta

  • 8/20/2019 Progressive Function Point Analysis

    5/19

    ID%NTIF#IN& T'% (OUNDAR# ANDOP%RATIONS

     *he rst major hurdle& though simple is recognizing hat constitutes )8&

    )& )& 80F ' )8F and in identifying the data functions and transactionfunctions.

    n c t i o n P o i n t A n a l y s i s

    The )oun"ary* inuts + oututs

  • 8/20/2019 Progressive Function Point Analysis

    6/19

    DATA FUNCTIONS

    $ata Functions are primarily database

    related transactions. *his may involvethe creation& updating the structure ordeletion of tables or related datasources.

    8nternal 0ogical Files%80F( are set oftables or related les that form a

    uniue group. For instance e haveshocased 9 80Fs& !ustomer "ecords&Product "ecords and rder "ecords.)1ternal 8nterface Files%)8F( are 80Fs ofe1ternal systems that reside outsidethe boundary of our application.

    ")*s are the di+erent tables %sub,groups( in the parent groups.!ustomer "ecord has 9 ")*s hich areProle& !ontact and Preferences.

    $)*s are the elds& or individual

    elements in the respective tables orsubgroups. *he Prole table has ?

    n c t i o n P o i n t A n a l y s i s

    Product !ategory

    Pricing

    Product +ecord

    rder 8tems8nvoice

    Order +ecord

    Prole1. Name,. %mail-. Pro!le I". DO(/. A""ress0. Photo UR

    !ontact Memo

    Customer +ecord

  • 8/20/2019 Progressive Function Point Analysis

    7/19

    TRANSACTION FUNCTIONS

    A transaction function consists of all

    the input and output operations thatare used to display contents& generatereports& collect details through ebpages& forms or any other form of inputdevice or send output to an e1ternaldevice or e1ternal system through anAP8 call.

     *he $)*s counted here are theindividual elds that ma. Address

    . !lose

  • 8/20/2019 Progressive Function Point Analysis

    8/19

    COUNTIN& ISSU%S ADDR%SS%D (#PRO&R%SSI2% FPA

    Any *ransaction functions ith more than 7D Fields are considered highcomple1ity functions and not counted further& this is the primary reason formiscalculation.

      A ebpage containing 7D Fields the FP !ount 4 >FP

    8f the another ebpage contains :D Fields the FP !ount remains >FP since they

    are simply derived as igh comple1ity Function points

    8n Progressive FPA& the FP count is derived as 5D FP since they are calculatedbased on actual number of elements using the standard 8FP#G value matri1 andnot limited by static value ranges of igh& Medium ' 0o

    Progressive FPA goes a step further to validate the comple1ity of businessscenarios and counts every process step inside the function to derive a genuine

    n c t i o n P o i n t A n a l y s i s

    The Pro)lems 3ith Tra"itional FP Counting

      +ow Medium ,ig-

    D"Ts # % () ()*

    D'T / FP a&2

    13 D'T / FP a&2

    20 D'T / FP a&4

      D'T / FP a& % 0.104 / 1.( / 1.(

    13 D'T / FP a&13 % 0.104 / (.333 / 2.0

      20 D'T / FP a&20 % 0.400 / 10.00 / 10.0

    Mas

  • 8/20/2019 Progressive Function Point Analysis

    9/19

    PRO&R%SSI2% FPA

    Progressive FPA is based on

    the same guiding principlesof FPA& hoever the FP valueof $)*s are derived from theactual count of $)*s andbased on 8FP#G referencecard values for compliance.

    Progressive FPA additionallyaccounts for comple1business functions through8ntegrated Process Flos. 8PFcounts each process stepinvolved as Process )lement

     *ype and the comple1ity isderived based ondependencies classied as0ogical !ollaboration-egments.

    All 8PFs outside the boundary

    but referenced from ithinthe application are termed

    r e s s i v e F u n c t i o n P o i n t A n a l y s i s

    5. 0ocal$atabase

    7. $igitalAsset

    Management

    Fi&e Data !ource "FTR#

    #ser Prole

    ?.Photo

    5. 6ame

    7. )mail

    9. Prole8d

    :. $@

    >. Address

    .-ave

    !ancel

    7. !all AP8to load user

    details

    9. 3alidate-ession *o.Authenticate ith

    $AM

    ?.0oad"esource as

    -tream

    5.Authenticate #ser

    .$isplay#ser Prole

       5 .   !   l   i  e  n   t

       A  p  p

       7 .   H   I   J

       -  e  r  v  e  r

       9 .   $   A   M

       D

      a   t  a   '   &  e  m  e  n   t   T  5  *  e   "   D   '   T   #

    Process '&ement T5*e "P'T#

       +  o  g   i  c  a   &   6  o   &   &  a   b  o  r  a   t   i  o  n   !

      e  g  m  e  n   t  s   "   +   6   !   #

  • 8/20/2019 Progressive Function Point Analysis

    10/19

    PRO&R%SSI2% FPA

    8n *ransaction functions P)*

    is counted as userinteractions and functionsthat include the standard!"#$ functionality andbeyond to include businessrules& process and or

  • 8/20/2019 Progressive Function Point Analysis

    11/19

    PRO&R%SSI2% FPA ACCOUNTIN& PROC%SS

    r e s s i v e F u n c t i o n P o i n t A n a l y s i s

    Manager  Arc-itect

    1. Provides arc-itect

    Pro7ect detai&s

    . 6reates t-e datamode&$ c&ass mode&

    and basic f&ow of

    a**&ication and

    -ands 8t down to

    team for va&idation

    and entr5.

    (. T-e team enters t-e

    detai&s onto t-e Progressive

    FP tem*&ate to *rovide t-e

    first draft *re count of t-e

    *ro7ect and detai&ed tas9

    &ist for a**rova&

    4. !ignoff anda**rova& from

    c&ient on

    effort

    estimate

    6&ient

    Pro7ect Team

    . 6om*&etes

    wor9 and

    submits *ost

    count

    :. ;i&&ed to

    c&ient as *er

    fina& Pro7ect

    FP count

    2. Manager

    wor9s on

    re&ease and

    s*rint *&anning

    )very #nit of or< is clearlydened ith an FP !ount '

    hourly estimate.

    Any or< can be justiedith actual or< e+ort interms of the total variablesand process involved ithclear dependencies.

    )very #ser 8nterface&process& and databaseoperation is dened anddocumented or assumed tobe ithin given limits to

    counter any ambiguity.

    Any operation or processthat as ambiguous can beprovided ith a nal countand billed later assuringpayment guarantee.

    An thin that is not

  • 8/20/2019 Progressive Function Point Analysis

    12/19

  • 8/20/2019 Progressive Function Point Analysis

    13/19

    PRO&R%SSI2% FPA T%4PAT%5 US% CAS%S

    g r e s s i v e F P A *e m p l a t e

     *his sheet provides a complete high level overvie of each #! of the project for

    prioritization and team allocation. @eing a project by donloading the latest Progressive FP *emplate is freely

    donloadable from -ourceforge. 0ist don the use cases/user stories in the use cases for the current sprint. After each data or transaction function is added& the man,days& #FP and "euse

    FP are automatically computed. *his page together ith the editable reportspage can provide an in,depth vie of each user story/use case along ith all thetas

  • 8/20/2019 Progressive Function Point Analysis

    14/19

    PRO&R%SSI2% FPA T%4PAT%5 DATAFUNCTIONS

    g r e s s i v e F P A *e m p l a t e

     *his data function sheet includes every table/data store record added& updatedor deleted ith eld level details and process Kos.  *he rst column describes the tas

  • 8/20/2019 Progressive Function Point Analysis

    15/19

    PRO&R%SSI2% FPA T%4PAT%5TRANSACTION FUNCTIONS

    g r e s s i v e F P A *e m p l a t e

     *he transaction function includes every operation that is used to fetch data toand from the data source either input or output and includes every screen&

    reports and operations in the application.  *he functions may be added& updated or removed as a part of the user

    story/operational conte1t.  *he rst column describes the tas

  • 8/20/2019 Progressive Function Point Analysis

    16/19

    CAS% STUD#5 T%6UIA UNI2%RSIT# 

    A - ) - * # $ I

     *euila #niversity %*#( is e1ploring !"M solutions for managing their annualstudent inta

  • 8/20/2019 Progressive Function Point Analysis

    17/19

    Reference User Story Function Brief Type DET RET PET LCSIFPUGUFP

    ProgressiveUFP

    IPF Reuse% Reuse FP Man ours DET Detai!s RET Detai!s PET Detai!s LCS Detai!s Reuse Detai!s

    U61001 6 reate !u**ort Re 10

    1. U6A! 8d$ . !tudent ?ame$ (.P-one$ 2. 'mai&$ 4. P-one$ .Primar5 6ourse Preference$ :.!econdar5 6ourse Preference$>.Tertiar5 6ourse Preference

    1. !a&es

    1. 6&ean data and va&idate

    information$. U*sert Pros*ects records to+ead records$(. U*sert !e&ection records to2 100 1.>2

    1. U6A! 8d$ . !tudent ?ame$ (.P-one$ 2. 'mai&$ 4. Primar56ourse Preference$ . !econdar56ourse Preference$ :. Tertiar56ourse Preference

    PR=!P'6T!$ !'+'6T8=? Reuse of e%isting FTP fi&es.

    U6100( Assign to Team Members 8nta9e Eueue6reate Assignment Ru&e for +ead Tas9Distribution

    '8 1 2 1 ( 1.40 .2 1 1. Record 8d$ . Round Robin 8d 1. !a&es$ . User  

    1. 6reate new AutonumberRecord 8d$. 6a&cu&ate Round Robin asMod"Record 8d$ ?umber ofMembers#(. 6reate a . do ?ot 6a&&$ 3.'mai&$ 10. 'mai& =*t =ut$ 11. Fa%$1. Fa% =*t =ut$ 1(. +astModified ;5$ 12. +ast TransferDate$ 14. +ead =wner$ 1. +ead!ource$ 1:. +ead !tatus$ 1>.Mobi&e$ 13. ?ame$ 0. ?o. of'm*&o5ees$ 1. Partner Account$. P-one$ (. Rating$ 2. Tit&e$4. ebsite11 . 8ndustr5$ :.Primar5 6ourse Preference$ >.!econdar5 6ourse Preference$ 3.Tertiar5 6ourse Preference$ (0.U6A! 8d

    U61002 !end 'mai& 8nvites for o*en da5 6reate =*en da5 8nvites 'mai& Tem*&ate '8 2 2 1 ( (.00 .2 11. 6am*aign 8d$ . 6am*aign?ame$ (. Tem*&ate 8d$ 2. +ead'mai& Address

    1. 6am*aign$ . +eads

    1. 6reate new 'mai& 6am*aign. !e&ect a&& members e&igib&e forne%t 'mai& 6am*aign(. !e&ect 'mai& Tem*&ate2. !tart 6am*aign.

    !a&esforce

    U61004 Review A**&ications for se&ection Review A**&ications for Processing '= : 1 2 1 2 1.2: .2 1

    1. U6M! 8d$ . ?ame$ (. 'mai& 8D$P-one$ 4. A**rova& !tatus$ .Review 6omments$ :. 6ourse A**rova&

    1. +eads

    1. Review a**&ication fi&es . Post Review 6omments (. Acce*t)Re7ect 6andidate 2. A**rove)Re7ect 6oursePreference

    !a&esforce

    U6100 U*&oad APP+86AT8=?! fi&e to FTP 6reate A**&ication Record '8F : 1 4 1.>2

    1. U6M! 8d$ . ?ame$ (. 'mai& 8D$P-one$ 4. A**rova& !tatus$ .Review 6omments$ :. 6ourse A**rova&

     APP+86AT8=?

    U6100 U*&oad APP+86AT8=?! fi&e to FTP U*&oad A**&ications to FTP '= : 1 2 ( 2 1.2: .2 1

    1. U6M! 8d$ . ?ame$ (. 'mai& 8D$P-one$ 4. A**rova& !tatus$ .Review 6omments$ :. 6ourse A**rova&

    1. +eads

     1. +oad and fi&ter 6&osed +eadsfrom !a&esforce . 6onvert data to 6! (. 6reate new FTP 6onnection toT

  • 8/20/2019 Progressive Function Point Analysis

    18/19

    ,uestions

  • 8/20/2019 Progressive Function Point Analysis

    19/19

    T-A./ 0OU1