development framework for service-oriented application

41
Development Framework for Development Framework for Service-Oriented Service-Oriented Application Instrumentation Application Instrumentation and SAP R/3 Model and SAP R/3 Model Andreas Köppel University of Karlsruhe, Germany [email protected] Application Management Starts at the Application Developer!

Upload: others

Post on 17-Feb-2022

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Development Framework for Service-Oriented Application

Development Framework forDevelopment Framework forService-OrientedService-Oriented

Application InstrumentationApplication Instrumentationand SAP R/3 Modeland SAP R/3 Model

Andreas KöppelUniversity of Karlsruhe, Germany

[email protected]

Application Management Starts at the Application Developer!

Page 2: Development Framework for Service-Oriented Application

DMTF 2001 Developers' Conference June 11-13, 2001 Page 2

RoadmapRoadmap

• Application Management• Framework

– Model Requirements– Model Design– Provider Implementation

• SAP Model– Systems– Landscapes

Page 3: Development Framework for Service-Oriented Application

DMTF 2001 Developers' Conference June 11-13, 2001 Page 3

RoadmapRoadmap

• Application Management• Framework

– Model Requirements– Model Design– Provider Implementation

• SAP Model– Systems– Landscapes

Page 4: Development Framework for Service-Oriented Application

DMTF 2001 Developers' Conference June 11-13, 2001 Page 4

ScenarioScenario: SAP R/3 (I): SAP R/3 (I)

Presentation

Internet

Application

Database

Web-clients

Web Server Internet Transaction

Server (ITS)

Database

App-Server

. . .Web-

clientsClient Client

CreateProduction

Orders

ReleaseProduction

Orders

ScheduleProduction

Accept Customer

Order

ConfirmDelivery

BuildProducts

ExplodeBill -of-Material

ReserveMaterial

CustomerService

Rep

PlantPersonnel

ProductionOrder

CustomerOrder

Part Material Task

App-Server App-Server

Layer 3-tier Multi-tier

System

Page 5: Development Framework for Service-Oriented Application

DMTF 2001 Developers' Conference June 11-13, 2001 Page 5

ScenarioScenario: SAP R/3 (II): SAP R/3 (II)

Developer

Company boundary

Computing Center

Operator

SAP Customer

User

Server Client

Software (R/3)

Company boundary(eventually)

R/3 Basis Development

Regional Support

Page 6: Development Framework for Service-Oriented Application

DMTF 2001 Developers' Conference June 11-13, 2001 Page 6

FCAPSFCAPS

• Configuration mgmt incl. software distribution(installation)

• Accounting incl. software asset mgmt and softwarelicense mgmt

• Security mgmt including virus protection

Application

Accounting Performance Security

Fault Configuration

Page 7: Development Framework for Service-Oriented Application

DMTF 2001 Developers' Conference June 11-13, 2001 Page 7

LifecycleLifecycle

Particularly important: Running,Executable= Operation

Deployable Executable RunningInstallable

Page 8: Development Framework for Service-Oriented Application

DMTF 2001 Developers' Conference June 11-13, 2001 Page 8

ServiceService Level LevelManagementManagement

SLM widens the management context of theapplication.

Service

Application

Implementation

Analysis

Control

MeasurementReporting

SLA

defines

influences

AvailabilityPerformance(Throughput,

Response Time)Recoverability

Page 9: Development Framework for Service-Oriented Application

DMTF 2001 Developers' Conference June 11-13, 2001 Page 9

RoadmapRoadmap

• Application Management• Framework

– Model Requirements– Model Design– Provider Implementation

• SAP Model– Systems– Landscapes

Page 10: Development Framework for Service-Oriented Application

DMTF 2001 Developers' Conference June 11-13, 2001 Page 10

Goal (I)Goal (I)

Agent (Provider)

Mgmt ContextOriented

Meldungen

Operationen

Application= Resource

Workflows

Instrumentation

SLA Support

ResourceOriented

Development Framework

• standard-based

• model-based

supports user at the development of

Page 11: Development Framework for Service-Oriented Application

DMTF 2001 Developers' Conference June 11-13, 2001 Page 11

