Thursday, December 27, 2007

CMM levels(level 1 to 5)

CMM levels -----
Level 1- Initial --At Maturity Level 1 processes are usually ad hoc,and the organization usually does not provide a stable environment.Success in this organizations depends on the competence and heroics of the people in the organization,and not on the use of proven processes.In spite of this ad hoc,chaotic environment,maturity level 1 organizations often produce products and services that work.However they frequently exceed the budget and schedule of their projects.

Maturity level 1 organizations are characterized by a tendency to over commit,abandon processes in the time of crisis ,and not be able to repeat their past successes again.
Level 1 software project success depends on having high quality people.

Level 2-Repeatable--At Maturity level 2 Software development successes are repeatable.The processes may not repeat for all the projects in the organization.The organization may use some basic project management to track the schedule.
Process discipline helps ensure that existimg practices are retained during times of stress.When these practices are in place,projects are performed and managed according to thier documented plans.Project status and the delivery of services are visible to management at defined points(for eg:for major milestones and at the completion of major tasks)
Basic project management processes are established to track cost,schedule and functionality.The minimum process discipline is in place to repeat earlier successes on projects with similar applications and scope.There is still a significant risk of exceeding time and cost estimates.

Level 3-Defined--The organization's set of standard processes.which are the basis for Level 3,are established and improved over time.These standard processes are used to establish consistency across the organization.Projects establish their defined processes by applying the organization's set of standard processes,tailored if necessary ,within similarly standardized guidelines.
The organization's management establishes process objectives for the organization's set of standard processes,and ensure that these objects are appropriately addressed.
At level 3 the standards,process descriptions and procedures for a project is tailored from the organizatio's set of standard processes according to the organization's tailoring guidelines.
This contributes work products ,measures and other process improvement information to the organizational process assets.
The organization's set of standard processes are established and Improved over time.

Level 4-Quantitatively Managed--A quantitatively Managed process is a Defined process that is controlled using Statistical and other quantitative techniques.
Quantitative objectives for the product quality ,and process performance are established and used as criteria in managing the process.
People performing the process are directly involved in quantitatively managing the process and Statistical predictability is achieved.

Level 5-Optimizing--An optimizing process is a quantitatively managed process that is changed and adapted to meet relevant current and projected business objectives.
Focus is on continually improving the range of process performance through Incremental and innovative techniligical improvements.
Quantitative process improvement objectives are established and process improvement is inherently part of everybody's role,resulting in cycles of continual improvement.

Friday, December 21, 2007

CMM (Capability Maturity Model)

The Capability Maturity Model (CMM), also known as the Software CMM (SW-CMM), was first described by Watts Humphrey.The CMM is a process model based on software best-practices effective in large-scale, multi-person projects.

The CMM (and now CMMI) has been used to assess the maturity levels of organization areas as diverse as software engineering, system engineering, project management, risk management, system acquisition, information technology (IT) or personnel management, against a scale of five key processes, namely: Initial, Repeatable, Defined, Managed and Optimized.[2]
CMM was developed by the Software Engineering Institute (SEI) at Carnegie Mellon University in Pittsburgh. It has been used extensively for avionics software and government projects around the world.

Level 1 : Initial.
Level 2 : Repeatable(Managed).
Level 3 : Defined .
Level 4 : Quantitatively Managed.
Level 5 : Optimizing.

Lets discuss about the details of the 5 levels in the Next post.

Thursday, December 20, 2007

Useful Link

http://www.wilsonmar.com/1loadrun.htm

Loadrunner Tips

Now we can go further with LoadRunner.Lets take an example to know the importance of LoadRunner better.Consider the client-side application for an automated teller machine (ATM). Although each client is connected to a server, in total there may be hundreds of ATMs open to the public. There may be some peak times — such as 10 a.m. Monday, the start of the work week — during which the load is much higher than normal. In order to test such situations, it is not practical to have a testbed of hundreds of ATMs. So, given an ATM simulator and a computer system with LoadRunner, one can simulate a large number of users accessing the server simultaneously. Once activities have been defined, they are repeatable. After debugging a problem in the application, managers can check whether the problem persists by reproducing the same situation, with the same type of user interaction.
Working in LoadRunner involves using three different tools which are part of LoadRunner. They are Virtual User Generator (VuGen), Controller and Analysis.

1.Virtual User Generator --------------

