Dec 28

There is a lot of talk about R12 upgrade, especially from a DBA point of view and the technology stack. But, what does it mean functionally? Read along for tips to minimize upgrade downtime, proven tools of a successful R12 upgrade and other considerations.
Minimizing Upgrade Downtime:
Downtime is very crucial for an upgrade. It could make or break the success of upgrade depending on if the upgrade can be completed in available downtime. Here are a few tips to manage the downtime. Apart from standard pre-upgrade tasks like completing payment batches, processing depreciation/ posting mass additions in fixed assets and create accounting/transfer to GL, using following options as part of pre-upgrade steps can reduce downtime significantly.
 GL Journal Entries Pre-upgrade program: It is an optional program which upgrades posted General Ledger journal entries before the planned downtime, leaving only un-posted journals and newly posted journals to upgrade during downtime.
 Upgrade by request: Due to this, minimal data can be included in initial upgrade. A minimum of 6 months of data is mandatory and can be updated to specific requirements of the client. Any historical data can be processed after upgrade is complete thus enabling reduced upgrade downtime
 Splitting the Upgrade: One more way to manage downtime is by splitting the database upgrade from application upgrade. By separating these two upgrades, downtime can be broken down into two smaller segments. This path also enables identification of issues with database upgrade separately from applications upgrade.

Upgrade Toolkit:
Following documents can help in tracking the upgrade steps and downtime over multiple iterations and note identified issue fixes.
 Upgrade Cookbook – It is a document similar to upgrade assistant available for 11i. It was prepared from information on R12 upgrade user guide and further customized to the specific client requirements. It provides the step by step process followed for Release 12 upgrade and helps in tracking the time taken for the steps in various iterations, summary of patches applied, issues fixed etc and also includes the steps from installation to final user acceptance.
 Data Verification Tracker – Apart from new functionality testing, verification of historical data accuracy is a very important part of upgrade testing and data verification tracker is an organized way to ensure it. This document contains pre-listed reports, queries and record counts which can be verified to ensure data validity. It also facilitates the tracking of data validation tasks
 R12 Manuals and RCDs – The scope of this document is to highlight the new features of R12 and compare the existing functionality and features with EBS 11i. This is very helpful for training and change management
 Issue Tracker – All the issues encountered during the upgrade (all iterations) are tracked. This document captures issue resolutions so the same can be incorporated in further iterations.
Conclusion
Apart from above mentioned tips and tools, change management is another aspect which is especially important for R12 upgrade. This is because of changes to UI and new functionalities introduced especially for financials. Enabling a few functionalities in R12 may also result in reducing the customizations. Talking about customization, migration of existing customizations may need additional attention especially related to payables due to change in architecture, table names etc
Are you planning an upgrade to R12? Please feel free to post a question.
References: Upgrade Guide: Release 11i to Release 12

Tagged with:
Dec 24

Software Testing is an activity being part of the software development process aimed at evaluating a software item (system, subsystem, unit etc.) features (functionality, performance etc.) against the given set of system requirements.

Types of Testing: Manual and Automation Testing

Manual testing is the process of manually testing software for defects. It requires a tester to play the role of an end user, and use most of all features of the application to ensure correct behavior. To ensure completeness of testing, the tester often follows a written test plan that leads them through a set of important test cases.

Automation testing is the use of software to control the execution of tests, the comparison of actual outcomes to predicted outcomes, the setting up of test preconditions, and other test control and test reporting functions. Commonly, test automation involves automating a manual process already in place that uses a formalized testing process

Automation testing can be performed on following types of testing:

  • Functional – Functional testing tests a system to verify that it meets its requirements.
  • Regression - testing that the behavior of the system has not changed after a major code change has occurred
  • Exception or Negative - forcing error conditions in the system.
  • Stress - determining the absolute capacities of the application and operational infrastructure. In short to test the reliability of the software
  • Performance - Performance testing is executed to determine how fast a system or sub-system performs under a particular workload.
  • Load - determining the points at which the capacity and performance of the system become degraded to the situation that hardware or software upgrades would be required. Load testing is a way to test performance.

Areas where Automation Testing should be prioritized:

