Effort Estimation Template

After preliminary analysis of requirement, we understand the scope of the project. Once scope is finalized we go for effort estimation. By finalizing scope we identify, source and target, number of interfaces, design pattern and complexity of the interfaces. For integration projects, efforts are calculated on the basis of these parameters.

We spend time on following artifacts/tasks as per SDLC .

  1. Analysis
  2. Functional Specification
  3. Detail Design Document
  4. Coding and unit testing
  5. Test case preparation
  6. QA deployment preparation
  7. User acceptance testing support
  8. Production deployment support
  9. Hypercare
  10. Closure activities/Transition to support team.

Here is the sample effort catalogue templates you can use for Effort/Cost calculation for integration projects.

Design Pattern Type Scenario Analysis FS DD Code ITS SIT QA UAT Prd Total Effort(PD)
Synchronous Process Simple One Source one Destination, simple Lookup for data enrichment( database or  xref table), Simple flow control(try Catch, Decision, Branching)
Simple Transformation(string manipulation),Simple error handling Logic(Reuse existing error handling process), Simple security requirement( standard Basic Authentication)
1 1 1 3 1 1 1 1 1 11
Synchronous Process Medium One Source one Destination, Medium flow control(try Catch, decision ,branching, few subprocess call)  medium lookup complexity  for data enrichment(database, xref table or webservices), simple scripts(groovy,shell, bat etc),
Medium Transformation logic( String conversion, Date format conversion,simple math) , Medium process logic, Medium Error handling logic( reuse or custom built error handling processes)  Medium security( Encyption/Decyption,  Basic Authentication)
2 2 2 5 1 2 1 2 1 18
Synchronous Process Complex One Source more than one Destination,  Complex Flow Control(try/catch,multiple, Branch,route, decesion shapes etc are used), Multiple  lookup for data enrichment to Database, Xref table, Webservices, complex database query, Complex scripting requirement, Multiple subprocesses,
Complex Transformation logic(String conversion, Mathematical function,lookup,custom scripts), Complex  Error handling logic( Custom built error handling process required), Additional Security  Requirement(  encryption/decryption, Mauth, Two-way SSL, Message signing, URL signing ),  Audit Requirement
3 3 3 8 2 3 1 3 1 27
Asynchronous Publisher Process Simple Send Messages to the single Topic/queue, Simple schema validation( Only incoming message to be validated against predefined schema) Simple flow control, No  Lookup for data enrichment,
Simple Transformation,
Simple Error handling Logic, Simple security requirement
1 1 1 3 1 1 1 1 1 11
Asynchronous Publisher Process Medium Send Messages to single  queue,Medium process logic, Medium flow control, Medium lookup  complexity for data enrichment,
Medium Transformation logic, Medium Error handling logic, Medium security
1 1 1 5 1 2 1 2 1 15
Asynchronous Publisher Process Complex Send Message to multiple Queue, Complex lookup for data enrichment, Complex flow control,
Complex Transformation logic, Complex  Error handling logic, Additional Security  Requirement
2 2 2 7 2 3 3 2 23
Asynchronous Subscriber Process Simple Subscribe to the single message Queue, Simple process logic, Simple flow control, Simple lookup for data enrichment,
Simple Transformation,
Simple Error handling Logic, Simple security
1 1 1 3 1 1 1 1 1 11
Asynchronous Subscriber Process Medium Subscribe to the single message Queue, Medium process logic,  Medium flow control,Medium  lookup  complexity for data enrichment,
Medium Transformation logic, Medium Error handling logic, Medium security
2 2 2 5 1 2 1 2 1 18
Asynchronous Subscriber Process Complex Subscribe to the single message Queue, Commit messages to the database, Sequencing requirement,Complex  flow control  logic, Complex lookup for data enrichment,
Complex Transformation logic, Complex  Error handling logic, Additional Security  Requirement
3 3 3 8 2 3 1 3 2 28
FTP Process Simple One Source one Destination file transfer, Simple backup and delete after  file transfer, simple error notification call using common error code. 1 1 1 2 1 1 1 1 1 10
FTP Process Medium One Source , one Destination, Medium flow control , encryption/decryption of the file, custom built error handling process 2 2 2 4 1 2 1 2 1 17
FTP Process Complex One Source multiple  destination,  Complex flow control, Complex Data transformation, Intermediate SFTP servers, Complex Scripting (shell /Groovy/bat) requirement.
Additional Security  Requirement, Custom  built error handling process, Mail Notification, Auditing requirement
3 3 3 8 2 3 1 3 2 28
Bulk data Process(
File to File
File to DB
File to web Service
DB to Web service
Batch Retry)
Simple One Source one Destination, Simple flow control, No  Lookup for data enrichment,
Simple Transformation,
Simple Error handling Logic, Simple security
1 1 1 2 1 1 1 1 1 10
Bulk data Process Medium One Source one Destination, Medium flow control logic, Medium lookup  complexity for data enrichment, Single split and merge requirement,
Medium Transformation logic, Medium Error handling logic, Medium security requirement
2 2 2 4 1 2 1 2 1 17
Bulk data Process Complex One Source multiple  Destination, Complex  flow control logic, Complex split and merging requirement, Complex   lookup call for data enrichment ,
Complex Transformation logic, Complex  Error handling logic, Additional Security  Requirement, Audit requirement.
3 3 3 8 2 3 1 3 1 27

You categorize the interfaces while capturing requirement as per requirement capture template. Then you can use effort catalogue to calculate total cost of the project. The above template categorize all the interfaces in 5 pattern types; synchronous, asynchronous publishers and subscribers (Message Queue based) , SFTP, Bulk processing. We have three types of complexity; simple, medium, complex.

Suppose you have 5 simple synchronous interfaces and 2 sftp complex  interfaces , then total effort should be  5 *11+ 2*28 = 55+56=111 PD.

If blended rate is $200 per PD, total cost 111*200=$22200

You can add project management overhead as 20%, so total cost = 22200 + 4440 =      $26640

Additionally   you can add hyper care or production support overhead as 20%.

for exiting interfaces change requirement , you can consider a re-usability factors while calculating effort.  Suppose your total   effort 111 PD. If you add 60 percent re usability factor total effort would be 111*60/100 = 66.6 PD.

Some tasks take same amount of time irrespective of number of interfaces to develop.  Like production migration preparation . In that case we should consider that effort separately , we should not simply multiple with number of interfaces.