The Virtual User Generator (VuGen) allows a user to record and/or script the test to be performed against the application under test, and enables the performance tester to play back and make modifications to the script as needed. Such modifications may include Parameterization (selecting data for keyword-driven testing), Correlation and Error handling.
During recording, VuGen records a tester's actions by routing data through a proxy. The type of proxy depends upon the protocol being used, and affects the form of the resulting script. For some protocols, various recording modes can be selected to further refine the form of the resulting script. For instance, there are two types of recording modes used in LoadRunner Web/HTTP testing: URL based, and HTML based.

2.Controller--------------------------

Once a script is prepared in VuGen, it is run via the Controller. LoadRunner provides for the usage of various machines to act as Load Generators. For example, to run a test of 1000 users, we can use three or more machines with a LoadRunner agent installed on them. These machines are known as Load Generators because the actual load will be generated from them (Load Generators were previously known as "Injectors" - the latter term is still widely used).
Each run is configured with a scenario, which describes which scripts will run, when they will run, how many virtual users will run, and which Load Generators will be used for each script. The tester connects each script in the scenario to the name of a machine which is going to act as a Load Generator, and sets the number of virtual users to be run from that Load Generator.
LoadRunner uses monitors during a load test to monitor the performance of individual components under load. Some monitors include Oracle monitors, WebSphere monitors, etc... Once a scenario is set and the run is completed, the result of the scenario can be viewed via the Analysis tool.

3.Analysis--------------------------------

This tool takes the completed scenario result and prepares the necessary graphs for the tester to view. Also, graphs can be merged to get a good picture of the performance. The tester can then make needed adjustments to the graph and prepare a LoadRunner report. The report, including all the necessary graphs, can be saved in several formats, including HTML and Microsoft Word format.

Notes:Testbed----A testbed is a platform for experimentation for large development projects. Testbeds allow for rigorous, transparent and replicable testing of scientific theories, computational tools, and other new technologies.
The term is used across many
disciplines to describe a development environment that is shielded from the hazards of testing in a live or production environment.
In
software, the hardware and software requirements are known as the testbed. This is also known as the test environment.
Testbeds are also pages on the
internet where the public is given the opportunity to test CSS or HTML they have created and are wanting to see the outcome.

Keyword-driven Testing----Keyword-driven testing is a Software testing technique that separates much of the programming work from the actual test steps so that the test steps can be developed earlier and can often be maintained with only minor updates, even when the application or testing needs change significantly.

Tuesday, December 18, 2007

Performance testing tool: LoadRunner

LoadRunner™ (sometimes mistakenly called Load Runner) is a performance testing tool from Mercury used for predicting system behavior and identifying performance issues. It is an element of the Mercury Performance Center™.

LoadRunner overview

LoadRunner allows you to emulate hundreds or thousands of concurrent users in order to performance test how an application operates under these conditions. With LoadRunner, you can:
  • Obtain an accurate picture of end-to-end system performance.
  • Verify that new or upgraded applications meet specified performance requirements.
  • Identify and eliminate performance bottlenecks during the development lifecycle
LoadRunner has also been customised and certified to work with ERP/CRM applications from PeopleSoft, Oracle, SAP, and Siebel as well as web-based applications.

Friday, October 26, 2007

Opportunity to join technology oriented product company.

Jobs @ EarlySail
EarlySail is an organization built on Customer Faith, Technology, Value and Culture. With a commitment to our customers to provide the most innovative product solutions of the industry, we retain and hire best available minds of the industry. Come and join us -- enjoy the freedom and feel the technology - The journey has just begun.
We hire excellent people for their attitude and train them for skills. By giving them mission-critical responsibilities from their first day on the job, EarlySail ensures the ability to respond to competitive challenges. Our people contribute in decision making and setting the direction of company to achieve our goal of building a high-impact company.
Highlight of our strategy is to develop a great team of top-notch professionals to serve each of our customers. We have developed deep knowledge and understanding of product engineering to identify and work on the most challenging and business critical problems facing modern companies.
EarlySail is a sister company of Vayusphere - a software company that was started with funding from world famous venture capital firm of Benchmark Capital and Marc Andreessen, the founder of the Netscape Browser.
JP Morgan, Deutsche Bank, Lehman Brothers, NBC, Realestate.com.au and many more have shown faith in our team's capabilities. We invite you to join the same team.
Further details on EarlySail are available at http://www.earlysail.com . Further details on our sister company Vayusphere are available at http://www.vayusphere.com
More @ EarlySail
Impressive customer list and opportunity to interact with them directly.
Stay close to Friends and Family -- One of the very few product companies in NCR region.
Freedom and encouragement to explore new technologies.
We are focused. We give responsibilities and expect accountability.