Discuss business intelligence, integration, compliance and a host of other SAP-related topics – implementation, best practices and resources to negotiate the world of SAP better!

« July 2011 | Main | September 2011 »

August 29, 2011

PERFORMANCE TESTING FOR THE SELF SERVICE APPLICATIONS - (METHODOLOGY,ISSUES, BEST PRACTICES )

The  entire lifecycle and testing approach which should be adopted for conducting a performance testing  approach for a newly implemented application which is highly critical in terms of determining the system behavior and performance for handling the  user   load  and helps us determining the effectiveness of the application. It helps the team to baseline their user load and simulate the production scenarios in the test environment and fine tune the performance related glitch.Once the issues are resolved it helps us simulate the production load  and thus enhance the overall performance of the system when it goes live.

 

Key Activities

Ø  Mining data from historical information

Ø  Interviewing key stakeholders for baselining the requirements for testing.

Ø  Gather performance testing SLA's

Ø  Understand percentage of expected invalid requests

Ø  Prioritize test requirements based on criticality and time

Ø  Document performance testing requirements

Ø  Review and signoff on Test requirements

Ø   Performance test team to drive the requirements collection process

Ø  System Architects, Development team and other technical experts

Ø  Business Analysts, Subject matter expert, End Users and other functional experts to provide required inputs

 

Issues/ Challenges (Performance testing) :

Test Scripting Phase  :

1.     Too many correlations make the script look complex. Due to the dynamic variables for the fields in the adobe form, the script gets many correlated values in it.

2.     The effective dates  should always be maintained as +/- 30 days from the current date. The date was hard coded and at times it requires validations to check the date when there is a failure in the script.

3.     For some complex and long forms if there are many fields in the script it makes  it complex while recording and prone to errors while execution

Test Execution Phase

§  Performance testing environment and Production Environment will not be  similar.

§  Frequent functional change activities planned at regular Intervals will impact the test scripts due to changes in the application functionality.

§  Coordination between different teams for Test data preparation and execution

 

§  For some tests with high user load, few links disabled after a good amount of transactions. (ESS link, Pay Change, Address info, etc...)

§  Executions fail due to the acceptance of minimal number of users by the servers. After certain number of transactions the error rate ramps up at a faster rate.

§  Frequent locking of ESS test id's which caused failure. Sometimes, these id's are forcefully released from the backend to go with the test.

§  For few tests, we get time out errors. When there is a server restart or the cache is cleared, the first few transactions might take a very long time. These errors can be taken care by increasing the Request time out.

§  For some tests, if the employees reporting changes in between the cycles of test with different reporting managers, the original scripts approval workflow scripts fails. Care should be maintained not to change any such data for the test dataset.

§  For few tests, there are initialization errors. This must be due to the insufficient space on the hard disk.

§  Due to non-availability of required network infrastructure, there can be minor and major slippages in testing schedules.

 

 

Solution Approach and Best Practice in Performance Testing

Ø   Centralized performance test team that takes ownership of testing each release prior to production deployment

Ø  Worked closely with the Functional team for KT, Requirement understanding and Test Data Creation

Ø  Identifying the Performance Critical scenarios across the applications.

Ø  Automating the test scripts for the scenarios using automation tools.

Ø  Test execution Results analyzed and Performance Bottlenecks identified

Ø  Analyze the impact of network bandwidth and Latency on application performance

Ø  Performance test reports should be presented to the client in a customized, simple reports summarizing the facts instead of the reporting the  complex tool generated system report which will not be user-friendly.

Ø  Data setup should be made easy through automated scripts which had significant time savings too.

Ø  Improved coordination by involving multiple technical and business teams during test execution and results analysis

Ø  Maximum knowledge retention through respective Centre of Excellence.

Ø  Run tests in exclusive test window not impacting other applications as Environment is normally  shared.

Ø  Run Health Check tests to check the availability of the applications before running a load test

Ø  Setting up Performance Test lab for network simulation.

Ø   Process documented knowledge transfer for future testing which can be baselined and referenced .

 




 

August 22, 2011

ESS MSS An Implementation Approach (Part 3)

Implementation Testing Issues and Solutions in Self Services Applications .

