What is a good IT development project?

This might seem like a dumb question, but our experience tells us that many IT departments focus purely on the delivery dates and neglect some of the other important aspects of a system. Delivery to time and budget is very important but it is not enough! What about what happens after you go live?

A new system go-live should not result in a surge in support activity. A new system should be robust and reliable; it should delight its users and the team who support it. A new system should be amenable to changing requirements. A well designed system and good documentation go hand-in-hand; and both are a consequence of a sound development process. Documenting the code after it has been written is not the same as producing high quality specifications before hand, and gives a very different outcome. Can your project control all this? If not, why not?

What is a good IT process?

To be of any use to a hard pressed project team, a process has to be both effective and comprehensible. Teams are always under pressure, so every step in the process must count. A mountain of manuals is just a big turn-off, so the process must have a clear structure which is easy to navigate.

An IT project is a team effort. All roles need to be understood - who is needed and when, and the essential skills. Everyone in the project should understand what deliverables they are expected to produce, and be able to explain all the bits that their deliverables depend on.

A good development process must also facilitate good project governance and assist resource planning and portfolio planning.

Systems maintenance is a major part of the cost of running most IT operations. A good development process must help with the maintenance and support of the new system once the initial development stage is over and the system is in use.

What are the basic characteristics of our approach?

Our approach is a collection of good practices and structure drawn from a number of established sources and methods. Because the structure is coherent, it is possible to "mix and match", using some aspects of the process and not others but without losing all sense of where you are.

The main elements of our process are:

  • use of UML models to get a firm grasp of the business problem
  • use of UML to produce a robust and unambiguous specification of the system solution
  • an outline, up-front analysis to establish scope, priorities, development options, costs, system architecture
  • robust requirements analysis before design
  • incremental development of the working system
  • robust design before code
  • clear deliverables with a clear purpose
  • clear role responsibilities

You can find out more here:

Our Approach - Making The Change Work

Useful Resources

These links and resources will tell you more about our approach and the techniques we use.

Our Approach Explained

If you would like to know more about our approach then you can get access to our Wiki pages .
If you would like to be informed when the Wiki pages are available, send us an email and we will let you know.

Contact Us

If you are interested in talking to us about application development, and how your organisation could do it better, please your details and we will do our best to help

Functional Spec - sign off

If only it was this easy!

Myths about Requirements

  • The business know what they are - we just need to capture them!
  • They can be defined in isolation from the solution.
  • They live in nice neat categories and if we can trace them to each other- it's sorted!

Why our process is better

The UML models facilitate communication and shared understanding, which are fundamental to effective team working. The models provide a seamless journey from business need to working system. The models also give us the ability to describe the system at different levels of granularity.

It's a bit like using a map. Consider the London tube map. It's an iconic document. But what's so good about it? Well, it contains just the information you need to plan a journey - but not much more. It tells you which stations are on which lines, in what order and where you can change. It doesn't accurately represent distances or position. The deliberate design of the information content makes the map much easier to use - for the purposes that most of us need.

What a System Manager said about our approach

"..The project had tight deadlines so we only used bits of the Karona approach. But we could see the benefits and next time we will want to use more of it."