Specification Work

Our standard specifications for Web applications include:

  • The Functional Specification which describes how things work from the user's perspective. This includes wireframes, processes, and flowcharts.
  • The Technical Specification which describes the internals, technologies employed, and overall architecture of the system. The Technical Specification provides the basis for setting up infrastructure, automated testing, and so on.

The Mainspring Framework provides a blueprint for a lot of the features we plan to implement, especially those features that represent HR processes.

As of today, we have completed the draft specifications and have begun transferring the original prototype to the new project.

Infrastructure Work

Large projects such as Basis HR require special considerations for servers and hosting resources.

The goal should always be, as much as possible, to develop and test in environments that match the final live environment to which the product is deployed.

Deployment

Speaking of deployment, this is always a pain. Modern Web applications are tremendously complicated and typically have a wide range of requirements that must be met for optimal functionality.

Environments

We've defined 4 standard environments for developing and supporting Basis HR.

  1. Development
  2. Testing
  3. Staging
  4. Live

There is a fifth, special, environment called Control that serves as the place where documentation and deployment resources are maintained.

Development and Testing is where we build new features and engage in quality control. The Live environment is the latest stable release, while the Staging environment may be considered the preview of the next release.

Conclusion

With the basics in place, the development workflow will become normal and steady. This first stage is always fun -- the calm before the storm. Now it's on to the long slog of building out features.