Implementation is part of business design (contrary to some conventional ideas). Primarily, this is because business information must be passed between participants. Businesses thrive when they use methods that do that quickly, accurately and securely. The business is passing information.
Firmstate supports the business description of how information is currently passed, or may be passed in the future by defining Environments, physical and conceptual, within which information flows are liquid, quick, and accurate. Practically this may be a single application used by an organization with its own secure database and functionality that implements its Assertions. Connections between Environments are significantly more difficult to design, build, and maintain; often because of ‘ownership’ by different authorities or organizations.
Use the Environments Tab
- Create, Define, and Remove Environments
- Create, Define, and Rmove Implementations
- Specify scripts used by the prototype engine to display example screens
Use the Assertions Tab
- To identify what Environments may deliver the capabilities of the Assertion in a given Implementation
- To identify for each Connector supplied by that Assertion what Environment may deliver the capability to pass the information.
- To create diagrams in Sparx to show the information flows between Environments.
Using the HTML Report
- Review Implementations and Environments and the Assertions they support.
Managing Environments and Implementations – Environments and Implementations are easily created with the Add buttons. But removing them can create orphaned Assertions and Connections and should be done carefully. Editing of the Assertions and Connections should be done on the Assertions Tab ( see below) to remove the use of Assertions and Connections before they are removed here.

Creating Implementation Diagrams in Sparx –
An Implementation is a complex arrangement of Environments and information flows within and between them. The Create Implementation Diagrams button will generate a diagram that shows any joint connections between environments that the implementation will provide. This valuable diagram requires summarizing many connections and can take as long as an hour to generate ( for about 400 Assertions).
When the generation is run a new package is created in Sparx to hold the newly created Environment Elements.
Adding an Assertion to an Environment and Implementation – using the Assertions Tab

To add an Assertion into an Environment – select the Add Spec Env button to identify the Environment. A dialog will offer the available Environments. Select the one in which to implement the Assertion. After selecting An Environment State the Implementation you wish the Environment to be included in( use the In Implementation list). It is likely that an Assertion might be implemented in a future environment in a dedicated environment provided by a unique software product.
Adding a Connection to an Environment and Implementation –

A similar approach is used to identify how the Connector is Implemented (Your implementation is not designed until a way to build the Connections is identified). Be aware that each Connection from an Assertion must potentially have an Environment if that information is to be actually passed in the implementation.