It makes sense to apply the same naming conventions and containment tree organization to all your Builder projects. This makes reading a model much easier. The naming conventions and containment tree organizations as described below have been practice-approved by our developers.

Naming Conventions

Agree on one language for names and documentation. This can be your native language or English for international projects.

Suggestion for a naming convention:


Convention
Example
Generalupper or lower camel caseMyClass, myObject
for signal, exceptions, send signal action, scheduler, event observer, ports, RFC ports:
Use element name in the name
ApprovalSignal, MyScheduler, MyPort,
MyRFCPort
Classesupper camel caseMyClass
Attributeslower camel casemyAttribute
Operationslower camel casemyOperation
ServicesDon't use service in the name, except for base services, because the composite name is displayed on the Bridge.BaseService_Salesforce_01
Use a project specific pattern.Intelligix_Outbound_01
Aliasesupper camel caseSQLAlias
Model File Namesupper camel caseMyModel.xml
libraries:prefixes with liblibFTP.xml
BPMN:upper camel case with BPMN informationMyBPMNSpecification.xml or MyBPMN.xml
BPMN:corresponding implementation modelMy.xml

Containment Tree Organization

Suggestion for a containment tree organization:

How to organize ...
modulesUse a dedicated package Modules. Use sub packages for XSD, XSLTs, WSDLs, ...
librariesUse a dedicated package Libraries.
scheduler, SOAP ports, other frontend interfacesUse a dedicated package Service.
class diagrams containing mappingsUse a dedicated package Mappings.
class diagrams for flat filesUse a dedicated package Flat Files.
manually created persistent state objectsUse a dedicated package Persistency.

Hint concerning the BPMN importer

The BPMN importer derives the module name in the implementation model from the name of the package where the BPMN diagram resides in the BPMN specification model. Thus, create the BPMN diagram in a package whose name is unique throughout the whole Builder project. Otherwise packages having the same name might get overwritten on BPMN import.

  • No labels