A Summary of the Strategy and Tactics Used in Modern Web Development

People often ask me about the process I use to develop large scale web applications.

The following is a brief introduction (high-level overview) which I use to begin to explain how it’s done. There are links at the bottom of this post to begin to explore the process in more detail.

The discovery processes and development plans will always be customized to clients’ individual needs. However, the following process is one that is very typical for many clients. This is not just my method. It’s a common process for many development shops and consultants.

Discovery

Project kickoff usually begins with a Control Memo (a master project document), which serves as a communication tool to explore a client’s needs for the project. I use this document as a discussion point with clients to:

  1. Discover more about their project’s business, marketing and technical needs.

  2. Record what I think we all already know and get clarification on what we might have missed.

  3. Be in a position where we have collected enough information to provide a client’s team with the following:

    1. Functional Specifications
    2. Technical Specifications
    3. Milestones and Schedule

Development

After technical discovery, in development I use a modified version of the Scrum development methodology, one of the classes of Agile development.

The requirements documents, final mock-ups, and design elements constitute the Product Backlog in the Scrum process. The Product backlog is the culmination and summary of needs defined in the:

  1. Functional Specifications
  2. Technical Specifications
  3. Milestones
  4. Features list
  5. List of mock-ups and design elements

All technical documents are kept under version control.

Main development typically takes place across periods of 30-day code sprints.

Each code sprint wraps-up with a short period of client acceptance testing.

Each code sprint typically targets a feature set milestone, which we work out with the client’s team based on the feature requirements already listed out.

Before each new sprint, features to be built in that round are selected and frozen for development in the Sprint Backlog.

Learn More

Here are some resources to learn more:

http://web.archive.org/web/20110725080141/http://www.softhouse.se/Uploades/Scrum_eng_webb.pdf

http://en.wikipedia.org/wiki/Scrum_(development)

http://www.joelonsoftware.com/articles/fog0000000035.html

Share or Comment via Twitter