Best Practices vs. BPM

Hi,
I'm new on XI, and I have to define some best-practices and naming convention that will be used by our company. The goal is to try to start working in XI the right way.
I found following sources of information :
<a href="https://websmp207.sap-ag.de/~sapidb/011000358700004455192006E/NameConventions.pdf">SAP XI 3.0 Best Practices for Naming Conventions</a>
<a href="/people/r.eijpe/blog/2006/05/22/d-xie-soap-part-3-determine-software-component-version-of-standard-sap-idocs-and-rfms Soap part 3: Determine Software Component Version of standard SAP IDocs and RFMs</a>
<a href="/people/alwin.vandeput2/blog/2006/06/07/d-xie-soap-part-4-xi-software-component-architecture-for-point-to-point-scenarios Soap part 4: XI Software Component Architecture for Point-to-Point Scenarios</a>
Here is my scenario (probably a classic one!) :
SAP R/3 (Via RFC) ==> XI ==> 3rdParty Product (Via File Adapter)
If I follow best-practices indicated in previous documents, I need 3 products with their corresponding SWCV :
- One for SAP R/3 (custom function) : Contains the RFC
- One for XI : Mapping Objects, Integration Scenarios / Processes
- One for 3rdParty Product : Interface Objects
Up to now... Does it sound correct based on your experience ??
Now, here is my problem : BPM. It sounds logic to place the Integration Process in the XI SWCV. But I cannot use Message Interfaces from another SWCV (i.e. from my 3rd Party Product or from SAP R/3).
There is probably something wrong in my understanding, and I would really appreciate if somebody could help !! How should I proceed ? I'm not sure I should put everything under the same SWCV to use BPM !
Thanks in advance,

Hello Anne,
Sebastien asked me to respond to your question.
I think you have already your question answered by Wojciech Gasior. You should use Abstract interfaces. The Abstract interface should be created in the same SWCV as the BPM.
Your flow is:
Outbound interface (RFC) ==> Message mapping 1 ==> Abstract interface ==> BPM ==> Abstract interface ==> Message mapping 2 ==>Inbound interface (File)
Now the second question...how many SWCVs?
If you follow ..
- "SAP XI 3.0 Best Practices for Naming Conventions"
- weblog "Structuring Integration Repository Content - Part 1: Software Component Versions" and
- our weblog "D-XIE Soap part 4: XI Software Component Architecture for Point-to-Point Scenarios"...
... than you should have at least 3 SWCVs:
...but you could even think of 4.
SCVW 1: "Sender application"
- Outbound interface (RFC)
SCVW 2: "XI as integration engine"
- Message mapping 1
SCVW 3: "XI as process engine"
- Abstract interface
- BPM
- Abstract interface
SCVW 2: "XI as integration engine"
- Message mapping 2
SCVW 4: "Receiver application"
- Inbound interface (File)
We advice not to place mapping programs in the sender or receiver SWCVs because those are not the applications who execute the mappings. XI executes the mappings. So it should be an XI SWCV.
Why splitting the mappings from the BPM? The mappings are executed by the integration engine in the pipeline. The BPM is executed by process engine.
Why not splitting the Abstract interfaces from the BPM? The abstract interfaces are the interfaces (signature) of the BPM.
Is 4 SWCV not an enormous overkill in stead of using 1 or maybe 2? That’s up to you. Staying flexible in reuse means splitting up your SWCV.
My opinion about using just one SWCV: It is wrong. Because you don’t have a good administration of the relation between interfaces and SWCV. See our weblog for a detailed description of the administration problem.
My opinion about using two SWCV: Where do you put your mapping? In the Sender or in the Receiver SWCV? It is not the Sender application or the Receiver application which executes the mapping, but XI executes the mapping.
My opinion about using three SWCV: For point-to-point scenarios it is the best. Now you stay flexible to upgrade to all kinds of scenarios.
My opinion about using four SWCV: For BPM scenarios, it is the most flexible one. A good way of controlling the versioning of the SWCs.
Hope it helps you and I would like to hear your and other SDNers opinion about our opinion.
Kind regards,
Alwin.
(See also our D-XIE weblogs.)

