The Communications Suite deployment process consists of the following general phases, referred to as the Solution Life Cycle:
Analyzing business requirements
Analyzing technical requirements
Designing the logical architecture
Designing the deployment architecture
Implementing the deployment
Operating the deployment
The deployment phases are not rigid; the deployment process is iterative in nature. Nevertheless, the following subsections discuss each of the deployment phases independently.
For detailed information on the deployment process for Communications Suite, and Java Enterprise System components, see the Sun Java Enterprise System Deployment Planning Guide.
In the business analysis phase, you define the business goal of a deployment project and state the business requirements that must be met to achieve that goal. When stating the business requirements, consider any business constraints that might impact the ability to achieve the business goal. The business analysis phase results in business requirements documents that you later use in the Technical Requirements phase. Throughout the life cycle, you measure the success of your deployment planning, and ultimately your deployed system, according to the analysis performed in the business analysis phase.
In the technical requirements phase, you start with the business requirements and business constraints defined during the business analysis phase and translate them into technical specifications that can be used to design the deployment architecture. The technical specifications measure quality of service features, such as performance, availability, security, and others.
During the technical requirements phase you prepare the following information:
Analysis of user tasks and usage patterns
Use cases that model user interaction with the planned deployment
Quality of service requirements derived from the business requirements, taking into consideration the analysis of user tasks and usage patterns
The resulting set of usage analysis, use cases, and system requirements documents are inputs to the logical design phase of the Solution Life Cycle. During technical requirements analysis, you might also specify service level requirements, which are the terms under which customer support must be provided to remedy a deployed system failure to meet system requirements. Service level requirements are the basis for service level agreements signed during project approval.
In the logical design phase, you identify the services required to implement the deployment. Once the services are identified, you map logically distinct components providing those services within a logical architecture that shows the dependencies among the components. The logical architecture, together with the technical requirement specifications from the business analysis phase, characterize a deployment scenario.
The logical architecture does not specify the actual hardware required to implement the deployment scenario. However, it helps you visualize the interrelationship among components, provides a basis for further analysis of use cases and identified usage patterns, and becomes the starting point for the deployment design phase.
Additional work might be necessary, either in extending services through the use of APIs, or in customizing look and feel, for example, introducing a corporate branding.
For some solutions, development and customization might be quite extensive, requiring you to develop new business and presentation services. In other cases, it might be sufficient to customize existing graphical user interfaces, such as the Portal Server desktop, to achieve the functionality required.
For more information on using product APIs and customizing product functionality, see the appropriate component product documentation, including:
Sun Java Communications Suite 5 Event Notification Service Guide
Sun Java System Messenger Express 6 2005Q4 Customization Guide
Sun Java System Messaging Server 6 2005Q4 MTA Developer’s Reference
During the design phase, you map the logical components specified in the logical architecture to physical components in a deployment architecture. You also produce design documents that aid in the implementation of the deployment. Successful deployment design results in the following:
Project Approval
Project approval is typically based on design documents created during this phase. During project approval, the cost of the deployment is assessed, and if approved, contracts for implementation of the deployment are signed, and resources to build the project acquired. At what point the actual approval occurs depends on the type of deployment you are designing and internal policies of the company requesting the deployment.
Deployment Architecture
The deployment architecture is a high level design document that represents the mapping of logical components to network hardware and software.
Implementation Specification
The implementation specification is a set of design documents that includes the following:
A detailed design specification used as a blueprint for building out the deployment
A user management plan outlining procedures for designing and implementing directory services and data structures needed to provision users for access to system services
An installation plan that outlines procedures for distributed installation of the deployment
Additional plans covering phased rollout of the deployment, training for end users and administrators, and other plans related to a successful introduction of the deployment
During implementation phase, you work from design documents created during deployment design to build out the deployment architecture and implement the deployment. Depending on the nature of your deployment project, this phase includes some or all of the following steps:
Creating and deploying pilot and/or prototype deployments in a test environment
Designing and running functional tests to measure compliance with system requirements
Designing and running stress tests to measure performance under peak loads
Creating a production deployment, which might be phased into production in stages
Once a deployment is in production, you need to continue to monitor, test, and tune the deployment to ensure that it fulfills the business goals.