The blog highlights the critical and typical issues faced  during the testing phase and recommends the best practices to a good testing approach.Leveraging Testing Cycles to Train HR Service center and HR support team: Testing a system and being able to experience the resolution of issues has proven to be a powerful mechanism for getting the HR support/HRSC  team trained and prepared to support the production system post Go-Live.HR Service center team can also participate in the testing cycles (UAT phase)so that the training time for them  is reduced by 50%. By participating in testing cycles the support team will experience day to day real time scenarios that will soon become  easy and familiar to handle the functionalities  for the different self service applications and forms  when they go live in production

Issue : Self Service applications require an extensive set of data with many employees set to particular state. As we test each test case new employees are needed. For example if we are terminating employees as a manager role that are not terminated to continue to test.

Testing Approach: Create a "Build up" or "Tear down" as required  approach to testing based on what components  are implemented. We can create scenarios while do a hire of an  employee as  a part of test script and then use that employee to complete an entire lifecycle that test every self service component being implemented as a scope in the project. Also try to move the production master data to the test system by doing a client copy and consider which company codes or set of employees we can use for test data. Always separate the test data from the testing scripts so that they can be reused to accommodate different employees within different business scenarios. Sometimes we can also try the client refresh to "reset" employee data for the test cycle. This will return the testing environment data for the test cycles. This will return the testing environment data to a previous snapshot, while it will be helpful before each cycle of testing.

 Issue - Self Service applications require an extensive set of data with many employees set to particular state. As we test each test case new employees are needed. For example if we are terminating employees as a manager role that are not terminated to continue to test.
Test Approach : Create a "Build up" or "Tear down" as required  approach to testing based on what components  are implemented. We can create scenarios while do a hire of an  employee as  a part of test script and then use that employee to complete an entire lifecycle that test every self service component being implemented as a scope in the project. Also try to move the production master data to the test system by doing a client copy and consider which company codes or set of employees we can use for test data. Always separate the test data from the testing scripts so that they can be reused to accommodate different employees within different business scenarios. Sometimes we can also try the client refresh to "reset" employee data for the test cycle. This will return the testing environment data for the test cycles. This will return the testing environment data to a previous snapshot, while it will be helpful before each cycle of testing.
 Issue - Not enough Portal Users to complete test scenarios for functional and regression and Performance testing. Also a complicated set of users with varying passwords.
Test Approach: While we select the organization and employees, request the security team to create userID's based on what is assigned to info type 0105. Request every user should have a common password to limit confusion of testing .Make sure the HR master data is scrambled since it has sensitive information contained in the employee's Infotype records.
 Issue - Workflow notifications and system emails are being sent to active employees.
Test Approach  : Testing system notifications, such as emails, can be an issue and could expose the wrong people to HR data  that they should not have access to .Request a script be created by BASIS that will set all user emails addresses to a group emailbox that the testing team can access. Using this approach will make it easier to test system notifications and will reduce the possibility that data in emails is sent to the wrong email address and unintended users.
Issue - Many Self Service transactions can affect payroll processing. Lack of proper payroll testing could result in project delays or issues with end to end lifecycle testing.
Test Approach - If SAP Payroll is performed inhouse, allocate a payroll resource for your testing cycles that can run payroll for a specified payrollperiod. Payroll should be run at the end of a testing cycle and verified against the business scenarios that are been tested. Make sure all ESS related transactions get tested and approved by the Payroll Department. Services such as Online pay stubs, bank Information , W-4 Info should be tested and validated  by a subject matter expert in Payroll /Payroll Business user to make sure that the results are in adherence with the Business requirements and results.

Leveraging Testing Cycles to Train HR Service center and HR support team: Testing a system and being able to experience the resolution of issues has proven to be a powerful mechanism for getting the HR support/HRSC  team trained and prepared to support the production system post Go-Live.HR Service center team can also participate in the testing cycles (UAT phase)so that the training time for them  is reduced by 50%. By participating in testing cycles the support team will experience day to day real time scenarios that will soon become  easy and familiar to handle the functionalities  for the different self service applications and forms  when they go live in production.

August 19, 2011

Security optimisation and GRC Roll out - A Chicken and Egg story