Similar Messages

  • Oracle BPM Best Practices

    Hi all,
    Anybody has any information on the Oracle BPM Best Practices?
    Any guide?

    All,
    I was trying to find a developers guide for using Oracle BPM Suite (11g). I found the one in the following link, however this looks like a pretty detailed one...
    http://download.oracle.com/docs/cd/B31017_01/integrate.1013/b28981/toc.htm
    Can you someone help me find any other flavors of the developers guide? I am looking for the following...
    1. Methods of work - Best Practices for design and development of BPM process models.
    2. Naming Conventions for Process Modeling - Best Practices
    3. Coding standards for Process Modeling (J Developer)
    4. Guide with FAQ's for connecting / Publishing Process Models to the MDS Database.
    5. Deployment Standards - best practices....
    6. Infrastructure - Recommendations for Scale out deployment in Linux v/s Windows OS.
    Regards,
    Dinesh Reddy

  • Bpm Design best practice

    Hello Dear Co designers :)
    what would be the best practice for desiging the follwing:
    1- User can select the process insance distination form a drop down list [list of departments|http://forums.oracle.com/forums/] in the form (i.e. routing based on a desicion form the Form data)
    2- user can add up to 4 departments in the input form to which process instance has to be routed to.
    in other words i have this delima
    3- Can i route the instance to the same role but with deferent departments?
    for example i want only the users with role A but under organization unit B to see the instance in their inbox but users with role A under other org units cant see it??
    is this possible??

    You can use parametric roles to achieve this.
    You must declare an instance variable called department and a parametric role where the paramater is the department. The partcipants will be assigned to the role with the specific parameter and the instance variable has to be assigned to a department, in this case automatically the instances will be routed by department.
    Hope it helps

  • Basic Strategy / Best Practices for System Monitoring with Solution Manager

    I am very new to SAP and the Basis group at my company. I will be working on a project to identify the best practices of System and Service level monitoring using Solution Manager. I have read a good amount about SAP Solution Manager and the concept of monitoring but need to begin mapping out a monitoring strategy.
    We currently utilize the RZ20 transaction and basic CCMS monitors such as watching for update errors, availability, short dumps, etc.. What else should be monitored in order to proactively find possible issues. Are there any best practices you all have found when implimenting Monitoring for new solutions added to the SAP landscape.... what are common things we would want to monitor over say ERP, CRM, SRM, etc?
    Thanks in advance for any comments or suggestions!

    Hi Mike,
    Did you try the following link ?
    If not, it may be useful to some extent:
    http://service.sap.com/bestpractices
    ---> Cross-Industry Packages ---> Best Practices for Solution Management
    You have quite a few documents there - those on BPM may also cover Solution Monitoring aspects.
    Best regards,
    Srini
    Edited by: Srinivasan Radhakrishnan on Jul 7, 2008 7:02 PM

  • Deadline Branche in Correlation Process - Best Practice

    Hello,
    I have an integration process with a correlation - there is a asynchronous send step which activates a correlation and afterwards an asynchronous receive step that uses that correlation.
    Furthermore I have a deadline branch to cancel the process after 24 hours.
    My question now is:
    There could be (rare) cases where a message arrives later than 24 hours, so according to my understanding the received message will block the inbound queue as no active correlation can be found anymore. Is this correct? How can I avoid this situation, I guess a blocked queue would also block other messages that are sent to the integration process?
    What would be best practice to handle such a scenario? I could leave the process intance open for 1 month, however this might have a significant impact on system performance.....
    Thank you for your advice.

    There could be (rare) cases where a message arrives later than 24 hours, so according to my understanding the received
    essage will block the inbound queue as no active correlation can be found anymore
    No correlation found error will occur only when the BPM instance is running and the message tries to enter into the relevant receive step (not the first one)
    However when you say the process is cancelled you need not worry about the message going into the queue and blocking the BPM queue.
    Regards,
    Abhishek.

  • Best practice in gallerys

    we are making a gallery that will have thumbnails and larger
    images....simple click the thumb, and the focus goes to it's larger
    counterpart. When the large image loads, the thumbs follow. The
    question is, should we load thumbnails from another image(ie , much
    smaller images, scaled less than 75px) or duplicate the large image
    to a thumbnail size....what are the pros/cons? Makes sense that
    scaling down the big one would be pretty fast as it is already
    loaded...but would it not be heavy resource user?
    we are using cs3

    Hi,
    Others will have different ideas that are probably more useful, but I personally like "green field" opportunities like you're describing.
    One thing you have to figure out is what technology you want to develop and maintain your components in. Once built, they can be exposed as web services, Java POJOs, EJBs, .NET assemblies and databases which Oracle BPM can consume. Pick a technology that your team is most comfortable with.
    A best practice preference would be to use a Service Bus as the intermediary layer between Oracle BPM and the components consumed if you own one. If you don't, Oracle BPM will need to consume the components directly.
    I'd use Oracle BPM for what it was intended for. Sometimes I see the architecture "flipped" where the customer wants a third party UI to drive instances through the process via the API. While this will work, it's a lot of extra work to rebuild what Oracle BPM does a good job of OOTB.
    Dan

  • What is the best practice to display info of completed task in process flow

    Hi all,
    I'm starting to study BPM modeling with CE7.1 EHP1. Thanks to the tutorial and example on SDN site and I can easily build my own process in NWDS and deploy to server, start it, finish it.
    I like the new runtime which can show a BPMN diagram to the processors. However, I can't find a way to let the follow up processor to review the task result completed in previous step. I'm more familiar with Guided Procedure, and know there is "Display Callable Object" which can used to show some info of a completed task when the processor/owner/admin/overseer click on a completed task.  Where is the feature in BPM ? What is the best practice to show such task information in BPM environment.
    For example, A multiple level approval process, the higher level approver need to know the comment written by the previous approver. Can he read this information from process flow ?
    I think it is very important feature for a BPM platform. In Guided Procedure, such requirement can be done with Display Callable Object + View Permission, and you just need some coding for the UI. If BPM is superior to GP, I think there must be a way to achieve this, I just do not know how ?
    Can anyone shed me some light on it ?

    Oliver,
    Thanks for your quick reply.
    Yes, Notes and Attachment CAN BE USED for the purpose. But I'm still looking for a more elegant solution.
    With the solution of using Notes/Attachment, the processor need to give input at two places : the task UI and Note/Attach , with similar or same data. It is really annoying.
    Is there any SAP BPM real-world deployment ? None of customer has the requirement ?

  • Best practices of Upgrade - 10.1.2 to 10.1.3

    One of our customer is planning to upgrade BPM (BPEL Process manager server) to latest version…(10.1.2 to 10.1.3)
    Please let me know if someone has any best practice document on this upgrade and provide some guidance to modify the old components to new components.
    This will help the customer to work with the latest oracle fusion suite of components.

    Cbeckett,
    I haven't checked yet, but my guess is that the upgrade side isn't
    ready yet - at this early stage it's more to show you what features
    ares there...
    Shaun Pond

  • Best practice in database

    Dan
    I would appreciate help with the following query:
    The best practice in the development and deployment in the use of database is:
    1. Creating a resource external SQL database. If positive, indicates that when the DataSource is created in the WebLogic Server.
    2. Create a remote JDBC.
    Thanks and Best Regards,

    Hi,
    Others will have different ideas that are probably more useful, but I personally like "green field" opportunities like you're describing.
    One thing you have to figure out is what technology you want to develop and maintain your components in. Once built, they can be exposed as web services, Java POJOs, EJBs, .NET assemblies and databases which Oracle BPM can consume. Pick a technology that your team is most comfortable with.
    A best practice preference would be to use a Service Bus as the intermediary layer between Oracle BPM and the components consumed if you own one. If you don't, Oracle BPM will need to consume the components directly.
    I'd use Oracle BPM for what it was intended for. Sometimes I see the architecture "flipped" where the customer wants a third party UI to drive instances through the process via the API. While this will work, it's a lot of extra work to rebuild what Oracle BPM does a good job of OOTB.
    Dan

  • Rules Best Practice Advice Required

    I find that I'm fighting with the Business Rules in my BPM project, so I'd thought I throw the scenario out here and see what best practices anyone might propose.
    The Example*:
    Assume I have people, and each of them is assigned a list/array of "aspects" from an enumerated set: TALL; SPORTY; TALKATIVE; TRAVELER; STUDIOUS; GREGARIOUS; CLAUSTROPHOBIC.
    Also assume I have several Marketing campaigns, and as part of one or more processes, I need to occasionally determine whether a person fits the criteria for a particular campaign, which is based on the presence of a one or more aspects. The definitions of the campaigns may change, so the thought is to define them as business rules; if they change, the rule changes, without impacting the processes themselves (assume the set of campaigns doesn't change, just the rules for matching aspects to a particular campaign).
    My initial take is to to define each campaign as a bucketset, containing aspects, the presence of which indicates inclusion in the campaign. If a person has ANY of the aspects, they are considered a member.
    Campaigns (each perhaps defined as a LOV bucketset):
    DEODORANT: SPORTY, TRAVELER, GREGARIOUS
    E_READER:STUDIOUS,TRAVELER
    BREATH_MINT:TALKATIVE, GREGARIOUS
    HELMET:TALL, CLAUSTROPHOBIC
    So we want to create a service to check: Does a person belong to the BREATH_MINT campaign? We extract their aspects and check to see if ANY of them are in the BREATH_MINT campaign. If so, we return true. Basically: return ( intersection( BREATH_MINT.elements(), person.aspects() ) ).size() > 0
    The problem is: what's the best way to implement this using Business Rules? Functions? Decision Functions? Decision Tables? Stright IF/THEN? Some combination of the above? I find I'm fighting the tool, which means that, although this is a fairly simple problem, I don't understand the purpose of the various parts of the tool well.
    Things to consider:
    Purpose: test a person for inclusion in a specific campaign
    Input - the person's aspects, either directly, or extracted from the person
    Output - a boolean
    There can be a separate service for each campaign, or it could be specifed by an enumerated value as a parameter.
    Many thanks in advance!
    ~*Completely Fabricated~
    Edited by: 842765 on Mar 8, 2011 12:07 PM - typos

    hey, i am also intrested in any tips. we are gearing up to use ARD for all of our macs current and future.
    i am having a hard time with entering the user/pass for each machine, is there and eaiser way to do so? we dont have nearly as many macs running as you do but its still a pain to do each one over and over. any hints? or am i doing it wrong?
    thanks
    -wilt

  • What is the best practice for the WLI?

    Hello to everyone,
    I am a newbie to the Weblogic Integration Server and I had read the docs of WLI
    from the BEA, like "Programming BPM Client Applications". But I found it is bitter
    and astringent. I am wondering there is documents and samples for Weblogic Intergration
    Server for the entry level. I 'd appreciate it if anyone could give some comments.
    Thanks.
    Leon

    I was wondering if anybody knew of any bea documents that outlined best practices
    in terms of naming standards for business operations, event keys, tasks etc...
    "Tinnapat Chaipanich" <[email protected]> wrote:
    Hi
    Why not try BPM tutorial :)
    http://edocs.bea.com/wli/docs70/bpmtutor/index.htm
    Regards,
    Tinnapat.
    "Leon" <[email protected]> wrote in message
    news:3ea7ffbd$[email protected]..
    Hello to everyone,
    I am a newbie to the Weblogic Integration Server and I had read thedocs
    of WLI
    from the BEA, like "Programming BPM Client Applications". But I foundit
    is bitter
    and astringent. I am wondering there is documents and samples for WeblogicIntergration
    Server for the entry level. I 'd appreciate it if anyone could givesome
    comments.
    Thanks.
    Leon

  • Best Practices for ASAP Inputs - As-Is Business Process Mapping

    I am new to the SAP world and my company is in the early phases of implementation.  I am trying to prepare the "as-is" business process maps for the Project Preparation and Business Blueprint phases and I am looking for some best practices.  I've been told that we don't want them to go too deep but are there best practices and/or examples that give more information on what we should be capturing and the format.
    I have searched the forums, WIKI, ASAP documentation, and other areas but have not found much at this level of detail.  I have reviewed the [SAP BPM Methodology|http://wiki.sdn.sap.com/wiki/display/SAPBPX/BPM+Methodology] but again I am looking for more detail if anyone can direct me to that.
    Thank you in advance for any assistance.
    Kevin

    Hello Kevin,
    You can try to prepare a word document for each of your As-Is processes first before going to As-Is Process Design in a flowchart.
    The word document can have 7 sections -
    The first section can include Name of the Process Owner, Designation, Process Responsibility, User Department(s) involved, Module Name and a Document number for reference.
    The second section can include Process Definition details - Name of the major process, Name of the minor process, Name of the sub process and a Process ID for future reference.
    The third section can be titled as Inputs - this contains details of - Input, Vendor for the input, Type of Input (Data / Activity / Process), Category of Input (Vital / Essential / Desirable) and Mode of Information (Hard / Soft Copy).
    The fourth section can be Process Details. Here you can write the process in detail.
    The fifth section to contain outputs of the process, customer to whom these outputs are sent, type of output (report / approval / plan / request / email / fax), Category of Output (Vital / Essential / Desirable) and Mode of Information (Hard / Soft Copy).
    The sixth section can be Issues / Pain Areas in this process - Issue Description, Remarks, Expectations, Priority (High / Medium / Low)
    The seventh section can be expected reports in future out of this process for internal and external reporting.
    Hope this helps your question.

  • Content filters based on Group Best Practice

    What is best practice for Content filters based on Group.
    What we wanna accomplish.
    We have few groups but i'll make an example on two.
    We have one group that have allowed "Media" and another group that have allowed "Exe".
    What is best practice if one user is in both group.
    How would you do Content filtering?
    I dont see in Content filtering condition
    if (Envelope Recipient does not mach group) then Block.
    Is the best way to create first?
    If (attachment.type="Media") then (insert header="sometext);
    and after in Content filter below
    if (Envelope Recipient) and (Header does not contain "sometext") then Block.

    Hi,
    I understand that I will have to use BPM. What is the best way?

  • Integrating Multiple systems - best practice

    Hi,
    I need to integrate the following scenario let me know the best practice with steps.
    Scenario is end to end syncrhonous
    A system(supports open tech i.e webservice client) => SAP PI<=>Oracle(call stored procedure) => Update in ECC=> Reponse back to A system (source)
    Thanks
    My3

    Hi Mythree,
    First get the request from the web service to pi and then map to stored procedure using synchronous send step (Sync Send1) in bpm and get the response back. Once when you get the response back from oracle then use another synchronus send step. Here take the response from the database and map to ecc (use either a proxy or rfc) which is Sync Send2 in the bpm and get the udpdates back. Once when you get the response back send back the response to source system. The steps in BPM would be like this:
    Start --> Receive --> Sync Send1 --> Sync Send2 --> Send --> Stop
    These blogs might be useful for this integration:
    /people/siva.maranani/blog/2005/05/21/jdbc-stored-procedures
    /people/luis.melgar/blog/2008/05/13/synchronous-soap-to-jdbc--end-to-end-walkthrough
    Regards,
    ---Satish

  • Process modelling : Design patterns & Best Practices

    Hi
    Could some one please suggest/share any technical information or documents tha's related to 'Process modelling - Design Patterns & Best Practices'
    Thanks in Advance
    Santosh K.
    Edited by: Santosh539 on Jul 29, 2010 4:07 PM

    Hi Santosh,
    There is no specific site with all the information you asked for.
    But I think these links would be helpful...
    on Work Flow Patterns: http://www.workflowpatterns.com/
    on BPM Service Pattern: http://enterprisearchitecture.nih.gov/ArchLib/AT/TA/WorkflowServicePattern.htm
    HTH
    Sharma

Maybe you are looking for

  • There is a problem with Adobe Acrobat/Reader. If it is running, please exit and try again.(523:523) I keep getting this!

    HELLO, PLEASE HELP WITH HE ABOVE ERROR MESSAGE I KEEP GETTING!

  • Nullpointer: Reference entity null

    Hey, I have an view (PremiebetalerView) that consists of 4 entities: - PolisRelatie (updatable) - Relatie (reference FK between PolisRelatie and Relatie) - Straat (reference FK between Relatie and Straat) - Beroep (reference FK between Relatie and Be

  • R 6025 pure virtual Function Call

    Hello, I'm having trouble with my Premiere elemnts 12, to start the message - R 6025 pure virtual Function Call - Exception Unknown Software Exception (0x400000015) in 0x78b2d6fd. My system is XP pac 3. I tried to find the solution but I found .Agrad

  • Robocopy log file

    I use the following robocopy command to copy files from old to a new server: @ECHO OFF SET _source=d:\data\ SET _dest=\\newserver\DATA\ SET _what=/COPYALL /ZB /secfix /SEC /MIR SET _options=/R:0 /W:0 /LOG:C:\MyLogfile.txt  ROBOCOPY %_source% %_dest%

  • Should web start uninstall the cache?

    Recently I've sent to Sun the following RFE: under windows 2000, when I uninstall Java Web Start, the cache of installed apps is deleted. I think that the uninstaller shouldn't do this, so in case I install Web Start again, I don't have to download a