Subscribe by Email


Showing posts with label Interfaces. Show all posts
Showing posts with label Interfaces. Show all posts

Saturday, August 31, 2013

What is the difference between leaky bucket algorithm and token bucket algorithm?

- Telecommunications networks and the packet switched computer networks make use of the leaky bucket algorithm for checking the data transmissions. 
- This check is carried out in the form of packets. 

About Leaky Bucket Algorithm
- This algorithm is used for determining whether the data transmissions confirm to the limits that have been defined for the burstiness and bandwidth. 
- Leaky bucket counters also use the leaky bucket algorithm for detecting the peak or the average rate of the stochastic or random events and processes and if they are exceeding the predefined limits. 
We shall take analogy of a bucket for explaining this algorithm.
- Consider a bucket having a hole in its bottom through which the water it has will leak away. 
- The rate of leakage is constant if it is not empty. 
- We can intermittently add water to it that is in short bursts. 
- But if a large amount of water is added to it in one go, the water will exceed the bucket’s capacity and overflow will occur. 
- Hence, it is determined using this leaky bucket algorithm that whether or not adding water to it will make up the average rate or will exceed it. 
- Leak rate sets the average rate of adding the water and depth of the bucket decides the amount of water to be added. 
- Asynchronous transfer mode networks use the generic cell rate algorithm which is one of the versions of the leaky bucket algorithms. 
- At the user network interfaces, these algorithms are used in the usage/ network parameter control. 
- The algorithm is also used in network-network interfaces and inter-network interfaces for protecting networks from the overwhelming traffic levels through the connections in the network. 
- A network interface card can be used on a network using ATM for shaping the transmissions. 
- This network interface card might use an equivalent of the generic cell rate algorithm or this algorithm itself.
- The leaky bucket algorithm can be implemented in two different ways both of which are mentioned in the literature. 
- It appears as if there are two distinct algorithms that are together known as the leaky bucket algorithm.

About Token Bucket Algorithm

- At an interval of every 1/r seconds the token bucket algorithm adds a token to a bucket. 
- The maximum number of tokens that can be handled by a bucket are b. 
- Any token above this limit is rejected by the bucket. 
- When the bucket receives a packet from the network layer consisting of n bytes, the n numbers of tokens are taken out from the bucket and then the packet is transmitted in to the network. 
- If number of tokens available is less than n, the packet is treated as being non-conformant. 
- A bucket with a fixed capacity is associated with some virtual user and the rate at which it leaks is fixed. 
- No leakage occurs if there is nothing in the bucket. 
- Some water has to be added to the bucket in order to make the packet conform-ant. 
- No water is added to the bucket if adding this amount of water will cause the bucket to exceed its capacity. 
- Therefore, we can see that one algorithm adds something constantly to the bucket and removes also for conforming packets. 
- The other algorithm removes something constantly and adds something for confirming packets. 
- Both the algorithms are same in effectiveness and this is why the two see each the same packet as non-confirming or confirming. 
- The leaky bucket algorithm is often used as meter. 


Saturday, December 22, 2012

What is Rational Synergy Tool?


A task based configuration management tool was released by IBM called the Rational Synergy Tool. 

What does Rational Synergy Tool do?

- It enhances the development of the software systems and applications. 
- The development process was enhanced in terms of speed and ease by making actual improvements in the collaboration as well as communication among the team members.
- Rational synergy tool prepares a release management platform which is unified change and configurable. 
- It then brings the distributed and global team on this platform. 
- Thus, it helps in accelerating the build management and release processes which in turn amplifies the efficiency of the limited resources that are used in the development process. 
- It also plays great role in the unification of the distributed development teams. 
- All these factors contribute to the improvement of the performance of WAN or wide area network which is important for distant sites and global workers. 
- This has enabled the team members staying in different parts of the world to come together on work on a central data base that is provided by the rational synergy tool over the WAN. 
- This aids in the reduction of the need of simplification of the complex challenges in the development and replication. 
- The Rational Synergy Tool provides a complete solution to assist the organizations in improving the quality of their distributed development processes. 
- The environment provided by the rational synergy tool includes support for both the distributed as well as the centralized modes. 
- This tool comes with a powerful engine which drives the collaboration development, component based development and software reuse. 
- It assists you in achieving the desired resilience targets and scalability factors by integrating with the IBM rational and other partners. 
- The IBM rational synergy tool helps you with the following tasks:
  1. Configuration management of the end to end tasks.
  2. Baselines management support
  3. Advanced release management support
  4. Works as a single repository solution by integrating with the IBM rational change for software configuration and change management.
  5. Provides advanced support for parallel variants and development.
  6. Reduces the productivity and overhead for the software developers.
  7. Supports component based development
  8. Provides advanced SCM needs
  9. Supports global and distributed development.
