There's a popular myth that says project process can't forecast the future. This is literally not a correct statement, since this phrase leaves out the confidence with which the future is being forecast.
Add to the counter arguments used many times about Black Swans (a book of the same name is either loathed or loved depending on you point of view). But Black Swans are not usually in the vocabulary of project management. We as project managers aren't managing portfolios of investment funds, forecasting earth quakes, or making other decisions in that.
We're taking Statements of Work, Requirements, Concepts of Operations, and turning them into plans and cost models. Emphasis here on "model."
So the real question is
By credible I mean, there is a confidence level that the model can be used to guide the work efforts. The answer to knowing the level of confidence starts with knowing something about the variance in the underlying random variables that make up the model. Pat Weaver talks about Dancing with Chance. Like all of Pat's posts, there is an associated paper with more details. Pat's site is a "Must Subscribe" in Google Reader.
But here's an issue with the word "Chance." Change is a probability term. The local weather forecaster uses the phrase "there is a 30% chance of snow tomorrow on the Front Range." This means there is a 30% probability to snow will occur over the forecast area. This does not mean there is a 30% chance it will snow at our house, since local weather conditions drive storms coming from the north (Wyoming) to dump huge amounts of snow here before reaching other parts of the Front Range.
To know if it is going to snow heavily in Niwot, Colorado, we need to know both the probabilities and the underlying statistics of the behavior of the storm. In the same way we need to know the underlying statistics of the cost and schedule processes to know the probabilities of completing "on or before" for a "cost or less."
Probability Versus Statistics
In scheduling or cost when we speak of probabilistic outcomes - what's the probability of being on time and on budget - we also need to speak of the statistical nature of the activity network that models the durations and associated costs.
When we speak of a probabilistic activity network (a Bayesian network) we also need to speak in terms of probability.
A question that can be asked of the network is – “ what is the probability of completing this task by a certain date?”
But first we must asked – “what are the underlying statistics of the activities of the network?” Without this knowledge we cannot build a model (or at least a credible model) of the project's cost and schedule.
A final question that needs to be asked is “what is the inherent uncertainty in these estimates?” In other words – how good is our ability to guess in the presence of a statistical process?
So to have a useful model of the schedule and cost and to avoid falling into the trap Pat suggests - having the illusion of control versus "managing in the presence of uncertainty."
What Does it Mean to Manage in the Presence of Uncertainty
Uncertainty in plain English is about the “lack of certainty.”
Both of these sources of uncertainty impact cost and schedule.
We cannot "Manage in the Presence of Uncertainty" until we know about the statistics. What is the statistical population of allowable values of the random variables of duration and cost for a specific activity? If we don't know these from past performance, we can make inferences to get close.
Once we know about the statistics, we can ask Probability questions.
OK, so I finally created a Twitter account.
I might have done this earlier if there weren't some nitwit squatting the "ericsink" user name. I considered registering as the National Waffle Institute and posting "French Toast Sucks" as my first tweet, but in the end I settled for "eric_sink".
I've been on Facebook for quite a while. I apologize for turning down all the friend requests from blog readers, but I mostly just use Facebook for family stuff. Unfortunately that means Facebook is a lousy place for me to make snarky comments about the technology world. Most of my friends there either don't get it or don't care.
But Twitter should fill this hole in my life nicely. Now, when it occurs to me that my German Shepherd is smarter, bigger and better-looking than Spolsky's husky will ever be, I can just let the world know immediately, and everyone will be better off.
At first I was worried about the length limit, but I've been practicing, and it is surprising how often 140 characters are enough. For example, this one leaves plenty of room to spare:
Everything Borland ever created is now owned by someone who will destroy it.
But some of my practice tweets didn't go so well. This one is way over the limit, but I could probably make the point without being so wordy:
Imagine what the software industry would be like if Bjarne Stroustrup had chosen a career with less potential for harm to the world, such as the intentional destruction of all tropical rainforests.
For me Twitter looks like a solution at the intersection of two problems. With verbal remarks, it's easy to speak before thinking, but it just doesn't scale. With blogging, I can reach lots of people, but I always end up thinking carefully before I post. Twitter allows me to spew hasty, poorly-thought-out observations to a potentially worldwide audience. I'm obviously a newbie, but that seems like a great feature.
There are 1000's of rules for managing projects. I've collected many over the past 3 decades of managing projects. I came across a web site that has important things to say about project and program management.
Altis is the site of Jerry Maden, Associate Flight Director, Goddard Space Flight Center. Jerry has his 100 Rules for NASA Project Mangers.
But there is a critical important rule his states regarding PM 2.0 type processes. I'll paraphrase
Spitzer's Advice for Business Leaders: Never write when you can talk. Never talk when you can nod. And never put anything in an e-mail.
This is expandable every aspect of managing a project.
Mathematics may be compared to a mill of exquisite workmanship, which grinds you stuff of any degree of fineness; but nevertheless, what you get out depends on what you put in; and as the grandest mill in the world will not extract wheat-flour prom peascods, so pages of formula will not get a definite result out of loose data.
in Quarterly Journal of the Geological Society of London, Volume 25, 1869, Lord Kelvin, when speaking of the calculations of the age of the earth, in Fourier Analysis, "The Age of Earth I, II, and III," T. W. Korner, Cambridge University Press, 1988.

