Subscribe by Email


Showing posts with label End-users. Show all posts
Showing posts with label End-users. Show all posts

Monday, December 24, 2012

What is IBM Rational Performance Tester?


What is a Rational Performance Tester?

- The Rational Performance Tester was developed by IBM to make the performance testing automated so that quality software could be delivered to the end users. 
- The performance tester is a great way to accelerate the performance of a software system or application without degrading its quality and this is what that matters the most. 
- This is a performance testing tool that has been developed exclusively for the identification of the cause as well as the presence of the software performance bottlenecks. 
- Using this tool, the testers can validate the scalability factor of most of the server and web based applications. 
- Further, it can be very well used for the creation of the tests in a code free style i.e., the need of programming knowledge is eliminated. 
- The test editor of this tool is quite rich in features and using it one can both the detailed and high level view of the performance tests. 
- The test data variation is automated here which means that the custom java code can be inserted possibly for making the test customization more flexible. 
With the rational performance tester the emulation of the user populations which are quite diverse in nature is possible. 
- Also, it provides you options for flexible modeling at the same reducing the processor and memory foot print.
- If any error is found, it is reported in the real time so that the performance problem can be recognized immediately. 
- The report is presented in the form of HTML web pages in the application window itself. 
- This tool collects server resource data and integrates it with the real time performance data from the application. 
- You can even perform load testing against a number of applications such as:
  1. HTTP
  2. SAP
  3. Sieble
  4. SIP
  5. TCP socket
  6. Citrix and so on.
- It works well on all the windows platforms plus Linux and z/OS. 
- The performance tests can be quickly executed. 
- You can determine what impact the load is having on your software system and application.
- The below mentioned are the basic features of the rational performance tester:
  1. Code free testing
  2. Root cause analysis tool: It helps you to dig out the root cause and diagnose it.
  3. Real time reporting
  4. Test data: It reduces the headache of generating the test data by providing you options for generating it from the scripts and data pools etc.
- It comes with a recording frame work which supports the recording of the tests consisting of a SOCKS or HTTP proxy, and service tests along with the socket recorder. 
- You have the privilege of making selections among the Firefox profiles that already exist. 
- Furthermore, it comes with a protocol traffic graph which gives a real time display of the amount of data that has been recorded. 
- There is a test annotation tool bar consisting of support for all the protocols and screen capture annotations. 
- With rational performance tester, it is possible to copy and paste the page elements in the HTTP tests. 
- The data correlation tools can be customized and written using the rules editor. 
- The automatic data correlation can be disabled either fully or partially. 
- All the references in a test can be viewed through a global view. 
- Now a wider variety of conditions can be implemented using the content verification points. 
- The fractional percentages are supported by the user groups. 
- Actions to be taken and messages to be logged can be specified for a particular condition in the case of error handling. 
- Reports can be made more presentable with the help of the custom verification points. 
- Java virtual machines can be used for collecting the resource monitoring data. 


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.



Saturday, April 2, 2011

Users involved in Development Process and End-Users who are involved indirectly in the development process...

GUIDELINES FOR END-USERS
The higher the level of the manager, the less he or she is likely to care about computer technology.
The goals and priorities of management may be in conflict with those of the supervisory and operational users.
Management may not provide resources, funding or time that the users feel is necessary to build an effective system.

The end users involved indirectly in the development process are auditors, standard bearers, and quality assurance group.
The objective of this group is to ensure that the system is developed in accordance with various standard set:
- standards by other departments.
- standards by government regulatory agencies.
- accounting standards.
- they do not get involved until the end of project.
- they provide the necessary notation and format of documentation.

Development Team
It is responsible in building the software that will supporta domain specific system.
System Analyst
Responsibility is understanding the system. Within this system, he identifies customer wants, and documents and prioritizes requirements.
System Designer
Responsibility is to transform a technology free architectural design that will providethe framework within which the programmers can work.
Programmers
Responsibility of the programmers is to write the codes of the software using a particular programming language based on system design.
Testers
Work product should be reviewed for faults and errors. It ensures thatwork products meet requirements and standards defined.


Thursday, March 31, 2011

What kind of people are involved in development process?

People play an important role in the development process. One should understand the people involved in the software development process, particularly, their interest regarding the system and the software that needs to be developed.

End-users are the people who will be using the end-product. Some end users are directly involved and some are indirectly involved. Those who are directly involved are:

- Operational Job: They perform the operational functions of the system. They are concerned with the human interface component of the system like what keyboard, display screen you are using? They have the local view of the system. They tend to think of the system in physical terms.