- IBM rational synergy tool helps you to gain full control over the maintenance activities, document development and software. 
- No matter what size is your team, the rational synergy tool supports all from small to large development teams. 
- Also, in which environment your team is working i.e., whether in a distributed environment or a heterogeneous environment, it really does not matter for rational synergy, it supports all. 
- The process of maintenance of the multiple versions of the files in an archive is all managed by the rational synergy. 
- There are other tools available such as RCS or PVCS or SCCS which do control file versions but they are void of many benefits such as the following:
  1. Rule based configuration update
  2. Product reproducible
  3. Work flow management and so on.
- There is a lot of difference between the version control tools and rational synergy. 
- But the users who have experience with these version control tools should not find it much difficult to make transition to rational synergy. 
- The rational synergy comes with 2 types of interfaces namely:
  1. Synergy classic: This interface comes with CM capabilities which are important for admins.
  2. Rational synergy: This interface has been developed exclusively for the users who are build managers and developers.
- The rational synergy’s command line interface is applicable for both the UNIX and windows platforms. 
- Rational synergy as a configuration management tool provides a unique and easy way for the creation of a baseline. 


Friday, October 12, 2012

What are main features of Silk test?


The Borland silk test automation tool is said to possess all the features and qualities that an ideal testing tool is said to have. Therefore, in this article we shall focus on the features of the Borland silk test automation tool.

  1. It is quite easy for use since it is possible for the business users to create the automated tests without requiring any actual software coding.
  2. Further the silk test automation tool takes lesser time for its deployment i.e., it can be deployed fast which in turn enables the software testers to keep an appropriate pace with the rate with which the development takes place.
  3. It's third most important feature is its flexibility while use which in turn enables the software developers to create tests in an integrated development environment that is chosen by them only.
  4. The fourth feature of the silk test is that it provides the role based test automation. Usually it happens that the domain experts, business analyst, developer or automation engineer – all of these people have their own way of working i.e., they have a tendency to work with different interfaces such as some may work with a visual interface, others with script based or some others with interfaces that are IDE powered. The silk test automation tool provides each of them with a suitable interface with which they are comfortable. Thus, in a way a kind of empowerment is granted to the users so that they can participate in the testing process with confidence and ensure that their critical applications go through a continuous validation.
  5. Fifth most popular feature is the cross browser web testing by silk test. Most advance web 2.0 applications can be verified for their functionality very well before you are able to launch them with confidence. Using silk test automation tool, one powerful script can be used for carrying out testing in  a number of different  browsers as well as browser versions as well as in locales such as the following:
a)     Microsoft internet explorer
b)     Mozilla firefox
c)     Google chrome
d)     Html 5
e)     Fx
f)      Ajax
g)     Microsoft silverlight
h)     Java and so on.
Even the embedded technologies can tested very well at speeds that are non -parallel with that of the any other software test automation tool.
  1. Sixth feature is the support for the .net and java platform and scripting language. With silk test, it really does not matters now that whether you go for vb. Net, C#, java which are industry standard languages or you go for 4test language of the silk test. Using any of these you can improve the working of the silk test in whichever environment you are working up on. Both visual studio as well as the eclipse is supported by the silk test and it takes care that they can be well integrated with the acceptance tests and unit tests frame works such as fitness e.
  2. Seventh feature of the silk test is its powerful recorder. The powerful recorder of the silk test has got many powerful features which enable the quick capturing of the reusable as well as the common sequences of the test steps. There is also a provision of the easy modification and customization of the sequences so that they can be reused in the test automation frame works.
  3. The eighth feature is the debugging feature of the silk test. The debugging feature of the silk test consists of some powerful debugging capabilities which enable one to step through the automation sequence and check out what is actually happening there. 


