Friday, September 20, 2013

When will Software Companies Jump On Board?


“Roman engineering was mainly civil engineering: the building of roads, bridges, public buildings, and other permanent structures. A consul, senator, or other magistrate commanded the whole of such a governmental enterprise. Under him the architectus or engineer, in his turn, bossed a crew of minor technicians: agrimensores or surveyors, libratores or levellers, and others. In addition, private builders without special technical training practiced, for private landowners, the craft in which they had been reared.” (Sprague De Camp, 1970)
Over 3,500 years ago, the Romans accomplished construction feats that rival the most complex projects of today, and used project management methods that our most developed processes of today are solely based on.  PMI has built the PMBOK around these processes.  The structure of the workforce also is one that is mimicked to this day.  Commercial construction project management has very hardened, tested, and stringent processes, so why is the software development industry still trying to do things the hard way? 

                  “A recent Standish Group survey of 8,000 software projects found that the average project exceeded its planned budget by 90 percent and its schedule by 120 percent. According to several industry studies, fewer than half of software projects finish within their planned schedules and budgets. Research has shown that the majority of causes of schedule slips and cost overruns are related to either project planning or monitoring.”
The simplified process of project management for most commercial construction projects follows a simple process (a 50,000 ft. view):  A business entity or individual approaches a general contractor to construct a building that has already been designed by an architecture firm.  Before the process of design started, a business case was developed by the Owner that is the basis for the project charter and the overall effort to consider construction. 

This business case states the need of the business, the desired outcome, and projections of impact once the building is complete.  Next, the Owner works directly with an architecture firm to design the end result, and ultimately provide a budget that the project could be completed for with a certain degree of variability.  The Owner then has the chore of deciding if the cost meets the business case projections, and ultimately if it warrants completion based upon the projections. 

If it is determined to be the case, the Owner will typically elect to retain the architecture firm to work with the General Contractor to complete the structure.  The architecture firm will generally act as the Owner’s representative or SME to help manage the GC.  The Owner will solicit price proposals from several GC’s to complete the work.  What’s important about this step is to note that in order for this to happen, the project has to be broken down in such detail, that each component of the building can be accurately estimated for cost, resources, and time.  This further means that the requirements have been gathered to allow this detail, and if at any point during estimation process there is more information needed, an RFI is produced for clarification.

In order for the GC’s to provide the Owner with a price and timeline for construction, they send out each scope of work to bid to subcontractors.  Once they receive back the estimates which provide cost and timeline, they are able to aggregate these and provide the Owner with an overall cost estimate and time to completion.  All of this is done, typically, before the project begins. 

Construction companies, architecture firms, and sub-contractors expend a large amount of resources to estimate the work they will do, prior to beginning.  Many of these estimates do not foster work, yet only a fractional percentage ever go to contract.  Yet, this industry is the backbone of the World economy, follows the project management methodology used during the building of Roman architecture and has been perfected over thousands of years, and is the model for which PMI basis it’s project management methodologies that are to be the standard for all industries.  So why are software companies having such a hard time falling in line with these principles?

PMI built the project management principles, and has published several versions of the PMBOK which house the standards of project management, developed by industry leaders from many sectors to include software development.  Software companies have spent recent years trying to come up with ways that produce a quality product, on time, and at or below budget but keep faltering.  Only a very small amount of software companies have developed successful methods to build software.

I have spent time within the IT industry just long enough to know that it is a field in its infancy.  Consider that software, as it exists today, has only been around for 30 years or so, with much of its current technology built since the 90’s.  The industry has been around for 1/5 the time it took to build 1 pyramid, yet it continues to falter in its ability to adopt proven methods for construction (either tangible or not).  Did I catch anyone’s attention?  I just related software development directly to commercial construction.  This typically evokes a response within the tech industry proclaiming that the two fields couldn’t be further from each other.

In order for a software project to be started, and ultimately completed, the following must take place:

  •        Owner discovers a need that produces a business case for presentation to its governance board and/ or financiers.
  •        High level estimate completed based upon extremely high level requirements
  •        Software company selected  based upon replies to RFP
  •        Further requirements gathering
  •        More time, scope, resources are ultimately assigned to the project
  •       Which might or might not be paid for depending on the type of contract you entered into with the Owner
  •        Continually run into problems
  •        Miss schedule
  •        Miss budget
  •        Finally finish project
So where was the breakdown?  The first step or two followed directly the process that have been followed for thousands of years, yet the process then deviated.  I have been told:

