Monday, September 08, 2008  
Google
Web pcquest.com

CIOL Network sites

Search by Issue | CD Search | Sitemap | Advanced Search


   
 Home > Best IT Implementation oF The Year 2008

Infosys Technologies : Productivity Enhancement Platform

Tuesday, June 03, 2008

For a company of such a large scale and magnitude, there are bound to be thousands of apps running or under development at a given point in time. And all these are fairly complex, with codes running into thousands of lines with multiple iterations, eating away from developer's productive time. The Information Systems division of Infosys runs a 24x7, globally accessed digital business engine for the entire group through a number of custom built applications on multiple technology platforms. The requirements have been exponentially increasing and there is constant challenge for scaling up the existing apps and building new apps, with rapid time to market. The project, 'PEP' (Productivity Enhancing Platform) was conceptualized to manage higher demands with quicker turnaround time; without compromising on the quality of products. The tools developed under the PEP initiative augment different stages of the SDLC. The following tools were envisaged for the different stages:

1. Prototyping and Build phase: Templating Engine
The Templating engine helps developers to automatically generate web pages for rapid prototyping, as per User Interface guidelines and standards. It includes a set of reusable library of templates for the presentation layer, which the development team can utilize to build their user interface layer pages for .NET 2.0 applications. The tool also provides the capability to define new templates and add them to the library. Displaying the template layout to the developer when he browses through the templates to find one which suits the current requirements came across as a challenge. Another challenge was to integrate the Templating engine with the Code Generator generated output.

2. Build phase:
Static Code Analyzer
It's a code analysis tool which checks .NET managed code assemblies for conformance to the IS department's Coding standards and Coding Best Practices. The tool also helps in increasing awareness on secure and performance oriented coding. It also enforces best practices on exception handling, data access etc. It provides information on code quality as defined in Infosys Product Quality Metric standards for .NET projects.

A Masters degree holder from NIT, Trichy, Ramesh drives the process and quality related initiatives at IS. He has been behind introducing various processes and the implementation of the Capability maturity model (CMMi). His initiatives to improve developer productivity have resulted in the creation of tools to automate activities in the software development life cycle.
Ramesh G, Group Project Manager

Q What sets this project apart from any other in this class, in short what's the USP?
PEP provides tools for templatizing, prototyping, code generation, validation and verification. It's easy to use wizard driven interfaces ensure that the user has to spend minimal time in learning how to use these tools. Moreover, PEP tools have been developed using the latest Microsoft technologies such as GAT&E, Text-to-Text Tranformation templates and have high extensibility.

Q What were the key challenges faced during this deployment?
Displaying the template layout to the developer when he browses through the templates to find one which suits the current requirements came across as a challenge. Another was to integrate the templating engine with the Code Generator output. The source code to CIL (Common Intermediate Mapping) was at times not direct and required development of robust algorithms.

Q What else do you plan for this project in future?
We plan automatic generation of the unit test code, integration of Templating Engine with Visual Studio IDE, provide features to generate Business Entitiy classes from Class Design as XMI in addition to current capabilities. We also plan to have code snippets in C# for mailing, data access, exceptions, etc.

Code Gen
A custom built tool to generate .NET 2.0 based C# and VB.NET code for Web Applications as per IS EAA guidelines. It was envisaged to achieve the following:

  • Reduce development effort during coding cycles.
  • Provide step-by-step guidance and enable standard adherence.
  • Generate code based on Database and Class designs
  • Automatic installation and inclusion of IS Infrastructure and Utility components

The tool has been implemented as an Add-in to the Visual Studio IDE. It provides guidance (also called as recipes) for database, business and presentation layers. Its custom Installation package ensures that the developer workstations are patched with the latest versions of the IS Infrastructure and Utility components and the Static Code Analyzer rules.

3. Performance testing phase
PeTRA (Performance Test Result Analyzer)
PeTRA is a web-enabled, custom-built solution which integrates with VSTS (Visual Studio Team System) to create a unique performance testing platform. The solution automates the task of collecting application level performance metrics needed from the outputs of the testing tool (VSTS) and Performance Monitor (PerfMon). It generates customized, on-demand, rapid reports to analyze the performance and diagnose bottlenecks. Also provided are potential fix recommendations to the application teams for different types of issues. The configuration details of the VSTS performance testing tool are present on the client side of the Tool. A plug-in had to be developed to transform the configuration details, which contains Tester's name, DB Server name, Web server name, Number of virtual users to be tested. Since Perfmon counters are required to be collected for every test being done, they had to standardize different counter parameters that need to be collected.

Page(s)   1  



Untitled 1


Do you know your Linux is SAP ready?

e-Book guide to improve your PPM Process

Remove Uncertainty with SAP


   
 


 
 

Magazine Subscription | RQS | Contact Us | Team PCQuest