Goal (II)Goal (II)

CIMOM

CIMRepository

access

Provider(s)

state

keys

configuration

performance

events

methods

associations

Application

inter-operate

integrate

Model

instantiate

store

ManagementApplication

access

ModelDocumentation

explain

history

Page 12: Development Framework for Service-Oriented Application

DMTF 2001 Developers' Conference June 11-13, 2001 Page 12

ArchitectureArchitecture

Developer's View

AM starts at the application developer!

Development Framework

Concepts(Req. Eng.)

Integration(SW Design)

ImplementationSupport

CCWorkflows

SLA Support

Instrumen-tation

ProjectsRequirementsAM, SLM

App Models

Tool Kit

Modules

Page 13: Development Framework for Service-Oriented Application

DMTF 2001 Developers' Conference June 11-13, 2001 Page 13

SubSub-Models-Models

initiallife cycle

deployable installable executable runningappstatus

multiplicity

sub-model

1:n 1:n 1:n

transportsetup

installation

runtime model

expectedexpected+

running

expected = configuration-derived: topology, dependencies, keys, status (no contact/lost comm)

availabilitythroughput

response timenumber of users

SLA support

Page 14: Development Framework for Service-Oriented Application

DMTF 2001 Developers' Conference June 11-13, 2001 Page 14

Run-Run-TimeTime Model Model

initiallife cycle

executable runningappstatussub-model

installation

runtime modelfunctionalsystemsstructural

data/dataflow

external systemslandscapes

workflow = default+rollback+exception

best practices (tasks):routine (daily/weekly/...)

configurationanalysis

workflows

registrationconfigurationindications

history

methods

Page 15: Development Framework for Service-Oriented Application

DMTF 2001 Developers' Conference June 11-13, 2001 Page 15

HierarchiesHierarchiesGenerally, top classes are CIM_System.• Structural containment hierarchy (explicit)• Functional containment hierarchy (explicit)• Inheritance hierarchy (explicit)• Status aggregation hierarchy (implicit)• Performance aggregation hierarchy

(implicit)• Event aggregation hierarchy (implicit)• Configuration hierarchy (explicit)

Page 16: Development Framework for Service-Oriented Application

DMTF 2001 Developers' Conference June 11-13, 2001 Page 16

DesignDesign Tasks Tasks

• Create an initial model (implicit:load also)

• Modify the model• Explain the model (description

qualifier, instance models)• Simulate the model (static

instances, queries)• Design GUI of management

application

Page 17: Development Framework for Service-Oriented Application

DMTF 2001 Developers' Conference June 11-13, 2001 Page 17

Supporting ObjectsSupporting Objects

• Generic application model templates• Design patterns• Property patterns• Event templates

Page 18: Development Framework for Service-Oriented Application

DMTF 2001 Developers' Conference June 11-13, 2001 Page 18

Design SupportDesign SupportRepository Editor

Selection

visualrepresentation

textrepresentation

structuredrepresentation

visualisation data

Namespace

modelclasses

inheritedclasses

instances

File

instances

classes

coderepresentation

implementation code

Design PatternBrowser

Description Editor

Event ToolQuery Tool

BrowserNamespace Admin.

providercompilation

Page 19: Development Framework for Service-Oriented Application

DMTF 2001 Developers' Conference June 11-13, 2001 Page 19

Editor Programs

Design SupportDesign SupportImplementationImplementation

Repository

CIMModelread only

read only

SelectionManager Update (XML)

MOFXML

Visio

XSLTHTML

.vsd

MOF-XSLT Parser

LoadXML

SaveXML

CIM Portal(Design Pattern

Browser,Model Browser)

• least dev effort

• built on existing tools

• visual modeling

Page 20: Development Framework for Service-Oriented Application

DMTF 2001 Developers' Conference June 11-13, 2001 Page 20

PortalPortal

Page 21: Development Framework for Service-Oriented Application

DMTF 2001 Developers' Conference June 11-13, 2001 Page 21

ImplementationImplementation Tasks Tasks

• Design provider environment• Integrate the model in the provider code and the

application code• Write additional management code• Test the provider• Revise the GUI• Write additional management application code• Test the management application• Package provider, model, management application