Software development can’t be estimated because you are not building a building.  That’s something that has been done before, but software development is creating something that has never been created before.” 
Really?  If I am not mistaken software development utilizes the same process, computer languages, and efforts that have been around for years.  It is also the same information taught to computer software engineers in college.  What varies is the logic and interconnection to the level of code below where the development will tie in, infrastructure organization, and data storage philosophies.   

Essentially the architecture for each piece of software is slightly different based upon the individual specifications the Owner requires.  If you strip away the desire to separate one’s self from the stigma that comes from being a construction worker in our society, and look at software development for what it really is, you find it is no different than construction. 

You are using known computer languages, known development techniques, and current technology methods for infrastructure and software development, to produce an end result that is built around the customers’ needs.  This process is for a one-off custom project.  This is an extremely rare process in software development.  Typically you utilize existing software, and manipulate a few details to fit the customer’s needs.  That sounds an awful lot like building a strip mall in “Anywhere, America”. 

If a software company would recognize that they can reduce the amount of write-off work, missed completion dates, budget overruns, and overall unhappiness by simply following the processes that have been fine-tuned over the past 3,500 years, they would be pioneers and quickly outpace their peers.  Instead of signing a contract prior to a complete set of requirements being gathered and estimated, complete this work, then provide a scope, budget, and timeline to the customer to then begin work from and lose the mindset that you are creating something that has never been done before.  Lose the mindset that mirroring construction somehow carries a stigma. 

I encourage you to spend time truly looking at the pieces of architecture that line your city’s skyline and ask yourself if they are cookie cutter efforts.  Instead, you will probably notice that the only thing in common is the fact that they used known standards, specifications, and processes to complete each component from the steel work, to electrical, to the flooring to produce a unique effort.


Chris Thompson, PMP 

Tuesday, September 10, 2013

The Battle Between Sales and Production



The battle lines between sales and production have been drawn since the unfortunate relationship began long ago.  Ultimately, production is responsible for the product or service that sales promised to a client.  Seems simple enough, however the struggle that has ensued starts when sales makes a promise to do something that is not within the control of production. 

Consider a project that requires a large amount of task completion to be done by the client.  When considering the triple constraint that all projects are bound by (time, scope, resources) , the fact that the client controls 2 of these components in this scenario renders production helpless in achieving a timeline promised by sales if the client isn’t given specific parameters to adhere too. 
In this scenario, in order to bolster the success of the production teams, the sales process would include the following:

·         Project proposed timeline:

When working through a possible completion time of a project for a client, if considering a model that requires a large amount of work to be completed by the client, how would you develop or sell this component?  In order to manage the client’s expectations, the process should follow several unique steps that are no different than building a project timeline through the proper process: (do know that the following example is built through the assumption that the project is a repeatable project that has specific nuances that need to be catered to for each client)

            1.  Develop a WBS that is inclusive of all major project tasks
2.  Sequence and estimate task durations
3.  Assign resources
4.  Develop timeline considering scheduling and resource constraints

By working through this process with the client, you are able to accomplish several things, 1) you help the client become intimately familiar with the project itself.  By working through the details of the work to be done, it provides the opportunity to present the needs of the client to ensure success.  2) What the staffing requirements will be for these tasks, and 3) an approximation of when, during the project timeline, these resources will be needed.  This ultimately sets very specific expectations in the client’s mind of what to expect and what will be needed of them to achieve the results they desire.

In any sales to production process, sales should tell the production team not only the scope of work that was sold, but also what the project timeline will be and how it will be staffed to accomplish this intent.  It should not be an effort by production to figure out how to achieve a desired outcome when the triple constraint is not effectively under the control of production.  Development of how something will be built or produced should not be a post-sale consideration, yet it should be a process of identifying the “what”, the “how”, the how long”, and the “how much” which will ensure you are not over promising and under-delivering on your client’s expectations.

 If a business is able to set expectations during the sales process as opposed to the project planning process post-sale, your perceived customer satisfaction levels will increase.  This will also enhance your ability to deliver on what was sold, the job satisfaction your employees enjoy will increase, and hopefully, at least indirectly (though I suppose you could argue directly), your referral rates will increase.


Monday, August 5, 2013

Scope Creep…it’s like a ninja