Monday, September 17, 2012

Explain about the QTP Automation Object Model? What is the use of Text output value in QTP?


Automation object model or AOM is one of the important utilities provided by the quick test professional and this is what that has been discussed in this article. 
Before going on to the main topic we shall discuss about what an object model is?

What is an Object Model?

- An object model can be considered to be a structural representation of the classes or the software objects that are responsible for the implementation of the software system or application. 
- A set of classes and interfaces is defined by an object model along with their other aspects like:
  1. Relationships between them
  2. Events
  3. Methods
  4. Their properties and so on.

What is Quick Test Professional Automation Object Model?

- The quick test professional automation object model can be used to write the test scripts. 
- The test scripts that are written using the qtp automation object model are used in the process of the automation of the operations of the quick test professional. 
- Objects, their methods and properties are provided by the qtp automation object model which enables the tester to control the quick test professional via some other software system or application. 
- For automating any of the quick test professional operations scripting languages like those mentioned below:
  1. Java Script
  2. Visual C++
  3. .net
  4. Visual basic script and so on.
- This quick test professional automation object model basically serves the purpose of automating the operations of the quick test professional. 
- With the new version of the quick test professional automation object model the test management process can be also automated. 
- With this feature a virtual control over each and every feature of the quick test professional can be maintained and also grants power to control the capabilities. 
- The capabilities can be controlled with the properties, methods and objects that are included with the quick test professional automation object model. 
- The quick test professional automation object model has made it quite easy to perform the quick test operations multiple times in multiple tests. 
- There is no need to open the quick test application software again and again. - There are several other tasks that can be performed using the quick test professional like:
  1. Such scripts can be written that can modify the properties of the test object description in the object identification dialog box.
  2. Scripts that can perform an update run on all the tests can be written.
  3. A newly installed add- in can be associated to all the relevant tests by means of an automation script.
  4. Automation scripts for running a selected batch of tests can be written.
  5. In quick test professional the settings for a test can be defined. Then clicking up on the “generate script” will generate an automation script that will be based up on the current settings of the test. These same current test settings then can be applied to multiple tests automatically without any manual intervention.
- The automation object model is considered to be a collection of objects, their methods and properties by most of the people.
- Any of the quick test operation that has been described in the quick test professional interface can be performed throughout this quick test professional automation object model. 
- It would not be wrong to say that the automation object model is a concept that is implemented in order to automate the whole quick test professional.

Use of Text Output Value in QTP

- There are certain types of output values in qtp and text output value is one of them. 
- With the help of these values the values which the software system or application is taking can be viewed. 
- They provide a means for capturing the values taken by the application in every run and put them in the data table. 


Monday, August 6, 2012

What are all the different platforms where WinRunner can be used?


Winrunner and winquick are two of the most powerful functional testing tools ever developed. These two software packages actually are a complete functional test suite.
Winrunner is the older testing tool and had been quite popular among the software testers. Winquick is a new addition to the family of such tools. 
It was because of some of the cons of the winrunner that the HP introduced another such functional testing tool that would overcome the limitations of the winrunner and thus winquick came in to the scenario. 
This limitation was that the winrunner was not compatible with every platform that we have today. 
In this article we shall discuss more about this and what all are the platforms that are supported by the winrunner. Intially people invest too much of time, money and infrastructure in their winrunner code and eventually what happens is that towards the end they find that they have to migrate to some much better tool because the platform on which they are building their software system or application is un supported by the winrunner.

The following are the platforms on which the winrunner did not function well:
  1. .NET
  2. XML
  3. Multimedia
  4. Mozilla fire fox