- Supervisor Job: They perform supervisory actions on daily operations of the system. They are most likely to be concerned with the operational efficiency of the functions that needs to be performed such as more output in less time. They also tend to have same local and physical view of the system similar with the operational users. they are the users who have more contact with the software engineers.

- Executive Job: They generally provide the initiative and serve as the funding authority of the system development project. They are less likely to be concerned with the day to day activities. They are more concerned with strategic issues and long term profit and loss. They are more interested in global view of the system. They are generally able to work with abstract models of the system rather than the physical terms.


Sunday, March 27, 2011

What is Quality and what are different perspectives used in understanding quality?

Quality is the total characteristic of an entity to satisfy stated and implied needs. Three perspectives are used in understanding quality:
- quality of the product
- quality of the process
- quality in the context of the business environment.

Quality of the Product
- The quality of the product has a different perspective for different people.
- End users assume that the software has quality if it gives what they want, when they want it, all the time. The ease of use and is also a important criterion for end users.
- For software engineers, they take a look at the internal characteristics rather than the external.

Quality of the Process
As software engineers, we valuethe quality of the software development process. Process guidelines suggests that byimproving the software development process,we also improve the quality of theresulting product. Common guidelines of process include Capability Maturity Model Integration (CMMI),ISO 9000:2000, Software Process Improvement and Capability Determination (SPICE).

Quality in the Context of Business Process
Quality is viewed in terms of the products and services being provided by the business in which the software is used. Improving the technical quality of the business process adds value to the business, i.e., technical value of thesoftware translates to business value.

To address quality issues:
- use quality standards.
- understand people involved in development process.
- understand the systematic biases in human nature.
- commit to quality.
- manage user requirements.


Tuesday, February 22, 2011

Performing User Interface Design - Design Evaluation

Design should be evaluated to check whether it meets the user needs or not once an operational user interface prototype has been created. Evaluation spans a formality spectrum that ranges from an informal test drive in which a user provides an impromptu feedback to a formally designed study.

- After design model has been completed, a first level prototype is created.
- Prototype is evaluated by user.
- User provides designer with direct comments about the efficacy of interface.
- Evaluation cycle continues until no further modifications to interface design are necessary.
- Once first prototype is built, designer collects a variety of qualitative and quantitative data that will assist in evaluating the interface.
- Qualitative data includes questionnaires like simple yes/no, numeric response, scaled response, likert scales, percentage response or open ended.
- Quantitative data can be got by a form of time study analysis can be conducted.

The evaluation criterion applied during early design reviews are:
- length and complexity of written specification of the system.
- number of user tasks specified and average number of actions per task.
- number of actions, tasks, and system states indicated by the design model imply memory load.
- interface styles, help facilities, and error handling protocol provides an indication of interface complexity.


Sunday, February 13, 2011

Interface Analysis - User Analysis

Interface analysis involves four steps:
- understanding the end-users who will interact with the system.
- understanding tasks that users should perform.
- understanding content.
- environment in which tasks will be conducted.

USER ANALYSIS IN INTERFACE ANALYSIS


Each user has a image or a perception of the software that may be different from the image and perceptions developed by other users. Information that is obtained from different sources can be used to understand users themselves as well as how people will use the system:
- User Interviews to better understand their needs, motivations and other issues.
- Sales input that is obtained when sales people meet with customers and users on regular basis.
- Marketing input
- Support input obtained when support staff talk with users on a daily basis.

To understand better the users of a system, interface designer can take help of following questions:
- are users trained professionals?
- what level of education?
- what is primary language?
- what and how are users compensated?
- what is age range?
- are users capable of learning from written materials or classroom training?
- what are consequences if user makes a mistake using a system?
- are users expert in subject matter addressed by the system?
- do users want to know about the technology that sits behind the interface?


Thursday, February 10, 2011

User Interface Testing - The Golden Rules

User interface design creates an effective communication medium between a human and a computer. User interface is designed by a software engineer. Interface design focuses on three areas:
- design of interfaces between software components.
- design of interfaces between software and other non-human producers and consumers of information.
- design of interface between a human and computer.

Rules Forming the Basis For A Set of User Interface Design Principles


Place the User in Control: Some design principles that allow the user to maintain control are:
- Define the current state of the interface in a way that does not force a user in to unnecessary or undesired actions.
- Flexible interaction should be provided because different users have different interaction preferences.
- It allows the user interaction to be interruptible and un-doable.
- The user should not be aware of the technical internals like operating system, file management functions etc. The user interface should move the user into virtual world of the application.
- It is good to design a macro mechanism that enables an user to customize the interface to facilitate interaction.
- The interface should be designed in a manner in which user will have direct interaction with objects that appear on screen.