In the article The Onion Uses Django, And Why It Matters To Us, a lot of interesting points are made about their ambitious infrastructure move from Drupal/PHP to Django/Python: the move wasn't that hard, it just took time and work because of their previous experience moving the A.V. Club website; churn in core framework APIs make it more attractive to move than stay; supporting the structure of older versions of the site is an unsolved problem; the built-in Django admin saved a lot of work; group development is easier with "fewer specialized or hacked together pieces"; they use IRC for distributed development; sphinx for full-text search; nginx is the media server and reverse proxy; haproxy made the launch process a 5 second procedure; capistrano for deployment; clean component separation makes moving easier; Git for version control; ORM with complicated querysets is a performance problem; memcached for caching rendered pages; the CDN checks for updates every 10 minutes; videos, articles, images, 404 pages are all served by a CDN.
But the most surprising point had to be:
My colleague J.K. has written an interesting blog post where he describes a slightly different approach that he's been taking to writing stories to help move the business value in a story towards the beginning of the description and avoid detailing a solution in the 'I want' section of the story.
To summarise, J.K.'s current approach involves moving from the traditional story format of:
As I... I want.. So that...
To the following:
As I... I want.. By...
I quite like this idea and I've noticed that even without using this story format technical solutions are sometimes described as the business requirement and we need to look beyond the 'I want' section of the story card to find the real value and locate assumptions which have led to the story being written in that way.
To give a recent example, a colleague and I picked up the following story:
As the business I want a HTTP module to be included on the old site So that I can redirect a small percentage of traffic to the new site
We assumed that other options for redirecting traffic must have already been analysed and written off in order for this to be the suggested solution so we initially started looking at how to implement it.
After a bit of investigation it became clear that this was going to be quite an invasive solution to the problem and would involve re-testing of the whole old site (since we would be making a change there) before it could be put into production. That would take 2 weeks.
Speaking with Toni and Ashok about the problem it became clear that it should be possible to control whether traffic was going to the old or new site by changing the configuration in our load balancer, Netscaler.
Discussing this further we found out that this had been tried previously and hadn't quite worked out as expected which was why it hadn't been considered as an option.
We spent some time talking through using Netscaler with the network team and agreed to try it out on a performance environment and see whether it would balance traffic in the way that we wanted which it did.
We still need to make sure that it works as expected in production but it was an interesting example of how solutions can be excluded based on prior experience even though they might still be useful to us.
I'll certainly be more aware of noticing when a story details a solution and try and look for the actual requirement after this experience.
Competing pressures tempt one to believe that an issue deferred is a problem avoided, more often it is a crisis invented - Henry Kissinger
Remember risk management has five easy pieces
Ryan Enders has a post about using Social Media to help manage projects. Notice "help."
Ryan mentions what social media is being used in an article in PMI's PM Magazine. The referenced McKinsey study claims:
The PMI article states
Depending on how they're used, social networking sites, blogs, and wikis can be powerful tools for intra-team collaboration.
All this collaboration stuff is critical to project success. But is collaboration using the latest social media tools "project management."
Let's quickly review the knowledge groups of Project Management.
Now social media as a communication enabler can add value to the communication needs of these process groups. This is not new news. Even in our defense and space practice, we live on IM and SharePoint. Both might be categorized as Social Media. Team Sites, chats with people at multiple locations, document control, dashboards, WebEx, and other "connection tools."
But are these tools Project Management?
They support the management of the project, no doubt. But so did the HP9000 based electronic contract management and program management tools used at Hughes Aircraft for the AH-64 in late 1970's, described in Project Management Lessons Learned.
Was this called PM 2.0? Was it social media? There was chat across the terminals with remote vendors. There was collaborative development of documents and databases between multiple sites using the tools of the HP9000 (a wonderful machine with a very fast processor).
Project Status Updates using Twitter
As a emeritus program was fond of saying,
"Are you out of your ever lov'in mind."First project status is ALWAYS a report of physical percent complete against the planned percent complete. This is a number, some percentage, which can certainty be sent bu email, IM, twitter, and even scratched on the stall.
But that's not the "status" of the project. That the physical percent complete at the end of the reporting period - weekly in our domain.
The status of the project is the face to face, or video face-to-face conversation between live people about how you got to that physical percent complete, what prevented you from reaching the planned physical percent complete, and what you're going to do to get back to GREEN for the next assessment of your physical percent complete.
The Core Paradigm Gap
Reporting a numeric value is not "Project Management." No matter how you restate the hype, chatting, twittering, posting docs in MOSS, looking at pictures on WebEx is not "managing the project."
It's exchanging information about the project - possibly. Exchanging information through a very narrow bandwidth channel. And since the channel is narrow, communication errors are mandatory.
Those suggesting PM2.0 of the next big thing have failed to understand that a successful PM relies heavily on face-to-face communication. The agilest know this and state this in their Agile Manifesto.
So how is it we've moved away from this fundamental understanding? I have some conjectures:
Show Me the Money - Ron Tindell to Jerry McGuire
Please show me in units of measure meaningful to our clients (Enterprise IT, US DoD, DOE) for "managing" projects with tools like twitter, IM, and other "social media."
Kiron D. Bondale posted about the Seven Deadly Sins of project scheduling. After you read this very useful post here's my experience of putting this advice to work in ways you'd see if you were on the site of one of our defense programs.
When I interview people for a job position, I always ask them if they have any questions for me.
But they rarely have. Some candidates even look surprised.
Why?
A job is an economical relationship between you and your manager. What you bring to the table are knowledge, skills, and experience. What your manager offers are a salary, interesting projects, and a great working environment.
Both of you should be asking each other questions!
Here are some questions, off the top of my hat:
Can you think of some more?
Trust in a business environment can only be achieved when both parties in an economical relationship ask the right questions, and give satisfying answers.
Never be the only one to answer questions!
You know what? Next time when you don't ask me questions, I'm not even going to hire you.
(picture by Stefan Baudy)
Twitter -
Subscribe -
Newsletter -
LinkedIn -
SlideShare
tweetmeme_url = 'http://www.noop.nl'; tweetmeme_source = 'jurgenappelo';
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=mydomain.com;
s=MAILOUT; t=1269364019;
bh=5UokauIClLiW/0JovG5US3xUr2LcjGTnutud9Ke1V2E=;
h=MIME-Version:Content-Type:Content-Transfer-Encoding:Message-ID:
Subject:From:Reply-to:To:Date;
b=X7cgUltyjJpqN7xavEHPrLSTnEqyj7fsuS/4HDrs3YfZg2d8K9EdvqJ5gwdrmkVEL
M27ZDugI0yaK5C+cdOZ2Fyj8nG83nLwcnMz7X3EqCkHP0CPlv9FCXtjispxLJ2W3xc
AUQnp4vVChYb/TEGmQV+Ilzzf9a9WDUMhWlaljjM=
X-DKIM: OpenDKIM Filter v2.0.1 mymailserver 4B4B864925