Rest on all the platforms the winrunner seems to be working well.
Its successive counterpart the QTP seems to have a cutting edge over all these limitations of the winrunner. It comes with many advance features like:
  1. Active screen technology
  2. Smart identification
  3. Uniform parameterization and so on.

For the organizations which are building applications upon the above mentioned platforms find Quick test pro (QTP) quite helpful then winrunner. 

- For the organizations that already made a huge substantial investment in the winrunner platform, the introduction of the QTP came as a dilemma. 
- It is a tough thing for them to maintain and manage the code and resources in both the platforms. 
- This shows that even with the years of investment in developing a much better winrunner do not hold good in QTP.
- One of the ways that are being sought for overcoming this problem is the migration of the existing winrunner suite in to QTP and at the same time consolidating the base code. 
- But this way also has got a problem which is that the manual migration proves to be quite cumbersome. 
- This problem arises because of the technical and architectural difference between the QTP and winrunner. 
- Moreover, the time consumption in manual migration is more and generates quite a large number of errors.
- Such errors can make the whole migration quite cumbersome and this will cause disruption in the regular business. 
- There is a solution for this problem also and is known as winQuick. 
- Winquick provides an automated migration solution. 
- For platforms like linux and unix a separate version of winrunner was created called the Xrunner.
- But now we guess the use of this Xrunner is not known.

The below mentioned platforms are supported by the version 7.0 of the winrunner:
  1. Windows 95
  2. Windows 98
  3. Windows NT
  4. Windows 2000
The automated testing of the graphical user interfaces is looking up to a new scenario where a majority of the software systems and applications are being based up on web and the complex and sophisticated graphical user interfaces have become their point of operation. 
The winrunner has proved to be a pioneering tool that has been widely accepted by many for GUI testing. Contrary to the winrunner, the QTP follows the modern conventions of the object oriented programming. However the winrunner system has been declared retired since 2011.


Wednesday, June 13, 2012

What is a structure point and what are its characteristics in domain engineering?


Structure points are one of the terms with which most of us are rarely familiar. But, the structure points indeed play an important role in the domain engineering.  Those who know something about the domain engineering, might be familiar with the term. This article is all about the structure points, their characteristics and what role have they got to play in the domain engineering. 
But, before moving on to the structure points, you need to know at least a little about the domain engineering.  

About Domain Engineering


Domain engineering consists of 3 primary phases namely:
  1. Domain analysis
  2. Domain design
  3. Domain implementation
- Firstly, the application domain that is to be investigated is defined and all the common and varying points obtained from the domain are categorized. 
- These common and varying points are represented by the domain model. 
- The representative applications that are the result of the domain analysis are subjected to analyzation based on which the domain model is prepared which serves with the development of the architecture of the software system or application. 
- This process results in the formation of another model called the structural model. 
- This structural is said to consiss of a small number of structural elements in which you can clearly observe the interaction patterns manifesting. 
- The architectural that has been created in the previous steps can be re- used wherever required in the whole domain.
- The structural model is where the structure points come in to play! They act as distinct constructs within the structural model aspects like:
  1. Interface
  2. Response mechanism
  3. Control mechanism etc.
The domain engineering promotes the re- use of the components of the existing software systems or applications. A repository of the re- usable components or artifacts is created.
Now moving on to the characteristics of the structure points, they have got three basic characteristics:

Characteristics of Structure Points


1. The structure points ought to implement the concept of information hiding by the means of isolating all the complexity of them. This has provided a great deal of help in the reduction of the overall perceived complex nature of the software system or application.

2. With the structure points, abstractions having a limited number of instances in the application re- occur in all the applications that lie within a domain. The size of the class hierarchy should be small for this characteristic to take effect. Plus if the abstraction does not occur in all the parts of the software application, you won’t be able to justify the cost to verify, document and disseminate the structure points.

3. The rules that govern the use of structure point are very easy to understand plus the interface of the structure point is relatively very simple.

What is Structural Modeling and what is the role of structure point?


- The structure modelling is an essential approach to the domain engineering and is facilitated by the structure points. 
- Structural modelling is actually a pattern based approach and works up on the assumption that every application domain consists of repeating patterns that can be effectively reused. 
- A structural model is composed of a number of structure points.
- These elements only characterize the architecture of the software systems or applications. 
- Simple patterns of interaction among these structure points can result in the formation of many architectural units. 
- Thus, structure point can be identified as a distinct construct within a structural model. 

Therefore the characterization of the structure points can be done as follows:
  1. The number of instances of the structure point should be limited.
  2. The interface should be relatively simple.
  3. Information hiding must be implemented by the structure point by isolation all the complexity contained within the structure point. 


What factors are considered during component qualification in component based development?


Component based development is now becoming a common practice nowadays for re- using the validated software components of the already existing software systems or applications as a measure to shorten the development periods and enhance the quality of the software system or application.

The component based development focus on the development of new software systems by selection of the software components within the system architecture. Furthermore, the component based development has been known to accelerate the productivity of the development process and reduce the project costs. 

However, the success of the component based development depends on the suitability of the components chosen for the development of the new software. In this article we have discussed about the factors that should be considered during the component qualification in component based development. 

Due to some factors like increasing complexity and continuous change, it is required that the software should be changed to make the both ends meet. As a consequence, the software system or applications becomes more and more complex which means more and more errors. Assembling pre- existing software components not only increases the maintainability of the systems but also lends it more flexibility. Moreover, the system is assembled rapidly. It would not be wrong to call a component an independent entity intact with a complete functionality.

Process of Component Qualification


- Component qualification is a process that involves determination of the suitability of the component for being re- used in the next software system or application to be built. 
- This process of component qualification often comes to a great help whenever there is a competition for the products in the market.
- There are numerous factors that should be considered while counting for the qualification of a software component. 

Factors Considered during Component Qualification


- The most important factors are of the functionality and services that are being provided by the software component. 
- The factors also consist of many other aspects like those mentioned below:
  1. Standards that have been used to develop the software component.
  2. Quality aspects like usability, reusability and component reliability and so on.
- The components should have been developed under some standards and provide functions common to most of the different software systems and applications should be qualified.
- Further, the qualified components should exhibit the property of re- usability to a high extent. 
- Components form high level aggregations of the smaller software pieces. 
- All these components together provide a black box building approach which encapsulates the implementation detail from the development environment and is re- usable with the interfaces.
- For a component to be qualified, the component should have been developed in such a way that it is able to connect to a software component during the run time of the system. 
- Or we can say that in order to be qualified, the component should exhibit the quality of independent deployment. 
- This is necessary because this approach makes use of the resources. 
- The component qualification is one of the development activities that are under taken by the component based software development. The other three activities are:
  1. Component adaptation
  2. Assembling components
  3. System evolution
- All the above mentioned three activities follow up after the component qualification. 
-The components that are required are defined by the system architecture and requirements. - The characteristics of the component interfaces usually form the basic criteria for their qualification even though the degree of fitness of the component in requirements and architecture is not provided by the interface. 
- Interface here means the services that are provided by the component and the means through which these are accessed by the consumers. 


Saturday, June 2, 2012

What is meant by the term system metaphor? What is its use?


System metaphor- well this is a term which is related to the extreme programming but less known of! What is the system metaphor and what is its use and what is the need? 
We shall be discussing all these aspects of the system metaphor in this article. 

"A system metaphor in the simplest words can be defined as a story that any one includes customers, programmers and managers) can tell reading how a system works".

Reasons why we need to use System Metaphor


There are several reasons for why we need to use the system metaphor.  They have been listed below:
  1. Architecture: The metaphor is consider to shape the software system or application exactly as it is required by us with the help of identifying the key objects and giving suggestions regarding the aspects of their interfaces. The dynamic and the static models of the system are supported by the system.
  2. Shared Vocabulary: A common system of names for the objects and relationships that exist between them are suggested by a system metaphor only and thus it provides a powerful vocabulary for the developers and programming experts. The vocabulary created is shorthand and specialized.
  3. Common Vision: System metaphor comes in to as a very handy tool that helps in enabling all the stake holders to agree up on the working of the software system or application. The key structure of how the problem and the solution have been perceived is provided by the system metaphor itself. Overall, this helps in understanding the working of the system well.
  4. Generativity: A system metaphor by the means of its analogies can get you new ideas regarding the problem and its solution and can further dig out many other important issues.

