Docs‎ > ‎Best Practices‎ > ‎

Team Development

Espresso Logic is designed to enable multiple developers to work together to build RESTful servers.  This section provides suggestions on how best to approach Team Development.

Multiple Projects: Stable, Dev

We recommend that Development proceed under a Development Account server configuration.  This creates a small server that will support a small development team.

Let's assume you want to create a server supporting URLs like acct/proj/resource.  You will create an account called acct.   Within your account, create the projects as described below.

proj - the stable version

This is the stable version of the server, intended for use by the Front End Team and for Integration Testing.  It operates on a shared server, so is not appropriate for Load Testing.

projdev - the shared development version

This is the version the Backend Developers change and test.

API Keys - separate for each Developer

The debugger tracks breakpoints by API Key, so each Developer should be assigned their own API Key.  This will prevent surprises where breakpoints are reached that you didn't set.

Releasing a new Stable version

It is desirable that releasing a new Stable version not require URL changes to client apps.  Recall that the project URL is distinct from the name, and can be specified.

Here is a recommended procedure:
  • Create a new Dev version using Export / Import, resulting in a project such as projdev imported Sunday Aug 11

  • Rename current Stable URL to a version number such as proj001, projectaugust11 etc

  • Rename the current Dev URL to proj
Note these projects can share the same physical database, or use separate ones, at your discretion.

Sandbox servers

This model presumes that the Backend Developers are making changes to the same underlying repository.  If you anticipate that your changes may de-stabilize the server, consider using Export/Import to create a test version.

Don't forget to merge the changes back into the Dev version when your tests are complete.

Integration Testing vs. Load Testing

A single server is used for these projects, and is therefore not appropriate for Load Testing.  For that, we recommend creating another Account, and selecting the appropriately sized production account.