This is still not an official information but the location and date for GTAC 2010 has leaked (and boy don’t we love leaks in Software Testing … Ok, that was easy …). The location had actually already leaked at the end of GTAC 2009 and I was sharing it with you during my GTAC 2009 field report. The confirmation has been given by Patrick Copeland himself as part of the GTAC group distribution list. The location will be Hyderabad, India and it looks like it will be held the week of October 25th ! With the large community of testers in India, I can’t think of a better place to hold this event !
GTAC 2006 and 2007 were focused on general test automation. GTAC 2008 theme was SaaS and last year the main topic was testing for the web. What would be the direction for GTAC 2010? I love games, and I have to play that one ! I think the main theme will be:
TESTING FOR THE REAL-TIME WEB.
This is a general trend for 2010 and I think a lot of software testing team will have to be very creative to handle the real-time aspects of these new web application. I see a few type of application we’ll have to deal with:
Real-time collaboration

Every major vendor is coming up with its own real-time collaboration suite for the Enterprise
Google Wave
SAP StreamWork
Oracle Beehive
Microsoft Unified Communications
Novell Pulse
And these are only the major vendors. You have a lot of startup riding on that wave.
Real-time CRM

This cover Real-time analytics, real-time data integration and real-time intelligence. That’s a big trend within the CRM space as well as in web analytics. There is more and more need to track your customer or website visitor behavior in real-time in order to make business decision rapidly, change your marketing/ad campaign on the spot, detect fraud etc.
Real-time search

Obviously a really strong trend in 2010 with services from Google and Microsoft of course but also from smaller company such as Tweetme, oneriot, topsy, scoopler etc.
Real-time Social network