I posted a while back regarding scope creep, and how it ultimately begins prior to a project even beginning because of poor scope documentation development and a lack of a solid change management plan in place.  As I was sitting at the airport the other day, I overheard two gentlemen who struck me as either “C” level officers for a small firm, or sole proprietors in a startup.  What was most interesting about their conversation pertained to another aspect of scope creep that I had not covered in my original post.  Consider that the dialogue of their conversation consisted of a few minutes around a problematic customer.

This customer was a new account, large in comparison to their current client mix, and then also had a possibility for further work if the current contract was handled well.  I can only imagine what the contract amount was, but let’s imagine is was roughly $225,000 (there are several other assumptions I am going to make pertaining to the operations of this company, and the contract and scope documentation that had been developed for this effort.  Please just assume they are operating in a vacuum, and are following strict PMI guidelines). 

The customer had recently come to them and asked for a specific portion of work to be added and had exclaimed they felt it should simply be included in the project at no additional charge.  Suppose I asked you if, at this point with the details you have, you would complete the extra work.  Remember that this is a small firm, working with a $225,000 contract for a newly acquired client that potentially could add even more work to their pipeline.  Would you, based upon just this information, complete the additional scope without charging the client?

At this point it should be unclear which position you would take.  Why?  If I asked you to write down the reasons why you are still unsure, what would they be?  In my earlier post I did mention that in the project charter there should be limitations or privileges given to the project manager that allow them to, without clearance from someone else, add to the scope of the project if it fits certain parameters and falls under a certain price.  Considering in this scenario however, the client is asking for it to be done for free. 

Considering this scenario, do you need to implement guidelines in the change management plan to accommodate free items or levels of accommodation you are willing to make for a specific client?  I would argue you aren’t able to “legislate” to this level, yet you need to make sure that you have reoccurring conversations with your project managers to make sure their understanding of this dynamic are adequate.  I would also offer that you should have regular climate meetings to discuss current customer trends and issues so that you can have a revolving understanding of the concessions you may need to make to positively influence the relationship.


Tuesday, May 28, 2013

www.I’mRight.com




If you have worked within a consulting role and have led organizational change, when you seek out to learn something new to ultimately teach or guide your client through understanding it, how do you obtain your information?  I have noticed that it is very easy to fall into the trap of simply researching something until we obtain the outcome or feedback we WANT to hear, rather than obtaining quality information to validate the scientific approach we have taken to derive our original hypothesis.  

Some project managers may argue that this may not be a topic contained within our normal tool bag and I would tend to agree, unless you plan to operate as a project management consultant that helps lead organizational change.  Currently that is the capacity that I operate in, and as I read more and more medical journals, studies, reports, dissect tables, charts, and graphs full of statistical information it is very noticeable the data values are not properly developed.

As I make my way through these documents, I find myself recalling a class I had when in school for my BA degree.  The specific class was management science, and to this day is one of the most influential classes I had.  The basic premise of the class was to introduce proper methodology for developing a process to define a problem, design a method to analyze the data, and then know how to view the findings to then make an informed decision.  

The first step seems relatively easy but the remaining two steps proved to be the most difficult.  Consider an example of something that I have recently faced:

In order to implement a specific operational structure, a family practice or health system asked what it would cost to undertake this effort outside of the direct costs paid to our company to help facilitate this effort.  Essentially asking the question, what is the cost of ownership?  The question had been derived, but the problem wasn’t answering it, the problem was to determine how to answer it.  The problem isn’t simply, “how much indirect cost will be incurred for a practice to implement a specific organizational structure change” because that would mean that the indirect cost incursion is static across all types of practices.  

The consideration needs to consider practice size, number of providers, panel composition, socioeconomic status of panel, number of support staff, and IT capabilities just to name a few.  People who have studied economics understand the basic principle of economies of scale.  Knowing that there are nuances to cost incursion based upon the scale at which services or products are produced or consumed.  This is no different in healthcare, as the support staff and providers are able to handle different ranges of capacity for specific demographics of patients.  Once the demand scales up to the next range, and implementation of a larger work force is created, capacity is then not set at that particular level, yet it is possible to increase even higher with the same amount of resources.

Another consideration may be the buying power or cost advantage of purchasing medical supplies and a host of other considerations that could affect the overall cost of providing the same service as a much smaller organization.  Note also that the study should include different types of practices to gain an understanding of the costs experienced in all types of settings. If data is collected considering all the classifications and categories that relate to practices, the results can then be presented in a way that makes them searchable across the fields considered.  

