Engineering Lifecycle Management (ELM) deployment has two distinct aspects:
This topic outlines several key planning and design considerations for designing an ELM environment. These considerations focus on the environment and non-functional options that typically effect how successful your deployment and ultimate adoption will be.
One of the questions that customers most frequently ask is:
How should we deploy an enterprise Engineering Lifecycle Management environment that is flexible, scalable, performant, available, resilient, secure and supportable etc.?
Quite rightly, you balk at an answer that only points you to the system requirements or gives you a myriad of permutations along with an ‘it depends’ answer. You want stronger guidance!
While no recipes or approaches guarantee success, this topic and section outline the general approach for planning and designing an ELM environment that meets your requirements. Subsequent topic sections cover specific design considerations.
Vision: Improve your time to value by providing more prescriptive guidance and simplifying the deployment of ELM solutions
The following sections outline key considerations for designing and planning a development environment against this basic approach.
The following list includes some of the most critical non-functional requirements you must understand and document for a development environment:
Consider short, medium, and long-term. Understand the potential capacity and scalability requirements from the outset so that you can design in flexibility to meet your changing needs.
At a minimum, this model should include this information:
Further, try to estimate the amount of SCM data the environment will need to support, both initially from migrating for previous SCM tools and the rate of growth of data over time.
Estimate your potential usage based on a potential usage model.
Use IBM Support and your trusted business partner, technical sales engineineer, and/or professional services person to help you size your environment. IBM Techline provides this assistance:
Build as much flexibility, scalability, and performance into your design by using these methods:
Virtualize the application tier, including your reverse proxy server. Database tier flexibility and scalability is best served by database clustering.
Well-managed virtualized servers permit modifying CPU, RAM, and disk image sizes with much greater ease than physical servers.
A virtualized infrastructure can support certain levels of high availability and disaster recovery:
Principles of good virtualization:
The infrastructure services you reuse might include the following services:
Make sure that the Service-Level Agreement (SLA) meets your requirements:
Separate infrastructure from tools and methods administration if possible.
Where possible, choose the middleware and editions that meet your ultimate requirements:
Where possible, choose a platform, OS, and middleware that you already have experience with. Standardize on the same platform, OS, middleware, editions, and versions for the whole of your Rational environment, where possible.
Choose a deployment topology that meets your requirements and that can scale to meet your needs. It is easier to scale-down an enterprise topology/environment than scale-up an evaluation topology.
Plan for multiple application instances if you think you are going to scale to need them:
Each instance requires a separate context root; for example, two instances of the CCM application might be ccm1 and ccm2.
Cross-instance working is supported by Open Services for Lifecycle Collaboration (OSLC) work item linking and distributed SCM.
For more details, see Planning for multiple Jazz application server instances.
Understand what systems monitoring methods you already perform within your organization and reuse them if appropriate. Monitoring methods might include homegrown tools, 3rd-party packages, or Tivoli monitoring.
A well-managed development environment is monitored. Identify a handful of measures and start capturing them on a regular schedule, either manually or automatically. Consider measuring all of the following information:
For more guidance and best practices, see the Monitoring section of the Deployment wiki.
Actual usage will always differ from the potential usage model you originally captured for an environment:
To avoid an under-performing environment, use the flexibility you built in to scale the environment.
Measure and review whether other non-functional requirements and targets are being met; for example, HA/DR, audit/control and compliance:
* All non-functional requirements must have specific and measurable targets * “The Rational environment must perform”, is not a requirement
A reverse proxy provides a web server, on a single host, that forwards requests to the Jazz applications.
The benefit of using a reverse proxy is the ability to mask the complexity or changes to the underlying deployment from your end users. You can start with a simpler topology and refactor to a more complex topology later as needed. For more information, see the understanding reverse proxy topic.
You can refactor the physical topology and still maintain links:
Before you begin the installation, verify that your hardware and software meet the minimum requirements. A 64-bit operating system and a minimum of 8 GB of server memory provide the best environment for running Jazz Team Server. For a complete list of system requirements for the Rational solution for CLM, the Rational solution for SSE, and their related products, see Installing, upgrading, and migrating section.
A typical 2 day deployment workshop or review for an enterprise scale Rational development environment:
Day 1
09:00 - 09:30: Give introductions and present the scope and agenda. 12:30 – 13:00: Lunch
13:00 – 14:30: Understand the current infrastructure services and preferred middleware/platforms. Make key platform, OS, and middleware decisions. |
Day 2
9:00 - 10:00: Review of Day 1 Hold sessions to discuss and agree on the approach to and design for these tasks:
16:30 – 17:00: Overall wrap-up and discuss next steps
|
IBM Rational software supports deployment workshops and reviews pre- and post-sales. A more detailed sample agenda can be found at Deployment Workshops and Reviews in Detail.
Status icon key: