Subscribe by Email


Monday, December 17, 2012

Give an overview of the process of system performance validation with IBM Rational Performance Tester?


IBM brought the rational performance tester in to picture as an effort to automate the rigorous process of performance testing. Automated performance testing was required to make it possible to deliver high quality software to the end users.

- The Rational Performance Tester is a convenient means for accelerating the software system’s performance without impacting its quality. 
- Software performance bottlenecks can be identified very easily with the help of IBM rational performance tester. 
- Not only the presence of bottlenecks but also their causes can be identified.  
It is important to make predictions regarding the behavior and performance of the software systems and applications under extreme load conditions. 
Making wrong predictions can get the whole organization, its revenue as well as the customer’s at risk. 
This can prove to be hell devastating in today’s software engineering world where the competition is already soaring high. 

- Hence, a proper testing solution is required that would not only help you validate the performance of your product but also optimize and verify it under a number of load conditions. 
- IBM rational performance tester gives you more than just testing. 
- Using it, the scalability factor of many of the applications can be calculated. 
The rational performance tester supports code free programming i.e., the programming knowledge is not much required. 

In this article we provide an overview of the system performance validation using the rational performance tester. 

- Performance tests are contained within performance test projects.
- Instead of creating a new project, a test can be simply recorded which in turn will create a project immediately. 
- After a test has been recorded, it can be edited so as to include data pools, data correlation and verification points. 
- Data pools are required for obtaining variable data. 
- At verification points, it is confirmed whether the test is running as expected or not. 
- Lastly the data correlation ensures that appropriate data is being returned for the request. 
- Furthermore, protocol specific elements can also be added to a test.
- The items to which you make modifications appear in italics whenever a test is edited. 
- After saving the test it changes in to regular type. 
- A workload can be emulated by adding user groups and other elements to a new schedule.
- After being done with all the additions to the schedule, it can be run. 
- You can either run it locally or with a default launch configuration. 
- The playback might be slowed down because of the delays in HTTP requests. - The performance results of the application can be evaluated after being generated dynamically during the execution process. 
- After execution, the results can be regenerated for analyzation and viewing purpose. 
- The coding problems which are known to cause disturbances in the performance can be found and fixed using the problem analysis tools. 
- The data regarding the response time breakdown can be obtained using an application that has been deployed in a production environment. 
- Another means for collecting this data is from a distributed application implemented in a testing environment. 
- Resource monitoring data including available network, disk usage, network throughput, processor usage and so on can also be collected and imported. 
Resource monitoring data is important since one can have a comprehensive view of the system or application and this is helpful in the determination of problems.
- All the collected and imported data can be analyzed and later can be used in the location of the exact cause of the problem that is hampering the system performance.



Sunday, December 16, 2012

What are Six Best Practices in Rational Unified Process?


The IBM Rational Unified Process is a means of commercial deployment of the approaches and practices which have been proven for the development of the software systems and applications. It is based up on the following six best practices:
  1. Iterative development of the software systems and applications
  2. Management of the requirements
  3. Use of architecture based up on the components.
  4. Visual modeling of the software system
  5. Verification of the software system.
  6. Controlling the changes to the software system or application.
The above mentioned practices are called the best practices not because their value can be precisely quantified but because they are quite common in the software industry by most of the organizations which are successful and reputable.
In the rational unified process each and every member of the team gets templates, guidelines as well as the tools which are found necessary for the whole of the team in order to reap the full advantage.

Basic Practices In Rational Unified Process in Detail

Iterative development of the software systems or applications:  
Software systems and applications are quite sophisticated and therefore they make it impossible to define the problem first in sequence.
- By sequence we mean, first defining the whole problem, designing a solution of the problem, building the software system or application and then finally testing the software system. 
- In order to deal with such software systems and applications there is a requirement of an iterative approach so that an increase in the understanding of the problem can be made in a series of successive refinements. 
- This also helps in developing an effective solution in increments done over multiple iterations.

Management of the Requirements: 
The rational unified process gives a description:
- On how the elicitation, organization and documentation of the constraints as well as the functionality is to be done, 
- how the trade-offs and decisions have to be tracked and documented and 
how the business requirements are to be captured and communicated.

Use of architecture based up on the components: 
- The focus of the development process is on the base-lining and early development of an architecture that is robust and executable as well. 
- It gives a description of how a resilient architecture can be built with more flexibility that can accommodate the changes easily, can be easily understood and effectively promotes the reuse of the existing software artifacts. 
- The rational unified process provides a great support to the component based development. 
- By components we mean, the sub systems and non – trivial elements for a clear function.