Having project managed in several different fields, I have noticed that each field fails to notice what it could learn from another.  Not a conscious error, but something that is missed as I have watched each industry.  The main issue I have encountered thus far in my current effort is that the desire is to create a systematic tool of measurement that can be applied to all entities rather than developing criteria specific measurements.  

As illustrated in this post, it is necessary to consider all of the nuances that make each entity different.  When they are considered, measured properly, and are applied accurately the view into the information could be extremely influential.  There isn’t one source for all the answers; “I’mRight.com” doesn’t exist just yet :-)

Chris Thompson PMP, SSYB

Wednesday, May 22, 2013

1 Cup or 1/2 Cup…




I managed a project in the past that required a detailed analysis of the demand curve encountered pertaining to demand for services.  The project was a consultant model utilizing SME (subject matter experts) resources and project management resources to help the business better manage its demand, properly utilize its supply, and increase revenues.  

The first step in determining current utilization was to determine the true demand for services.  In order to do this, the business measured statistics for current usage levels as shown in the graph below:


Notice in the graph that the utilization statistics were monitored for 3 different services offered considering the age ranges shown on the left.  While this does give them a view into the service utilization and does give some view into the demand for these services based upon certain demographic age ranges, it does not accurately develop a demand curve. 

Consider that the age categories are of different cross-sections.  The first is a span of 4 years; the second is a span of 13 years; the third is a span of 9 years and the last is a span of 24 years.  The input from the business regarding the choice for the demographics used is based upon the variances found within these age divisions.  It was determined that there is very little movement or variation in the 51-75 category, so they tend to analyze this as a single category since the 51 y/o chooses services very similarly to the 75 y/o.  

While this may be true, consider that to accurately chart a demand curve to show the true curve without affecting the elasticity of the demand curve, the incremental measurements must be congruent in size.  Also, the more incremental the measurements, meaning measuring at 1/2c instead of a 1c increment will allow you a better view into the nuances experienced with the curve.  

By analyzing congruent demographic measures, and the smaller these divisions are, the more accurate the curve will be, you can more precisely capture the behavior of demand.  This is simply the first step in capturing the demand.  Once you establish the congruent size of measure you want to obtain, you need also to consider the duration of data you wish to obtain.  Within every industry there are seasonal variations of demand, so capturing but a short window of service utilization will cause the results to not be an accurate depiction of the true demand.

When considering the length of time to consider for capture, determine the fluctuations of your industry or specific business’s experiences.  Consider that time line, and be sure to encompass this entire span.  In this measurement, just as with the demographic measure used, consider using smaller increments.  Plotting more incremental data will give a more specific measure and accurate measure to the demand curve through your timeline.  

Let’s look at the example provided below:
Service A


Service B

Service C

Referencing the above charts, imagine if you had only gathered statistics for any one month.  The fluctuations for each demographic throughout the year are significant.  It may even be necessary to then take the aggregate demand needs and use a smoothing method and even consider utilizing a multiplier to consider smoothing for seasonality depending upon the type of resourcing model or inventory management system you use.  

For this example however, we will remain basic and notice simply that the demand fluctuates month to month for these services.  This is significant when it comes to determine the supply needed and how to deliver it cost effectively.  For thoughts around this example, if it takes one employee to provide one instance of each service, imagine the labor force projections you can develop by accurately gathering the true demand curve.

If you are producing a good, consider that you can level your resources and produce more than the demand when demand is low and below the demand when the demand is high, maintain steady production, and fulfill the supply needs.  This is something accomplished through the use of the seasonality smoothing equation.  It helps you develop the demand calculation but it helps smooth fluctuations you may encounter throughout your product life cycle so you can better manage labor force projections to maintain a steady workforce. 

Similarly, if you do have an extremely accurate demand curve, and find that your work is extremely seasonal, once you have analyzed the cost of maintaining a steady workforce, paying the overhead that comes with it, and the cost to store materials and front the capital to make the product, it may be determined that you want to move the size of your workforce to match the demand on your good or service.  

Another key consideration in production of a good or offering of a service you should consider is, “do you want to operate at 100% capacity?”  This is an important consideration for several reasons:

  •  Do you encounter “add-ons” to contracts from customers 
  •  Do you encounter delays in production or deliver
  • Do your employees take vacation or call in sick
  • ·         Do you want the ability to accept last minute contracts 

