Application of SHAPE Technologies in Production and Process Optimization IESA 2010 Workshop Use of MDI/SOA concepts in Industry Brian Elvesæter1, Arne-Jørgen Berre1 and Einar Landre2 1 SINTEF ICT, P. O. Box 124 Blindern, N-0314 Oslo, Norway 2 Statoil, Forusbeen 50, N-4035 Stavanger, Norway ICT Presentation Outline SHAPE FP7 Project Solution Overview SoaML Solution Matrix Methodology Framework Statoil Case Study Business Context Use Case Challenges Application of SHAPE Technologies Questions ICT SHAPE FP7 Project Project acronym SHAPE Objective Develop an infrastructure for model-driven engineering for service-oriented landscapes with support for various technology platforms and extensions for advanced service provision and consumption techniques. Project full title Semantically-enabled Heterogeneous Service Architecture and Platforms Engineering Grant agreement number ICT-2007-216408 Website http://www.shape-project.eu/ Duration 30 months Dec 2008 – June 2010 Partners SINTEF (Norway) ESI (Spain) SAP AG (Germany) SOFTEAM (France) UIBK (Austria) DFKI (Germany) Statoil (Norway) Saarstahl (Germany) ICT SHAPE Solution Overview The technologies developed in the project are centred around SoaML Metamodel for describing serviceoriented landscapes that is standardized in OMG. SoaML is extended with metamodels for Flexible Business Modelling BPMN other technology platforms advanced service engineering techniques EPC … BMM SHA-ML Core Business Models PIM System Models Service Variability SoaML PIM4 SWS CIM P2P/Grid/ Components/… PIM4 Agents PIMsfor different Architectural Styles The project provides integrated tool suite that supports the modelling encompasses the necessary model transformations methodology framework that provides role-specific guided procedures for creating all model types and supports the creation of customized methodologies for individual engineering projects WSDL, WSMO, OWLS, JACK, JADE, JXTA, OGSA, CORBA, … J2EE, NetWeaver, .Net, … ICT PSM Implementation Models Execution Environments SoaML Service oriented architecture Modeling Language (SoaML) Extensions to UML2.1 to support service concepts. SoaML focuses on the basic service modelling concepts. A foundation for further extensions both related to integration with other OMG metamodels like BPMN 2.0, SBVR, OSM, ODM and others. Website: http://www.soaml.org Capabilities: identifying services specifying services defining service consumers and providers policies for using and providing services. defining classification schemes defining service and service usage requirements and linking them to related OMG metamodels, such as the BMM and BPMN 2.0. ICT SHAPE Solution Matrix MDE Infrastructure Technological Innovations MetaModels Model Transformations SHAPE Tool Suite SHAPE Methodology 1 Flexible Business Modelling BPMN, EPC Data, Org., Rules BMM, Ontologies CIM->CIM (mult.) CIM -> PIM (mult.) CIMFlex Modelio CIMFlex Modeling BPMN + UML Ontology Engin. 2 Service & SOA Modelling SoaML SoaML -> WS SoaML -> JEE Modelio Composition Studio SoaML & WS Modelling 3 Integration of Agent Technology SHAML – Agent Extension SoaML -> PIM4Agents PIm4Agents -> PSM 4 Integration of SWS Technologies SHAML – SWS Extension SoaML-> SWSPim SWSPim -> WSMO WSMT 5 Service Customization Service Variability Metamodel SoaML-> SV-Spec. SV-Res. -> Soaml Service Variability Tools Agent Modelling PIM4Agents (PIM ->PIM2PSM->PSM) SWS Modelling (PIM ->PIM2PSM->PSM) ICT Service Variability Modelling & Variant Creation SHAPE Methodology Framework Methods provide structured guidance. A matrix structure for organizing the methodology content. Partial processes that define suitable engineering procedures. Use and extend the Eclipse Process Framework (EPF). ICT Business Context Statoil is an integrated technologybased international energy company primarily focused on upstream oil and gas operations. The oil and gas industry need to improve operational efficiency. The Norwegian Oil Industry Association (OLF) has defined the term Integrated Operations (IO) as “real time data onshore from offshore fields and new integrated work processes” . increased exchange of information across geographical and organizational boundaries, internally and externally. drive for new IT solutions For this information exchange to be successful, good interoperable IT solutions and standards are needed. With Integrated Operations the need for standards are revitalized and changed. The focus now is implementation of IO generation 1 solutions and strategic planning of IO generation 2 solutions. Generation 1 activities focus on integration across onshore and offshore, while generation 2 activities focus on integration across companies. ICT Use Case Challenges Production and Process Optimization (PPO) Use case within Integrated Operations Business and SoaML Modelling 1. Enable integrated and comprehensive modelling of the business processes. 2. Design services for enabling the consistent and automated information exchange among the various IT systems. Service Variability 3. Enable system integration via central services using simplified variants that allow an easy usage and integration. Semantic Web Services 4. Handle the integration of the often incompatible information and data structures used within the various production systems. ICT Application of SHAPE Technologies Method Engineer Define the business architecture for PPO 1 Define the 0 methodology for the use case Specify the service-oriented architecture for PPO 2 3 Define service variability (4) and semantic web service (5) for PRODML subset 4 SHAPE Methodology Tool ICT Business Architect System Architect System Developer 0 Define Methodology Business challenge Methodological support for service and system engineering Provide guidance for the various roles Adaptable to individual scenarios Tool suite steps Methodology configuration wizard Role Method Engineer SHAPE technologies SHAPE Methodology Customization Tool Custom delivery process Publish methodology website ICT 1 Business Modelling Business challenge Tool suite steps Enable integrated and comprehensive modelling of the business processes. Derive and specify IT requirements/services that aligns with the business models Role BMM modelling <<part>> Improved reservoir management Optimize intelligent wells <<part>> <<+influence>> Optimize reservoir performance <<part>> Production optimization Optimize process facilitites <<part>> Optimize production network BPMN modelling Business Architect SHAPE technologies CIMFlex Modelio ICT 2 Service Modelling (1/2) Business challenge Tool suite steps Specify and design new Services Architecture Network of participant roles providing and consuming services to fulfil a purpose. services for PPO Modernise/wrap existing services using standards such as PRODML <<ServicesArchitecture>> C ontinuousProductionOptimization Role System Architect :He adO fO pe rations SHAPE technologies SoaML Modelio iaatal:Im ple m e ntActionsAccordingToActionList :DPO Gro up dpm ao:De taile dProductionMonitoringAndO ptim izatio n :O PSLe a de r :PO GCo ordinator cpi:C onductPO GInte raction coordinator rsado a:R e vie wSugge stionsAndDe cide O nActions opf:O ptim ize Proce ssFacility facility :Proce ssEngine e r ICT 2 Service Modelling (2/2) Tool suite steps (cont.) Tool suite steps (cont.) Service contracts/interfaces Defines the terms, conditions, interfaces and choreography. Operation signatures Message types <<interface, SOAML.ServiceInterface>> PROD_ProductVolumeSoap GetDataSync(in Pa ram eter : PR OD_Pro ductVolum eSoap_GetDataSyncType):PR OD_Pro ductVolum eSoap_GetDataSyncResp onseTyp e GetDataAsyncInitiate(in Param eter : PRO D_ProductVo lum eSo ap_GetDa taAsyncInitia teT ype):GetDataAsyncInitiateRe sponseT ype GetDataAsyncStatus(in Param eter : Ge tData AsyncStatusType):GetDa taAsyncStatusResponseType GetDataAsyncCo ntrol(in Param eter : GetDa taAsyncControlT ype):GetDataAsyncC ontro lRe sponseTyp e GetDataAsyncRe sults(in Param eter : Ge tData AsyncResultsType):PRO D_ProductVo lum eSo ap_GetDa ta AsyncResultsResponseType GiveData(in Param eter : PRO D_ProductVolum eSoa p_GiveDataTyp e):GiveDataResponseType <<ServiceC ontract>> OptimizeProcessFacility GetServiceInfo(in Param eter : Ge tSe rviceInfo Type):GetService InfoR esponse Type GetSupportedPatterns(in Param eter : GetSup ported Patte rnsT ype):PRO D_ProductVolum eSoap _GetSupp ortedP atternsRe sponseT ype <<SOAML.MessageType>> PROD_ProductVolumeSoap_GetDataSyncType coordina tor:Proce ssC oordina tor obj_productVolumes <<query>> produc tV olumeQ uerySet 0 ..1 Op tions : O ptions productVolumes 0..1 <<SOAML.MessageType>> <<query>> PROD_ProductVolumeSoap_GetDataAsyncInitiateType productVolumeQuerySet proce ssFa cility:Proce ssFa cility <<SOAML.MessageType>> PROD_ProductVolumeSoap_GetDataSyncResponseType 0..1 versio n : schem aVe rsionStringP ro dm l productVolumes <<SOAML.MessageType>> PROD_ProductVolumeSoap_GetDataAsyncResultsResponseType 0..1 O ptio ns : Op tions 0 ..1 <<interface>> ProcessCoordinator cs_customData <<ServiceInterface>> OptimizeProcessFacilityInterface coordina tor:Proce ssC oordinator Confirm a tion() facility:ProcessFacility 0..1 obj_productVolume c us tomD ata cs_commonData uid : uidString na m e : nam eStruct 0 ..1 c ommonD ata * documentInfo cs_documentInfoProdml FileC re ationInform ation : fileC re ationType securityInform ation : SecurityInfo TypeProdm l AuditTrail : aud itType produc tV olume sourceNam e : nam eString dTim Creatio n : tim estam p grp_productVolume com m ents : com m entString 0 ..1 k ind : k ind String is s uedBy p e riodKind : R eporting Pe riod d Tim Start : tim esta m p 0 ..1 d Tim End : tim esta m p d ate Sta rt : date approver 0 ..1 d ate End : date d Tim Min : e ndpointQua lifiedDa teT im e cs_generalAddress k ind : Add re s sKind Enum uid : uidString nam e : nam eString conta ctPreference[*] : Conta ctPreference a ssociatedW ith : re fNa m e String addres s * stree t[1..4] : nam eString city : nam eString state : nam eString province : nam eString county : nam e String country : nam eString postalCode : k indString cs_geographicContext country : nam eString state : nam eString 0 ..1 0..1 1..* facility cs_offshoreLocation offs horeL oc ation 0 ..1 are aNam e : na m e String field : nam eStruct block ID[1..4] : nam e String com m ent : com m entString co m m ent : com m entString cs_productVolumeFacility cs_datedComment uid : uid String who : nam eString c omment * parameterSet nam e : facilityIdentifierStruct downtimeReas on facilityP are nt1 : fa cilityId entifie rStruct facilityP are nt2 : fa cilityId entifie rStruct ro le : k indString * dTim Start : tim estam p dTim End : tim estam p c omment re m a rk : co m m entString c omment 1 uid : uidString * facilityAlias : nam eStruct unit : refNam eString network : refNam eString conte x tFa cility : fa cilityId entifie rStruct * 0..1 * parentfacility : refNam eString ProcessCoordinator s ourc eFlow 0 ..1 subQ ualifier : FlowSub Qualifier version : tim estam p portD iff versionSource : nam eString 0 ..1 nam e : facilityIdentifierStruct facilityP are nt1 : fa cilityId entifie rStruct facilityP are nt2 : fa cilityId entifie rStruct k ind : Repo rtingFacility p ort : refNam eString unit : refNam eString network : refNam eString sourceFlo w : refNam eString gor : volum ePerVolum eMe asure gorMTD : volum ePerVolum eMe asure waterConcMass : m assCo ncentra tionMeasure cho k eSize : le ngthMea sure cho k eRelative : leng thPerLengthMe asure cs_productVolumeProduct <<Participant>> ProcessEngineer * p resDiff : pressureMea sure tem pDiff : the rm odynam icTem pe ratureMeasure waterConcVo l : volum ePerVolum eMeasure atm o sphere : pressureMeasure * 0..1 te m p : the rm o dynam icTe m p e ratureMeasure pres : pressureMeasure absoluteMinPres : pressureMeasure product k ind : R eporting Pro duct cs_productVolumeRelatedFacility relatedFac ility fa cilityAlias[*] : nam eStruct qualifie r : FlowQ ualifie r uid : uidString p ort : refNam eString uid : uidString qua dra nt : nam eString block Suffix : str2 uid : uid String nam e : nam eString direction : ProductionFlowP ortTyp e fa cility : facilityIdentifie rStruct cap acity : volum eMe asure o perationT im e : tim eMeasure northSeaO ffs hore cs_northSeaOffshore areaNa m e : nam eString cs_productVolumeFlow k ind : Re portingFlow port : re fNa m e String wellProducing : logicalBoolean wellInje cting : logicalBoolean * cs_productVolumeParameterSet flow cs_productVolumePortDifference cs_volumeValue vo lum e : vo lum eQ ualifie dMea sure tem p : therm odynam icTem peratureMeasure p res : pre ssureMea sure volumeV alue na m e : nam eStruct splitFactor : nonNegativeFractio n period rvp : pressureMeasure tvp : pressureMeasure 0..1 bsw : volum ePerVolum eMea sure bswPre vious : volum e PerVolum eMea sure de nsity : de nsityMe asure de nsityStd : de nsityMe asure 1..* * c omponentC ontent * c omponentC ontent cs_productVolumeComponentContent sg : dim ensionlessMeasure ProcessFacility suffix [0..9] : nam eString e m a il[*] : em ailQualifierStruct geographic C ontext stand ard Tem pPres : Stand ard Tem pPress cs_refProductFlow ProcessFacility 0 ..1 a lias[*] : nam eStruct p honeNum ber[*] : phoneNum berStruct com m ent : com m entString a pprovalDate : date p rod uctFlowModel : re fNam eString refe rence dFlo w : refNam eString :O ptim ize Proce ssFacilityInte rface last : nam eString nam e : nam eString role[1..*] : nam eStruct title : nam eStruct issueDate : date Participants Represent organizational units or system components. first : nam eString m iddle : nam eString uid : uidString conta ct[*] : refNam eString p erso nnelCount : nonNega tiveCo unt calcula tionMethod : Ca lculationMethod :O ptim ize Proce ssFacilityInte rface cs_businessAssociate operator installation : fa cilityId entifie rStruct contex tFacility[*] : facilityIde ntifierStruct C hok eP ositions() prefix : nam eString pers onN ame d Tim Max : end pointQ ualifie dDateTim e d Tim Current : tim estam p <<Participant>> POGCoordinator cs_personName Q ueryParam : que ryPa ram dTim LastChange : tim estam p item State : Item State Actions() ProcessCoordinator <<SOAML.MessageType>> PROD_ProductVolumeSoap_GetSupportedPatternsResponseType produc tV olumeQ uerySet 0 ..1 0 ..1 any[*] : x s:anyType <<interface>> ProcessFacility produc tV olumes <<SOAML.MessageType>> PROD_ProductVolumeSoap_GiveDataType hcDewpoint : therm o dynam icTe m peratureMeasure wa terDe wpoint : therm od ynam icTe m p era tureMeasure wo bbeInde x : m odulusOfCo m p re ssionMeasure grossC alo rificValueStd : m odulusO fC om pressionMeas ure rvpStabilizedC rud e : pressureMeasure bswSta bilize dCrude : vo lum ePe rVolum eMeasure de nsityStabilizedCrude : densityMeasure dTim : tim e stam p date : date dTim Start : tim estam p dTim End : tim estam p uid : uidString k ind : Repo rtingProduct dateStart : da te dateEnd : da te referenceKind : R eportingP ro duct volum e : volum eQ ualifiedMe asure d e nsity : d e nsityMe asure d ensityFlowRa te : m a ssFlowRateMe asure volum eStd : volum e QualifiedMe asure flowRa te : volum eFlowR ateQua lifiedMeasure d e nsityStd : d e nsityMe asure conce ntration : volum ePerVolum eMeasure tem p : the rm odynam icTem pe ratureQ ualified Measure pre s : pressureQua lifiedMeasure m oleAm t : am ountO fSubstanceMeasure m a ss : m assMea sure work : work Measure efficiency : volum ePe rVo lum eMeasure m o leAm t : am ountO fSubstanceMeasure ICT 0 ..1 cs_productVolumePeriod uid : uidString k ind : Repo rtingPerio d cs_productVolumeAlert alert 0 ..1 ta rge t : com m entString leve l : k indString typ e : k indString descriptio n : com m entString 3 Define service variability Business challenge Exists legacy systems with complex interfaces. Want to integrate these using simplified service variants. Want to make use of industry standards (complex). Only want to use suitable subset of standards. Tool suite steps Import the SoaML model Specify the service variant Specify the service resolution Export the service variant <<interface, SOAML.ServiceInterface>> PROD_ProductVolumeSoap_SimpleVariant Ge tDa ta Sync(in P a ra m ete r : PR O D_Ge tDa ta SyncType _Sim ple Va riant):P R OD_Ge tDa ta SyncR e sponse Type _Simple Va riant Give Da ta(in P a ra m e te r : P R O D_Give Da ta Type _Sim ple Va riant):Give Da ta Re spo nse Type Ge tSuppo rte dP atte rns(in P a ram e te r : Ge tSuppo rte dP a tte rnsType ):P R O D_Ge tSuppo rte dP a tte rnsR e sponse Type _Sim ple Va riant obj_productVolumes <<query>> productVolumeQuerySet <<SOAML.MessageType>> PROD_GetDataSyncType_SimpleVariant cs_customData versio n : sche m aVe rsio nStringPro dm l uid : uidString na me : nam e Struct 0 ..1 c ommonD ata * documentInfo cs_documentInfoProdml FileC re a tionInfo rma tio n : file C rea tio nType se curityInfo rm a tion : Se curityInfo Type Pro dm l produc tV olume cs_personName AuditTra il : a uditType so urce Nam e : na m e String dTim C rea tio n : tim e stam p Q ueryP a ram : que ryP a ram pre fix : na m e String first : na m e String dTim La stC ha nge : time sta m p ite m Sta te : Ite mSta te co m m e nts : co mm e ntString cs_businessAssociate operator 0 ..1 conte x tFa cility[*] : fa cilityIde ntifie rStruct kind : k indString is s uedB y 0 ..1 dTim Sta rt : tim esta m p dTim End : tim esta m p Role approver da te Sta rt : da te da te End : da te 0 ..1 dTim Min : e ndpo intQ ualifie dDa te Time cs_generalAddress ro le [1..*] : na me Struct alia s[*] : na me Struct pho ne Num be r[*] : pho ne Numbe rStruct k ind : Addre ssKindEnum uid : uidString em a il[*] : e m ailQ ua lifie rStruct na m e : na m eString stre e t[1..4] : na m e String co nta ctPre fe re nce [*] : C o ntactP re fe re nce asso cia te dW ith : re fNam e String addres s pe rso nne lC o unt : no nNe ga tive C o unt co m m e nt : co mm e ntString calcula tionMe thod : C alcula tionMe thod la st : na m e String suffix [0..9] : na m e String 0 ..1 uid : uidString na m e : na m e String co nta ct[*] : re fNa m e String dTim Ma x : e ndpo intQ ua lifie dDa te Time dTim C urre nt : tim e sta mp * city : na m e String sta te : na m e String pro vince : na me String co unty : na m eString co untry : na me String po sta lCo de : k indString title : nam e Struct issue Da te : da te appro va lDa te : da te pro ductFlo wMo de l : re fNa m e String sta nda rdTe m pPre s : Sta nda rdTe m pPre ss System Developer m iddle : na m eString pers onName grp_productVolume insta lla tio n : fa cilityIdentifie rStruct pe rio dKind : R epo rtingP e rio d cs_geographicContext geographic C ontext country : na m e String 0..1 0..1 state : nam e String field : na me Struct 1..* facility com m e nt : co m me ntString cs_offshoreLocation offs horeL oc ation 0 ..1 a re aNa m e : na m eString blo ck ID[1..4] : nam e String co mm e nt : co m m entString cs_productVolumeFacility cs_datedComment uid : uidString c omment * * downtimeReas on who : na me String ro le : k indString * dTim Sta rt : tim e sta m p c omment dTim End : tim e sta m p re ma rk : co m m e ntString 1 uid : uidString na m e : fa cilityIde ntifie rStruct parameterS et fa cilityP a re nt2 : fa cilityIde ntifie rStruct fa cilityAlia s : na m e Struct unit : re fNa me String SHAPE technologies * ne two rk : re fNa m e String co nte xtFa cility : fa cilityIde ntifie rStruct * re fe re nce dFlow : re fNa m e String pa re ntfa cility : re fNa me String s ourc eF low 0 ..1 portD iff unit : re fNam e String ne two rk : re fNa m eString so urce Flo w : refNa m eString wa te rC oncVo l : vo lume P e rVolum e Mea sure a tm o sphe re : pre ssure Me a sure 0..1 product te m p : the rm odyna micTe m pe ra tureMe a sure pre s : pre ssureMe a sure a bso lute MinP res : pressure Me a sure cs_volumeValue vo lum e : vo lum e Q ualifie dMea sure te m p : the rm odyna micTe m pe ra tureMe a sure pre s : pre ssure Me a sure volumeV alue period 0..1 bswP re vio us : vo lume P e rVolum e Me a sure de nsity : de nsityMea sure de nsityStd : de nsityMe a sure sg : dim e nsio nle ssMe a sure hcDe wpo int : the rm odyna micTe m pe ra tureMe a sure wa te rDe wpo int : therm o dyna m icTem pe rature Me asure wo bbeInde x : m o dulusO fCo m pre ssio nMea sure gro ssC a lo rificVa lue Std : m odulusOfC o m pre ssio nMe a sure rvpStabilize dC rude : pre ssure Me asure bswSta bilize dC rude : vo lume P e rVolum e Me a sure de nsitySta bilize dC rude : densityMe a sure 1..* * c omponentC ontent * c omponentC ontent cs_productVolumeComponentContent dTim : tim esta m p da te : da te dTimSta rt : tim e stam p dTimEnd : tim e sta mp uid : uidString k ind : R e portingP roduct da te Sta rt : da te da te End : date re fe re nce Kind : R epo rtingPro duct de nsity : densityMea sure vo lume : volum e Q ua lifie dMe a sure vo lume Std : vo lume Q ua lifie dMe asure de nsityFlo wRa te : ma ssFlowR a te Me a sure flo wRa te : vo lum e Flo wR a teQ ua lifie dMe a sure de nsityStd : de nsityMe a sure co nce ntra tion : vo lum e P e rVo lum eMe a sure te m p : the rmo dynam icTe mpe ra ture Q ua lifie dMea sure pre s : pre ssure Q ualifie dMea sure m o leAm t : am o untO fSubsta nce Me a sure m a ss : m a ssMe a sure m o leAm t : am o untO fSubsta nce Mea sure Import into Modelio Generate the WSDL 0 ..1 cs_productVolumePeriod uid : uidString k ind : R e portingP e rio d wo rk : wo rk Me a sure e fficiency : vo lum e Pe rVo lum e Me asure ICT k ind : R e po rtingFacility po rt : re fNam e String wa te rC oncMa ss : m a ssC o ncentra tio nMe a sure * na m e : na me Struct splitFa cto r : no nNe ga tive Fractio n tvp : pre ssure Me a sure bsw : vo lum eP e rVo lum e Mea sure fa cilityP a rent2 : facilityIdentifie rStruct ve rsio n : tim e sta m p ve rsio nSo urce : na m eString go r : volum e Pe rVo lume Me a sure go rMTD : vo lume P e rVo lum e Me a sure chok e R e lative : lengthP erLe ngthMe a sure rvp : pre ssure Me a sure na me : fa cilityIdentifie rStruct fa cilityP a rent1 : facilityIdentifie rStruct 0 ..1 subQ ualifie r : Flo wSubQ ua lifie r te mpDiff : the rm odyna micTe m pe ra tureMe a sure chok e Size : le ngthMe a sure k ind : R e po rtingP roduct cs_productVolumeRelatedFacility relatedF ac ility fa cilityAlia s[*] : na m eStruct qua lifier : Flo wQ ua lifier * presDiff : pre ssure Me a sure cs_productVolumeProduct na m e : na m e String k ind : Re po rtingFlo w dire ction : P ro ductio nFlo wP o rtType fa cility : fa cilityIde ntifie rStruct cs_productVolumePortDifference uid : uidString po rt : re fNa m e String uid : uidString qua dra nt : na m e String blo ckSuffix : str2 uid : uidString po rt : re fNa m eString o pe ra tio nTime : tim eMe a sure northS eaO ffs hore cs_northSeaOffshore a re aNa m e : na m e String cs_productVolumeFlow flow 0..1 we llInje cting : lo gica lBo o le an ca pa city : vo lum e Mea sure cs_refProductFlow cs_productVolumeParameterSet * fa cilityP a re nt1 : fa cilityIde ntifie rStruct we llP roducing : lo gicalBo o le an c omment Service Variability Tool Modelio <<SOAML.MessageType>> PROD_GetSupportedPatternsResponseType_SimpleVariant productV olumeQ uerySet <<query>> 0..1 obj_productVolume c us tomD ata cs_commonData <<SOAML.MessageType>> PROD_GetDataSyncResponseType_SimpleVariant 0..1 0 ..1 0..1 0 ..1 any[*] : x s:a nyType 0..1 productVolumes 0..1 produc tV olumes <<SOAML.MessageType>> PROD_GiveDataType_SimpleVariant cs_productVolumeAlert alert 0 ..1 ta rge t : com m e ntString le vel : k indString type : k indString de scriptio n : co mm e ntString 4 Define Semantic Web Services Business challenge Dynamic service request (based on goals) Information mapping between different data formats and structures EC legacy system with approved Well Test data IFM legacy system with estimated Well Test data Use PRODML WellTest subset Tool suite steps Define ontologies Transform to WSML Refine WSML Role System Developer SHAPE technologies Modelio with SoaML4SWS WSMT WSMX ICT Evaluation of Results In the progress of writing up the final validation report. Statoil participates in research projects such as a SHAPE as part of a technology feasibility study in order to experiment with and evaluate new technology and methodological approaches. The evaluation will provide an input to future strategic decision regarding technology and methodology choices. Initial conclusions The SHAPE results (languages, tools and methods) do provide the main concepts and support for constructing business and service models. Business and SoaML modelling Service Variability Semantic Web Services Methodology improvement areas Too “technology-driven” (CIM, PIM, and PSM) – should be more focused on users (roles and tasks) Improve methodology website/navigation structure for users Some guidelines need revision (BPMN 2.0, aligned with latest changes of SoaML) Further illustrative examples. Tool suite improvement areas Usability issues Integration issues ICT Thanks for your attention! Questions? ICT