Should we first optimize our security design or implement GRC? This is a common question that I come across while discussing with many of my customers. Why is this such a common question? What is the need to optimize the security design? Why can't we take the existing security design as a starting point and implement GRC? These are some of the questions that follow up the customer question. However anyone familiar with the way security design has been architected in the past will easily identify the need for answering the customer's question as that is the foundation of any compliance framework. Traditionally, security has been used as a tool to get the users to use the system by providing necessary (most of the times excess access). The focus has always been on using it as a technical option to grant access to the system. It was never perceived as a powerful tool in the hands of administrators or auditors for safeguarding the information assets. However with a overwhelming number of regulations and their regulations placing enormous thrust on safeguarding the information systems, organizations can not overlook access controls which forms the basis of any compliance framework. GRC is a powerful tool which can provide detective and preventive control mechanism to monitor access controls. It can help diagnose the SOD report (detective controls) and enable granting access to the system after adequate reviews are done(preventive control). However GRC is only a front end and the real benefit of implementing GRC can be reaped if and only if the back end system is cleaned. Security optimization aims to clean up the existing security architecture by critically analyzing the existing security design for relevance, redundancy, duplication and compliance. There is no one best approach / sequence for security optimization and GRC implementation. It will be good to initiate both the activities in parallel. However depending on the extent of clean up required, either of the two activities could follow up on the other.

August 14, 2011

ESS MSS An Implementation Approach (Part2)

It will be  very difficult to adopt the self service application when they are presented in an unstructured fashion. Making the relevant transactions available under a particular event or service delivers a better adaptability and user experience for the employee and reduces queries to HR service centers. Investigating the time spent up front in developing appropriate content which is suitable for the ESS transactions will be worthwhile.Process efficiencies can be improved if the processes checklists are used .Transactions associated to that event are grouped in logical steps. The content that accompanies the different workflows and  transactions offers a flow of advice that traditional ESS cannot provide alone. The checklist should contain informational steps and be created from an employee's point of view. Checklist can be created for Employees, Managers and HR folks. The checklists should be created for different user groups considering their requirements will be different.

Blue Printing and Building the Business Case
   Building the business case for self-service strategy and Implementation typically involves the four steps
1) Identifying the process applicants and participants: List the processes that you want to showcase via self services and the roles that are affected in the organization.
2) Identify Potential cost savings : Determine the cost savings considering process improvements , reduction in the unwanted process enhancements , reduction in processing times and data accuracy.
3) Assess the project parameters: Project Approach, timeline, and estimated cost for software and implementation.
4) Key Decision Making : This involves determining the company's internal dynamics, matching the costs to business goals, and identify cost associated with human components and the opportunity costs of  whether to pursue or not pursuing the project.
5) Identify key Processes, applications and stakeholders  Business case needs to include the process that needs to be redesigned , the applications that you will introduce to make the processes more efficient, and the roles that are affected. The publication of policies, procedures, links to forms, and the HR checklists that provide the foundation for self-service processes and applications.
The other category of self service is the simple transactions that can be completed in their entirety, change underlying data in the source HR system, and provide the employee with immediate feedback. It also includes HR data like Remuneration Statement, Compensation and Organizational data for Managers and reports for HR Generalists. The complex transactions that require collaboration of various people to successfully complete the process via workflow. This category includes transactions like promotions, transfers, salary changes, and terminations. These are fairly complex transactions and originate with employees or managers, reviewed by HR, and can ultimately be processed by an administrator or service center.
6) Alignment of Self Service Strategy with Business :  For any  business case the key factor alignment of the self-service strategy with the corporate and the HR service strategies. The business case should attempt to link the corporate and HR service strategies. The business case should attempt to link the processes that are being enhanced or implemented.
Identify Benefits and Potential cost savings: Once it has been  identified which processes  will be enhancing and the roles that are affected, we can begin to identify the benefits and potential cost savings that will be realized by adopting and implementing or extending the self service strategy. This varies greatly in each company and must be looked at very carefully. From a Company's perspective the following steps can help us complete the Return on Investments :
• Extract the transactional data from the  current HR system and determine how many transactions that we are targeting  for self service application on a monthly basis.
• Breakdown the transactional data metrics determining the source and connecting them to a larger process.
• Attempt to determine the total cost per transaction by looking at all the manpower  involved in the process surrounding and transactions. This involves loading the hourly effort rates and dividing them by the number of transactions that are completed on the average month.
• Focus on the data accuracy and issues that result with data entry on the forms being submitted to HR or the service center. Transactions that result in input error require significantly more time to correct and will alter the total cost per transactions because it engages more people that are normally required to enter and complete transactions.
• Estimate  the workload that HR and HR service centers need to perform to support existing transactions and contrast it to reduced workload or time savings after self service is introduced.
• Focus on costs associated with software licensing, hardware , support and increase technical resources.
• Include the following summarized costs with details available - Total internal and external budget needed to complete the project like requirements, design , development etc . , Total hardware and software budget, Total training, travel, required for implementing the new technology.