Page 22: Development Framework for Service-Oriented Application

DMTF 2001 Developers' Conference June 11-13, 2001 Page 22

SupportSupport Objects Objects

• Provider data structure templates• Generic provider architecture templates• Code templates for certain classes and

property categories• Provider help classes (configuration file

access, log file access, scoped keysupport)

Page 23: Development Framework for Service-Oriented Application

DMTF 2001 Developers' Conference June 11-13, 2001 Page 23

ProviderProvider• Install/Uninstall with the application• Uptime is independent of the app• Access data instances in the app’s memory

asynchronously (instances of classes andproperties)

• Provide information asynchronously(indications)

• Incite code execution asynchronously(methods)

• Discriminate the context of the app’s data(associations and keys)

Page 24: Development Framework for Service-Oriented Application

DMTF 2001 Developers' Conference June 11-13, 2001 Page 24

App SystemTechnical EnvironmentTechnical Environment

Configuration

Process 1

Runtime Data

Process 2

Runtime Data

ProcessCIMOM

App Code on HD

Module A

Module B

Configuration

App Code on HD

Module C

Obj A1

Obj A2

Obj B1

Obj A3

computer system boundary

Provider(s)

Provider(s)

execute

execute

ProcessCIMOM

Process 1

Runtime Data

Obj C1

Obj C2

Page 25: Development Framework for Service-Oriented Application

DMTF 2001 Developers' Conference June 11-13, 2001 Page 25

RoadmapRoadmap

• Application Management• Framework

– Model Requirements– Model Design– Provider Implementation

• SAP Model– Systems– Landscapes

Page 26: Development Framework for Service-Oriented Application

DMTF 2001 Developers' Conference June 11-13, 2001 Page 26

SAP R/3SAP R/3 Architecture Architecture

Presentation

Internet

Application

Database

Web-clients

Web Server Internet Transaction

Server (ITS)

Database

App-Server

. . .Web-

clientsClient Client

CreateProduction

Orders

ReleaseProduction

Orders

ScheduleProduction

Accept Customer

Order

ConfirmDelivery

BuildProducts

ExplodeBill -of-Material

ReserveMaterial

CustomerService

Rep

PlantPersonnel

ProductionOrder

CustomerOrder

Part Material Task

App-Server App-Server

Layer 3-tier Multi-tier

System

Page 27: Development Framework for Service-Oriented Application

DMTF 2001 Developers' Conference June 11-13, 2001 Page 27

OverviewOverview

• SAP System Component Repository• Future: SAP Landscape Directory• Focus on systems and software features• SAP core model

Page 28: Development Framework for Service-Oriented Application

DMTF 2001 Developers' Conference June 11-13, 2001 Page 28

SystemsSystems

GroupComponent

PartComponent

*

1..*

DA_DSWSystemComponentSystem

GroupComponentPartComponent

11..*

DA_DASystemComponentLocalASystem

CIM_ApplicationSystem

{abstract}

DA_ApplicationSystem

DA_DistributedApplicationSystem

GroupComponentPartComponent

11..*

DA_DASystemComponentLASystem

DA_LogicalApplicationSystemDA_LocalApplicationSystem

{abstract}

DA_DistributedSoftwareSystem

• Systems: main building blocks of the model

Page 29: Development Framework for Service-Oriented Application

DMTF 2001 Developers' Conference June 11-13, 2001 Page 29

{sap_abstract}SAP_ApplicationSystem

11..* SAP_BCSystemClient

{sap_abstract}SAP_DistributedApplicationSystem

*

1..*

SA

P_D

AS

yste

mC

ompo

nent

Sys

tem

SAP_BCClientSAP_BCApplicationServer

11..*

SAP_BCSystemApplicationServer

CIM_ApplicationSystem

SAP_BCMessageServer

11..*

SAP_BCSystemMessageServer

SAP_BCSystem

SAP SystemsSAP Systems

DA_ApplicationSystem

DA_DistributedApplicationSystem

DA_LocalApplicationSystem

DA_LogicalApplicationSystem

Page 30: Development Framework for Service-Oriented Application