How to choose a System Metaphor?


- Even though choosing up a proper system metaphor for your system may take some time and efforts, it is the best option that you have for exploring several possibilities just by looking at the system through various views. 
- If by combining two metaphors you are getting the one that is fit for your then go for it. 
- Now what if you come to know that you could have got a better metaphor for your system than what you have already opted for? No need to worry, you can still develop your system in that direction. 
- Such a measure will also help you in achieving a greater understanding of your problems. 
- What if you are not able to think of any good metaphors? 
- There are some naive metaphors always available to your rescue. Below mentioned are some examples of the system metaphors:
  1. Use of a pension tool as a spreadsheet.
  2. Using desktop metaphor for graphical user interface.
  3. Buckets, lines and bins in C3 payroll.
  4. Bills of materials in VCAPS.
  5. A double entry system being used as book keeping and spreadsheet.

More about System Metaphor


- Suppose you sign a contract with a client for developing some software system, what you do next? 
- You search for a good system metaphor that will guide the development of your software system or application.
- A metaphor very well guides the development process of a project. 
- Not any one can choose a good metaphor, it requires skills, practice and of course deep knowledge.
- A system metaphor is nothing but a metaphor having a simple design and some essential qualities that the original needs to have. 


Monday, January 23, 2012

How to test a User Interface based application page?

A user interface can be described as an interface that allows the users to interact with the system. GUI is an interface that allows the users to interact with the help of images rather than textual commands.

- User interfaces are used in computer systems, other hand held electronic devices such as portable media players, I pads, I pods, cell phones, gaming devices or mp3 players etc.

- An user interface makes the information and actions available to the user through some graphical images or icons and other visual indicators.

- These can be thought of as a kind of secondary notation as contrary to the text based interfaces, text navigation or typed commands.

- Using a graphical user interface, tasks are performed by the direct manipulation of the graphical icons or elements.

- The scope of a GUI is restricted to the two-dimensional display screens that have high display resolutions which are able to describe generic information.

It is a very common problem of how to effectively carry out UI based testing on an application page?

It is always said that user interface testing is very difficult or hard and less possible.But it is not so! What we actually need is the right kind of design.

- With a right and appropriate design, user interface testing becomes as easy as any other kind of testing.

This will become clear with the following example:
- Let’s say a common user interface component like a login page is to be tested.

- The most important thing here is to separate the user interface from the data and the logic.

- This task can be accomplished using can be done with the help of model that follows the view controller design pattern.

- The model is used as the data.

- There is one more thing about which you should be careful.The dependence order of the source code must be expressed in the following order:

View -> controller -> model

- The point of view of testing, this order should not be broken.

- We can say that there is no direct relationship that exists between the model and the controller.

- Neither transitive dependency is allowed nor is direct dependency allowed.

- Here we can merge the controller and model together if we are not going to use the model again.

- Here the controller is aware of model but the model knows nothing of the controller.

- In the case of this login page, we started with a model or controller package and it was observed that the controller mimics the user interface quite well.

- Each entry field was assigned a field and finally each action was assigned a method.

- We know that the view can directly access the controller and all the textual inputs corresponding to their respective fields as per the controller.

- The values are bound to the destination at the run time.

- The login button is then bound to the login method as described in the controller.

- Due to this binding, the controller is effectively separated from the view. So, now testing of the controller can be focused upon.

- Errors are usually discovered in the logic but not in the code.

- This method is 90 percent beneficial.

- Impedance mismatch is not at all desirable since it can cause marshalling of code which can result in the complication of the whole controller.

Drawbacks of the above method
- Though this method is very useful, it can lead to bugs that can be time consuming to rectify.

- The other drawback is that the approach also gets complicated with the complex user interfaces.

- To test complex UI based application pages you need to create additional required components on the go.


Facebook activity