4 Introduction Problems Objective Approach Open Standards used RM-ODPUML Profile for EDOCIntroduction of Healthcare joint project
5 Problems Things which make enterprise system development more complex: Endless development requests generated to meet a variety of requirementsRequirements for integrating heterogeneous systems and technologiesNew requirements like enterprise collaboration and Web Services support pop up unexpectedlySystem integration requirements by mergers and acquisitionsUnderstanding, development, and maintenance of enterprise systems are getting more difficultIs there any way to better handle or organize this enterprise system development?
6 Objective We need something for enterprise systems that: makes it easier to understandmakes it easier to communicate between subject matter expertsSome kind of guideline for users to achieve above is the objective.
7 Approach “Divide and conquer” is the approach to handle complexity Utilize usable International Standards and OMG Specifications for this purposeDevelop guideline for using standards about:How to divide complexitySample steps or process of thinking (development)What should be described in each divided areaWhat pitfalls areWith examples
8 Standards utilizedRM-ODP (Reference Model for Open Distributed Processing) from ISO/IEC & ITU-TViewpointsFundamental conceptsUML Profile for EDOC (Enterprise Distributed Object Computing) from OMGUML extensions based on RM-ODP viewpoint frameworkBusiness process, event, entity, relationship, component, pattern, technology mappings etc.
9 RM-ODP Reference Model for Open Distributed Processing ISO Standards & ITU-T RecommendationsDeveloped initially as reference standards for developing standards for open distributed systemsBetter to consider now as vendor neutral distributed system description frameworkBeing adopted by OMG (OMA, Model Driven Architecture)Object OrientedDistinguishing feature: Five Standard Viewpoints defined for any system description
10 Five Viewpoints Enterprise Information Computational Engineering Purpose, scope, and policies (not necessarily means “real enterprise”)Could be considered as requirements specificationInformationMeaning and processing of informationInformation model and schemaComputationalFunctional decomposition (close to application objects)Could be considered as object model or component modelsEngineeringInfrastructure to enable interaction between computational objectsCould be considered as infrastructure/middleware for distributed processing systemsTechnologyChoice of hardware and software, and conformance
11 Five Viewpoints Information Computational Enterprise Engineering TargetEnterpriseInformationEngineeringTechnologyComputational
12 Five Viewpoints Viewpoint specification for each viewpoint For one target system, at most five set of viewpoint specifications will be developedThose five set of specifications have correspondence among them, because those are the descriptions of the same target system (descriptions just from different viewpoints)
13 Application of viewpoints Can start with any viewpoint, but it would be enterprise viewpoint if top-down approach for thinking and design is taken.Can apply at any granularity levelFor instance, at the level of: International industry systems→ National industry systems→ Participating company’s system→ Customer management system within company’s system→ Security systems→ Biomedical authentication system within security system→ …Therefore it is import to clarify which target you are specifying.
14 Application at various levels International industry consortium systemsParticipating company’s systemCustomer management systemWithin a participating companyRefinement
15 Application of viewpoints What is defined and NOT defined in RM-ODP Viewpoint Language:DefinedVocabulary to define viewpoint specificationsStructuring rulesNOT definedNotation: Could be text or any language or technique like FDT, UML, etc.Process or methodology: Could be anything.This is the reason we are working on the guideline
16 What does it look like?Take an example of basic model for Web ServicesWeb Services UserWeb Services ProviderWeb Services Trader （Registry like UDDI and ebXML’s)Web ServicesTraderCommon diagram used to explainLookupRegisterWeb ServicesUserWeb ServicesProviderUse
17 What does it look like? Enterprise Viewpoint Model Community: Web Services Community- Target domain, ObjectiveRoles/Objects – Participants in the communityWeb Services TraderWeb Services ProviderWeb Services UserWeb Services Trader AdministratorWeb Services DescriptionBehaviorWeb Services exportWeb Services importPolicy – Constraints and rulesWeb Services Export PolicyWeb Services Import Policy etc.
18 What does it look like? Information Viewpoint Model Information element examplesWeb Services TypeWeb Services Description…Invariant schema example for Web Services systemWeb Services Description is uniquely identifiableDynamic schema exampleState transition of information elements within Web Services TraderStatic schema exampleInitial state for Web Services Trader
19 What does it look like? Computational Viewpoint Model Component exampleLookupRegisterLinkProxyAdminWeb ServicesTrader ComponentInterfaces defined with IDL
20 What does it look like? Engineering Viewpoint Model Internet/Web Services InfrastructureDistributed Object style communicationSOAP/XMLDistributed or federated namingVarious interceptorssecuritymanagementIntra Enterprise CORBA InfrastructureCORBA CoreCORBA NamingCORBA Trading
21 What does it look like? Technology Viewpoint Model Internet RDBWeb ServicesTrader on UnixFirewallFrontEndWeb AppFirewallInternetStand-ByApp ServerWeb Server(Windows)FirewallIntra-netTPMonitorIntra-netWSDL WrapperClientService Functions（Legacy App）Web Services ProviderWeb Services User
22 Systems to be built? If the target is to develop new system: Five viewpoints applied to entire target systemIf the target is to integrate existing systems:Five viewpoints applied to each of the existing systems (legacy systems)Try to think of integration at the same granularity level
23 New System Model or Specification System X RefinementsEnterprise ViewInformation ViewComputational ViewEngineering ViewTechnology ViewDivide and conquer with standard five viewpointsSystem X
24 System Integration System A System B Think at the same granularity levelrefinementsEnterprise ViewInformation ViewComputational ViewEngineering ViewTechnology ViewSystem ASystem B
25 UML Profile for EDOC EDOC UML UML Profile UML Profile for EDOC Enterprise Distributed Object ComputingRM-ODP applied to enterprise systemsUMLUnified Modeling Language（OMG）UML ProfileCustomized UML for specific domainsUML Profile for EDOCUML customized for enterprise systems based on RM-ODP framework
26 Added value to RM-ODP In addition to “divide and conquer,” Since viewpoint description will be in UML,More precise description will be possible,A variety of UML tools become available for model based system developments (e.g. use of stereotype etc.), andDepending on functions provided by tools:Skeleton code may be generated from UML modelsFast path to system development with tool-integrated IDEOne realization of OMG MDA
27 Structure of UML Profile for EDOC Composed of the following sub-profilesComponent Collaboration Architecture (CCA)Entity ProfileEvent ProfileBusiness Process ProfileRelationship ProfilePattern Profile
28 Structure of UML Profile for EDOC Enterprise viewpoint(CCA, Processes, Entities, Relationships, Events)Part I:EnterpriseCollaborationArchitecture(ECA)Information viewpointComputational viewpoint(Entities, Relationships)(CCA, Entities, Events)Engineering viewpointPart II:TechnologyMappingsPart I: TechnologySpecificModels(Technology abstraction: FCM)Technology viewpoint(UML for J2EE/EJB/JMS, CORBA 3/CCM, COM, SOAP, ebXML)Part I: Pattern can be applied to all viewpoints
29 A ProjectA joint project experimentally utilizing RM-ODP and UML Profile for EDOC is underway.Dealing with Healthcare areaFeedback is expected from participation/experienceThe guide is also “work in progress” for revision to reflect the feedback
30 A Sample Process of Viewpoint Specification Development World of RM-ODPWorld of UML Profile for EDOCEnterpriseEnterpriseInformationInformationComputationalComputationalFocusof ourcurrentworkEngineeringEngineeringTechnologyTechnology