April 2, 2013

Working With Us on Custom Software Projects

We describe here how you can engage our services and what to expect while having us develop custom software for you.

The Sales Process

Software development projects are notorious for running late and over-budget. The way to avoid problems is to set the right expectations during the sales process.
During our initial discussions, we will ask a lot of questions about your business objectives, company culture, key initiatives, your past experience with software development, and what you see as your team’s strengths and challenges. You will get to know our capabilities and can decide specifically what help you would like from us.

Depending on the scope of the work and how much is known at the beginning, we typically propose small, short projects that can be quoted for a fixed-price.
We develop software in two phases, each quoted at a fixed-price. A third phase, operations, is optional. The phases are:

  • a) Plan & Prototype Phase
  • b) Design & Development Phase
  • c) Operations Phase (optional)

Plan & Prototype Phase

Purpose:

  • To define the requirements by building a visual prototype
  • Gather enough detail to develop a fixed-price estimate for software development

Activities:

  • Conduct meetings to define requirements
  • Demonstrate and refine the visual prototype
  • Define the non-functional requirements (security, support, administration, training, documentation, technical constraints etc.)
  • Estimate the effort for building the required application

We prefer well-defined vs open-ended projects. If all the required work cannot be known at the beginning, we will break the known work into a series of projects that have a clear scope.

Proposal Outline:

Before we begin work, we will present you a proposal consisting of the following sections:

  1. Our understanding of your needs
  2. Plan & Prototype Phase Objectives
  3. Deliverables
    • Visual Prototype
    • Project Plan
    • Technical Design
    • Cost Estimate
  4. Customer Responsibilities
  5. Metric-X Responsibilities
  6. Assumptions
  7. Price (usually fixed price)
  8. Start / End Dates
  9. Payment Terms

After your approval, the work will commence.

Design & Development Phase

Purpose:

  • To develop the software as per the requirements of the Visual Prototype
  • Hand-off the finished solution to the customer, along with any training material and administration manuals

Activities:

  • Develop the software
  • Conduct checkpoints with customer and report status
  • Conduct testing
  • Deploy the software for on-going use

Proposal Outline:

After the acceptance of the Plan & Prototype phase, we will present you a proposal for the software development. The proposal outline will include:

  1. System objectives
  2. Project Goals
  3. Deliverables
    • Functioning Software
    • Test Plans
    • Test Cases
    • Test Results
    • Training manual
    • Administration manual
  4. Customer Responsibilities
  5. Metric-X Responsibilities
  6. Assumptions
  7. Price (usually fixed price)
  8. Start / End Dates
  9. Payment Terms

After your approval, the software development activities will commence.

Meetings and Team Interaction

We follow formal processes on our projects, and having productive meetings is important. Meetings can be conducted in person or via a web conference. Notes are recorded, and whenever practical, we demonstrate the visual prototype or the software that is under development.

On each project your point of contact will be a project manager who will inform you of the status and any issues, and will follow up on the open action items.

How We Charge for Our Work

For software development, we normally charge a fixed fee that we will quote up front.

Payment terms are typically “on receipt” or “Net 30”. For projects that have a duration of several weeks, we will include the invoicing schedule in our proposal.

When the system requirements are not well-known, or if we don’t have full responsibility for the project, we will quote you an hourly bill rate (time & material) for the work.