System Implementation
There will be many things to give consideration including access modes, required security, application versions and system testing.Firstly handle employee locking issues that prevent payroll and other processes from running. In small organizations, where the payroll group is familiar with most employees, the payroll group has been given access to SAP transactions AL08 . These transactions normally allow payroll department to check the exact users or employees are locking records.If the payroll deptt is unable to locate the records, they will terminate the session using the transactions as mentioned. In big organizations, it is best practice to automate the transactions. The solution on a custom portal application that looks into the account the employee's payroll area and mapped it against a payroll calendar. A custom table should be configured with dates and times that indicates when the payroll processing will be performed in the organization. The portal application would be placed in front of every transaction  that could potentially lock the record for prolonged period of time and , if it is determined that payroll was about  to run or was running , it would generate a message to the user indicating that the system was not currently available due to payroll processing. This approach would enable the payroll admin to control the payroll periods to execute payroll calendar. Another positive impact from automating this"blackout period" is that it allows payroll admin to set a threshold period around the time of payroll processing that prevents users from updating personal data that could negatively impact payroll results.

Online Access to remuneration statements and controlling when they appear .It is very important to keep some grace period between the payroll run and the paystub should appear to the employees. A delay in when employees can see their paystub will enable the payroll department to ensure that they have accounted for any corrections. Exposing the SAP Portal and self service functionality over the internet will enable employees to gain access from remote locations: Many corporate normally provide some kind of kiosk access for employees who do not have access to a computer in the workspace: Many corporate portals are designed to be accessible while the employee is in the workspace or through the use of a VPN using the company used computers. This approach will limit employers that want to access their personal information and enterprise applications from home or remote locations because some donot have laptops and using any company accessed machines. Providing self service access from the internet gives employees and managers the necessary tools, transactions and content- even when they are not at work in office. With the advanced security in the latest SAP Netweaver Platform, it is feasible to deliver portions or all of the functional processes contained within portals to users over internet. SAP portals have become more viable and well adopted tool for employees and managers if it is available over the internet, because it dramatically increases the ability to deliver information and transactions to all employees, regardless of their physical location.

Enforce a Security and Data Privacy stance prior to Rolling out Self service Functionality: Many high profile companies had security breaches that have generated system down time, loss of confidential information, and eventual loss of revenue in projects. Self service applications is mandatory to design the high end security for managers and employees to gain access to key HR information that is highly sensitive and can easily be used to cause damage to the employee or the enterprise. It is advice to review again and again the security policy and compliance before we even release self service applications for the first time. They should govern length and complexity of passwords, when passwords and timelines for change, sharing of passwords. Data privacy is also the chief concern to many users. Data origin and viewing of data across borders are of principal concern, as many companies with offices in foreign country need to confirm with the regulatory laws and local laws. We should also involve the legal and compliance department if we have a Global Implementation.
Automate the Hiring Process to Include Creating a user and Assign the appropriate security roles: The security and maintenance associated for granting access to this new hire can be expedited by implementing an automated process. Once the employee is hired into the organization. After the hiring action is complete, a background process is started that creates the userID.After the userID is created, it is then linked to the employee's IT0105, Subtype 0001, SY-NAME) and based on the position that the employee is hired to, additional roles are assigned to the user. User Creation, user assignment and authorization activities are all completed with these steps. Once the process is complete the information is synchronized with the LDAP server which the portals uses for authenticating and authorizing. If these steps are automated it has been observed that it is extremely cost savings and a reliable process which provides timely access in a timely manner.

August 8, 2011

SAP Best Practices Approach - Part 1

