Architecture

Just as you wouldn’t build a house with a blueprint, you shouldn’t build a computer system without an architecture.

Requirements

Quick!  Why would you build a computer system?  If you didn’t answer “to increase revenue” or “to reduce costs,” go back and try again.  You may be able to boil other answers, like “risk management” or “marketing” down to one of those two answers, but revenue enhancement and cost reduction are the only real reasons to build a computer system.

We start with a vision that includes the big reason for the project, and then we work together to hash out the details.  Depending on your needs, I can facilitate group meetings to tap the collective intelligence of your staff and ensure buy-in from all the stakeholders.  If you can’t bring everyone together, I can also interview them individually and integrate their ideas.  Finally, no requirements process is complete without reviewing your existing system, whether it’s based on computers, paper or conversations by the water cooler.

I can also help you manage the risk of “analysis paralysis”: spending too much time and money writing specifications and not getting down to the business of building your system.  Figuring out the tipping point between over- and under-detailed requirements is more an art than a science, and I’ve been working that art for 20 years.

Gap Analysis

You don’t chase every opportunity,and you don’t try to solve every problem at once.  Instead, you prioritize your tasks based on urgency and finances.  I’ll help you quantify your requirements in dollars and cents.  Once we know how much we can save (or earn) by closing each gap in your systems, then we can prioritize our work so that we grab the “low-hanging fruit” first.

Build vs. Buy

How many firms do you know that have custom-built buildings?  Some firms have requirements that require a custom job.  Some can live with any old office space.  Most start with a standard offering and make a few changes of their own.  I can help you work through the same thought process by surveying the market for off-the-shelf solutions, saving you the cost and risk of building your own.   And if there’s nothing out there that’s a perfect fit, I can help you find something that gets you most of the way home, and formulate a plan so that we can travel that last mile.

System Architecture

Before you start building anything, you need to have confidence that it’s going to work.  That means knowing what you’re going to buy, what you’re going to build, and where it’s going to run.  You need to know how the subsystems are going to communicate, and how your people and processes will integrate with your programs to build a complete system.  You need to know what is going to be delivered and when.  You need to know the “dollars and days” so that you can plan for the future.  That’s what System Architecture is, and I can help you develop one.

Database Design

A database is where your system stores information, and databases come in all shapes, sizes and costs.  Every system has a database – even if it’s on paper – and it’s easy to get lost in the jargon.  I can help you navigate the maze of relational, hierarchichal, file-based, multi-user, distributed and other kinds of databases to help you come to a cost-effective solution.

Databases are core to your system, and nothing will increase your programming costs and defect rates like an amateur design.  A professional design, on the other hand, will make life easy for your programmers and avoid performance problems later on.  I’ve designed hundreds of databases for successful clients.

Quiz

  1. Do you know why you want a new information system?
  2. Do you know exactly what you’ll get at the end of the project, and why?
  3. Are you sure that you’re solving the right problems, in the right order?
  4. Are you sure that you can’t buy a solution, rather than build it yourself?
  5. Do you have a complete blueprint for the system that gives you confidence that it will work?
  6. Do you know when the various parts of the system will be delivered?
  7. Do you have a list of factors beyond your control that can affect the cost and delivery date of your system?
  8. Are you confident that your database design will support your goals for quality, time and cost?

If you didn’t answer “yes” to any of these questions, get in touch with me.  Even if you have already started building your system, even if you just have a nagging feeling that something’s not quite right.  I can help.