system analyst and adjunct cio business analyst and technical writer

 Home  Who We Help  Services  Approach  Case Studies  Resources  Contacts  About Us


Do you have trouble...

» Getting projects done on time?
» Meeting budget goals for your projects?
» Gaining agreement among project stakeholders?
» Achieving high quality results?
» Verifying that a successful outcome was achieved?

Answered yes to any of these?

DAMICON can help.


Is your company facing relentless competition and demands for real-time responsiveness? Adopting agile management techniques is one way to cope. But, becoming agile requires following a few counter-intuitive principles.

Agility requires that people move quickly and work closely together. To achieve these goals, there is a tendency to implement more control and supervision so decision-making is simplified. Unfortunately, this often just slows everyone down.

The person at the top of the decision tree is usually far removed from the situation resulting in a lengthy and complex decision-making process. The decision-makers inevitably become bottlenecks because there are too many decisions to be made and they cannot keep pace with project teams.

Agile companies place fewer controls on people, relying on collaboration instead.

Collaboration happens when people are reaching for common goals. Define the goals you want people to reach and let them work out the details. Teams will decide how to reach the goals. As they do, they will get better and better at their work. This creates an organization that is responsive, effective and agile.

Think in terms of project phases for achieving goals. There are four fundamental phases when using agile techniques.

The Explore, Plan, Execute, Verify process should be governed by the following seven principles that serve as guideposts for project teams. The bigger the project, the more formal the implementation of these principles must be.

1. Collaborate don't just communicate.

It's critically important to reach consensus on the job at hand. What will be done? Why must it be done? Who will do it? When will it be complete? Where will it be done? How will it be done? ("Where" and "How" are best left to the project team to figure out.) It is also essential to prioritize the critical success factors for the project.

Don't try to define every detail up front. This is often too complex and time consuming to be worthwhile. Instead focus on what really matters. Obtain buy-in explicitly. Don't just assume that everyone "got the memo".

2. Focus on people, policies and processes, not technology.

The only mistake worse than not fully defining the job at hand is failing to identify the right people. Team members need to be identified and assigned clear roles and responsibilities. Each role should come with goals and objectives. It sounds obvious but this step is frequently overlooked and a major contributor to high project failure rates.

Clearly defined policies and processes for managing the project team and implementing the solution are also critically important. These details help set expectations for the team and help avoid discord. Technology should support and enable the team while not getting in the way or adding complications.

3. Keep it simple by always seeking to minimize the amount of work to be done.

Scope creep is a frequent problem and is notoriously difficult to contain. Most project teams give priority to scope, willing to exceed time and budget goals to implement features. We prefer to more tightly control time and budget while letting scope absorb change. Exceeding time and budget constraints has killed many a project. Postponing a few features rarely has.

This approach works when there is a vision for the end result as well as a clear understanding of what really matters (ie. critical success factors). Prioritized requirements and a willingness to give up low priority ones in exchange for meeting time and budget goals are essential ingredients to minimizing work and maximizing return on investment.

4. Embrace change as a vehicle for sustainable solutions.

Many project teams resist change by locking down requirements and establishing complex change management procedures. This resistant has caused many teams to deliver obsolete results - too little, too late.

Sustainable solutions are adaptable. If business priorities change, assess the impact at the first available opportunity. Be sure that everyone understands the new situation and the risks. Dealing with change is never easy but delivering a solution that people no longer want is far more painful.

5. Seek incremental refinement through iterative delivery.

Almost all projects (the exceptions being small, simple efforts) are best undertaken with an iterative approach. That simply means taking small steps with frequent checkpoints...explore, plan, execute, verify...repeatedly.

Each iteration should result in a useful work product subject to agreed upon acceptance criteria. One or more people should be identified as having acceptance (or rejection) authority. This becomes a mini-cycle that we call "Agree -> Deliver -> Approve". Once all the work products are approved, the project is done.

6. Track progress by measuring tangible results.

The plan should break down the work into tasks and deliverables. Tasks should be assigned to an owner and result in a verifiable deliverable. The deliverable can be anything as long as it can be verified. Test early and often to uncover problem areas sooner and leave more time for addressing them. Regular status reporting helps keep everything in perspective.

Never accept percentage done as a progress indicator. All too often 80% of the task is done translates to 20% of the time has been expended. A task is either complete or incomplete. There is no in between.

7. Strive for continuous improvement through project retrospectives.

Project retrospectives, often called post mortems, are an important tool in continuous improvement. However, retrospectives do not have to wait until the project is complete. They can be done between iterations or after any major deliverable is completed.

Strive to improve but don't abandon the plan when the project runs into difficulty. Update the plan based on new information and new procedures but never abandon it.

Explore. Plan. Execute. Verify.

Follow the seven principles outlined above and more of your projects will be successful.

An initial consultation with us is complimentary and without obligation. After that initial meeting, you'll receive a detailed proposal from us outlining what we will do for you and what it will cost. We prefer to work on fixed-price engagements whenever possible where each of us knows what will be done, when it will be done and how much it will cost. That's how you deal with most of the other professionals that help you run your business effectively and that's how you'll deal with us.

Expert advice. Straight talk. No surprises. Guaranteed results. If you're not happy with the results we deliver, we'll make it right at no extra charge. If you are happy, we'll ask you to refer us to someone you know. We'll also check back with you periodically to make sure everything is still on track. If not, we'll address the problem immediately.

If you have questions about our approach or managing projects in general, please email us!

If you like our Explore, Plan, Execute, Verify approach and would like to put it to use in your business, there are two Special Programs you can check out. Our Advocacy and Staffing Program makes DAMICON your trusted advisor for technology issues. Our Hands-On Mentoring Program provides personal, on-the-job mentoring to your staff.

Software design

Typical Situation

Applying the key principles of DAMICON's approach to the typical IT project looks something like this.

» Explore current situations

» Plan to implement new ideas

» Execute the plan in stages using the right people

» Verify outcomes using simple metrics

Continue this process until all desired outcomes are achieved

Agility is the key to success. Project teams must explore, plan, execute and verify ... simultaneously. For example, as soon as there is enough information to beginning planning a portion of the project, do so. The tendency to wait until all the exploring is done causes decisions to be made with incomplete information.

The same is true of the other phases such as verifying parts of the solution while other parts are still being explored. This approach works because people learn by doing and repeating and not by sitting around waiting for others to finish.

Small steps and frequent checkpoints reduce risk and achieve a superior result.