DMTF 2001 Developers' Conference June 11-13, 2001 Page 30

ExternalExternal Systems Systems

level 2blevel 2c

level 2a

level 1

CIM_System:ExtSystem

CIM_System:ExtSubSystem

ExtApplSystem

SWFeature

CIM_SWFeature:ExtSoftwareFeature

ExtApplSystem

SWFeatureCIM_Service:

ExtService

CIM_SAP:ExtSAP

ExtHostedAccessPoint

ExtHostedService

CIM_Product:ExtProduct

CIM_SWElement:ExtSWElement

ExtSWFeatureSWElements

ExtProductSoftwareFeatures

[ExternalView] class MyExternalClass: AnyClass {...};[Association, ToExternalView]class ExternalViewDependency: AnyAssociation {...};[Association, ToExternal]class ExternalDependency:CIM_LogicalIdentity {...};

ApplicationModel

ToExternalView

ExternalSystem

ToExternal

Page 31: Development Framework for Service-Oriented Application

DMTF 2001 Developers' Conference June 11-13, 2001 Page 31

SAPSAP External External Systems Systems

• Computer system, database, webserver

SAP_BCApplicationServer

SAP_BCSystem

MachineType: stringOpSys: stringOpSysRelease: stringOpSysValid: stringSAPVersionsSupported: stringIPAddress: string

{ExternalView}SAP_ComputerSystem Antecedent

Dependent1

*SAP_BCApplicationServerHost

DBInstanceName: string

{ExternalView}SAP_DatabaseInstance

GroupComponent

PartComponent 0..11

SAP_BCSystemDB

Antecedent

Dependent *1..* SAP_BCUsingDB

Antecedent

Dependent

1

*

SAP_DBHost

GroupComponent

PartComponent

1

1..*

SAP_DBSystemInstance

Manufacturer: stringOwner: stringRelease: stringDBSID: string

{ExternalView}

SAP_DatabaseSystem

SAP_BCMessageServerAntecedent Dependent1 *SAP_BCMessageServerHost

Page 32: Development Framework for Service-Oriented Application

DMTF 2001 Developers' Conference June 11-13, 2001 Page 32

SAPSAP Application Application Server Server

Number: string {MaxLen=2}AvailabilityMonitoringPolicy: stringInstanceProfileName: stringInstanceProfilePath: stringStartProfileName: stringStartProfilePath: stringHomeDirectory: string

SAP_BCApplicationServer

Release: stringPatchLevel: stringCompilationInfo: stringCompatibleDBSystemReleases[]: stringCompatibleBCSystemReleases[]: stringCompatibleOSReleases[]: stringDBSLVersion: stringDBClientLibVersion: stringABAPLoadVersion: uint16CUALoadVersion: uint16RunMode: string {MaxLen=3}

SAP_BCKernel

GroupComponentPartComponent

11

SAP_BCApplicationServerKernel

Type: string

SAP_BCKernelComponent

GroupComponent

PartComponent

1

*

SAP_BCKernelComponent

• CIM_SWFeature, CIM_SWElement

• Awkward to construct slim designs (OS, HW deps and SWF!)

Page 33: Development Framework for Service-Oriented Application

DMTF 2001 Developers' Conference June 11-13, 2001 Page 33

Service AccessService Access Pts Pts (I) (I)

Host A (server) Host B (client)

:SAP_ApplicationService

ServiceServiceDependency

:SAP_ApplicationServicePort

CIM_ServiceSAPDependency

:SAP_ApplicationServiceReference

SAP_ApplicationServiceAccessByPort

SAP_ReferencePortDependency

optionaladdress and accessinformation that isequal for all clients

optionaladdress and accessinformation that isequal for all clients ona specific host

:CIM_ServiceSAPDependency

optionaladdress and accessinformation that isonly for a single client

:SAP_ApplicationService

:SAP_ApplicationService

Page 34: Development Framework for Service-Oriented Application

DMTF 2001 Developers' Conference June 11-13, 2001 Page 34

Service AccessService Access Pts Pts (II) (II)

System B (client)System A (server)

ApplicationServer X

:SAP_ApplicationService

:SAP_ApplicationService

