Friday, 31 May 2013

Basic Web Performance Part 2


In last article we saw the importance of better performing Web site . So we need to make sure that our sites are performing better but before we work on improving the performance we need tool to measuring  the Web site performance. In this article and series of next articles we will talk about few tools which will help measure the performance . Here is list of tools we we look at.

1. Fiddler
2. Microsoft Network Analyzer
3. IIS Log files
4. 3rd Party Services

While we will have a look on top three we will not talk about the fourth one which is basically services that benchmark your web site against the different web sites. So lets start with Fiddler.
We touched upon some of core feature of Fiddler ; lets get started with practical. I will hit upon Microsoft.com and Fiddler will then capture and we will start analyze the data through various functionality provided by fiddler. Below is the screen shot of the request which gets generated upon hitting microsoft.com.


Timeline provides the graphical representation of the request response times .The data captured through the Fiddler can be saved for later reference. In image above the right panel shows the timeline , as you can see the aspx page got loaded in 2 seconds but the other  content on the site took 14+ seconds; which shows most of time is spend on downloading static resources.

There is another feature which is called Statistics which apart from other details lets us know the response bytes (by Content type) against the content which can determine the most consuming bandwidth data that can be looked upon for optimization.
 In above figure you can see the maximum bandwidth is used by the jpeg files and those are good sources of optimization.

Thursday, 30 May 2013

Basics Web Performance -Part 1

Basics Web Performance

We need to know why do we care about the performance. While fast web sites makes customer happy there are other benefits of better performance , They  saves your money by

1. consuming less bandwidth
2. Consuming less servers

Better performing websites also help in generating more money ,

According to recent survey done on two web site Google and Amazon ; In amazon it was observed with every 100 ms increase in load time of Amazon.com the sales got decreased by 1% in another incident the home page of goggle maps when decreased from 100KB to 70-80KB traffic went up by 10% in first week and additional 25% in following three weeks.

Your web site performance also impact the ranking on Google. Now we know the importance of performance lets have a look at what makes web sites slow

The general assumption is the performance of website can be improved by tuning the code on server side.But with recent research it has been found that 10-20% of total response time is invested in processing the request  generating the HTML and getting it download. While rest of 80-90% time is invested on getting auxiliary files like image , javascripts, css etc. To demonstrate this we need to use the tool to see the conversation that happen b/w the browser and server. The conversation between the browser and server happen through HTTP protocol . The protocol stands for Hypertext Transfer Protocol ; it is text based protocol so we need some tool which can help profile http traces and one of the tool is Fiddler. This tool can watch the conversation that happen b/w browser and server

This tool is free and can be downloaded by doing small search on google ; The tools has various features

1. You can watch the web traffic
2. Shows complete request and response
3. Can save the session which can be used to compare the performance before and after
4. Transfer Timeline : graphical view of all the request made
5. Statistics is another feature in Fiddler.

We will talk about the fiddler and how we can see the response time on next post.....

Monday, 20 May 2013

Menopause Testing

In each Profession with experience task gets more repetitive , mundane  , less challenging, boring . There comes a day/week/phase which is like menopause ? The focus changes from core profession task with no creativity to people management , other skills focus , changing stream etc. IT Profession is no different in this aspect. The software development , testing all goes through the phase and person has to be prepared for this.

This phase also has challenges for the organization people start to leave to find something new in another organization , less motivated people becomes complacent which results in more mistakes and lesser productivity. People having enough time on planned task and invest time on office politics and other non core focus areas.How does organization make use of this phase is challenge.

While organization takes a different route and more specific with each organization type services vs Product , large size vs small size etc. I will talk more at individual level how you can take charge of your career at this phase. I would recommend to invest time on training , connecting through forums , participating in  Test Competition, writing testing blogs etc.

The training would give you an edge over others in your subject. Since our tasks mainly focuses on specific features we tent to use 10-20% of the features only while rest 80% is never used. This is more like pareto where 20% of feature solves your 80% problem . Enrolling in Bug finder sites will give adrenaline boost as it involves some extra money too depends on which phase your application is in you can get paid for each bug you find.

Test competition is another way you can get your skills toned and learn about the techniques and tools with little risk involved.