Hopefully you get the point.  Having available capacity helps mitigate these risks encountered in all businesses, and provides you the capacity to help with client related issues or personnel fluctuations.  The amount of capacity to operate at is up to your specific business, however many industries utilize the 80% rule.  

Hopefully the thoughts offered in this brief post can help open up discussion within your organization around properly developing a demand and supply analysis.  These are instrumental in labor force projections, inventory projections, revenue cycles, and many other measures and should be something you do with precision to ensure your business the best tools to learn from.  

Chris Thompson PMP, SSYB



Friday, May 17, 2013

A Better Mousetrap…




Within my current role, I work with Health Systems, hospitals, and practices to improve patient care of their chronic patient population, increase organizational efficiency, develop and standardize clinical workflows, and several other areas.  The model for this project does not follow a typical flow or process and my role lends itself to being more of an organizational efficiency consultant mixed with project management tasks heavily related to scheduling, client management, and helping lead organizational change.  

I often find myself answering to the same objections; the processes in place already work well and I don’t want to change.  Does this sound familiar?  Leading change is difficult enough when you have support both from leadership and the rest of the project team, but when shackled with conscious objections from those involved with the change effort it can become a daunting task.  What would you do to handle this challenge?  What method would you use?  Thus far a statistical showcase has proven quite helpful.  

Within any health system or practice the main payment method or arrangement is a fee-for-service model.  Increasing revenue then becomes merely an act of efficiently utilizing the same resources, in the same allotted time to render more services thus increasing revenues.  I can think of numerous places to start but one area I chose to start with was analyzing cycle times.  In other words, from the time to patient walks through the front door, to the time they leave, how long did it take.  Choosing what to measure was the easy part, deciphering how to, and getting the staff to measure it correctly became the challenge.  

Within any process or cycle time, regardless of the in/out time, there are interior process or sub processes that make-up the overall process.  Each one of these is much like any other project plan you may develop over the years in that they all have a predecessor or successor activity, have lead and lag times, and a critical path of completion can be derived.  Knowing this, I asked the staff to monitor cycle time for patients.  Specifically I asked them to once the patient walks through the door, follow them recording exactly when they did something, and who performed the process.  I asked them to record wait times, durations of processes, specify if acute, chronic visit, and any other appointment type, appointment length, appointment time-of-day, and appointment day-of-week.  Essentially I wanted a statistical account of their entire visit so that data could then be charted and aggregated to look for trends.  

Components I was specifically looking for were bottlenecks or snags in the process flow.  One of the most important components to finding a bottleneck was the comparison of active process and wait times within a given function.  For example, if the actual time to draw labs upon entering the lab was 3 minutes, but the wait time was 12 minutes, then I can quickly deduce that there is a disproportionate amount of wait time in the lab.  Hopefully that helps illustrate the need for the detail I had asked for.  

Now once the data was recorded and aggregated and I could look for trending, and as data continued to stream in, I could then look at run charts to see trending based upon time.  Did I then have enough to determine both bottlenecks and causes?  I was able to uncover the bottlenecks; however I was only able to uncover the causes of a couple bottlenecks.  Even though I could statistically show disproportionate wait times, I was unable to show root cause of the issue.  This is exactly what I wanted to have happen.  

Imagine you had built a mousetrap.  It trapped mice, was easy to clean up, your customers were happy with the product, and you made a decent profit off the sale of them.  Do you have motivation to change?  That depends on several factors but would speculate that if the profit margin provided a return you were comfortable with it might deter you from spending the time, money, and effort trying to change.  

This is the objection I had received from most of the practices I asked to obtain these measures.  As I mentioned earlier all I wanted was the data and to be able to show bottlenecks.  Essentially I was able to extract inefficiencies and show exactly how much revenue they were missing simply from inefficient clinical workflows.  How?  Consider the data I obtained.

I had a measure of how long it took to perform every task, on average, across each person who performed that task for any given appointment type, time-of-day, and day-of-week.  I could then aggregate that data and extrapolate what an average cycle time in/out would be for an acute, chronic, wellness, physical, etc.  I then was able to extract the average wait or idle time and again pull together and aggregate the information to show averages for each type of appointment or patient.  Once the two different measures were calculated, finding the lost revenue amount was fairly easy. 
Once I had accomplished this, I created an environment that became focused on improving organizational efficiency and defining better clinical workflows.  Remember that even though something may be working, doesn’t necessarily mean you can’t help an organization build a better mousetrap.  

Chris Thompson PMP, SSYB