SAP Best Practices Building Block Concept

Enhancing the Reusability and Flexibility of Preconfiguration

This document contains background information on the building block concept used in the SAP Best Practicesversions (including the Baseline Packages). Together with the other documentation on the DVD, it empowers youto make full use of this new and flexible approach to reusing business content.

The ConceptPreconfigured solutions are usually the result of a sizeable investment of time and money. You can leverage thisinvestment by reusing a solution in other areas, or by using parts of a solution to create other solutions.Reusing a complete solution is often difficult because it contains specific settings such as the organizationalstructure. It is also difficult to remove any unwanted parts because of the strong interdependencies with theremaining preconfiguration and/or master data.The SAP Best Practices building block concept overcomes these limitations. Drawing on many years of experiencein creating preconfigured industry and cross-industry solutions, we identified the reusable parts of solutions andencapsulated them in building blocks using a standard methodology outlined below. The content of a buildingblock is defined mainly on the basis of implementation considerations and with less emphasis on the results ofbusiness modeling.Where possible, this approach is complemented by the extensive use of standard tools such as BC Sets, CATT andeCATT procedures, and LSMW projects, which make it possible to modify individual data and settings during theinstallation process.The SAP Best Practices scenarios are therefore made up of building blocks that can be reused flexibly in otherscenarios or for the implementation of your own configuration project. Each of the building blocks contains all theinformation and deliverables required to reuse them independently of a particular SAP Best Practices scenario.

The Methodology - Content Definition

Business Content of Building BlocksOne of the biggest challenges in creating a building block is defining its business, technical, or information content.It is impossible to lay down explicit instructions for doing this because there are a number of influencing factors,such as context of use, business area, technical considerations, accurate definition of the target group, and theorganizational conditions within the development group.As mentioned above, the main criterion used to define the content covered by the SAP Best Practices buildingblocks is reusability from an implementation point of view. The content is mainly defined by identifying identicalreusable parts within a preconfigured solution with a strict focus on its specification.Size and Nesting of Building BlocksIt is also difficult to define a clear rule for the size of a building block. A number of the factors that influence thebusiness content definition are also valid in this case. Since larger building blocks are generally more specific andtherefore less reusable, the aim is to make them as small as is feasible (that is, the additional effort is justified bythe extent to which the building block can be reused). Larger entities such as process groups or scenarios (whichare also represented as building blocks) are created by nesting smaller building blocks into larger ones. Thisachieves a high level of transparency and reusability. The higher the degree of nesting, the higher the level offunctional organization, and subsequently, the higher the potential for reuse and synergy. On the other hand, thecomplexity and administrative effort involved increases. It is important to find the correct balance between thetwo.Building Block LibraryFor a greater understanding of how to define building blocks, refer to the building blocks in the Building BlockLibrary on this HTML DVD. Here you can browse through hundreds of building blocks with reference to theindustry/country for which they are used. You can access the building block description, which summarizes thecontents of the building block, directly from the library. Although scenarios are represented as building blocks,they are not included in the library, since the scenario is the central entity for offering business content and can beaccessed directly from each SAP Best Practices version. Use the Building Block Library as starting point for reusingbusiness content outside the context of a particular SAP Best Practices version.

The Methodology - Creation of Building Blocks

Once you have defined the content of a building block, you can continue with the actual creation of the buildingblock following clear and simple rules. One of the most important rules is that the deliverables for a building blockonly refer to the content covered by the building block itself. While nearly all building blocks have descriptions,

installation roles, configuration roles, installation guides, and configuration guides, some of the deliverables, suchas the Business Process Procedure, might not be available where it makes no sense to include it (for example, forthe organizational structure). Most of the deliverables are defined according to the steps below.Internal Structure of a Building BlockBy adhering to the three phases below, you ensure that all building blocks have a similar and reproduciblestructure:1.

PreparationIn this phase, all the activities that are prerequisites for the installation of the building block are listed inthe correct sequence. Other building blocks can be referenced if they represent a preparation step (forexample the installation of the organizational structure). Although the activities listed here are aprerequisite for the building block, they are not directly relevant to the actual functions of the buildingblock. A typical example is the organizational structure. This is a prerequisite for a number of businesscontent building blocks, but does not normally affect the business content such as batch management orreturns processing. It is important to make this differentiation between non-content-specific activities andcontent-specific activities in order to simplify building block set-up. This will be explained later in moredetail.If you have installed a scenario or another building block, you will already have executed some of thepreparation activities so you do not have to repeat them to install the next building block. If the structuredefined for the activities in the preparation phase is designed properly, it is easy to identify thoseprerequisites that have already been fulfilled.

