Thursday, May 27, 2010

Some myths and challenges faced by BPT Methodology

Is designing test for an entire business scenario a time-consuming process?
Business Process (BP) – a BP should be well-documented written at a level that can be script. The BP should be understandable by people not familiar with business. It should be sufficiently detailed. If possible we can have Mercury Screen Recordings (MSR), Navigational flow etc.

Data – The input data required for executing the BP should be reusable. If it is not reusable, sufficient set of data should provided for automating the BP. For most of the finance modules data are not reusable.

Business Process should be complete, correct and accurate. Verifying BP completeness and correctness takes a lot of time, better to start off with these steps in mind as verification time should be used to ensure the quality of the scripts instead of verifying the quality of the BP. Don’t assume anything, design the test cases so that any person can run it or execute it. Design the test cases so that any person can understand what steps are to be validated.

Generally speaking, the more user involvement a BP requires the less desirable it becomes for automation. Though scripts build during development process are executed successfully, they are liable to fail during regression execution. The common errors and solutions can be summarized as:

Wrong Data is being used: Most of the time the script fails due to a mismatch between the data displayed in application and the data stored in Data Table. The solution for this is to change the incorrect value in the Data Table.

Script Flow has changed due to a new build or a new data: if this is the case we need to modify the existing script to add/remove the necessary steps. This is not acceptable because we are automating scripts with the same process. This may represent delays in our delivery date.

The script is running with a different user: The solution is to use the same user that we were using during the development phase or give the new user the same privileges that the user utilized during development had.

Data is burned: If this is the case we need to get or create new data in order to execute the script.

Are your scripts backward compatible i.e., can they run in lower versions?
Scripts execution in lower version of QTP: The other major problem faced in scripts are not backward compatable.ie.., scripts build in upgraded version of quick test professional like 9.2,cannot be executed in 9.0 or lower versions. This problem can be overcome by using BCIE (Bushiness component Import and Export) tool. Using this tool we can import the reusable component from higher version of QC and export it to lower version of QC. Scripts are then compatible with lower versions.

Does Subject Matter Experts require technical knowledge?
Even though creating Business Processes Test Script using accelerators might seem like a simple task, there are multiple factors and caveats that need to be taken into account.
1.The initial Components base might prove complete for some BP’s, but there will surely be a need to create new components in order to complete all the scripts.
2.Though the UI Scanner automatically generates the required components, it might be required to manually modify the QTP code, or even to manually create a whole component.
3.VB Script knowledge is welcomed, since sometimes, there might even be the need to create new functions in the libraries, or modify the existing ones. It is always better to have a technical architect in a project dedicated to handle Libraries, tool installation, debug and trouble shooting. A technical architect should have considerable knowledge of library architecture and descriptive programming understanding, should understand relationship between Accelerators libraries and Business Process Testing. The responsibilities of the technical architect would be to provide the team with wrappers and

Are accelerators only for ERP applications?
Accelerator projects are not restricted to only ERP applications like SAP, PeopleSoft,Seibel and Oracle. It can be customized for application like Metavance, web based application like SAP web portal by our technically expertise development team.

When to automate?

  • Business scenario that will run with each new version of your application
  • Business scenario that uses multiple data values for the same operation
  • Business scenario that create data for additional business scenario
  • Business scenario that require low end-user decision making
  • Complex or lengthy business scenario that are often run during business day.

Monday, May 17, 2010

Fusion Middleware: New features in Oracle Internet Directory


Going forward, I am planning to write more about Fusion Middleware 10g, Fusion Middleware 11g and Oracle Database 11g. These are the areas that I am developing more interest now-a-days. I am currently working on Fusion Middleware 10g. First of all, I am learning these new software. And when I write here I feel my knowledge level increases. The first Fusion Middleware component that I am going to write about is Oracle Directory Server and Oracle Internet Directory. Both are LDAP Directories from Oracle and part of Fusion Middleware (Why two LDAP Directories as part of Fusion Middleware? – Think about it).
I worked in multiple LDAP Directories during the last few years. A LDAP Directory is software that stores information or entries or data in a tree like format for easy access, it is based on a standard. As per my experience with LDAP Directories, these are the major LDAP directories:
  • Oracle Directory Server (earlier Sun Java/Iplanet Directory)
  • Novell’s eDirectory (earlier NDS)
  • Microsoft’s Active Directory (AD)
  • Oracle Internet Directory (OID)
  • openLDAP
Among these, I like Sun Java Directory (now, Oracle Directory Server) the most. It is because I worked on it first and it was from Sun, standards based, and works well in heterogeneous environments. There are other various reasons, but we will talk more about Oracle Internet Directory here.

What is Oracle Internet Directory?

Oracle Internet Directory is a LDAP Version 3 Compliant Directory Server from Oracle Corporation. Oracle Internet Directory (OID) is used in most of the Oracle Components (such as Oracle Single Sign On) and is one of the primary components delivered as part of the Fusion Middleware.
OID is used to integrate Oracle Middleware and applications and mainly used with Oracle Applications. Oracle Internet Directory stores its data in an Oracle Database. The directory store is an Oracle Database. Oracle Database is a required component to run Oracle Internet Directory. This is one of the major differences among the remaining four major LDAP directory servers.