Visual modeling of the software system: 
- The rational unified shows you exactly how a software system or application can be visually modeled and can be used for capturing the behavior and structure of its architectural components. 
- This further enables you to hide the details and develop the code with the help of the graphical building blocks. 
- With such visual abstractions, communication can be established between the different aspects of the software system or application.

Verification of the software system: 
- Poor reliability dramatically cuts down the chances of a software system or application from being accepted.
- Therefore it is important to review the quality concerning the factors namely functionality, reliability, system performance and application performance etc.

Controlling the changes to the software system or application: 
- The management and ability to track the changes are critical to the success of any software system or application. 
- However, the rational unified process helps you to cope with these issues also.




Saturday, December 15, 2012

What is IBM Rational Method Composer product?


One the major products of IBM is the Rational Method Composer or RMC. 

About Rational Method Composer

- This product has proved to be quite reliable in increasing the effectiveness as well as the agility of the software system or application.
- It provides platform that is quite flexible for process management. 
- This IBM product is equipped with the most comprehensive tooling of the software industry. 
- It also comes with the richest process library so as to provide assistance to the companies in the implementation of the effective processes so that they can come up with many successful IT and software projects. 

Characteristics of Rational Method Composer

  1. The rational method composer have some very new practices that will surely improve the performance of many of the leading process experience as well as expertise in the following areas:
Ø  Agile development
Ø  Governance and compliance
Ø  Requirements management
Ø  Quality management
Ø  Change management
Ø  Release management
  1. It helps greatly in the identification of the improvements that are needed by the mapping practices. The improvements identified by the rational method composer can be adopted in increments and improved also as per the business objectives of the project.
  2. The rational method composer offers a choice of over 100 process guidance that are both select-able and customizable and are inclusive of the IBM rational unified process. This guidance can help you in solving common management, business and development problems. 
  3. The facility of providing the corrective action and measured results is what makes the rational method composer more user friendly. Such measure let you harness the effectiveness of the practice adoption.
  4. With Rational Method Composer you get the privileges for managing, authoring, measuring, evolving as well as deploying the effective processes that are tailor made for your software system or application project needs since it is the leading the eclipse – based tool of the software industry.
  5. The rational method composer maintains consistency in driving the results across the whole project with the help of the best practices which have been proven and have been integrated with the following:
Ø  Measurements
Ø  Agile
Ø  Reporting
Ø  Project management tools and
Ø  Services
  1. A quantum leap forward is represented by the rational method composer and provides process solutions to IBM for the development of the software systems and applications, agile practices and service management.
  2. Rational method composer assists in capturing and maintaining the individuals’ own practices and further combines them with the practices and processes of IBM for achieving maximum result. 
One similarity that we can find in each and every project is that there is always a need to minimize the risk, ensuring the predictable results, delivering the high – quality results on time and so on.

Benefits of Rational Method Composer

- The practices provided by the rational method composer can be re-used for composing the process that is right – sized enough for meeting the specific requirements of the software systems and applications.
- The libraries of the rational method composer consist of the most robust practices.
- These practices are guidance for the software development, governance and management and can be very well applied to domains as well as the processes. 
- The following two libraries are shipped along with the rational method composer:
  1. The IBM rational unified process 
  2. The IBM practice Library


Friday, December 14, 2012

Transition Phase - One of the phase of Rational Unified Process


There are 4 phases which together constitute the rational unified process namely:
  1. Inception phase
  2. Elaboration phase
  3. Construction phase
  4. Transition phase
The above mentioned phases are responsible for the representation of the rational unified process at the highest level in the way which is similar to waterfall model representation but the difference is that the key for the rational unified process lies in the development iterations which form an integral part of all the phases of the rational unified process. 

Also, each of the four phases of the rational unified process are characterized by two things namely the objective and the milestone. The objective drives the whole phase from the beginning to the end and the milestone concludes the end of it. 

The phase is said to be complete with successful result if and only if it passes the milestone since this only marks the conclusion of the phase. All of the phases of the rational unified process are visualized in the form of a chart called the RUP hump chart which is drawn over the course of the whole process. 

In this article we shall discuss exclusively about the fourth phase of the rational unified process i.e., the transition phase. 

Objective of Transition Phase

- The primary objective with which the transition phase is driven is “to transit the software system or application” from the phase of development in to the actual phase of production. 
- This also extends the availability of the software system or application to the end user in such a form that it is understandable by the end user. 
- This phase involves the below mentioned activities:
  1. Training the end users
  2. Training the maintainers as well.
  3. Carrying out beta testing on the software system or application for validating it against the expectations of the end users.
  4. Checking the software product against the quality level that was set in the inception phase.
