trainer's notes - in powerpoint format
DESCRIPTION
TRANSCRIPT
![Page 1: Trainer's notes - in powerpoint format](https://reader033.vdocuments.us/reader033/viewer/2022052522/5480bd06b4af9fef158b5e57/html5/thumbnails/1.jpg)
Working Under southernSCOPE
Training session on southernSCOPE and providing $ per FP prices
![Page 2: Trainer's notes - in powerpoint format](https://reader033.vdocuments.us/reader033/viewer/2022052522/5480bd06b4af9fef158b5e57/html5/thumbnails/2.jpg)
Introduction
What is ‘southernSCOPE’? A method for setting $ per FP price Selecting past projects Obtaining effort or cost data Introduction to Function Points Calculation of $ per FP price
![Page 3: Trainer's notes - in powerpoint format](https://reader033.vdocuments.us/reader033/viewer/2022052522/5480bd06b4af9fef158b5e57/html5/thumbnails/3.jpg)
What is southernSCOPE? Method for buying
software For custom-built &
package customisation
Policy is to use it when appropriate
Focuses on a $ per FP price
![Page 4: Trainer's notes - in powerpoint format](https://reader033.vdocuments.us/reader033/viewer/2022052522/5480bd06b4af9fef158b5e57/html5/thumbnails/4.jpg)
What is $ per Function Point?
Function points measure the output of a software project, software functionality.
A $ per function point price links the price of the project to its planned output.
Working with the developer, the customer specifies the functionality.
Customer pays developer a price based on the total functionality specified.
![Page 5: Trainer's notes - in powerpoint format](https://reader033.vdocuments.us/reader033/viewer/2022052522/5480bd06b4af9fef158b5e57/html5/thumbnails/5.jpg)
What is a Function Point? Measure of software
functionality provided to users.
Inputs Outputs
Software Being Acquired
Other Software
Internal Data
External Data
Input
Output
Users
![Page 6: Trainer's notes - in powerpoint format](https://reader033.vdocuments.us/reader033/viewer/2022052522/5480bd06b4af9fef158b5e57/html5/thumbnails/6.jpg)
PROJECTINITIATION
SOFTWAREREQUIREMENTS
ANALYSIS
ARCHITECTUREDESIGN
CONSTRUCTION
QA / SYSTEMTESTING
IMPLEMENTATION
Business Case
Engage analyst
(fixed price)Engage developer
Pay agreed pricePLUS changes(dispute settlement?)
NEGOTIATED Change Control
Identify need
Engage scope manager (early estimates - size, cost, duration)
Project Scope DocumentEngage developer
($$ per function point)
Requirements SpecificationBaseline Function Point Count
MEASURED Change Control (Scope Manager)
Pay on size of delivered software PLUS documented changes
Typical Compared to southernSCOPE
![Page 7: Trainer's notes - in powerpoint format](https://reader033.vdocuments.us/reader033/viewer/2022052522/5480bd06b4af9fef158b5e57/html5/thumbnails/7.jpg)
Dismal Success Rate
0%10%20%30%40%50%60%70%80%90%
100%
Small Medium Large
Companies
FailedProblemsSuccess
Source: The Standish Group International, 1995www.pm2go.com/sample_research/chaos_1994_1.asp
![Page 8: Trainer's notes - in powerpoint format](https://reader033.vdocuments.us/reader033/viewer/2022052522/5480bd06b4af9fef158b5e57/html5/thumbnails/8.jpg)
Attack These Causes
Commission software on a $ per function point basis and eliminate:– Lack of user input– Incomplete requirements– Changing requirements– Lack of executive support– Technology incompetence– Unrealistic expectations
![Page 9: Trainer's notes - in powerpoint format](https://reader033.vdocuments.us/reader033/viewer/2022052522/5480bd06b4af9fef158b5e57/html5/thumbnails/9.jpg)
And the Results Are
0%
10%
20%
30%
40%
50%
SCUD Projects Typical Projects
% of Projects on Budget
Much more likely to complete within budget.
Any budget overrun will be within 10%.
Potential for $15m - $20m per year in avoided overruns.
0%
20%
40%
60%
80%
100%
SCUD Projects Typical Projects
Average % Overrun of Over-budget Projects
![Page 10: Trainer's notes - in powerpoint format](https://reader033.vdocuments.us/reader033/viewer/2022052522/5480bd06b4af9fef158b5e57/html5/thumbnails/10.jpg)
IFPUG Function PointsExternal User
3. External Input
4. External Output
5. External Enquiry
Application Boundary Other Applications
1. Internal Logical File
2. External Interface File
External Input
External Output
Source: Measuring the Software Process
![Page 11: Trainer's notes - in powerpoint format](https://reader033.vdocuments.us/reader033/viewer/2022052522/5480bd06b4af9fef158b5e57/html5/thumbnails/11.jpg)
Identifying Data Components
Internal Logical Files– User concepts– Data entities, entity
classes– Maintained
External Interface Files– As for ILF– But not maintained
Worker (User)
Browse timesheet
Record work done
ILF
EIF
Worker Work Done
1
0..*
1
+by a 0..*
Task
1
0..*
1+on
0..*
Project 1..*+comprises
1..*
![Page 12: Trainer's notes - in powerpoint format](https://reader033.vdocuments.us/reader033/viewer/2022052522/5480bd06b4af9fef158b5e57/html5/thumbnails/12.jpg)
Identifying External Inputs
Value to the end user’s task
Elementary Maintains data Unique logic or data
element combinationPotentially one EI
Actually three: create, update, delete
Worker (User)
Browse timesheet
Record work done
![Page 13: Trainer's notes - in powerpoint format](https://reader033.vdocuments.us/reader033/viewer/2022052522/5480bd06b4af9fef158b5e57/html5/thumbnails/13.jpg)
Identifying External Outputs
Value to the end user’s task
Elementary Calculates or
derives data Unique logic or data
element combination
Browse timesheet
Record work done
Worker (User)
Print timesheet
One EO, as includes totals for days and week.
![Page 14: Trainer's notes - in powerpoint format](https://reader033.vdocuments.us/reader033/viewer/2022052522/5480bd06b4af9fef158b5e57/html5/thumbnails/14.jpg)
Identifying External Inquiries
Value to the end user’s task
Retrieves data in ILFs or EIFs
No calculations Unique logic or data
element combination
One EQ, retrieving data based on input worker ID and date.
Worker (User)
Browse timesheet
Record work done
![Page 15: Trainer's notes - in powerpoint format](https://reader033.vdocuments.us/reader033/viewer/2022052522/5480bd06b4af9fef158b5e57/html5/thumbnails/15.jpg)
Example FP Count Breakdown
Specification Item Type FPs
Project EIF 5
Task EIF 5
Work Done ILF 7
Worker EIF 5
Browse timesheet EQ 4
Record work done: create EI 4
Record work done: update EI 4
Record work done: delete EI 4
Print timesheet EO 5
43
![Page 16: Trainer's notes - in powerpoint format](https://reader033.vdocuments.us/reader033/viewer/2022052522/5480bd06b4af9fef158b5e57/html5/thumbnails/16.jpg)
Early Measures of Function Points Can create initial data entity models or use
case models early in a project. From these models, predict function points:
– 30 FPs per data entity– 10 FPs per use case
These are rules-of-thumb from several sources.
Useful, but only approximate.
![Page 17: Trainer's notes - in powerpoint format](https://reader033.vdocuments.us/reader033/viewer/2022052522/5480bd06b4af9fef158b5e57/html5/thumbnails/17.jpg)
Project Initiation
Select a scope manager Project Requirements
document Preliminary estimates Prepare & issue RFP Select developer
![Page 18: Trainer's notes - in powerpoint format](https://reader033.vdocuments.us/reader033/viewer/2022052522/5480bd06b4af9fef158b5e57/html5/thumbnails/18.jpg)
Introducing the Case Studies
– Single database of licences applying to various business types operating in Vic..
– Catalogue of all Victorian government services available on-line, with multiple search methods & access paths.
![Page 19: Trainer's notes - in powerpoint format](https://reader033.vdocuments.us/reader033/viewer/2022052522/5480bd06b4af9fef158b5e57/html5/thumbnails/19.jpg)
Project Requirements Document
Must specify factors that influence $/FP price: – Project process and deliverables– Customer context for the project– Preferred project schedule – Development language/tools– Approximate FP scope
![Page 20: Trainer's notes - in powerpoint format](https://reader033.vdocuments.us/reader033/viewer/2022052522/5480bd06b4af9fef158b5e57/html5/thumbnails/20.jpg)
Project Process & Work Products
Can be good productivity,Lower $ per FPs
Can be poor productivity,Higher $ per FPs
Many Documents &
Work Products Few Documents &
Work Products
![Page 21: Trainer's notes - in powerpoint format](https://reader033.vdocuments.us/reader033/viewer/2022052522/5480bd06b4af9fef158b5e57/html5/thumbnails/21.jpg)
Customer/End-User Factors
Good productivity,Lower $ per FPs
Poor productivity,Higher $ per FPs
Multiple Users/StakeholdersSingle User/Stakeholder
Source: ISBSG World Wide Software Development, The Benchmark
![Page 22: Trainer's notes - in powerpoint format](https://reader033.vdocuments.us/reader033/viewer/2022052522/5480bd06b4af9fef158b5e57/html5/thumbnails/22.jpg)
Schedule & Thus Team Size
Good productivity,Lower $ per FPs
Poor productivity,Higher $ per FPs
Source: ISBSG World Wide Software Development, The Benchmark
![Page 23: Trainer's notes - in powerpoint format](https://reader033.vdocuments.us/reader033/viewer/2022052522/5480bd06b4af9fef158b5e57/html5/thumbnails/23.jpg)
Programming Language
Good productivity,Lower $ per FPs
Poor productivity,Higher $ per FPs
AutomaticApplicationGenerator
ACME4th Generation
Language
Stodgy3rd Generation
Language
Source: ISBSG World Wide Software Development, The Benchmark
![Page 24: Trainer's notes - in powerpoint format](https://reader033.vdocuments.us/reader033/viewer/2022052522/5480bd06b4af9fef158b5e57/html5/thumbnails/24.jpg)
Other Factors That May Influence $ per FP Price Software architecture
– two-tier
– n-tier HTML user interface to the
broad Victorian public– specialist UI designers
– usability testing User interface complexity
– UI changes behaviour based in user interaction
Number of interfaces for the software – interfaces to other computer
systems or machines
– multiple human interfaces Performance or memory
constraints Team experience
– only matters if all team members inexperienced
Project manager experience– difficult to account for
![Page 25: Trainer's notes - in powerpoint format](https://reader033.vdocuments.us/reader033/viewer/2022052522/5480bd06b4af9fef158b5e57/html5/thumbnails/25.jpg)
Preliminary FP Scope
The engaged Scope Manager can provide an early indication of the project’s FP scope.
This will only be approximate and based on many assumptions.
![Page 26: Trainer's notes - in powerpoint format](https://reader033.vdocuments.us/reader033/viewer/2022052522/5480bd06b4af9fef158b5e57/html5/thumbnails/26.jpg)
Customising Packages
southernSCOPE works with package customisation.
Either a single $ per FP price,
Or a license fee & $ per FP for the customisation.
![Page 27: Trainer's notes - in powerpoint format](https://reader033.vdocuments.us/reader033/viewer/2022052522/5480bd06b4af9fef158b5e57/html5/thumbnails/27.jpg)
Multiple $ per FP Prices
Multiple prices useful to reduce risk from changes in distribution of functionality across different subsystems.
Web application $800/FP
Admin sub-sys $400/FP
Reports sub-sys $200/FP
CRM sub-sys $400/FP
Content sub-sys $800/FP
(Weighted avg.$350/FP)
![Page 28: Trainer's notes - in powerpoint format](https://reader033.vdocuments.us/reader033/viewer/2022052522/5480bd06b4af9fef158b5e57/html5/thumbnails/28.jpg)
Invite Proposals
Include Project Requirements document.
Often also a preliminary spec. of functionality.
Details of preliminary function point count.
![Page 29: Trainer's notes - in powerpoint format](https://reader033.vdocuments.us/reader033/viewer/2022052522/5480bd06b4af9fef158b5e57/html5/thumbnails/29.jpg)
Method for Setting $ per FP Price1. Identify 2-3 comparable past projects
2. Gather effort & other cost data
3. Obtain FP measurement for each project
4. Calculate $ per FP for each project
5. Decide $ per FP for new project
![Page 30: Trainer's notes - in powerpoint format](https://reader033.vdocuments.us/reader033/viewer/2022052522/5480bd06b4af9fef158b5e57/html5/thumbnails/30.jpg)
3-4 criteria to identify comparable projects
Criteria based on Project Req. document.
What is a Comparable Project?
![Page 31: Trainer's notes - in powerpoint format](https://reader033.vdocuments.us/reader033/viewer/2022052522/5480bd06b4af9fef158b5e57/html5/thumbnails/31.jpg)
Obtaining Effort or Cost Data
Accurate effort / cost data is essential.
Prefer data from time recording.
May derive effort from invoices.
Calculating effort from elapsed time is risky.
![Page 32: Trainer's notes - in powerpoint format](https://reader033.vdocuments.us/reader033/viewer/2022052522/5480bd06b4af9fef158b5e57/html5/thumbnails/32.jpg)
Obtaining FP Counts
Gather documents & demo systems for FP counts.
Commission specialist counters.
Invest in training to gather data over the long-term.
![Page 33: Trainer's notes - in powerpoint format](https://reader033.vdocuments.us/reader033/viewer/2022052522/5480bd06b4af9fef158b5e57/html5/thumbnails/33.jpg)
Deciding an Hours per FP
0 2 4 6 8
ProjectA
ProjectB
hrs effort / FP
Calculate hrs / FP for the past projects.
This provides a range of possible values.
To decide hour / FP value for new project– consider risk level– other similarities
![Page 34: Trainer's notes - in powerpoint format](https://reader033.vdocuments.us/reader033/viewer/2022052522/5480bd06b4af9fef158b5e57/html5/thumbnails/34.jpg)
Impact of Roles (or Activities)
Elapsed Time
Eff
ort
RequirementsDesign & PrototypeConstructionTestingImplementation
Activity
![Page 35: Trainer's notes - in powerpoint format](https://reader033.vdocuments.us/reader033/viewer/2022052522/5480bd06b4af9fef158b5e57/html5/thumbnails/35.jpg)
$/FP & Current Pricing Process
Project Requirements
document
$/FP frompast projects
Currentestimating
process
Confident $/FP
![Page 36: Trainer's notes - in powerpoint format](https://reader033.vdocuments.us/reader033/viewer/2022052522/5480bd06b4af9fef158b5e57/html5/thumbnails/36.jpg)
Requirements Analysis
Developer & customer define functional requirements.
Scope manager performs BFPC.
BFPC & contracted $ per FP sets project price.
![Page 37: Trainer's notes - in powerpoint format](https://reader033.vdocuments.us/reader033/viewer/2022052522/5480bd06b4af9fef158b5e57/html5/thumbnails/37.jpg)
Stable, Constructive Relationship
Once both parties understand it, $ per FP helps the relationship.
Scope manager independence is important.
Highlight exploitative behaviour.
![Page 38: Trainer's notes - in powerpoint format](https://reader033.vdocuments.us/reader033/viewer/2022052522/5480bd06b4af9fef158b5e57/html5/thumbnails/38.jpg)
Change Management
Must be an agreed change control procedure.
Changes either priced with FPs,
Or priced separate from FPs. Then use FPs to validate price if necessary.
![Page 39: Trainer's notes - in powerpoint format](https://reader033.vdocuments.us/reader033/viewer/2022052522/5480bd06b4af9fef158b5e57/html5/thumbnails/39.jpg)
FPs & Change Pricing
Change FP’sClassification
% of $/FP Priceto Apply
Added 80 – 120
Changed 40 – 150
Deleted 20 – 50
![Page 40: Trainer's notes - in powerpoint format](https://reader033.vdocuments.us/reader033/viewer/2022052522/5480bd06b4af9fef158b5e57/html5/thumbnails/40.jpg)
Implementation
Payment linked to measurable work products easily verified as complete.
Medium projects or bigger should use incremental releases with payment upon release.
![Page 41: Trainer's notes - in powerpoint format](https://reader033.vdocuments.us/reader033/viewer/2022052522/5480bd06b4af9fef158b5e57/html5/thumbnails/41.jpg)
The Support Toolkit
Method Documentation Presentation to Managers (used here) Case Studies Overview Flyer Computer Based Training Package
![Page 42: Trainer's notes - in powerpoint format](https://reader033.vdocuments.us/reader033/viewer/2022052522/5480bd06b4af9fef158b5e57/html5/thumbnails/42.jpg)
Conclusions
With the $/FP method, the project will:– Most likely complete within budget.– Achieve its objectives.
Developers can calculate a $/FP price from 2 - 3 appropriate past projects.
southernSCOPE protects customers and developers better.