CIM_ServiceServiceDependency

Application LayerMiddleware

:CIM_ServiceAccessPoint

CIM_ServiceSAPDependency

CIM_ServiceSAPDependency

LoadBalanc:SAP_ApplicationService

:RFCComm:SAP_ApplicationService

CIM_ServiceAccessBySAP

...AccessByPort

ProtocolHostName

:SAP_TCPIPServicePort

Name...

:SAP_RFCDestination

...ReferencePortDep...

CIM_SAPSAPDep...

ProtocolHostName

:SAP_TCPIPServicePort

ProtocolHostName

:SAP_TCPIPServicePort

...AccessByPort

...AccessByPort

...ReferencePortDep...

Name...

:SAP_RFCDestination

Page 35: Development Framework for Service-Oriented Application

DMTF 2001 Developers' Conference June 11-13, 2001 Page 35

SAPSAP Keys Keys (I) (I)• Each class defines an additional set of key

properties, the SAP key, in order to supportexisting SAP naming schemes

• CIM key properties, e.g. CIM_System.Name,are built out of SAP key properties in orderto provide a meaningful name to externaltools at design time

Page 36: Development Framework for Service-Oriented Application

DMTF 2001 Developers' Conference June 11-13, 2001 Page 36

SAPSAP Keys Keys (II) (II)• A property having a SAP_KEY qualifier is part of

the unique name of an object, e.g.:SAP_BCClient

• The property to which the composition appliesis marked with a COMPOSITE qualifier: classSAP_BCClient {

[KEY, COMPOSITE]string Name = “003.SystemName.C11”[SAP_KEY]string SystemName = “C11”

...};

Page 37: Development Framework for Service-Oriented Application

DMTF 2001 Developers' Conference June 11-13, 2001 Page 37

ScopeScope

• Objects are named within the scope of other objects,similar to the CIMs ‘weak’ association and ‘propagated’keys– E.g. a Client ‘001’ is unique within a SAP System

• Enhances flexibility towards classes down theinheritance hierarchy

CreationClassName {KEY}Name {KEY}...

SAP_ApplicationSystem

1* {SCOPE}

SAP_BCSystemClient

CreationClassName {KEY}Name {KEY, COMPOSITE}LicenseNumber {SAP_KEY}...

SAP_BCSystem

CreationClassName {KEY}Name {KEY, COMPOSITE}SystemCreationClassName {SAP_KEY, SCOPED="SAP_BCSystem.CreationClassName"}SystemName {SAP_KEY, SCOPED="SAP_BCSystem.Name"}SystemLicenseNumber {SAP_KEY, SCOPED="SAP_BCSystem.LicenseNumber"}...

SAP_BCClient

Page 38: Development Framework for Service-Oriented Application

DMTF 2001 Developers' Conference June 11-13, 2001 Page 38

LandscapesLandscapes

Level 3

Level 2

Level 1

SystemAspectAnySystemLogicalIdentity

Landscape

AnyClass ClassAspectLogicalIdentity

ModelExtensionClass

Mutual CIMClass

Landscape

Core Model

[Landscape(“MyLandscape”)]class MyModel_MyAspect: MutualBaseClass {…};

Page 39: Development Framework for Service-Oriented Application

DMTF 2001 Developers' Conference June 11-13, 2001 Page 39

InstallationInstallationDependenciesDependencies

• Similar to CIM_Check• Compatibility of a pair of products also

on the level of CIM_Product andCIM_SoftwareFeature.

• Dependencies: OS, hardware, SWcomponents and patchlevel

• Instantiation independent of the actualinstallation (as modeled by the DMTF)

Page 40: Development Framework for Service-Oriented Application

DMTF 2001 Developers' Conference June 11-13, 2001 Page 40

ConclusionConclusion

• Framework: holistic approach toapplication model/provider developmentincluding service level management.

• SAP model: good basis for furtherrefinement of the model

• SAP model future: performance,business applications, events

• CIM has proved to be flexible and simpleenough

Page 41: Development Framework for Service-Oriented Application

DMTF 2001 Developers' Conference June 11-13, 2001 Page 41

QuestionsQuestions??