Reduce the User's Memory Load
Some design principles enabling an interface to reduce user's memory load:
- Interface should be designed to reduce the requirement to remember past actions and results. This can be done by providing visual cues that enables a user to recognize past actions rather than to recall them.
- Establish meaningful defaults.
- Shortcuts should be defined that are intuitive in nature.
- The visual layout of the interface should be based on real world metaphor.
- Interface should be organized in a hierarchical manner. The information should be disclosed in a progressive fashion.

Make the Interface Consistent
Consistency means that all visual information is organized according to a design standard, input mechanisms are constrained to limited set used consistently throughout the application and mechanisms for navigating from task to task.Some design principles that helps in making interface consistent are:
- Allow the user to put the current task into meaningful context.
- Consistency should be maintained across a family of applications.
- Do not make changes in past interactive models that have created user expectations unless there is some solid reason to change.


Wednesday, February 2, 2011

Analysis for Web Applications - The Functional Model and The Configuration Model

The functional model describes two elements of web application :
- User Observable Functions: Delivered by web application to end users. It encompasses any processing functions that are initiated directly by the user. These functions may be implemented using operations within analysis classes but from the point of view of an end-user, the function is the visible outcome.
- Class Operations: Implement behaviors associated with the class. These operations manipulate class attributes and are involved as classes collaborate with one another to accomplish some required behavior.
The UML activity diagram can be used to represent processing details.

The Configuration Model describes the environment that the web application will require on both the server and client side of the system. Although it is very important to consider all configurations that are likely to be used, a web application must be engineered to serve its end-users. Web application resides on a server that provides access via Internet, Intranet or an Extra-net. Server hardware and operating system must be specified. Also, interoperability considerations on the server side should be considered.

Client side software provides an infrastructure that enables access to web application from user's location. Web application content and functionality is delivered by browser software. Each browser has its own peculiarities.


Tuesday, February 1, 2011

Overview of The Interaction Model - Use cases, Sequence diagrams, State diagrams, User interface prototype

The interaction model of web applications enables a conversation between an end user and application functionality, content, and behavior. Interaction model is made up of four elements:
- Use cases
- Sequence diagrams
- State diagrams
- User interface prototype

Some use cases describe the interactions between end user categories and the system. Other use cases refine the interactions, providing the analysis detail necessary to guide design and construction. Use cases provide a one-dimensional view of the interaction.

Sequence diagrams are a shorthand representation of the manner in which dynamic elements(user actions) collaborate with the structural elements(analysis classes) of the system. There is a need to ensure that traceability exists between the classes that have been defined and the use-cases that describe system interaction. Sequence diagrams can be created for each use-case once analysis classes are defined for the use case. Sequence diagrams present a second dimension that is more procedural in nature.

As the interaction occurs, state diagrams are another way to represent the dynamic behavior of the web application. State diagrams can be represented at different levels of abstraction. State diagrams provide a third dimension that is more behavioral and contains information about potential navigation pathways that is not provided by use cases or the sequence diagram.
Large complex web applications benefits from interaction model that encompasses the three representations : use cases, sequence diagrams and state diagrams.


User Interface Prototype : The layout of user interface, content it presents, interaction mechanisms, and overall aesthetic of user-web application connections have much to do with user satisfaction and the overall acceptance of the web application. User interface prototype is performed during the creation of analysis model.


Wednesday, August 18, 2010

Overview of User Acceptance testing - what does it mean and what are its forms.

User Acceptance Testing is often the final step before rolling out the application. Usually the end users who will be using the applications test the application before ‘accepting’ the application.
A formal product evaluation performed by a customer as a condition of purchase. The testing can be based upon the User Requirements Specification to which the system should conform. Use Acceptance testing is black box testing.

USER : System developers cannot do it, as although they are expert in writing software, they are unlikely to know anything about the realities of running the organisation, other then what they have acquired from requirements specifications, and similar documents.

Acceptance : The acceptance of a system means you are confident it will give benefit to the organisation. It does not mean that it only meets the original specification as requested.

Testing : Whenever people are asked what testing is, many of them say it is to prove the system works.
The point of UAT is for business users to try and make a system fail, taking into account the real organisation it will be working in.

User Acceptance testing can be in the form of :
Alpha Testing - Tests are conducted at the development site by the end users. Environment can be controlled a little bit in this case.
Beta Testing - Tests are conducted at customer site and development team do not have any control on the test environment.


Facebook activity