docs.intersystems.com
Home  /  Application Development: Creating Productions  /  Developing Productions  /  Introduction


Developing Productions
Introduction
[Back]  [Next] 
InterSystems: The power behind what matters   
Search:  


This chapter introduces the process of developing productions. It contains the following topics:
For an introduction to InterSystems IRIS Interoperability concepts and options, see Introducing InterSystems IRIS Interoperability. For information on how InterSystems IRIS Interoperability processing works, see the first chapter in Monitoring Productions.
Environmental Considerations
You can use InterSystems IRIS Interoperability only within a production-enabled namespace that has a specific web application. When you create classes, you should avoid using reserved package names. The following subsections give the details.
Production-enabled Namespaces
An production-enabled namespace is a namespace that has global mappings, routine mappings, and package mappings that make the classes, data, and menus that support productions available to it. For general information on mappings, see Configuring Namespaces in the chapter “Configuring InterSystems IRIS” in the System Administration Guide. (You can use the information in that section to see the actual mappings in any production-enabled namespace; the details may vary from release to release, but no work is necessary on your part.)
The system-provided namespaces that are created when you install InterSystems IRIS are not production-enabled. Any new namespace that you create is by default production-enabled. If you clear the Make this a production-enabled namespace check box when creating a namespace, InterSystems IRIS creates the namespace with productions disabled.
Important:
All system-provided namespaces are overwritten upon reinstallation or upgrade. For this reason, InterSystems recommends that customers always work in a new namespace that you create. For information on creating a new namespace, see Configuring Data in the chapter “Configuring InterSystems IRIS” in the System Administration Guide.
Web Application Requirement
Also, you can use a production in a namespace only if that namespace has an associated web application that is named /csp/namespace, where namespace is the namespace name. (This is the default web application name for a namespace.) For information on defining web applications, see “Applications” in the Security Administration Guide.
Reserved Package Names
In any production-enabled namespace, avoid using the following package names: Demo, Ens, EnsLib, EnsPortal, or CSPX. These packages are completely replaced during the upgrade process. If you define classes in these packages, you would need to export the classes before upgrading and then import them after upgrading.
Also, InterSystems recommends that you avoid using any package names that start with Ens (case-sensitive). There are two reasons for this recommendation:
A Look at a Production Definition
Although you create and configure productions in the Management Portal, it is instructive to get started by looking at the definition of a existing production class in Atelier. This following shows a simple example of a production:
Class Demo.FloodMonitor.Production Extends Ens.Production
{

XData ProductionDefinition
{
<Production Name="Demo.FloodMonitor.Production">
  <ActorPoolSize>1</ActorPoolSize>
  <Item Name="Demo.FloodMonitor.BusinessService" 
        ClassName="Demo.FloodMonitor.BusinessService" 
        PoolSize="1" Enabled="true" Foreground="false" InactivityTimeout="0">
  </Item>
  <Item Name="Demo.FloodMonitor.CustomBusinessProcess" 
        ClassName="Demo.FloodMonitor.CustomBusinessProcess" 
        PoolSize="1" Enabled="true" Foreground="false" InactivityTimeout="0">
  </Item>
  <Item Name="Demo.FloodMonitor.GeneratedBusinessProcess" 
        ClassName="Demo.FloodMonitor.GeneratedBusinessProcess" 
        PoolSize="1" Enabled="true" Foreground="false" InactivityTimeout="0">
  </Item>
  <Item Name="Demo.FloodMonitor.BusinessOperation" 
        ClassName="Demo.FloodMonitor.BusinessOperation" 
        PoolSize="1" Enabled="true" Foreground="false" InactivityTimeout="0">
  </Item>
</Production>
}
}
Note the following points:
Development Tools and Tasks
productions consist primarily of class definitions and some supporting entities. The process of creating a production can require a small amount of programming or possibly a large amount, depending on your needs. As noted earlier, InterSystems IRIS provides graphical tools that enable nontechnical users to create business logic visually. These tools generate class definitions as needed.
While you develop a production, you use both the Management Portal and Atelier as follows.
Portal Tasks
In the Management Portal, you use wizards to define and compile the following:
You also use the Management Portal for the following additional tasks:
Atelier Tasks
In Atelier, you define and compile the following classes:
Also see other topics in the chapter Less Common Tasks.”
Available Specialized Classes
InterSystems IRIS provides many specialized adapter and business host classes that can reduce your development and testing time. For a summary of the most common options, see Other Production Options in Introducing InterSystems IRIS Interoperability. Rather than listing the specific classes, that chapter describes scenarios for which InterSystems IRIS provides tools. It provides references to the applicable books.