Future State

Where are you going?

Once the current state is well understood and documented, it is time to define what the future state will look like. In this phase, a series of steps are executed that define processes, requirements, data model, and the technical architecture associated with the future state solution.

Process Redesign

In the current state phase of the project, processes and pain points were identified for the current solution. Based on this information, each process is re-visited, optimized, and changed to address the pain points and desired future state functionality. These processes are generally described in a 'technologically agnostic' manner. That is, they do not reference a specific technology or solution, but describe the process from the business perspective instead. As was the case with the current state, these processes can be documented very simply in a tool such as Visio, or can be documented in a more formal and detailed manner using a standard such as Business Process Modeling and Notation (BPMN).

Requirements

Once the processes have been defined, the team can begin to build a set of requirements for the future state. These requirements include both business requirements (functionality) as well as technical requirements (technical standards, security compliance, technical specifications, etc). These requirements become key when selecting vendors, technologies, and designing the future state architecture.

Conceptual Architecture

The conceptual architecture should describe the solution in a generalized manner, without referencing specific technologies, except for those who are note being replaced (legacy systems). This design is generally created using UML artifacts, and is handed off to prospective vendors during the RFP process.

Logical Data Model

Once the processes and requirements have been defined, a logical data model is defined, that describes the nature of the entities and attributes of the data that is stored and transmitted in the system. For example, a process may have been defined that describes the creation of a new customer. The logical data model would define the entity (customer) and the attributes (such as name, address, phone, etc) associated with that entity. In addition, the logical data model would describe the relationships between entities (a customer has zero or more orders).

Technology Selection

If new technologies are to be purchased and implemented in the course of the project, and RFP process should be followed to ensure that the right technologies and vendors are selected based on the requirements that have been defined. Requirements, Conceptual Architecture, and a logical data model are all provided to prospective vendors. In their response, they should be proposing a physical architecture and specific technologies that meet the requirements provided to them. Competing vendor responses are then evaluated against each other, and one or more vendors are selected.

Future State Architecture

Once the vendors and technologies have been selected, a future state architecture is defined using UML artifacts such as network diagrams, communication diagrams, sequence diagrams, and use cases. This design should support all of the business and technical requirements, as well as any architectural and security standards established or adopted in the context of the project.