New Features of OID in Fusion Middleware 11g

OID is delivered by Oracle for the use of Oracle Identity Management. This was part of the Oracle Application Server “Application Infrastructure” Component. So, Oracle Internet Directory is not a new component that is delivered as part of Fusion Middleware.  It was already there in Version 10g as well.
I am currently working on Oracle Internet Directory Version 10.1.4.2.0. Fusion middleware version of Oracle Internet Directory is called 11.1.1. There are few improvements between these two versions. I noticed that the improvements lie on these lines

1. Manageability Features

Oracle Directory Services Manager and integration with Weblogic Admin Server are the major changes in the OID Version 11.1.1.  Fusion Middleware is Weblogic-Centric. So it is time to learn Weblogic again. Oracle Process Manager and Notification Server (OPMN) is still used in Fusion Middleware for managing OID, as well as other components.
ODSM (Oracle Directory Services Manager) is replacing Oracle Directory Manager (oidadmin). ODSM is a new web-based management tool for managing Oracle Internet Directory in Fusion Middleware 11g.

2. Replication Features

One of the important features that you can setup is a multi-master replication using LDAP based replica model. In earlier versions, it was not possible. Earlier you need to use ASR based replication to setup a multi-master replication. Now it is possible to setup multi-master replication using LDAP based replication.

3. Instance Configuration

There are changes in configset information. Now every instance can have a separate rootDSE information. This was one of the major issue in earlier version. I need to explore this option more. I will write more about this later.
A last important note is: why Oracle is delivering two separate LDAP Directories now as part of Fusion Middleware 11g or as part of its Directory Services Offerings. Why Oracle supports Oracle Directory Server and Oracle Internet Directory? This is because; Oracle Applications are tightly integrated with Oracle Internet Directory. For Example, Oracle Single Sign On needs Oracle Internet Directory. This is one of the reasons Oracle is unable to move to Oracle Directory Server. Let’s hope this will soon change.
Let’s talk more about OID in coming weeks.  Until then

Read More about Fusion Middleware

Thursday, April 29, 2010

Moving to Oracle Server Technologies


Believe me; life is not easy when you are working with a Vendor Company, such as Hexaware Technologies that I work for (Hexaware is an Oracle Platinum Partner as well). I have to learn all the new things with the little time you get, sometimes you have to learn lot of things in less than few hours. For a person like me, this is exactly what I want and like to do. Learn new things all the time!!! That is my motto!

One thing I like the most here is, I have the freedom to move to other IT technologies that I have little or no experience with. However that was not easy for a person like me or anybody for that matter. You have to keep learning and understand new things that come up.

As you are already aware (or if you are reading my blogs for first time), I started my IT career as the Web Developer with Apache and Perl CGI development (really old technologies!!). After couple of years, I got bored with Web Development. Then, I moved into Unix System Administration, mainly worked on Solaris and HP-UX and related hardware and software. And again, I got bored with UNIX Administration and moved to Peoplesoft Infrastructure and Administrator positions.

I was a happy person (I am still happy!!) for almost 7 years working with Peoplesoft Infrastructure for many clients. Now, I got an opportunity to work in Oracle Server Technologies here, especially Oracle Database, Oracle Identity Management and Oracle Fusion Middleware technologies.

If you are in the IT industry, you have to know one thing for sure. Keep learning. We have to develop a mentality like kids have. They are always curious to learn new things and all the time. This is an important quality you have to develop if you want to excel in IT Technical career. You have to develop curiousness to learn new things (from internet, from other blogs, from collogues, from peers, from managers and almost everywhere!).

I started working in Oracle Server Technologies (Oracle Database, Oracle Application Server, Oracle Fusion middleware, Enterprise Manager etc ) less than a year ago. However, before starting, I had an fundamental understanding of what they are and why do we need them. You cannot build this in one day. You should be aware of other technologies. One major thing that helped me was, my UNIX skills. I am able to solve almost any problems if that runs on UNIX.

Two things you have to understand in UNIX World. Everything is handled as a file and everything runs in the server is a process. If you are able to make these two simple facts, then I am sure you will be able to fix any servers, anything that runs in UNIX/Linux.
Okay, I think we are going off topic. Other than books and internet, I use two simple ways of learning.

a) Blogging
b) Teaching/Mentoring

Both of these are not easy for me. I have to really develop mastery to some level before start teaching someone. Believe me, it is not easy to teach, especially in IT industry, it is difficult with all the new things popping up almost every second. That is why I wanted to start blogging more often and conduct more mentoring classes in Hexaware.

And now, within last one year, I have got quite an expertise on Oracle Server Technologies. During this time, my experience with UNIX, Web Development and Peoplesoft really helped a lot in understanding the architecture of the Oracle Server Technologies. I am still learning new things everyday (that is why I want to write here, at least I can use them later!).

I want to use this new blog site to start sharing knowledge, write about errors or failures and how we handle them (lessons learned) etc. I will start with a new topic here soon. Until then.