- When all the objectives are said to be accomplished, the software system or application is said to reach the ‘product release milestone’ and the development cycle is said to be concluded.
- This fourth phase of the rational unified process does the fine tuning of the software product.
- It is based on the feedback from the user and the software product is made ready for the release. 
- The transition phase is basically focused on the availability of the software system or application to the end users.
- The transition phase often involves the spanning of the several iterations. 
The software product is tested in order to prepare it for the release and also minor adjustments are made as per the feedback provided by the end users. 
When this point in the software development life cycle is reached, it is required that the feedback from the end user should be majorly focused up on the following issues:
  1. Fine tuning of the software system or the application.
  2. Configuration of the product
  3. Installation issues
  4. Usability issues
- By this time, almost all the major issues of the product structure should have been worked out in the earlier phases of the software development life cycle. 
The product release milestone can be defined as a point where it is decided that all the objectives of the project have been met and whether or not another development cycle is required. 
- The basic and majority of the evaluation as well as the refinement of the software system or application is done based up on the feedback from the user.
- This can be considered to be a kind of fine tuning exercise for the software system since the system has already met the requirements of the users as it is driven by the use cases. 
- At the end, a final evaluation is done and accordingly the project is released to the public or is considered for another development cycle. 


Thursday, December 13, 2012

Construction Phase - One of the phase of Rational Unified Process


There are 4 phases which together constitute the rational unified process namely:
  1. Inception phase
  2. Elaboration phase
  3. Construction phase
  4. Transition phase
For representing the process at a high level, it is necessary that all of the above mentioned four phases should work together just as it is done for the water fall styled model. But here the key difference is that the primary key to the process is nothing but the development iterations that are involved in each of the development phase. Each of the above mentioned phases is driven by the objective and ended by milestone. The RUP hump chart gives the visualization for all the above 4 phases. 

Here we shall talk about the third phase i.e., the construction phase. 

About Construction Phase of Rational Unified Process

- The construction phase is driven by the primary objective for building the software system or application. 
- The primary focus of the construction phase is taken up by the components development as well as the development of the other features of the software system or application. 
- A bulk of coding is carried out in this phase only. 
- For developing a large project, it is required that several construction iterations are carried out in order to make an effort for dividing the use cases in to the segments that are manageable and that can be used in the production of the demonstrable prototypes. 
- The software version that is released in this phase is its first external release.
- The elaboration phase is concluded with the initial operational capability milestone. 
- The major thing with which the construction phase is concerned is moving the executable architecture that was created in the elaboration phase to the operational system. 
- Therefore, a beta version of the software system or application is ready to be evaluated by the project team. 
- In the elaboration phase the software product resides on the architectural baseline.
- Here, it is moved to a system that is so complete enough that it can make transition to the end users’ community. 
- The architectural baseline is grown enough to become the completed operational system via the refining of the designing in to the code. 
- This phase acquires the largest part of the whole rational unified process. 
- The remaining part of the software system or application is built on the foundation that was laid earlier in the elaboration phase. 
- Short and time boxed iterations help towards the implementation of the features of the system where an executable release of the system or application is released at the end of each iteration. 
- In this phase, writing the full test use cases becomes customary where each one marks the beginning of a new iteration. 
- The elaboration phase makes use of certain UML (unified modelling language) diagrams which are mentioned below:
  1. Activity
  2. Sequence
  3. Collaboration
  4. State i.e., transition and
  5.  Interaction overview diagrams
- The purpose of the rational unified process is to provide the industry tested practices for the development, implementation and delivery of the software system or application. 
- It also provides a comprehensive frame work for the effective project management. 
- This process is actually one of the many other processes which are contained within the rational process library of the IBM RMC (rational method composer). - This makes it easy to make selection and deploy the only components that you need for your process. 
- The rational unified process is adopted for 1000s of the projects nowadays worldwide. 
- It lessens the burden of inventing a new thing again and again rather it focuses on re-usability. 


Wednesday, December 12, 2012

Elaboration Phase - One of the phase of Rational Unified Process


The life cycle for a project under the context of the rational unified process is known to consist of the following four phases:
1. Inception phase
2. Elaboration phase
3. Construction phase
4. Transition phase

Here we shall discuss about the second phase of the unified process i.e., the elaboration phase. In Rational Unified Process, the four phases represent the process at a high level although the iterations that are carried out in every phase of development are the key to the process. 

Each phase here is provided with an objective and a milestone. It is necessary to have a milestone for each so that it could be decided that when and where a particular phase is ending and the next one is starting. All the above phases as well as the process disciplines are visualized in to what is called an “RUP hump chart”. 