by Siddharth Tavargeri and Abhishek Tare

 

SAP Best Practices are packages provided by SAP. They encompass SAP's 35+ years of experience, design, and input from companies of all sizes and development contributions from over 36 SAP Partners. Best Practices can help customers control costs, reduce risks and drive more value from their SAP Solutions. While it is important to use SAP Best Practices for its obvious advantages, it is all the more important to select the right approach for its implementation. This blog explains what SAP Best Practices are and roadmap to select, download and implement the same. 

 

SAP Best Practices is an offering by SAP as part of SAP Business All-in-One Solution. It leverages SAP's vast implementation expertise across various industry verticals and geographies. It provides:  

·         Pre-configured solution for SAP modules across various industry verticals 

·         Comprehensive documentation

·         Implementation approach

·         Ready-to-deploy integrated business solutions

 

Let us try to understand what SAP Best Practices are?

 

SAP Best Practices consists of three layers:

·         Baseline Package

·         Country Localization

·         Industry content

 

Baseline Package: It comprises of an approach which supports the business needs of an organization. It is a pre-configured package integrating all the SAP modules for the Core end to end business scenarios like 'Purchase to Pay', 'Order to Cash', 'Plan to Produce' etc.

Country Localization: It consists of country specific scenarios and regulatory, compliance, taxes and other country specific requirements; country localization sits on the Baseline package and is seamlessly integrated

Industry Content: It consists of best of Business Scenarios specific to an industry vertical to support its business functions and is seamlessly integrated with baseline package and country localization.

Typically an ASAP based methodology is assumed for best practice implementation. During implementation, we need to select the appropriate building blocks from the baseline package, relevant to a country for an industry vertical. For example, we can have:

·         Org Structure, SD, MM, FI building blocks from the Baseline Package layer

·         US building block from the Country Localization layer

·         Building block for wholesale industry from the Industry content layer

Thus a business solution meeting the specific requirements of the company can be configured using the three Best Practices layers.

 

Now let us explore why we need SAP Best Practices:

 

Implementing SAP Best Practices for a Business Transformation Program results in:

 

·         Significant benefits by way of  time and cost savings  

·         Convenient and easy access to valuable repository of  Industry Best Practices and Processes

·         Reduction of as much as 32% in implementation time*

·         Reduction in consulting and in-house resources of up to 50%*

·         Lower Total Cost of Ownership (11% decrease on average over a 3-year period) * 

·         Lower maintenance costs (up to 22%)* 

·         Reduced project risks (average of 71%)*

 

SAP Best Practices contents Include:

1.     Documentation:

2.     Scenario overviews

3.     Business process documentation

4.     Quick Guide for prerequisites and  guided activation of settings

5.     Configuration Guide

6.     Training material

 

Pre-configuration:

1.     Pre-configuration settings 

2.     Sample master data 

3.     Configuration documentation

4.     Automation tools

5.     Print forms

6.      Use roles to leverage new SAP Net-Weaver Business client

*Source: www.help.sap.com

 

Now that we have understood what SAP Best Practices are let us see the steps that need to be taken to implement the same:

 

1.     Download: Select the appropriate deployment scenario from the SAP Best Practices documentation and download the relevant package

2.     Installation: Install SAP Best Practices form the DVD along with the required country packs

3.     Activation: Activate and test the pre-configured scenarios of SAP Best Practices

4.     Enhance: Enhance the SAP Best Practices pre-configured scenarios with additional requirements

5.     Adapt the Refine: Refine the system to meet the business requirements

 

There could be several approached for implementing the SAP Best Practices. Based on the project requirement, any of the following four approaches for SAP Best Practices implementation can be selected

 

Approach A:  Deploy a rapid prototype to preview and understand SAP applications and processes

Approach B:  Use Best Practice as a reference system to accelerate blueprinting and solution scope definition

Approach C:  Use Best Practice as a starting point for implementation project; 30 - 70% of business needs are met, and the rest can be flexibly added during the project

Approach D:  Use Best Practice for accelerated rollout of SAP to subsidiaries in different regions or industries from the parent company

 

In the next blog we will discuss each of these four approaches in detail. 

 

Subscribe to this blog's feed

Follow us on

Blogger Profiles

Infosys on Twitter