Wednesday, April 28, 2010

QATS @ Hexaware

Welcome to the world of QATS.
Our Motto
Strive for perfection
Our Goal
Testing to make the application fool proof
What we do
We at QATS live eat sleep test everything. Innovation is in blood. We do not talk about innovation but we live it.
We never take things for granted. We love our work and we never leave any stone unturned. This belief philosophy helps us differentiate us from other. The team strives to bring that wow effect in every engagement that we undertake.
The WOW effect
A testimony of our innovation @ our QATS is now also on Microsoft site. We hope you will keep coming again and again here.
We promise that we will serve you with more and more info/tips/solutions that will help you make your life easy.
For more details on the complete suite of QATS offerings check out this link
If you would like to learn more, check out this link http://www.hexaware.com/new_testing.htm

Wednesday, March 3, 2010

Processing Multiple XML Files through Informatica – 1


Problem Statement: Data to be processed in Informatica were XML files in nature. The number of XML files to be processed was dynamic in nature. The need was also to ensure that the XML file name from which data is being processed is to be captured.

Resolution:
Option 1 – Using File list as part of Indirect File Sources in session
Option 2 – Using Parameter File and workflow variable

Implementation Details for option 1: Using File list
XML file names to be processed were read using batch script and file list was created containing XML file. This file list name was set under source properties at session level. XML file were read sequentially and data pertaining to every XML file was processed. Since the number of XML files to be processed was dynamic the need of the hour was to achieve looping in Informatica.
Challenge in using File List – Created in a session to run multiple source files for one source instance in the mapping. When file list is used in a mapping as multiple source files for one source instance, the properties of all files must match the source definition. File list are configured in session properties by mentioning the file name of the file list in the Source Filename field and location of the file list in the Source File Directory field. When the session starts, the Integration Service reads the file list, then locates and reads the first file source in the list. After the Integration Service reads the first file, it locates and reads the next file in the list. The issue using XML file names in file list was further compounded by Informatica grouping records pertaining to similar XML node together. This lead to difficultly in identifying which record belonged to which XML file.
Batch Script – batch scripts controlled over all looping in Informatica by encompassing below mentioned tasks:
• Reading XML file names from staging location and creating file list containing XML file names.
• Moving XML files from staging location to archive location.
• Verifying whether there are any more XML files to be processed and depending on the outcome either loop the process by invoking first workflow or end the process
• Using PMCMD commands invoke appropriate workflows.
Workflow Details –
There were two Informatica workflows designed to achieve looping:
• First workflow –created indirect file to be used as source in session properties and will trigger second workflow. Details of workflow are:
o Command task will execute a DOS batch script which will create indirect file after reading XML filenames from a pre-defined location on server.
o Command task which will execute the second workflow to process data within XML files.
image1
• Second workflow will read process XML files and populate staging tables. Details of workflow are:
o A session will read XML file names using indirect file and load into staging tables.
o A command task will move the XML file just processed in file into an archive folder. Using batch script
o A command task will execute a batch script which will:
 Check whether there are any more XML files to be processed.
 If yes then it will trigger the first workflow. This will ensure all XML files are processed and loaded into staging tables.
 If no then process will complete.
image2
Thanks for reading, pls let me know have you faced any similar situation.

Thursday, February 18, 2010

PeopleSoft HCM 9.1 Succession Planning


How important is it to an organization?

The recession storm seems to have settled down and IT companies are in a hiring spree, much to the trend seen in the Formula one racing, its Schumi’s re-entry and some good show by Force India team and Adrian. It all seems to be drilling down to the race line.. eagerly awaiting to jump on the gas pedals in this 2010 season.

Yes, the software industry too – is looking forward for a jump start and many IT organizations are preparing themselves for the race, the race which will win them new clients in new areas and the world economy seems to get back in its ‘once’ fruitful track.

As many of you are aware, Oracle has come up with the PeopleSoft 9.1 Version with some cool features, Lets see why one of the new features of Peoplesoft 9.1 seems to be interesting as it justifies the HR operations with its functionality. One of the reasons for Indian IT organizations to spend a lot of effort and cost in hiring new employees and especially high profile positions within an organization seems to be the lack of succession planning and career planning.

Succession planning enables an employer to organize its talent pools based on the employees person profile, job code, position and a plan that is unique to it. Initial and continous mapping of employees competency, performance and interests with the employer’s goals (position, jobcodes) makes it easier for the organization to plan and sustain its growth in the event of its new project wins. As stated in
Learning Management System drives a companies growth
Peoplesoft 9.1 brings in easier integration options with the Enterprise Learning Management (ELM) module thereby providing consistent career paths for the employees to pursue inorder to accomplish the succession planning. Both the HR Administrators and Managers are well equipped with the Visualization (user friendly reports) and Self Service  layer in accomplishing the tasks.

Features like tracking an employee’s successor in terms of number of years makes the job even easier for the HR to identify / probably mine through the talent pool of the organization.
Let’s see how IT organizations are quick in implementing the Succession planning feature of PeopleSoft 9.1 and Let’s assure them that its a vital part for a growing organization.