Top 5 Most Common Missed Issues in Software Estimation
-
Upload
intertech-training -
Category
Software
-
view
14 -
download
0
Transcript of Top 5 Most Common Missed Issues in Software Estimation
eBooks by
Top 5 Most Common
Missed Issues in Software
Estimation
www.intertech.com + 800.866.9884 @intertech.com 1
Table of Contents
1. Infrastructure Costs .................................................................... 2
2. Staff Training and Turnover ........................................................ 6
3. Project Dependencies ............................................................... 10
4. Don’t Plan for Deployment / Maintenance ................................ 14
5. Lack of communication on Speed vs. Costvs. Quality (SCQ) Mix ................................................................... 16
www.intertech.com + 800.866.9884 @intertech.com 2
Infrastructure Costs
www.intertech.com + 800.866.9884 @intertech.com 3
Software development can requirevery little infrastructure. Hire a fewdevelopers, give them each acomputer and a list of features tobuild.
Voilà!
You have a software project. As theindustry has matured we realized thatwhile this can work, it rarely producesan acceptable solution. Successfulprojects require infrastructure toreduce risk and increase efficiency ofthe developers.
www.intertech.com + 800.866.9884 @intertech.com 4
Setting up infrastructure is an expensive upfront cost, but is paid backmany fold over the cost of the project. Setting up infrastructure for a softwaredevelopment project often involves time and materials from other groups withinan organization.
Provisioning virtual machines usually requires involvement of the IT group,setting up a new GIT repository might require a DevOps team, and setting up atest environment could require the QA group. Each of these groups haveseparate priorities, and might not be able to perform the required setupimmediately. This can cause delays and increased cost before a project caneven start.
www.intertech.com + 800.866.9884 @intertech.com 5
A few infrastructure costs which are frequently missed:
Setup / Configuration of SourceCode Repository Setup / Configuration of CIServer Artifact Management server
Acquisition of Test Servers VMs or physical servers for each Permissions to each of these
www.intertech.com + 800.866.9884 @intertech.com 6
Staff Training and
Turnover
www.intertech.com + 800.866.9884 @intertech.com 7
Each development projectrequires a specific set of technicalskills, and this set of skills isfrequently different from the lastproject you completed. Keepingyour staff’s technical skills currentcan be difficult and/or costly.
Utilizing the newest libraries,frameworks, and tools canincrease developer performance,reduce defects and keep employeesengaged. However training for thisnewer technology, or slowing theproject down to allow developers tolearn the technology themselvescomes at the cost of time andmoney.
www.intertech.com + 800.866.9884 @intertech.com 8
On top of the constant need for new skills, the software developmentindustry has the highest rate of turnover of any industry. This frequentlycauses unexpected delays and cost overruns for new projects. It is rare for amedium to long term project to end with all of the same staff it started with. Thestaff hired to replace those who left, will not only take time to get up to speed,but will also take time and effort from other members of the team to get them upto speed.
www.intertech.com + 800.866.9884 @intertech.com 9
To mitigate this impact on yourproject plan, plan on schedulingtraining early in the project, andencourage cross training in notonly different parts of the project,but also in different technologies. Your biggest asset in this area ishaving employees and/orconsultants who are not onlyskilled in the technology, but alsoskilled in training and teachingother developers.
www.intertech.com + 800.866.9884 @intertech.com 10
Project dependencies
www.intertech.com + 800.866.9884 @intertech.com 11
Very few projects are built in isolation. Most projects are dependent uponone or more group’s delivery to complete and sometimes even start the project. In an industry where less than one third of projects are delivered on time andon budget, depending on another project can be a serious risk. Schedulingand budgeting for a project which depends upon the success of several otherscan be very difficult. It is important to not only look at the success rate of aspecific team, but of the organization in general as this team may havedependencies they have been waiting for.
www.intertech.com + 800.866.9884 @intertech.com 12
These dependencies may not evenbe for internal projects. Sometimes aproject depends upon integration with athirdparty. This might be accessing apublic API to collect weather forecasts,or integrating with a credit cardcompany to process payments. If all ofthese integration points worked asadvertised, life would be easy. Moreoften then not the process ofintegration will discover defects andquirks. If the thirdparty fixes thesedefects and quirks, your project will bedelayed. If the thirdparty cannot or willnot make any changes, your projectmay take significantly longer, or becanceled.
www.intertech.com + 800.866.9884 @intertech.com 12
Depending on other projects israrely avoidable, the best things youcan do to reduce this risk is to add asmany communication channelsbetween your team and theleadership of the project which youdepend on.
Make sure you are monitoring notonly the other project’s timeline anddevelopment rate, but also their bugcounts and trends. Some projectsare “done”, but have so many bugsas to need an immediate new versionto make it useful to you.
www.intertech.com + 800.866.9884 @intertech.com 13
Following an Agile methodology makes these lines of communication and statusmonitoring much easier. If possible attend the demo of your project dependencies,this will give you a good understanding of not only where the project is “supposed” tobe, but how well it is actually working.
www.intertech.com + 800.866.9884 @intertech.com 14
Don’t plan for Deployment
/ Maintenance
www.intertech.com + 800.866.9884 @intertech.com 15
A project doesn’t stop when the final line ofcode is written, and the final test passes. Thisis just the first step in the life cycle of a softwareproduct. Most developers don’t work in anenvironment where they are concerned abouthow the software is deployed. What supportednetwork configurations are supported? Areupgrades installed by professional services, orby the customer? Who monitors the software tomake sure it is running properly, and do theyhave sufficient information to know that it is?
These are just some of the questions whichstart to get asked towards the end of manyprojects. Since these were not asked at thebeginning, many of the answers mean extradevelopment time. If the software is notmaintainable in production, it is unlikely that itwill be successful.
www.intertech.com + 800.866.9884 @intertech.com 16
Lack of communication on
Speed vs. Cost vs. Quality
(SCQ) mix
www.intertech.com + 800.866.9884 @intertech.com 17
Each project has unique market requirements for how much it can cost, howquickly it must be done, and what level of quality it must reach. Without clearcommunication of where on the SCQ triangle, developers, project owners andmanagement spend significant amounts of time discussing which is moreimportant for each feature.
An internal development tool might work being quickly created by onedeveloper (fast and cheap) and any development beyond that is gold plating. Whereas a medical device needs to be primarily of high quality, otherwisefailure to meet regulatory requirements, or future lawsuits could beextraordinarily expensive. Each developer needs to know where on the trianglethe project sits, so they can make quick decisions about how much and whattype of work needs to occur on a daily basis
www.intertech.com + 800.866.9884 @intertech.com 18
Determining where on thistriangle the project needs to bewill require the product owner,project management, sales &marketing, and the systemdesigner / architect.
This is usually not a quickdecision, and the location maydrift over time as the need forthe project comes into betterfocus. The earlier in the projectlifecycle this can be clearlycommunicated, the easier manydecisions will be.
www.intertech.com + 800.866.9884 @intertech.com 19
Following an Agile methodologymakes these lines of communicationand status monitoring much easier. Ifpossible attend the demo of yourproject dependencies, this will give youa good understanding of not only wherethe project is “supposed” to be, but howwell it is actually working.
Need help with a developmentproject? Speak with a ConsultingRepresentative today.
651.288.7001
See our list of Consulting Solutions.