meet-the-expert composite application …...the customer complaint management process as it is...
Post on 25-Jun-2020
3 Views
Preview:
TRANSCRIPT
Meet-the-ExpertComposite ApplicationMethodology: Specifyingand Designing CompositeApplications
© SAP AG 2007, SAP / 2
Learning Objectives
As a result of this workshop, you will be able to:
Understand what composite applications are
Assess whether your business process idea is a use case for a composite application
Approach a composite application from a business expert’s / product manager’s point of view
Apply an accepted methodology to specify a composite applicationwhich can be built with SAP’s composition environment
Understand how the methodology worked for real world examples
© SAP AG 2007, SAP / 3
Target Audience
Product ManagerRepresentative of an ISV (Independent Software Vendor) responsible for the specification of new software products
Business ExpertRepresents a member of a company’s business process experts team. He is in charge of optimizing the internal business processes
Both roles have to specify the requirements for new solutions
ArchitectIs responsible for the technical architecture of a new application
DeveloperIs in charge of implementing the specified composite application
Motivation for Composite ApplicationsExample Scenario: Customer Service CareSteps to Specify a Composite ApplicationSummary
© SAP AG 2007, SAP / 5
Drive Business Innovation with Composite Applications
Differentiate through new business processes
Adaptive business networks
Make information technology an enabler of changeCreate and adapt flexible business solutions leveraging existinginformation and services Build upon SAP’s Enterprise SOA and innovate on top of a stable platform
© SAP AG 2007, SAP / 6
Composite Applications: a Business View
Composite Applications are user centric applications supportinghighly collaborative and dynamic business processes which span beyond functional, system, and organizational boundaries.
Composite Applications are user centric applications supportinghighly collaborative and dynamic business processes which span beyond functional, system, and organizational boundaries.
End-user characteristics
Rich user experience
Process context and visibility
Integrated multisource content
Enterprisewide collaboration
High flexibility
Efficiency
Flexibility
Analytics
Knowledge
Transactions
Collaboration
Office Client
Portal
Mobile
© SAP AG 2007, SAP / 7
Composite Applications: a Technical View
Composite Applications make use of data and functions provided as services by platforms and applications, combining these into user-centric processes and views, supported by own business logic and specific user interfaces.
Composite Applications make use of data and functions provided as services by platforms and applications, combining these into user-centric processes and views, supported by own business logic and specific user interfaces.
Technical characteristics
Usage- and process-centric
Based on services
Loosely coupled to backend systems
Abstracting from backend systems
Dependent on service enabling
Own lifecycle
© SAP AG 2007, SAP / 8
SAP NetWeaver – Composition Environment
Model Composite Views and Processes. Extend through the development of dedicated application logic
Composite Process: Guided Procedures
Model process flow with graphical tools
Modify with default process components
Assemble workflows from re-usable blocks
User Interface: Visual Composer, Web Dynpro, Adobe Forms
Model UIs graphically
Apply UI changes without coding
Use interactive forms adjustable to specific needs
Business Objects and Services: CAF
Import of Enterprise Services
Model business objects
Compose application logic
© SAP AG 2007, SAP / 9
Central Question
How do I approach such a composite application?
© SAP AG 2007, SAP / 10
Lifecycle of SOA-based Applications
Analyzes business requirementsIdentify needed business objects, services, and viewsDiscover available enterprise services in ESR for reuseIdentify missing services for new business logic
Compose and
Orchestrate
Manage and
Optimize
Integrate and Deploy
Model and Build
Design and model business objects (BOs)Implement new business logicModel and build UIsCreate new services reusing existing assets and publish to ESR
Compose views by reusing implemented services and BO'sCompose and orchestrate services and views to form new business process
Manage change and maintain version (governance)Monitor service execution (e.g. performance, availability, process progress, events)
Analyze and Discover
Package and deploy application Configure runtime (adapt to IT landscape)Test and validate applicationExecute application
Motivation for Composite ApplicationsExample Scenario: Customer Service CareSteps to Specify a Composite ApplicationSummary
© SAP AG 2007, SAP / 12
Example Scenario
© SAP AG 2007, SAP / 13
Scenario: Customer Service Care
© SAP AG 2007, SAP / 14
Customer Service Care – A Typical Composite
Highly collaborativeInvolves several roles (customer, account manager, expert, internal clerk) and demonstrates neatly their interplay
Reuse of existing functionalityBefore submitting a complaint, check the availability of the order the complaint is assigned to
Different business objects stored in different locationsAlready existing business objects: customer, product, and order.New business object: complaint
Interactive steps mixed with background stepsInteractive steps: Enter Complaint; Decide On Complaint; Evaluate ComplaintBackground step: Create Complaint
Rich user experience (online and offline)
Motivation for Composite ApplicationsExample Scenario: Customer Service CareSteps to Specify a Composite ApplicationSummary
© SAP AG 2007, SAP / 16
12 Steps to Specify a Composite Application
1. General Application Information
2. Processes Overview
3. General Process Information
4. Roles
5. Visualization of Process Flow
6. Step Data
7. Exception Handling
8. Business Objects Overview
9. Business Object
10. UI Mockup
11. UI Description
12. Services
General Info
Process Info and Roles
Business Exceptions
Business Objects
User Interfaces
Services
© SAP AG 2007, SAP / 17
General Note
Goal of the guide:Explain how to collect composite relevant data in a structured wayAchieve a high coverage of all aspects that influence the design of a compositeExplain the questions in detail to give the right guidanceDownload the guide: https://www.sdn.sap.com/irj/sdn/weblogs?blog=/pub/wlg/4356
Consequence: forms are very detailedSometimes hard to answerRecommendation– Leave answers open or postpone them to a later stage– Cooperate with the architect as early as possible on certain more technical oriented
topics (e.g. business object specification or service specification)- Increases the quality of the overall specification- Results in lesser rework afterwards
The more information the architect gets the better he can design the application
© SAP AG 2007, SAP / 18
Form (Template): General Information (Executive Summary)
Describe the business problem the new solution addresses
Missing process or deficiencies of the current process
Describe the idea of the solution
How do you want to improve the situation described above?Goal: external reader must be able to grasp the basic idea of the solution
Describe the market and the value of the solution (attach business case)
Values such as: improve efficiency, improve flexibility, cost related values (reduce costs, better cost control), reduce error rate, increase throughput, increase accuracy, increase customer satisfaction
Backend integration: solution should support several releases of the accessed backend systems
Yes (if yes add information about supported systems)No
Basic numbers (e.g. # users; # business objects; access frequency)
© SAP AG 2007, SAP / 19
Form (Example): General Information (Executive Summary)
Describe the business problem the new solution addresses
The Customer Complaint Management process as it is currently implemented in many companies, is not working efficiently! Typically data is coming in from different sources not coming together: telephone, e-mail, mail, … Additionally it happens that important information for the decision on a complaint is not available or their retrieval is cumbersome. Sometimes the process comes to a halt because a responsible person is on vacation leading to reduced customer satisfaction. Finally: the opportunity to gather valuable information about the quality of products passes by!Describe the idea of the solution
By introducing a workflow system that is responsible for supervising the complete Customer Complaint Management process, that can assign tasks to the right person at the right time, that can call services from different systems to collect appropriate information for decisions, and that allows to gather quality relevant information efficiently will improve the situation significantly!
Describe the market and the value of the solution (attach business case)
Market analysis show that x% of the companies have no or not sufficient complaint management processes in place and that for y% of those companies customer service care processes play an important role. These companies are also willing to invest in appropriate solutions. From this the following numbers can be derived:…In summary the benefits of this solution will be: Improved efficiency, reduced costs, increased quality of products, increased customer satisfaction
Backend integration: solution should support several releases of the accessed backend systems
Yes (R/3 4.6c, mySAP ERP 2005)No
Basic numbers (e.g. # users; # business objects; access frequency)
#users: 200 per month…
© SAP AG 2007, SAP / 20
Form (Template): Processes Overview
Process title Description
<Enter title of process here> <description comes here>
© SAP AG 2007, SAP / 21
Form (Example): Processes Overview
Process title Description
Customer Service Care Focus: treatment of customer complaints. Customer enters complaint which is handed over to the responsible account manager who is in charge of deciding on the complaint. If necessary he can involve an independent expert who supports him on this decision. Once decided the customer gets a notification about the decision and the order the complaint was associated to is updated.
© SAP AG 2007, SAP / 22
Form (Template): General Process Information (for each process)
Process title: <Enter title of process here>
Information Description
When and How is the process integrated/started (think about pre-conditions that have to be fulfilled before the process can start)?
<description comes here>
Due Date handling <description comes here>
Number of parallel instances of this process(= number of concurrent users)
<enter number here>
© SAP AG 2007, SAP / 23
Form (Example): General Process Information (for each process)
Process title: Customer Service Care
Information Description
When and how is the process integrated/started (think about pre-conditions that have to be fulfilled before the process can start)?
Start option: manually. The process should be started every time a customer fills out the central complaint web page. Once the customer submits the form, the process should start.Pre-condition: An order must exist so that the customer can reference it in his complaint.
Due date handling Yes: due to SL agreements with customers this can vary. It would be great to keep it as a parameter. In average a complaint should be finished within 3 days:Due Date: fires 3 days after start of the process; Action to be taken: send E-MailFirst notification to be fired 36 hours after start of the process; Action to be taken: send E-Mail
Number of parallel instances of this process(= number of concurrent users)
Ca. 60
© SAP AG 2007, SAP / 24
Form (Template): Roles (to be filled out for each process)
Role Description
<enter a process role name here> <enter description here>
Role Summary for Process: <Enter title of process here>
© SAP AG 2007, SAP / 25
Form (Example): Roles (for each process)
Role Description
Customer Customer who enters the complaint
Account Manager Account Manager for that particular customer, who has to decide on the complaint
Expert An external specialist for analyzing damaged hardware
Clerk A colleague of the Account Manager responsible for order management
Role Summary for Process: Customer Service Care
© SAP AG 2007, SAP / 26
Visualize Process Flow (e.g. UML, Visio, PPT…)
© SAP AG 2007, SAP / 27
Visualize Process Flow (e.g. UML, Visio, PPT…)
© SAP AG 2007, SAP / 28
Form (Template): Step Data (to be filled out for each process)
Steps for Process: <Enter title of process here>StepNo
StepTitle
StepDescription
Interactive (I)or
Background (B)
Man-datory
Needed Services
(numbers)
Due date handling required
Role
<# of step
>
<enter step title here>
<enter description of
business logic here>
<I or B> <Y or N>
<reference number to
a service of the service
list>
<Y –if so define the
rule- or N>
<enter responsib
le role here
>
<list all possible exits of the
step here and for each exit assign the
number of the next step>
ExitsNext Step
© SAP AG 2007, SAP / 29
Form (Example): Step Data (to be filled out for each process)
StepNo
StepTitle
StepDescription
Interactive (I)or
Background (B)
Man-datory
Needed Services
(numbers)
Due date handling required
Role
1 Enter Complaint
Customer enters a lengthy
description of the complaint
I Y 2 N Customer
Customer
Account Manager
4 Receive Reason
Customer receives decision
I Y - N Customer 1. Default end
6 Evaluate Complaint
Expert gives recommendation
I Y - Y (within 24 hours)
Expert 1. Default end
7 Update Order
Clerk updates original order
I Y 3 Y (within 24 hours)
Clerk 1. Default end
5 Message to clerk to update order
Manager creates message for
clerk
I Y - N Account Manager
1. Default 7
1. Default 2
2 Create Complaint
Creates a new complaint
B Y 1 N 1. Default 3
3 Decide On Complaint
Manager decides on complaint
I Y - Y(within 24
hours)
1. Accepted 4,52. Rejected 43. Expert 6
ExitsNext Step
Steps for Process: Customer Service Care
© SAP AG 2007, SAP / 30
Form (Template): Exception Handling (for background steps)
Exception Handling
ExceptionNo
Exception # of step Action
<enter # of exception here>
<enter # of step here –
must be a back-ground step>
<describe appropriate reactions on the exception here; additionally refer to the UI (by the UI‘s name) that should be shown or to the process (by the process‘s name) that should be started in case the exception occurs>
Continue/Retry/
Terminate
<enter type of business exception here> <C, R, or T>
© SAP AG 2007, SAP / 31
Form (Example): Exception Handling (for background steps)
Exception Handling
ExceptionNo
Exception # of step Action
1
2
2
7
Offer a screen which allows to select a new user and delegate the task to a colleague; after the colleague confirmed the complaint the background call for creating the complaint has to be repeated. See UI „Pick Delegate“
Offer a screen which allows to select a new user and delegate the task to a colleague; after the colleague was able to correct the order the service call has to be repeated. See UI „Pick Delegate“
Continue/Retry/
Terminate
User has no rights for creating the complaint
R
Order cannot be updated due to changes of the order in the backend system (conflict with parallel actions on the backend system itself)
R
© SAP AG 2007, SAP / 32
Form (Template): Business Objects Overview
Business Object’s Name Description
<Enter name of business object here> <description comes here>
© SAP AG 2007, SAP / 33
Form (Example): Business Objects Overview
Business Object’s Name Description
Complaint Holds data about the complaint entered by the customer (e.g. text of the complaint, reference to the customer entering the data, reference to the order this complaint is associated to etc.)
Order Every complaint must be associated to an order. The order objectcontains several line items. One of the line items must contain the product the complaint refers to.
Product Each line item of an order refers exactly to one product business object. It contains detailed information about the product itself (e.g. name, product number etc.).
Customer Stores detailed information about the customer entering the complaint.
© SAP AG 2007, SAP / 34
Form (Template): Business Object Data (for every Business Object)
Business Object: <enter name of BO here>
Field Type Length/Number Range
Mask -Pattern
New Used in Step Sample Data
<field name>
<type> <length/range>
<pattern> <Y or N or M>
<list numbers of steps for which this field is relevant>
<enter some sample data here>
Relationships for Business Object: <enter name of BO here>
To Business Object Relationship Type(Composition / Association)
Cardinality
<enter name of related BO here>
<Association or Composition> <0..1, 1..1, 0..n, 1..n>
© SAP AG 2007, SAP / 35
Form (Example): Business Object Data (for every Business Object)
Business Object: Customer
Field Type Length/Number Range
Mask -Pattern
New Used in Step Sample Data
Complaint Text
String 1024 Not relevant
Y 1,2,3 Millennium 2000 GmbH
Relationships for Business Object: Customer
To Business Object Relationship Type(Composition / Association)
Cardinality
Order Association 1..n
Complaint Association 0..n
© SAP AG 2007, SAP / 36
Form (Template): Business Object Data cont‘d
Mapping Information for Business Object: <enter name of BO here>(only applicable if fields already exist in backend systems):
Field System/SAP Component
System-/SAP-specific Business Object or Service
Field or Service
Parameter
<enter field name here>
<enter external system info here (system type, vendor,
release, etc.)>
<enter remote BO name here> <enter remote field here>
Additional Information:
Informtion Description
How many BO’s of this type do you expect for the composite? <description comes here>
If the BO exists in a backend system: is it possible that the BO will be changed in the backend system while it is used in the composite?
<description comes here>
How will the BO be used in the composite (Create, Read, Update, Delete)? <description comes here>
Will the BO survive the business process? <description comes here>
© SAP AG 2007, SAP / 37
Form (Example): Business Object Data cont‘d
Mapping Information for Business Object: Customer(only applicable if fields already exist in backend systems):
Field System/SAP Component
System-/SAP-specific Business Object or
Service
Field or Service
Parameter
CustomerName mySAP ERP 2005 CUSTOMER NAME1
Additional Information:
Informtion Description
How many BO’s of this type do you expect for the composite? Ca. 1.000.000
If the BO exists in a backend system: is it possible that the BO will be changed in the backend system while it is used in the composite?
Yes
How will the BO be used in the composite (Create, Read, Update, Delete)? R
Will the BO survive the business process? Yes
© SAP AG 2007, SAP / 38
Create UI Mockup (e.g. PPT…) (for every interactive step)
UI Mockup for step: <# of step> (<enter name of UI here>)
Enter Complaint
Customer Name: Panorama Studios, P. Miller
Order Number: 5001658
Complaint Text: 15 Flat Future monitors don‘t work. Please replacethem.P. Miller
Complaint Date: 07.09.2006
Submit
© SAP AG 2007, SAP / 39
Form (Template): UI Data for Mockup (for every interactive step)
UI Description for step: <# of step> (<enter name of UI here>)Online Form: <Yes/No>Offline Form: <Yes/No>
Business Object
Field Table<Y/N>
Read / Modify
Additional Info
Man-datory<Y/N>
Value Help (if yes, which service?)
Field Validation(only applicable for input fields)
Sample Data
<enter BO name here>
<enter field name here>
<Y or N>
<R or M>
<enter type of field here>
<Y or N>
<Y with number of
service that delivers the data for the
value help or N>
<empty or field validation rule that has to be applied or number of service that fulfils the validation>
<provide some sample data here>
© SAP AG 2007, SAP / 40
Form (Example): UI Data for Mockup (for every interactive step)
UI Description for step: 1 (Enter Complaint)
Online Form: YesOffline Form: No
Business Object
Field Table<Y/N>
Read / Modify
AdditionalInfo
Man-datory<Y/N>
Value Help (if yes, which service?)
Field Validation(only applicable for input fields)
Sample Data
Customer CustomerName
N
N
N
Complaint ComplaintDate
N M DatePicker
Y N Value must not be in the future
12.07.2006
R Text OutputField
Order OrderNumber
R Text OutputField
Complaint ComplaintText
M TextEditor
Y N Millennium 2000 GmbH
© SAP AG 2007, SAP / 41
Form (Template): Service (to be filled out for every service)
Service Number: <# of service>
Attribute Description
Service Name <enter service name here>
Input Parameters <list all input parameters here; each parameter name must follow the pattern „BO_Name.BO_Field“, e.g. Customer.Firstname>
Output Parameters <list all output parameters here ; each parameter name must follow the pattern „BO_Name.BO_Field“, e.g. Customer.Firstname >
Exceptions <list numbers of all business exceptions here (must be listed on the „exception handling“ form)>
Business Logic (Prose) <describe what happens during the service call>
Relying on which Services <list all service numbers this service needs to fulfill its functionality>
Mapped Against External Service <if available, name the service name of the external system>
External Service Running On (System Information, Release etc.)
<if available specify details about the system the external service is running on>
© SAP AG 2007, SAP / 42
Form (Example): Service (for every service)
Service Number: 1
Attribute Description
Service Name Create Complaint
Input Parameters Customer.Customer_IdOrder.Order_IdComplaint.Text
Output Parameters Complaint.Complaint_Id
Exceptions -
Business Logic (Prose – describe what happens) A new Customer business object has to be created
Relying on which Services (list all services this service needs to fulfil its functionality)
-
Mapped Against External Service -
External Service Running On (System Information, Release etc.)
-
© SAP AG 2007, SAP / 43
Form (Example): Service (for every service)
Service Number: 2
Attribute Description
Service Name Check Order Availability
Input Parameters Order.OrderNumberCustomer.CustomerNumber
Output Parameters Yes/No
Exceptions -
Business Logic (Prose – describe what happens) Checks the availability of the given order for the given customer
Relying on which Services (list all services this service needs to fulfil its functionality)
-
Mapped Against External Service -
External Service Running On (System Information, Release etc.)
-
Motivation for Composite ApplicationsExample Scenario: Customer Service CareSteps to Specify a Composite ApplicationSummary
© SAP AG 2007, SAP / 45
Summary
The composition capabilities of SAP NetWeaver allow the efficient development of composite application, reusingexisting assets, driving simplicity and agility
SAP’s methodology guidelines like the Product Manager’s / Business Expert’s Guideline, the Architecture Guideline, or the Developer Guideline help you to efficiently specify, plan, and develop composite applications
With the Product Manager’s / Business Expert’s guideline in your hands go ahead and specify / develop composite applications NOW
Expect continuous improvement of SAP’s composition capabilities and methodologies
© SAP AG 2007, SAP / 46
THANK YOU FOR YOURATTENTION !
QUESTIONS – SUGGESTIONS – DISCUSSION
© SAP AG 2007, SAP / 47
Copyright 2006 SAP AG. All Rights Reserved
No part of this publication may be reproduced or transmitted in any form or for any purpose without the express permission of SAP AG. The information contained herein may be changed without prior notice.Some software products marketed by SAP AG and its distributors contain proprietary software components of other software vendors.Microsoft, Windows, Outlook, and PowerPoint are registered trademarks of Microsoft Corporation. IBM, DB2, DB2 Universal Database, OS/2, Parallel Sysplex, MVS/ESA, AIX, S/390, AS/400, OS/390, OS/400, iSeries, pSeries, xSeries, zSeries, z/OS, AFP, Intelligent Miner, WebSphere, Netfinity, Tivoli, and Informix are trademarks or registered trademarks of IBM Corporation in the United States and/or other countries.Oracle is a registered trademark of Oracle Corporation.UNIX, X/Open, OSF/1, and Motif are registered trademarks of the Open Group.Citrix, ICA, Program Neighborhood, MetaFrame, WinFrame, VideoFrame, and MultiWin are trademarks or registered trademarks of Citrix Systems, Inc.HTML, XML, XHTML and W3C are trademarks or registered trademarks of W3C®, World Wide Web Consortium, Massachusetts Institute of Technology. Java is a registered trademark of Sun Microsystems, Inc.JavaScript is a registered trademark of Sun Microsystems, Inc., used under license for technology invented and implemented by Netscape. MaxDB is a trademark of MySQL AB, Sweden.SAP, R/3, mySAP, mySAP.com, xApps, xApp, SAP NetWeaver and other SAP products and services mentioned herein as well as their respective logos are trademarks or registered trademarks of SAP AG in Germany and in several other countries all over the world. All other product and service names mentioned are the trademarks of their respective companies. Data contained in this document serves informational purposes only. National product specifications may vary.
The information in this document is proprietary to SAP. No part of this document may be reproduced, copied, or transmitted in any form or for any purpose without the express prior written permission of SAP AG.This document is a preliminary version and not subject to your license agreement or any other agreement with SAP. This document contains only intended strategies, developments, and functionalities of the SAP® product and is not intended to be binding upon SAP to any particular course of business, product strategy, and/or development. Please note that this document is subject to change and may be changed by SAP at any time without notice.SAP assumes no responsibility for errors or omissions in this document. SAP does not warrant the accuracy or completeness of the information, text, graphics, links, or other items contained within this material. This document is provided without a warranty of any kind, either express or implied, including but not limited to the implied warranties of merchantability, fitness for a particular purpose, or non-infringement.SAP shall have no liability for damages of any kind including without limitation direct, special, indirect, or consequential damages that may result from the use of these materials. This limitation shall not apply in cases of intent or gross negligence.The statutory liability for personal injury and defective products is not affected. SAP has no control over the information that you may access through the use of hot links contained in these materials and does not endorse your use of third-party Web pages nor provide any warranty whatsoever relating to third-party Web pages.
top related