University of Michigan Information and Technology Services
SDLC Methodology
S1000A - Estimating Approach Document
This Estimating Approach Document is designed for the University of Michigan Information and
Technology Services (ITS) System Development Life Cycle (SDLC) projects.
The intent of Estimating activities is to produce estimates through a multi-step process which is defined, repeatable, and consistent. There will be some overlap and inclusion with the ITS Project Proposal and
Project Management Methodology phases; for example, initial, order-of-magnitude estimates may be done in the Project Proposal phase. Subsequent, more detailed estimates of the project could occur during the Project Definition & Startup phase. As a project progresses through its timeline, there may also be a need to further refine and validate estimates prior to the initiation of each SDLC phase in a
“rolling wave” approach. The end result should be increased estimation consistency and repeatability, along with reduced effort needed for subsequent projects.
If the Project will not be PS-based, then include one or more of the following methods to derive the
Estimating Factors:
Expert (pick an expert who has knowledge of the work needed to be done).
Analogous (Historical Data for a similar project.)
Delphi (usually involves group review of several estimates by several experts)
Function Point Analysis (usually thru commercial estimating tools)
By phase (ex: 30% Planning, 20% Dev, 30% Test, 20% Release/Rollout)
Time boxing (you have start & finish dates, make an estimate, adjust your scope to fit within the
Time box)
The recommended criteria and Estimating Factors should always be verified and agreed to by those persons or groups expected to do the work.
The general methodology/approach for SDLC Estimating at MAIS will involve the following application of estimating factors and associated hours:
1. Project Management Estimations
Project Management estimate should be between 35 and 50% of the total project (based on industry standard). Where it falls in the range should be determined based on additional factors such as size, complexity, customer involvement/impact, schedule risk etc. It can also be determined based on FTE and assignment (i.e., if you need .5 FTE to manage a project that will last 16 weeks you can assume 320 hours).
2. Requirements/Analysis Estimations
Components of this phase could include:
Gathering/Analyzing business requirements
Analyzing PeopleSoft delivered functionality
Comparing business requirements with PeopleSoft delivered functionality to recommend if: o use PeopleSoft as delivered
Документ1 4/14/2020 Page 1 of 21
University of Michigan Information and Technology Services
SDLC Methodology
S1000A - Estimating Approach Document o make modifications to PeopleSoft o develop a “bolt-on” to PeopleSoft o pursue a non-PeopleSoft solution.
Reviewing pros and cons with appropriate decision makers (i.e. within CPU, within MAIS and/or with customers)
Make final decision
Estimating factors:
Business Process Complexity:
Low
Medium
High
8 * # Business Processes
16 * # Business Processes
32 * # Business Processes
Impact to Campus (number of users, importance of business process, degree of change):
Small
Med
Large
Technical Unknowns:
Yes
No
Product Maturity:
Low (may require Bolt-on)
Medium
High
Need RFP?:
No
Yes
8
16
40
32
0
40
24
8
0
40-80 (depends on factors above)
3. Design and Development Estimations
Object Type
Batch (COBOL,
SQR, C, etc.)
Work Unit Complexi ty
New Easy
Estimate (hours)
Detail
Design
Code &
Unit
Test
8 24
Description of Complexity
Enhanced
Medium 24
Difficult 60
Easy 4
40
120
8
Standalone (is not called or has calls), 1 input/ 1 output, read/ process/ write flow, no internal arrays, simple business logic.
Meets 2-4 of the following criteria: called or call module, multiple input, multiple outputs, multiple logic paths, multiple internal arrays, array insert/delete logic, complex business logic, nonstandard error processing.
No changes to inputs or outputs, simple business logic change to existing logic flow, localized change.
Документ1 4/14/2020 Page 2 of 21
University of Michigan Information and Technology Services
SDLC Methodology
S1000A - Estimating Approach Document
Object Type Work Unit Complexi ty
Estimate (hours)
Detail
Design
Code &
Unit
Test
Medium 16 32
Difficult 40
Easy 2
100
4
Description of Complexity
Change to input or output format, medium complexity localized change or simple non-localized change.
Meets 1-2 of the following criteria: change to program flow, non-simple, non-localized change or complex localized logic change, additional input, additional output.
Reapply MI
Mod
(Upgrades/PS
Fixes)
PeopleSoft Objects Page (new or enhanced)
Medium 4
Difficult 8
Easy 4
Medium 6
Difficult 8
Easy .5
8
16
8
12
16
2
Simple interface, 1 scroll area, 1 panel group
Complex interface, 2-3 scroll areas, more than 1 panel group.
Page -
Reapply MI
Mod
(Upgrades/PS
Fixes)
Menu (new)
Menu –
Reapply MI
Mod
(Upgrades/PS
Fixes)
Record (new)
Medium 1
Difficult 2
Easy .5
Medium 1
Difficult 2
Easy .5
Medium .5
Difficult .5
Easy 3
2
4
5
4
8
1
2
4
1
Record
(enhanced)
Medium 8
Difficult 12
Easy/Med ium
6
12
18
8
New record supports simple complexity functionality
(breadth of use, frequency of use, complexity of panels used in).
New record supports moderately complex functionality (breadth of use, frequency of use, complexity of panels used in).
New record supports complex functionality (breadth of use, frequency of use, complexity of panels used in).
Modified record supports moderately complex functionality (breadth of use, frequency of use, complexity of panels used in).
Документ1 4/14/2020 Page 3 of 21
University of Michigan Information and Technology Services
SDLC Methodology
S1000A - Estimating Approach Document
Object Type Work Unit Complexi ty
Estimate (hours)
Detail
Design
Code &
Unit
Test
Difficult 8 12
Easy .5 .5
Description of Complexity
Modified record supports complex functionality
(breadth of use, frequency of use, complexity of panels used in).
Record –
Reapply MI
Mod
(Upgrades/PS
Fixes)
Peoplecode
(new)
Medium 1
Difficult 2
Easy 4
.5
.5
8
Medium 12
Difficult 24
Easy 1
20
80
2
Requires none of the following: New or modified translate values for delivered field, modifies delivered PeopleCode, relational field edits, relational edits or calculations between scroll bar levels.
Requires 1-2 of : New or modified translate values for delivered field, modifies delivered PeopleCode, relational field edits among 2-3 fields, relational edits or calculations between 2 scroll bar levels, uses derived fields to control panel processing.
Requires 3-4 of : New or modified translate values for delivered field, modifies delivered PeopleCode, relational field edits among 3+ fields, relational edits or calculations among 3+ scroll bar levels, uses derived fields to control panel processing.
App Engine
Peoplecode
Reapply MI
Mod
(Upgrades/PS
Fixes)
New
Enhanced
Medium 2
Difficult 4
Easy 8
Medium 24
Difficult 60
Easy 4
Medium 16
4
8
24
40
120
8
32
Less than 5 steps, calls existing PeopleCode functions, requires new PeopleCode for simple business / technical processes, simple SQL, no temporary tables, no flat files for input / output, uses standard log messages.
Requires one of the following; more than 5 steps, handles flat files for input / output, requires new
PeopleCode for complicated business / technical processes, temporary tables, complex SQL, output file for reporting.
Meets more than one condition of the Medium complexity or allows multiple occurrences of the program to run at the same time.
Modifications to SQL or PeopleCode for simple business / technical processes.
Requires one of the following: adding more than 3
Документ1 4/14/2020 Page 4 of 21
University of Michigan Information and Technology Services
SDLC Methodology
S1000A - Estimating Approach Document
Object Type Work Unit Complexi ty
Estimate (hours)
Detail
Design
Code &
Unit
Test
Difficult 40
Easy 2
80
4
Description of Complexity steps, modifications to flat files for input / output, modifications to complex business / technical processes, adding or altering a temporary table, adding complex SQL.
Meets more than one condition of the Medium complexity.
Integration Broker
*Web Services using Integration
Broker can be simple to very complex in nature.
We do not have experience in developing ALL types of integrations yet and these estimates are based on our experience and professional judgment.
Reapply MI
Mod
(Upgrades/PS
Fixes)
Service (New and enhanced)
Service
Operation
(New and enhanced)
Medium 4
Difficult 8
Easy
Medium
Difficult
2
Easy
Medium
Difficult
2
8
16
1
1
Services whether easy, medium, or difficult require minimal setup via application at
PeopleTools>Integration Broker>Services.
More effort should be placed on design than setup.
Version (New and enhanced)
Message (New and enhanced)
Easy
Medium
Difficult
Easy
2
2
Medium 4
1
1
2
Service Operations whether easy, medium, or difficult require minimal setup via application at
PeopleTools>Integration Broker>Service
Operations.
More effort should be placed on design than setup.
Versions whether easy, medium, or difficult require minimal setup via application at
PeopleTools>Integration Broker>Service
Operations.
More effort should be placed on design than setup.
Simple business logic, type of rowset, requires no schema or validation.
Difficult 8 4
Medium business logic, Nonrowset-based, simple
Container, medium volume of data, has schema
Complex business logic, Nonrowset-based,
Container, large volume of data, many container parts, is SOAP compliant, complex schemas or schema logic
Документ1 4/14/2020 Page 5 of 21
University of Michigan Information and Technology Services
SDLC Methodology
S1000A - Estimating Approach Document
Object Type Work Unit Complexi ty
Message
Schema (New and enhanced)
Easy
Estimate (hours)
Detail
Design
Code &
Unit
Test
4 4
Medium 8 16
Description of Complexity
Simple structure, simple data types, no validation, no schema logic
Node (New and enhanced)
Routing (New and enhanced)
Queue (New and enhanced)
Codeset
(New)
Transformatio n Program
(New and enhanced)
Difficult 16
Easy 1
Medium 4
Difficult 8
Easy 1
Medium 4
Difficult 8
Easy
Medium
Difficult
Easy
2
4
Medium 8
Difficult 12
Easy 4
Medium 12
32
0
0
0
1
1
2
1
4
16
20
8
20
Medium structure with more complex data types, validation, medium schema logic.
Large structure, complex data types, validation, complex schema logic
Nodes are created and maintained by AIG, but developers need to design them. Simple node, standard connector properties, no portal, WS security, simple Routing.
Nodes are created and maintained by AIG, but developers need to design them. Uses passwords multiple routings, non standard connector properties.
Nodes are created and maintained by AIG, but developers need to design them. Uses passwords throttling, Codesets, non standard connector properties, Portal details, web service token/certificate authentication, multiple routings
Simple routing (internal or external), no transformation, no alias, standard connector properties.
Has simple transformation, simple alias, non standard connector properties.
Multiple alias, complex transformation, non standard connector properties
Queue whether easy, medium, or difficult require minimal setup via application at
PeopleTools>Integration Broker>Queues. More effort should be placed on design than setup.
Simple data translation
Medium data translation
Complex data translation
This is an application engine program. Simple business logic with minimal fields.
Handler
Peoplecode
(New and enhanced)
Difficult 24
Easy 4
80
8
This is an application engine program. Medium business logic with more than minimal fields.
This is an application engine program. Complex business logic with large volume of fields.
Application Package/Application Class. Inherited from delivered, minimal business logic/processing.
Working with small message.
Документ1 4/14/2020 Page 6 of 21
University of Michigan Information and Technology Services
SDLC Methodology
S1000A - Estimating Approach Document
Object Type Work Unit Complexi ty
Estimate (hours)
Detail
Design
Code &
Unit
Test
Medium 12 20
Business Interlinks New
Component
Interface
(Estimates for calling program not included)
Enhanced
New
Enhanced
Difficult 24
Easy
Medium 32
Difficult 60
Easy
Medium 16
Difficult 40
Easy
Medium 16
Difficult 24
Easy
8
4
4
2
Medium 8
80
16
64
120
8
40
100
12
32
60
4
16
Description of Complexity
Application Package/Application Class. Inherited from delivered, medium business logic/processing.
Working with small to medium message.
Application Package/Application Class. Inherited from delivered, complex business logic/processing
Working with large message.
Calls external system with simple API using less than 4 inputs and no outputs (nothing returned to
PS application).
Requires one of the following; 4 or more inputs, an output returned to the PS application, Complex business requirements for the external system to perform, Complex business requirements for the PS application to perform before the call or after the call to the external system.
Meets more than one condition of the Medium complexity.
Modifies call to external system with simple API using less than 4 inputs and no outputs (nothing returned to PS application).
Modifies call to external system that requires one of the following; 4 or more inputs, an output returned to the PS application, Complex business requirements for the external system to perform,
Complex business requirements for the PS application to perform before the call or after the call to the external system.
Meets more than one condition of the Medium complexity.
Uses existing component, no changes to CI keys, calls existing PeopleCode, requires new PeopleCode functions or CI methods for simple business / technical processes, no complex collection manipulation.
Uses existing component and requires one or more of the following; changes or adds CI keys, new
PeopleCode functions or CI methods for complex business / technical processes, complex collection manipulation.
New component or meets more than one condition of the medium priority.
Modifies non-key properties, Simple changes to
PeopleCode functions or CI methods.
Requires one or more of the following; changes or adds CI keys, new PeopleCode functions or CI methods for complex business / technical processes, complex collection manipulation.
Документ1 4/14/2020 Page 7 of 21
University of Michigan Information and Technology Services
SDLC Methodology
S1000A - Estimating Approach Document
Object Type Work Unit Complexi ty
Estimate (hours)
Detail
Design
Code &
Unit
Test
Difficult 20 40
DMS New
Enhanced
Easy 2
Medium 4
Difficult 8
Easy 1
Medium 2
Difficult 4
Easy .5
4
8
12
2
6
10
1
Description of Complexity
Meets more than one condition of the Medium complexity.
Simple export / import script
Requires one of the following: Alter, Create or Drop
SQL, Replace View, Replace All, Rename, Complex insert, update or delete SQL that requires subselects.
Meets more than one condition of the Medium complexity.
Modify simple export / import script
Modifies one of the following: Alter, Create or Drop
SQL, Replace View, Replace All, Rename, Complex insert, update or delete SQL that requires subselects.
Meets more than one condition of the Medium complexity.
Mass Change
Message Agent
(Estimates for the subscriber or publisher programs not included)
Reapply MI
Mod
(Upgrades/PS
Fixes)
Modified Mass
Change
New Mass
Change
New
Medium 1
Difficult 1.5
Easy 6
Medium 14
Difficult 25
Easy 11
Medium 23
Difficult 34
Easy 8
1.5
2.5
12
36
60
25
52
77
24
Select from 1-2 tables; insert/update 1 table; < 10 selection criteria fields; use of 0-1 temporary tables; no joins, 1-2 definitions.
Select from 3-4 tables; insert/update 1 table; > 10 selection criteria fields; use of 2-3 temporary tables;
1 join, 2-3 definitions in MC group.
Select from >4 tables; insert/update >1 table; > 10 selection criteria fields; use of > 3 temporary tables;
> 1 joins, > 1-2 definitions in MC group.
Select from 1-2 tables; insert/update 1 table; < 10 selection criteria fields; use of 0-1 temporary tables; no joins, 1-2 definitions.
Select from 3-4 tables; insert/update 1 table; > 10 selection criteria fields; use of 2-3 temporary tables;
1 join, 2-3 definitions in MC group.
Select from >4 tables; insert/update >1 table; > 10 selection criteria fields; use of > 3 temporary tables;
> 1 joins, > 1-2 definitions in MC group.
Uses one local node to publish and subscribe an internal PeopleSoft message with minimal transaction validation.
Документ1 4/14/2020 Page 8 of 21
University of Michigan Information and Technology Services
SDLC Methodology
S1000A - Estimating Approach Document
Object Type Work Unit Complexi ty
Estimate (hours)
Detail
Design
Code &
Unit
Test
Medium 24 40
Oracle Triggers
SQL/Script
Enhanced
New
Enhanced
New
Enhanced
Difficult 40
Easy 4
Medium 16
Difficult 24
Easy 2
Medium 3
Difficult 4
Easy 2
Medium 2
Difficult 3
Easy 2
Medium 4
Difficult 8
Easy 1
80
8
32
48
4
6
8
4
4
6
4
8
12
2
Description of Complexity
Requires one of the following; an external source or target node, multiple target nodes that subscribe to the message, multiple messages for different transactions, transaction authentication or transaction modifiers, complex transaction validation, complex rowset or XML compliant message.
Meets more than one condition of the Medium complexity.
Modifies simple publish or subscribe message that uses a message channel on a local node. Adds local source or target node.
Requires one of the following; adds one or more external source or target nodes, modifies a message that is sent to multiple target nodes, modifies transaction authentication or transaction modifiers, modifies complex transaction validation, modifies complex rowset or XML compliant message.
Meets more than one condition of the Medium complexity.
Has simple logic, updates one simple table
(most audit triggers)
Uses more than simple logic and requires coordination in compiling and testing
Has complex logic, updates/reads multiple tables, and/or requires coordinated compiling and testing.
Adding a field or simple logic statement to an existing trigger
Adding a table or more than simple logic statement to an existing trigger
Adding more than simple logic that requires coordinated compiling and testing of existing trigger
Simple select SQL that requires less than 4 joins.
Simple insert, update or delete SQL that requires no sub-selects. Field lists or partial SQL.
Requires one of the following: Complex select SQL that requires 4 or more joins. Complex insert, update or delete SQL that requires sub-selects.
Meets more than one condition of the Medium complexity.
Modifies simple select SQL that requires less than 4 joins. Modifies simple insert, update or delete SQL that requires no sub-selects. Modifies field lists or
Документ1 4/14/2020 Page 9 of 21
University of Michigan Information and Technology Services
SDLC Methodology
S1000A - Estimating Approach Document
Object Type Work Unit Complexi ty
Estimate (hours)
Detail
Design
Code &
Unit
Test
Medium 2
Difficult 4
Easy .5
6
10
1
Description of Complexity partial SQL.
Modifies SQL with one of the following; Complex select SQL that requires 4 or more joins. Complex insert, update or delete SQL that requires subselects.
Meets more than one condition of the Medium complexity.
Workflow
Reapply MI
Mod
(Upgrades/PS
Fixes)
New
Enhanced
Medium 1
Difficult 2
Easy 8
Medium 24
Difficult 40
Easy 4
Medium 16
Difficult 24
Easy 2
2
4
24
40
100
8
32
80
8
Requires 3 or fewer activities, total steps for all activities 10 or fewer, simple approval rule elements, simple event triggers, simple worklist routing using established roles.
Requires one of the following; more than 3 activities, more than 10 total steps for all activities, complicated approval rule elements, complicated event triggering, route control, query roles for routing.
Meets more than one condition of the Medium complexity.
Modifies simple publish or subscribe message that uses a message channel on a local node. Adds local source or target node.
Requires one of the following; modifies more than 3 activities, modifies more than 10 total steps, adds complicated approval rule elements, modifies complicated event triggering, adds route control, adds query roles for routing.
Meets more than one condition of the Medium complexity.
REPORTING
Reapply MI
Mod
(Upgrades/PS
Fixes)
New SQR
Medium 4
Difficult 8
Easy 8
Medium 16
14
24
24
36
Standalone program, 1 input/ 1 output, no internal arrays simple business logic, simple output requirements.
Meets 1-2 of: numerous table join in driving select, totaling/rolling up logic, column vs. row printing, data suppression to avoid duplicity, array insert/delete logic multiple internal arrays, varying
Документ1 4/14/2020 Page 10 of 21
University of Michigan Information and Technology Services
SDLC Methodology
S1000A - Estimating Approach Document
Object Type Work Unit Complexi ty
Estimate (hours)
Detail
Design
Code &
Unit
Test
Enhanced
SQR
Difficult 32
Easy 8
Medium 12
Difficult 24
Easy 2
72
16
32
48
4
Description of Complexity print logic determined by data row returned.
Meets 3-4 of the above complexity factors or program produces multiple outputs
Simple business logic changes to existing program logic. Minimal changes to have code adhere to client standards and environment service requirements.
Change to output format, very minimal changes to program logic flow.
Meets 1-2 of the following criteria: changes to program logic, changes to output format, additional output, additional tables joined to existing selects, additional selects, changes to printing logic.
SQR - Reapply
MI Mod
(Upgrades/PS
Fixes)
PS/Query to
PS/Query (N or E)
Medium 4
Difficult 8
Easy 8
Medium 12
8
16
6
12
Simple SQL (1-2 tables), simple (default) list output.
Difficult 16
Easy
48
.5
Moderate SQL (2-4 tables), moderate customized list output.
Complex SQL (>4 tables), complex customized list output.
Query -
Reapply MI
Mod
(Upgrades/PS
Fixes)
PS/Query to
Crystal Report
(N or E)
Medium 2
Difficult 4
Easy 8
Medium 16
Difficult 48
Easy 1
2
4
16
32
96
2
Simple SQL (1-2 tables), simple (default) report output.
Moderate SQL (2-4 tables), moderate customized report output.
Complex SQL (>4 tables), complex customized report output.
Query/Crystal
Reapply MI
Mod
(Upgrades/PS
Fixes)
PS/Query to
Medium 2
Difficult 4
Easy 12
4
8
30 Simple SQL (1-2 tables), simple (default)
Документ1 4/14/2020 Page 11 of 21
University of Michigan Information and Technology Services
SDLC Methodology
S1000A - Estimating Approach Document
Object Type Work Unit Complexi ty
Estimate (hours)
Detail
Design
Code &
Unit
Test
PS/nVision (N or E)
Medium 18 45
Description of Complexity spreadsheet output.
Difficult 27 72
2
Moderate SQL (2-4 tables), moderate customized spreadsheet output.
Complex SQL (>4 tables), complex customized spreadsheet output.
Security -
PeopleSoft Objects
Query/nVision
Reapply MI
Mod
(Upgrades/PS
Fixes)
Easy 1
Permission
Lists (a set) -
New or
Modified
Medium 2
Difficult 4
Easy 6
Upgrade/Fixes
Medium 12
Difficult 24
Easy 3
4
8
4
8
2
1
1 – 10 pages
11-25 pages
26 or more pages
The same estimating factors as defined above if
PeopleSoft doesn’t change its security approach in a future upgrade.
1–10 permission lists
XML Publisher
Role – New or
Modified
Medium 6
Difficult 12
Easy 1
2
4
2
11-25 permission lists
26 or more permission lists
The same estimating factors as defined above if
PeopleSoft doesn’t change its security approach in a future upgrade.
Query data source New -
Defining Data
Source
New –
Template
Medium 1
Difficult 2
Easy 1
Medium 2
Difficult 4
Easy .5
4
8
4
16
32
1
Simple rowset data source (1 record)
Rowset data source (more than 1 record)
Straightforward text or Letter format, no logic
Grids, Simple conditional logic, simple graphs
Complicated conditional logic, Using variables to do calculations, objects in template dependent upon data
Adding one new field Enhanced –
Defining Data
Source
Enhanced –
Template
Medium .5
Difficult 1
Easy .5
2
4
1
Adding a new record
Adding multiple records and additional felds
Modifying text
Документ1 4/14/2020 Page 12 of 21
University of Michigan Information and Technology Services
SDLC Methodology
S1000A - Estimating Approach Document
Object Type Work Unit Complexi ty
Estimate (hours)
Detail
Design
Code &
Unit
Test
Medium .5 4
Description of Complexity
Modifying conditional logic
Difficult 1 8 Adding new content, objects, graphs, conditional logic
4. System Testing Estimations
Components of this phase could include:
System Testing (includes test condition development, test plan development, user-, regression-, and end-to-end testing)
Batch Job Setup and Testing
Parallel Testing
Load Testing
It is recommended to use 75% of the development/unit testing effort as a starting point for the system testing effort. This factor may increase or decrease based upon factors such as:
Technical Level of Change
Business Process Complexity
Impact to Campus (number of users, importance of business process, degree of change for users)
Browser/Operating System Platform Testing
For batch job setup and testing use 2 hours per job.
Parallel testing and Load testing can be determined based upon FTE and assignment (i.e. if you need
.5FTE to manage parallel testing for 4 weeks you can assume 80 hours).
5. Performance Support Estimations
Performance support efforts are determined by the performance support staff. Please work with your performance support staff person or performance support manager. The Performance Support Factors listed below with associated hours are for large projects, such as an upgrade:
- SBS - Step by Step Proc - 26 hrs
- OC - Overview of Changes - 25 hrs
- SM - Support Materials - 14 hrs
- GSIM - Guide Met Simulation - 26 hrs
- PSIM - Practice Simulation - 26 hrs
- ELT - Elearning Training Course - 120 hrs
- QRS - Quick Reference Guide for Elearning Course - 24 hrs
- ILT - Instructor Led Training - 80 hrs
- Interchanges - 80 hrs
Determine Needs = 20% of Performance Support Factors
Plan Project = 24% of Performance Support Factors
Develop Materials = 112% of Performance Support Factors
Implement Plan = 19% of Performance Support Factors
Документ1 4/14/2020 Page 13 of 21
University of Michigan Information and Technology Services
SDLC Methodology
S1000A - Estimating Approach Document
Total = 175% of Support Factors
6. Data Delivery Estimations
Data Delivery Estimating
New Data Set
Task
Data Modeling
Mapping/Design 32
Create and unit test SQRs (per SQR/SQC) 16
Create and unit test scripts (FTP, Load)
Create jobsets and system test
Performance tune SQRs (per SQR)
Create universe
User testing and response
Communication, Training, Web, Security
PRT (including coordinating w/ CPU)
16
32
0
88
80
40
16
Enhancements
Task
Data Modeling
Mapping/Design
New tables - Create and unit test SQRs
(per SQR/SQC)
Alter and unit test existing SQRs
Alter and unit test scripts (FTP, Load)
Alter/add jobsets and system test
Time to
Complete (hrs worked)
Easy Medium Difficult
32 50 80
Time to
Complete (hrs worked)
Easy Medium Difficult
8
8
16
30
80
48
60
160
160
4
4
32
80
48
32
70
8
170
160
60
40
20
8
52
240
160
160
240
40
380
240
80
80
60
12
76
Performance tune SQRs (per SQR)
Append Data Set Manipulation
Alter universe
User testing and response
Communication, Training, Web, Security
PRT (including coordinating w/ CPU)
0
0
40
40
40
16
8
20
100
80
60
40
40
80
180
120
80
80
Not all of the traits mentioned have to be present for a data set to fall in a particular category. In fact, a strong predominance of only one trait can cause a data set to fall into a more difficult category. For instance, CRAS is not a large data set, but the complexity of the derivations puts it off the scale of difficulty.
Also, a data set can be difficult in one area and easy in another. Third Week is difficult from a programming/mapping standpoint, but has a quite easy interface.
Документ1 4/14/2020 Page 14 of 21
University of Michigan Information and Technology Services
SDLC Methodology
S1000A - Estimating Approach Document
A small data set is < 20 tables, medium is 20-40 tables, and large is > 40 tables. In the universe, if there are a large amount of aliases, a data set might be bumped up in size rating.
If extra non-standard items need to be put in place, ‘difficult’ estimates (particularly for mapping, SQR and script creation) could take much longer.
These estimating factors were validated against several projects and subsequently adjusted. Most new data sets up to this point have been developed when that portion OLTP was either also being developed or before it was fully stabilized in production. Thus, new development against a stable OLTP (where the business processes/data are better understood and solidified) might result in lower estimates.
Another factor that can impact estimates, particularly for new data sets, is the familiarity of the functional data expert assigned to the design team with general data warehousing concepts at the University (that is, how we do things). Usually this goes hand in hand with whether there was some sort of equivalent legacy functionality (whether that was an actual Data Access data set or some mainframe extract that was generally distributed for reporting).
N EW D ATA S ETS :
Data Modeling/Mapping (assumes 2 DD people participating in mapping, thus estimated hours are the combined hours of both):
Easy: Small data set, straightforward source to target mapping, easy joins
Medium: Larger data set, some derived elements or tricky denormalization, trickier joins
Difficult: Large data set, complex joins, many derived elements
SQRs (time is per SQR)
Easy: Small table, little denormalization
Medium: Larger, more denormalization, some derived elements
Difficult: Highly manipulated
Scripts and Jobsets/System testing:
Easy: small data set
Medium: large data set
Difficult: Requires special logic such as moving files to dataperm or deleting some data prior or post-load
Universe:
Easy: Small, easy joins, straightforward objects, little to no effective dating, one level of security
Medium: Medium, some effective dating, two levels of security
Difficult: Large data set, many joins, much effective dating, many derived objects, multiple levels of security
E NHANCEMENTS :
Data Modeling/Mapping (assumes 2 DD people participating in modeling and mapping, thus estimated hours are the combined hours of both):
Easy: Small # of enhancements (mostly new fields and/or changes in logic) or all enhancements in one or two tables, straightforward source to target mapping, easy joins
Medium: Larger # of enhancements (perhaps some new tables), some derived elements or tricky denormalization, trickier joins
Difficult: Major enhancements (several new tables), complex joins, major re-structuring of tables (i.e. undenomalizing or denormalizing more or differently) many derived elements
Документ1 4/14/2020 Page 15 of 21
University of Michigan Information and Technology Services
SDLC Methodology
S1000A - Estimating Approach Document
SQRs (time is per SQR) – New is the same definitions as for new data set. For Altering:
Easy: Add fields, only a few new procedures
Medium: More fields, more denormalization or other minor logic changes, some derived elements
Difficult: Many changes, major logic overhaul, adding highly manipulated fields.
Scripts and Jobsets/System testing:
Easy: < 2 new/renamed tables.
Medium: Between 2 and 10 new/renamed tables
Difficult: >10 new/renamed tables, major logic changes, such as going from a truncate replace to an append load, or adding special logic.
Append Data Set Manipulation:
Easy: not an append data set!
Medium: Added or removed fields only, little or no difficulty in figuring out how to populated new fields (if need to be populated at all). Need to remember to save data when alter tables.
Difficult: Changed structure, considerable effort needed to figure out how to ‘convert’ data to new structure(s) and/or how to populate new fields.
Universe:
Easy: Add/change a few fields and/or tables, add only a few joins
Medium: More field/table changes, some effective dating, two levels of security
Difficult: Many field/table changes, major shifting of classes, many joins, much effective dating, many derived objects, multiple levels of security
7. Data Administration Estimations
From scratch data modeling
Size: Small to medium
Difficulty: Easy
Less than 35 tables total, including code tables
Scope, business process and user base well defined
Integration points easily defined
Deliverables, logical model and Issues/Assumptions document
Estimate - 80 hours
Size: Medium to large
Difficulty: Difficult
Greater than 35 tables total, including code tables
Scope, business process or user base not well defined
Integration points unclear
Deliverables include more than logical model and Issues/Assumptions document (e.g., Executive
Summary to support request for funding)
Estimate - 100 hours or larger, normally handled by agreeing to initial estimate, with understanding that estimate may be revised once the project begins and more is known
Data Warehouse Dataset development (new dataset)
Size: Small to medium (ADSnap, HRSnap)
Difficulty: Easy to medium
Документ1 4/14/2020 Page 16 of 21
University of Michigan Information and Technology Services
SDLC Methodology
S1000A - Estimating Approach Document
Less than 20 tables, not including shared tables
Data area experts familiar with data warehouse at UM
Scope well defined/understood
Clear relationships between tables
OLTP in production and stable/understood prior to DW implementation
None to few derived fields
Simple derived fields
6-8 month timeline, weekly meetings
Some to many fields existing in other datasets (definitions can be re-used)
Estimate - 250-350 hours
Size: Small to medium (Third Week, CRAS)
Difficulty: Difficult
Less than 20 tables, not including shared tables
Data area experts that have no data warehouse experience at UM
Scope not well defined/understood
Complex relationships between tables
OLTP not in production or stable/understood prior to DW implementation
Some to many derived fields
Complex derived fields
9-12 month timeline, weekly meetings
Few fields existing in other datasets (definitions cannot be re-used)
Estimate - 550-650 hours
Size: Large (SR, RA, Retention)
Difficulty: Medium to difficult
Greater than 20 tables, not including shared tables
Data area experts that have no data warehouse experience at UM
Scope not well defined/understood
Complex relationships between tables
OLTP not in production or stable/understood prior to DW implementation
Some to many derived fields
Complex derived fields
12-14 month timeline, weekly meetings
Few fields existing in other datasets (definitions cannot be re-used)
Estimate - 750-850 hours
Data Warehouse Dataset enhancements
Size: Small (DAC Cmpgn Rpting 2 updates, 2002 enhancements to Fin/Phys datasets, each taken separately, 2nd round of Payroll Estimates)
Difficulty: Easy
Adding 1- 5 new fields to existing tables
Adding 1-2 new tables
Updating no shared tables or shared tables used in few datasets
Data area experts familiar with data warehouse at UM
Clear relationships between tables
OLTP in production and stable/understood prior to DW implementation
None to few derived fields
Документ1 4/14/2020 Page 17 of 21
University of Michigan Information and Technology Services
SDLC Methodology
S1000A - Estimating Approach Document
Simple derived fields
1-2 month timeline, few meetings needed
None to few other data dictionaries impacted
No updates to DAC dictionary Description Tables pages
Estimate - 20-30 hours
Size: Small (Fin Endowment Share, DAC Cmpgn Rpting 3 updates, 1st round of Payroll Estimates)
Difficulty: Medium to difficult
Adding 1- 5 new fields to existing tables
Adding 1-2 new tables
Updating shared tables used in multiple datasets
Data area experts that have no data warehouse experience at UM
Complex relationships between tables
OLTP not in production or stable/understood prior to DW implementation
Few to several derived fields
Complex derived fields
1-2 month timeline, weekly meetings needed
Many other data dictionaries impacted
Updates to DAC dictionary Description Tables pages required
Estimate - 60-70 hours
Size: Medium (no example)
Difficulty: Easy to medium
Adding 5-10 new fields to existing tables
Adding 3-5 new tables
Updating no shared tables or shared tables used in few datasets
Data area experts familiar with data warehouse at UM
Clear relationships between tables
OLTP in production and stable/understood prior to DW implementation
None to few derived fields
Simple derived fields
2-3 month timeline, weekly meetings needed
None to few other data dictionaries impacted
Updates to DAC dictionary Desription Tables pages required
Estimate - 100-200 hours
Size: Medium (FA/SF 2002 enhancements)
Difficulty: Difficult
Adding 5-10 new fields to existing tables
Adding 3-5 new tables
Updating shared tables used in few datasets
Data area experts that have no data warehouse experience at UM
Complex relationships between tables
OLTP not in production or stable/understood prior to DW implementation
Few to many derived fields
Complex derived fields
3 or more month timeline, weekly meetings needed
Many other data dictionaries impacted
Updates to DAC dictionary Description Tables pages required
Документ1 4/14/2020 Page 18 of 21
University of Michigan Information and Technology Services
SDLC Methodology
S1000A - Estimating Approach Document
Estimate - 300-400 hours
Size: Large (not sure I have an example, but based on Third Week, CRAS)
Difficulty: Medium to difficult
Adding greater than 10 new fields to existing tables
Adding greater than 5 new tables
Updating shared tables used in many datasets
Data area experts that have no data warehouse experience at UM
Complex relationships between tables
OLTP not in production or stable/understood prior to DW implementation
Some to many derived fields
Complex derived fields
3 or more month timeline, weekly meetings needed
Many other data dictionaries impacted
Updates to DAC dictionary Description Tables pages required
Документ1 4/14/2020 Page 19 of 21
University of Michigan Information and Technology Services
SDLC Methodology
S1000A - Estimating Approach Document
8. Rollout/Implementation Estimations
Components of this phase could include:
CSR prep for production
Creation and follow-through of release plan
Migrations follow-up
PRT
Execution of Communication Effort (Coordination with Performance Support)
Coordination of non-CPU resources
Stabilization
Estimating factors:
Number of Objects:
Small 1-99
Med 100 - 499
Large 500+
Batch Jobs (new and updated):
8
16
24
1 hour per job
0
Infrastructure Impacts (i.e. new hardware):
None
Small
Medium/large
Impact to Campus (number of users, importance of business process, degree of change):
Small
Med
Large
8
16
4
16
40
Process Complexity:
Low
Medium
High
8
16
24
Size of Communication Effort (can use estimates from communication plan if available):
Small
Medium
Large
4
20
40
9. Practice Moves Estimations
Will be a combination of Infrastructure Estimations, and effort needed to produce deliverables specified.
The estimate should also be based on a % of Development effort as well
10. Infrastructure Estimations
FTE Requirements for Production Support and each Discretionary project should be identified at the Unit level on a biweekly basis. The requirements can be summarized and then compared against staff available during the course of the proposed upgrade timeline. Incremental staff needs were identified for the upgrade and then smoothed over the timeline.
Документ1 4/14/2020 Page 20 of 21
University of Michigan Information and Technology Services
SDLC Methodology
S1000A - Estimating Approach Document
11. Security Activities Estimations
These estimates are the effort identified within Shared Services for establishing roles and system (tier II) access within the new environments. Creation of (PeopleSoft) roles is divided into three categories: easy, medium, complex. An easy role is estimated to take 5 minutes to complete; a medium role will take 8 minutes; a complex role, 10 minutes. An estimate of the number of roles within category was made for each of the CPU’s. Tier II or system access support was also estimated by support needed for each of the (PeopleSoft) Databases.
12. Third Party Products & Interfaces Estimations
Implementation or Modifications required to third party products and their corresponding interfaces are estimated on a per product basis.
Документ1 4/14/2020 Page 21 of 21