2.

InstallationThis phase includes the activities for setting up the building block content in the correct order. Unlike thepreparation activities, the installation activities affect the functional content of a building block, forexample batch level definition in the Batch Management building block. A clear structure allowsmaximum transparency and clear, step-by-step configuration of the functions covered by the buildingblock. Here too, it is possible to nest building blocks.

3.

Test & Use

The activities listed in this phase are carried out to test and use the functions of a building block once ithas been installed. This can include the steps of a process flow (for example, the transactions) oractivities that ensure that the configuration is properly up and running.

The result is a tree structure with the three top nodes Preparation, Installation, and Test & Use. These in turncontain all the activities in a building block in the order in which they should be executed. This principle is commonto all building blocks and the structure can be easily reproduced as it is determined by the objective constraints ofcontent on the one hand and implementation on the other.Assignment of Documentation, Technical Objects and Other Information to the StructureThe structure contains all the activities required for the building block. You can assign relevant objects to theseactivities, for example a BC Set with the configuration settings for the configuration step, the SAP Best Practicestransaction that calls this BC Set, the installation documentation that describes the activation of the BC Setincluding variable parameters, and so on. Some of the objects may be relevant for a number of steps andtherefore need to be assigned to a higher node such as a hierarchical BC Set containing a number of single BCSets that contain the configuration.The details of this tree structure with all the assigned objects, documents, and so on, are contained in thedevelopment master list a mandatory deliverable for every building block.Relation Building Block Structure : Building Block DeliverablesThe SAP Best Practices deliverables are the consolidation of the contents of the development master list.Examples:The installation role groups the preparation and installation activities in the respective phases of the developmentmaster list and its structure reflects the structure of the activities listed there. The installation guide documentsthese installation activities (including the preparation steps). The structure of this document also mirrors that ofthe development master list.The same applies to the configuration guide and the configuration steps.Business process procedures document the steps listed in the Test & Use section of the development master list.You will find the same structure in the test catalogs of the building blocks (where available).

Reusing Building Blocks

Creating a large number of small building blocks with different preparation steps could become extremely complexunless there is overlying concept to make it more manageable. SAP Best Practices use a simple version of thelayer concept that is explained below.Layer ConceptA prerequisite for the layer concept is that the preparation and installation steps of a building block are separatedproperly into non-content-specific steps (Preparation) and content-specific steps (Installation).If this is the case, you can group building blocks that have identical preparation steps. You can then combinethese common preparation steps in building blocks and form a layer. This layer contains the preparation stepsrequired for a number of building blocks, and so you can use it to replace a large number of the preparation stepsin these individual building blocks. This means that once you have installed this layer of building blocks, you donot have to install it again for the other building blocks. You can then easily combine building blocks and identifythe remaining preparation steps required to install the building block that are not covered by the layer settings,without checking a lot of individual settings.In the SAP Baseline Packages, layer 0 is a common prerequisite for all the scenarios. Even though layer 0contains some settings that might not be required for a specific building block, it makes sense to define layer as apreparation step for all the scenarios for reasons of usability.The number of layers you can have in the layer concept is unlimited. You can create additional layers, for exampleto cover common prerequisites for manufacturing scenarios or for service scenarios.The key is to keep it simple: only create complex layer constructions if they are justified by the complexity of thesolution and if they are manageable by the development team (complexity:skill ratio).

ConclusionThe building block concept offers a flexible and easy-to-use methodology for creating reusable blocks of businesscontent, technical settings, information, and so on. It has more of an implementation perspective than a businessmodeling focus, but the business content delivered with SAP Best Practices can be set up easily using the buildingblocks. Although the methodology is simple, the quality of the building blocks depends on the experience and skillof the development team, as well as on the existence of an overall concept and the ability to identify patterns thatare valid for different configuration projects.The building block concept represents a new methodology thus and provides us with scope for enhancing of anumber of building blocks in future SAP Best Practices deliveries.