1. Highly redundant tasks or scenarios 
2. Repetitive tasks that are boring or tend to cause human error 
3. Well-developed and well-understood use cases or scenarios first 
4. Relatively stable areas of the application over volatile ones must be automated.

 Advantages of Manual Testing

 1. Manual testing can be use in both small and big projects

 2. Number of test cases can be easily added/reduced according to change in requirement.

 3. Manual Testing is cheap as compared to Automated testing

 4. Easy to learn for new people who are entered in Software testing.

 5. Manual is more reliable then automated (in many cases automated not cover all cases)

 6. More bugs are found via Exploratory Testing. As, the more time a tester spends playing with the feature of the software the more bugs are found, which is not possible in case of Automation.

 Disadvantages of Manual Testing:

 1. User Interface testing is difficult to perform, especially when to test the color combinations.

 2. Actual load and performance is not possible to cover in manual testing for large number of users.

 3. Executing test cases manually is very time consuming.

 Advantages of Automation Testing:

 1. Test cases can be executed in limited time period.

 2. Load and Performance testing can be performed with no hurdles.

 3. It is best used in case of Regression testing (Repeatedly testing), where few test cases need to be executed repeatedly.

 4. Automated testing can be performed on different operating systems simultaneously.

 5. Automated tools are easy for volume testing. Volume testing is a way to test functionality.

 Disadvantages of Automation Testing:

 1. Every test case is to be converted to test script, so it is a time consuming task.

 2. Automation testing is more expensive as comparing with manual testing. Automated tools are very expensive that cannot be used by small organizations.

 3. Test Scripts are written in different languages and also all tools do not support all language of software. And moreover, the test script writer should be familiar with the all the languages (in which test scripts are to be written)

 4. The method/way of displaying the result is not user friendly. Information that is conveyed is hard to figure out.

 5. Automated tool may not identify missing heading tags since it cannot read the content.

 6. If there is a minor change in the requirement, or minor change in requirement, then whole script need to be changed and need to re-do all the things, whereas in case of Manual testing, only the required test case is modified.

 7. Not all tests can be automated and most times is difficult to decide what to automate and what to manually test.

 Some of the above disadvantages often cause damage to the benefit gained from the automated scripts. Though the automation testing has pros and corns, it is adapted widely all over the world.

Dec 06

With so much talk about “cloud computing,” it’s easy to feel lost in the clouds. The term cloud is used as a metaphor for internet, it being the foundation of cloud computing.

To define cloud computing in the simplest form would be: a set of shared resources, delivered over the web, powered by software. It involves the interaction of several virtualized resources and is often provided “as a service” over the internet. Instead of running your applications yourself, they run on a shared data center. When you use any application that runs in the cloud, you just log in, customize it, and start using it.

Broadly speaking, cloud computing can be grouped into 3 categories:

  1. Software as a Service (SaaS); Simplest form would be a web service or anything as extensive as a full blown application. For eg CRM on Demand, SalesForce.com, Gmail etc.
  2. Platform as a Service (PaaS); It encapsulates a layer of software and provides it as a service that can be used to build higher level services. For e:g Yahoo Pipes, Force.com etc
  3. Infrastructure as a Service (IaaS); Delivers basic storage and compute capabilities as standardized services over the network. Servers, storage systems, switches, routers, and other systems are pooled and made available to handle workloads that range from application components to high-performance computing applications

Then there are public, private and hybrid clouds. Public clouds are hosted environments, private being on premise and Hybrid clouds are co-located.

The benefits “Cloud” brings to a business is the independence from buying and maintaining the physical infrastructure and resources for the business applications. It helps companies reduce their TCO ( total cost of ownership) and keeps the business competitive with quicker time to market.

A few concerns that businesses may have with cloud computing are data security issues, compliance and control, SLAs, hidden costs like setups, early termination etc.

TarKia in Cloud Computing Space:

As more and more companies adopt cloud-based enterprise solutions, cloud computing has grown to represent a multi-billion-dollar business opportunity. Not to mention its biggest growth is still ahead. This trend has not only translated into real revenue opportunity, but it also given TarKia the chance to help shape an emerging market. As a Oracle Partner, TarKia offers implementation, integration, and custom application services that leverage the latest cloud computing technologies.

Something to talk about next would be clouds integration!

preload preload preload