About Elaboration Phase in Rational Unified Process

- The primary objective of the elaboration phase is defined as the mitigation of the key risk items whose identification is done by the analyzation of the whole phase from the beginning till the end. 
- It is here in the elaboration phase where the project starts taking the shape. - In elaboration the following 2 basic things take place:
1. The analyzation of the problem domain is done.
2. Basic form is given to architecture. 

- The following are the outcomes of the elaboration phase:
1. A use case is obtained in which both the actors and use cases have been identified. This use – model consists of most of the developed use – case descriptions. It is required that this use – case model should be at least 80 percent complete. 
2. A description concerning the architecture of the software system in a development process. 
3. An architecture that is executable and realizes the use cases which have an architectural significance. 
4. A revised risk list.
5. A revised business case.
6. A plan for the overall development of the project. 
7. Prototypes which give a demonstration on the mitigation of the identification of the technical risks. 
8. An optional preliminary user manual.

- There is a milestone criteria called the life cycle architecture milestone which involves answering the following questions:
1. Stability of the architecture?
2. Stability of the vision of the product?
3. Have the major risk elements been addressed and resolved and has been indicated by the executable demonstration?
4. Has the sufficient detailing has been done for the construction phase plan and is it accurate?
5. Have all the stakeholders agreed for achieving the current vision using the current plan under the current architectural context?
6. Is the expenditure of planned resource vs. actual resource acceptable?

- It is important that the project should pass this milestone and if it doesn’t there are 2 possibilities:
1. It can either be redesigned or
2. It can be cancelled.

- However, when the project leaves this phase, the project is transitioned in to an operation that involves high – risk i.e., to say here the changes are quite detrimental as well difficult to be made. 
- The system architecture serves as the key domain analysis for the elaboration phase. 
- The basic thing here is addressing of the major technical risks threatening the project. 
- Another thing is to have a bare system which provides answers to all of the major technical questions. 
- Once all the questions have been answered by the end, the development team will know whether a working system can be successfully built or not. 



Tuesday, December 11, 2012

Inception Phase - One of the phase of Rational Unified Process


There are 4 phases which together constitute the rational unified process namely:
  1. Inception phase
  2. Elaboration phase
  3. Construction phase
  4. Transition phase
This article is dedicated entirely to the first phase of the unified process i.e., the inception phase. The major development takes place in the iterations of development which are carried out within each phase. All of the above four phases have their unique key objective as well as milestones.

The accomplishment of the objective is denoted by the milestone. An RUP hump chart is used for the visualization of all the four phases of the rational unified disciplines and phases over the time. 

Objective of Inception Phase

- The primary objective of the inception phase provide adequate scope to the software system or application as a basis on which the validation of the budgets and initial costing could be done.
- The inception phase involves the establishment of a business case which is inclusive of the following:
  1. Business context
  2. Success factors such as the market recognition, expected revenue and so on.
  3. Financial forecast
- In order to complement the business case, the following things are generated:
  1. A basic use case model
  2. Project plan
  3. Initial risk assessment
  4. Project description which in turn includes the following:
    a)   Key features
    b)   Constraints and
    c)   The core project requirements

- Once the generation of the above mentioned sources is complete, the verification of the project begins against the following criteria:
  1. Stake holder concurrence on the following:
  a)   Cost estimates
  b)   Schedule estimates and
  c)   Scope definition
  1. Understanding of the requirements as per the evidence obtained by the fidelity of the use cases.
  2. Credibility of the following:
  a)   Cost and schedule estimates
  b)   Priorities
  c)   Development process and
  d)   Risks involved
  1. The depth and breadth that was developed for any architectural prototype.
  2. Establishment of a base line using which the planned expenditures and actual expenditures can be compared.
- If for one or the other reason the project is unable to pass the milestone (commonly termed as the life cycle objective mile stone) then there are only two possibilities after redesigning the program (for meeting the criteria in a better way) as mentioned below:
  1. It can be cancelled or
  2. It can be repeated
- This phase is involved with launching the project. 
- A proper business case can be developed for the project. 
- It is by the end of the inception that the development team comes to whether to carry on with the project or not. 
- In inception phase, one can see a core idea being developed in to a vision for a product. 
- In this phase may reviews, discussions, etc. are carried out regarding the business case involved in the project. 
- The scope of the project is delimited in the inception phase and also the product feasibility is established. 
- This is perhaps the smallest of all the phases of a project and also according to its ideal nature it should be short. 
- If the duration of the inception phase is too long it indicates that there has been an excessive up – front specification (even though this goes against the spirit of the rational unified process.).


Facebook activity