Obviously Facebook is the major player here but you can expect a lot of competition in that space in 2010. Google has launched the hostility with Google Buzz. Who’s next? Expect also a lot of Enterprise solution such as Salesforce Chatter.
Real-Time location based application

This market is going to explode in 2010 with smarphones and GPS device getting smarter everyday. Foursquare is leading the way right now but there are many other application available. My bet is that real-time location based advertisement is going to explode as well … When you know that Google was awarded a patent for location-based advertising last month, it’s an easy bet to win !
So testing for the real-time web is my bet for GTAC 2010. I can easily see a few additional interesting topics to cover especially around cloud computing which is really hot as well. It would be good to get presentation from people doing testing from the cloud, what are the implications, benefits, challenges etc. I wouldn’t mind seeing Tom Lounibos on the stage to share with us the good stuff he’s doing with Soasta ! I had the opportunity to see a demo of their platform and it is really impressive !
I sure hope I’ll have an opportunity to join the party in October !
Related posts:
A fairly common scenario that we come across when building automated test suites using Selenium is the need to get past the security exception that Firefox pops up when you try to access a self signed HTTPS page.
Luckily there is quite a cool plugin for Firefox called 'Remember Certificate Exception' which automatically clicks through the exception and allows the automated tests to keep running and not get stuck on the certificate exception page.
One other thing to note is that if the first time you hit a HTTPS page is on a HTTP POST then the automated test will still get stuck because after the plugin has accepted the certificate exception it will try to refresh the page which leads to the 'Do you want to resend the data' pop up.
We've previously got around this by writing a script using AutoIt which waits for that specific pop up and then 'presses the spacebar' but another way is to ensure that you hit a HTTPS page with a GET request at the beginning of the build so that the certificate exception is accepted for the rest of the test run.
To use the plugin in the build we need to add it to the Firefox profile that we use to run the build.
In Windows you need to run this command (having first ensured that all instances of Firefox are closed):
firefox.exe --ProfileManager
We then need to create a profile which points to the '/path/to/selenium/profile' directory that we will use when launching Selenium Server. There is a much more detailed description of how to do that on this blog post.
After that we need to launch Firefox with that profile and then add the plugin to the profile.
Having done that we need to tell Selenium Server to use that profile whenever it runs any tests which can be done like so:
java -jar selenium-server.jar -firefoxProfileTemplate /path/to/selenium/profile
Josh Nankivel has a post on his PMStudent site about the Critical Path. This presentation is one of those "let me re-examine the obvious." This worth the time to watch, but it brings out several issues in the domain of project and program management.
Some of the questions asked by the author include:
But first you must watch the presentation to connect with the comments below.
But first a pre-apology. This topic is wickedly obtuse for all the right reasons. So this very narrow bandwidth blog channel is replaced in practice with a 3 day workshop, and continuous hands on mentoring, coaching, and keyboarding for the programs we work using Monte Carlo Simulation.
If you'll go to the Lijit search box on the right panel of this blog and enter "monte carlo" you'll see the tip of the ice berg of this topic.
This discussion starts with a primary problem
When you put hard constraints in the middle of the schedule, you have essentially "broken" the schedule. In Murry Wolf's presentation, complexity is created by this approach.
In our defense domain, hard constraints such as Must Finish On (MFO), Finish Now Later Than (FNLT) are strong discourages in principle and in practice ruin the use of Monte Carlo Simulation, since the probabilistic finish date are now anchored in the schedule and cannot move.
Here's the Real Problem
In our domain, the notion of the Critical Path as an "entity" that exists in the schedule, is replaced by a probabilistic assessment of the confidence of completing on or before a planned date. This is the role of the Monte Carlo Simulation of the schedule.
This approach removes all the hand waving, re-definition of terms, and arguing what is meant by Critical and Path.
The identification of the paths the impact the confidence of a deliverable is called the cruliality of the schedule. Using Wolf's classification are useful however:
This is an interesting view from Construction
At one time I was a member of the College of Scheduling. But the construction paradigm did not sit well with me for a few reasons:
It's the Monte Carlo Simulation that got me hooked on the method of doing the IMP/IMS. The IMS in the defense world MUST have minimum constraints. The DCMA 14-Point Assessment sets the upper limit of constraints.
To answer Mr. Wolf's pressing question - "which paths should we be looking at," means answering the cruciality question with a Monte Carlo model.
Cruciality is the combination of criticality and sensitivity of the drivers of the deliverables. That is what activities drive the "lateness" of the deliverable, how sensitive is this lateness and how critical are they?
That's how you answer all confusion created by constraints, multiple critical paths - which are always there in any real schedule, since the durations are random numbers - and the identification where to look for the next "emerging" problem with staying on schedule.