Rss Feed Like Us on facebook Google Plus
Showing posts with label Software. Show all posts
Showing posts with label Software. Show all posts

February 24, 2012

Software Testing - What?, Why?, When?

1. What is Software Testing? 

According to WIKIPEDIA
                                               "Software testing is an investigation conducted to provide stakeholders with information about the quality of the product or service under test."

Software testing can also provide an objective, independent view of the software to allow the business to appreciate and understand the risks of software implementation. Test techniques include, but are not limited to, the process of executing a program or application with the intent of finding software bugs (errors or other defects).

Software testing can be stated as the process of validating and verifying that a software program/application/product:

   1.meets the requirements that guided its design and development; as expected; and   3.can be implemented with the same characteristics.

Software testing is more than just error detection;  

Testing software is operating the software under controlled conditions, to (1) verify that it behaves “as specified”; (2) to detect errors, and (3) to validate that what has been specified is what the user actually wanted.

   1. Verification is the checking or testing of items, including software, for conformance and consistency by evaluating the results against pre-specified requirements.  [Verification: Are we building the system right?]  
 2.Error Detection: Testing should intentionally attempt to make things go wrong to determine if things happen when they shouldn’t or things don’t happen when they should.
  3.Validation looks at the system correctness – i.e. is the process of checking that what has   been specified is what the user actually wanted.     [Validation: Are we building the right system?] 

In other words, validation checks to see if we are building what the customer wants/needs, and verification checks to see if we are building that system correctly.  Both verification and validation are necessary, but different components of any testing activity.

The definition of testing according to the ANSI/IEEE 1059 standard is that testing is the process of analysing a software item to detect the differences between existing and required conditions (that is defects/errors/bugs) and to evaluate the features of the software item.
Remember: The purpose of testing is verification, validation and error detection in order to find problems – and the purpose of finding those problems is to get them fixed.
2. Why Testing CANNOT Ensure Quality
Testing in itself cannot ensure the quality of software. All testing can do is give you a certain level of assurance (confidence) in the software. On its own, the only thing that testing proves is that under specific controlled conditions, the software functioned as expected by the test cases executed.
3. What is Software “Quality”?
"Quality software is reasonably bug-free, delivered on time and within budget, meets requirements and/or expectations, and is maintainable. "

However, quality is a subjective term. It will depend on who the ‘customer’ is and their overall influence in the scheme of things. A wide-angle view of the ‘customers’ of a software development project might include end-users, customer acceptance testers, customer contract officers, customer management, the development organisation’s management/accountants/testers/salespeople, future software maintenance engineers, stockholders, magazine reviewers, etc. Each type of ‘customer’ will have their own view on ‘quality’ - the accounting department might define quality in terms of profits while an end-user might define quality as user-friendly and bug-free.  

4. What is “Quality Assurance”?
“Quality Assurance” measures the quality of processes used to create a quality product.
Software Quality Assurance (‘SQA’ or ‘QA’) is the process of monitoring and improving all activities associated with software development, from requirements gathering, design and reviews to coding, testing and implementation.

It involves the entire software development process - monitoring and improving the process, making sure that any agreed-upon standards and procedures are followed, and ensuring that problems are found and dealt with, at the earliest possible stage. Unlike testing, which is mainly a ‘detection’ process, QA is ‘preventative’ in that it aims to ensure quality in the methods & processes – and therefore reduce the prevalence of errors in the software.

Organisations vary considerably in how they assign responsibility for QA and testing. Sometimes they’re the combined responsibility of one group or individual. Also common are project teams that include a mix of testers and developers who work closely together, with overall QA processes monitored by project managers or quality managers.
5. Quality Assurance and Software Development
Quality Assurance and development of a product are parallel activities. Complete QA includes reviews of the development methods and standards, reviews of all the documentation (not just for standardisation but for verification and clarity of the contents also). Overall Quality Assurance processes also include code validation.

A note about quality assurance: The role of quality assurance is a superset of testing. Its mission is to help minimise the risk of project failure. QA people aim to understand the causes of project failure (which includes software errors as an aspect) and help the team prevent, detect, and correct the problems. Often test teams are referred to as QA Teams, perhaps acknowledging that testers should consider broader QA issues as well as testing.
6. What’s the difference between QA and testing?
Simply put:
  • 1.TESTING means “Quality Control”; and
  • 2.QUALITY CONTROL measures the quality of a product; while
  • 3.QUALITY ASSURANCE measures the quality of processes used to create a quality product.
7. The Mission of Testing
In well-run projects, the mission of the test team is not merely to perform testing, but to help minimise the risk of product failure. Testers look for manifest problems in the product, potential problems, and the absence of problems. They explore, assess, track, and report product quality, so that others in the project can make informed decisions about product development. It's important to recognise that testers are not out to "break the code." We are not out to embarrass or complain, just to inform. We are human meters of product quality.
Read More

February 14, 2012

10 Commandments of Software Testing

"Software Testing is a systematic activity but it also involves economics and human psychology." - Glenford J. Myers

Economics of software testing is to determine and predict the faults of the system early by using foreseeable models and applying structured test strategies and test methodologies to discover those at early phases of the software development life cycle.

Psychology of testing is to destructively test the application by identifying as many exceptional or out of the box scenarios or sometimes called as the third vision.

A set of good test scenarios evaluates every possible permutations and combinations of a program during ideal conditions. In addition, Software Test Engineer needs the proper vision to successfully test a piece/whole application to comply with the Standards and the Quality.

Whenever Software Test Engineer tests a program, they should add some value in it rather than performing only the requirements conformance and validation. A systematic and well planned test process adds the value of quality and reliability of the software program.

The most important considerations in the software testing are the issues of psychology, leading to the set of principles and guidelines to evaluate software quality:

1. Testing is the process of experimenting a software component by using a selected set of test cases, with the intent of revealing defects and evaluate quality Software Test Engineer executes the software using test cases to evaluate properties such as reliability, usability, maintainability, and level of performance. Test results are used to compare the actual properties of the software to those specified in the requirements document as quality goals.

Deviations or failure to achieve quality goals must be addressed. Software Testing has a broader scope rather being only limited to the execution of program or detecting errors more rigorously as described in the test process improvement models such as TMMi framework models.

2. When the test objective is to detect defects, then a good test case is one that has a high probability of revealing a yet undetected defect(s).

Principle 2 supports a strong and robust designing of test cases. This means that each test case should have a goal to identify or detect a specific type of defect. Software Test Engineer approaches the scientific method of designing the tests to prove or disapprove the hypothesis by the means of test procedures.

3. A test case must contain the expected output or result. Principle 3 supports the fact that a test case without expected result is of zero value. Expected output or result determines whether a defect has been revealed or the conditions have been passed during the execution cycle.

4. Test cases should be developed for both valid and invalid input conditions. Use of test cases that are based on invalid inputs is very useful for revealing defects since they may exercise the code in unexpected ways and identify unexpected software behaviour. Invalid inputs also help developers and Software Test Engineers to evaluate the robustness of the software, that is, its ability to recover when unexpected events occur (in this case an erroneous input).

For example, software users may have misunderstandings, or lack information about the nature of the inputs. They often make typographical errors even when complete/correct information is available. Devices or software program may also provide invalid inputs due to erroneous conditions and malfunctions.

5. The probability of the existence of additional defects in a software component is proportional to the number of defects already detected in that component. Principle 5 supports to the fact that the higher the number of defects already detected in a component, the more likely it is to have additional defects when it undergoes further testing.

For example, if there are two components A and B, and Software Test Engineers have found 20 defects in A and 3 defects in B, then the probability of the existence of additional defects in A is higher than B. This empirical observation may be due to several causes and degree of influence of the software factors. Defects often occur in clusters and often in code that has a high degree of complexity and is poorly designed.

6. Test Cases must be repeatable and reusable. Principle 6 is utmost important and plays a vital role supporting the fact that it is also useful for tests that need to be repeated after defect repair. The repetition and reuse of tests is also necessary during regression test (the retesting of software that has been modified) in the case of a new release of the software.

7. Testing should be carried out by a group that is independent of the development group. This principle holds true for psychological as well as practical reasons and does not say that it is impossible for a programming organization to find some of its errors, because organizations do accomplish this with some degree of success. Rather, it implies that it is more economical for testing to be performed by an objective, independent party which gives a direction of the third vision by the means of test cases. Finally, independence of the testing group does not call for an adversarial relationship between developers and Software Test Engineers.

8. Test Activities should be well planned. Test plans should be developed for each level of testing, and objectives for each level should be described in the associated plan. The objectives should be stated as quantitatively as possible. Plans, with their precisely specified objectives, are necessary to ensure that adequate time and resources are allocated for testing tasks, and that testing can be monitored and managed.

Test planning must be coordinated with project planning. A test plan is a roadmap for the testing which should be mapped to organizational goals and policies pertaining to the software program.

Test risks must be evaluated at each levels of testing. Careful test planning avoids wasteful "throwaway" tests and unproductive and unplanned "test-patch-retest" cycles that often lead to poor-quality software and the inability to deliver software on time and within budget.

9. Avoid throwaway test cases unless the program is truly a throwaway program. Whenever the program has to be tested, the test cases must be reinvented. More often than not, since this reinvention requires a considerable amount of work, Software Test Engineer tends to avoid it. Therefore, the retest of the program is rarely as rigorous as the original test, meaning that if the modification causes a previously functional part of the program to fail, this error often goes undetected.

10. Test results should be inspected meticulously. This is probably the most obvious principle, but again it is something that is often overlooked.

Weve seen numerous tests that show many subjects failed to detect certain errors, even when symptoms of those errors were clearly observable on the output listings. Put another way, errors that are found on later tests are often missed in the results from earlier tests.

For example:
I. A failure may be overlooked, and the test may be granted a "PASS" status when in reality the software has failed the test. Testing may continue based on erroneous test results. The defect may be revealed at some later stage of testing, but in that case it may be more costly and difficult to locate and repair.

II. A failure may be suspected when in reality none exists. In this case the test may be granted a "FAIL" status. Much time and effort may be spent on trying to find the defect that does not exist. A careful re-examination of the test results could finally indicate that no failure has occurred.

Summarizing all the above principles, Testing is an extremely creative and intellectually challenging task. Creativity required in testing a large program exceeds the creativity required in designing or developing that program. We already have seen that it is impossible to test a program sufficiently to guarantee the absence of all errors. This requires a systematic test process and methodologies to design the robust test cases.

This principle supports that:

1. A Software Test Engineer needs to have comprehensive knowledge of the software engineering discipline.

2. A Software Test Engineer needs to have knowledge from both experience and education as to how software is specified, designed, and developed.

3. A Software Test Engineer needs to have knowledge of fault types and where faults of a certain type might occur in code constructs.

4. A Software Test Engineer needs to reason like a scientist and propose hypotheses that relate to presence of specific types of defects.

5. A Software Test Engineer needs to have a good grasp of the problem domain of the software that he/she is testing.

6. A Software Test Engineer needs to create and document test cases. To design the test cases the Software Test Engineer must select inputs often from a very wide domain.

7. A Software Test Engineer needs to design and record test procedures for running the tests.

8. A Software Test Engineer needs to execute the tests and is responsible for recording results.

9. A Software Test Engineer needs to analyze test results and decide on success or failure for a test. This involves understanding and keeping track of an enormous amount of detailed information.

10. A Software Test Engineer needs to know the method for collecting and analyzing test related measurements.


The principles and the excerpts have been taken from the following books:
1. The Art of Software Testing by Glenford J. Myers
2. Software Testing Principle by Bertrand Meyer
3. Practical Software Testing by Ilene Burnstein
4. TMMi Framework by TMMi Foundation.
Read More

January 7, 2012

Cool Shortcut Keys for Windows 7

previewpane 350x211 Coolest Windows 7 Tips and Tricks – Shortcut KeysALT + P
This opens a preview pane at the right side of explorer. Next time when you have to view some picture or movie or any other file, you don’t have to open it, just select the file and press ALT+P and see the preview.

Windows Key + Up
This combination maximized the current window. You can press it to Make window maximized. It works the same as double clicking the Title Bar

Windows Key + Down
This combination of keys, when pressed, restores the windows if it is maximized or minimizes it if not maximized. This combination should be used with Windows Key + Up to minimize, restore, and maximize any window.

Windows + Shift + Up and Windows + Shift + Down
This Key Combination makes the window Vertically maximum (Up) and back to its original place(Down). In doing so, the width of the windows remains the same. Only the height is changed.

magnifier Coolest Windows 7 Tips and Tricks – Shortcut KeysWindows Key + +(Plus) and Windows Key+-(Minus)
This combination of keys launches the built-in magnifier program and zooms in or out (depend on + or -) the screen. You can further play with this magnifier tools and use it for your own needs.

Windows Key + Left and Windows Key + Right
These are my favorite Shortcut Keys. The combination shift the opened windows to left or right of the screen. The windows then  takes exactly half of the screen. Keep pressing Windows Key + Left and your window will go to left of the screen, then right of the screen, and then back to its original place.

Windows Key + Home
There is a cool feature in Windows 7 that makes using windows easy and increase productivity by hiding all other windows and letting only one window shown. This feature is called Jitter. Using mouse you can select your windows and give it a nudge (moving mouse left and right while mouse key is pressed). This hides all other windows and keep your window opened. Repeat the same again and all other windows will appear.

Alternatively, you can use  Windows Key + Home to do the same. Press it to hide all other windows, press it again to show them.

ALT + Tab and Windows Key + Tab
windowskey tab 350x216 Coolest Windows 7 Tips and Tricks – Shortcut KeysSince long, windows is coming with these shortcut keys that come in very handy when switching between windows. The ALT+TAB key shows all the opened programs and you can switch between the windows. Press ALT (Keep Pressing) and press Tab until you find your desired program. Release the ALT key when your desired program is selected. The program windows will appear on the top.Since Windows Vista, Microsoft introduced another such feature that you can use by pressing (keep pressing) Windows Key and Pressing Tab. This feature is much cooler and lets your switch between open Programs.

Windows Key + T and Windows Key + [Number]
Window T 350x156 Coolest Windows 7 Tips and Tricks – Shortcut Keys
Windows + T is a wonder full shortcut key that lets you toggle between the programs listed in Taskbar. Press Windows Key (Keep Pressing) and Press T to move from one icon to another. The icons in Taskbar can be opened programs as well as Tabbed Programs. Windows Key + T toggle between all the icons on Taskbar and opens any program for you.

Similarly, Windows Key + [Number ] (1,2,3,…) can open the program listed at that number. If the program is tabbed, a new instance of it will be launched and if the program is running, its window will be minimized / maximized.

Windows Key + E
There is always a need to open Explorer window. But is one of its instance is running, and you click on it, the same windows appears on screen. To open a new instance of Explorer, you can either Press Shift + Click or Middle Key of your Mouse or you can simply use Windows Key + E.

Windows Key+ P and Windows Key+ shift + [Left, Right]
Window + P 350x75 Coolest Windows 7 Tips and Tricks – Shortcut KeysIf you have multiple monitors attached to you system you can easily switch between them using these Keys. Windows Key + P open the Panel from where you can select different settings for your multiple Displays. Also, you can use Window Key + Shift + Left to change between multiple screens.

Windows Key+ Space
windows7 preview desktop 350x218 Coolest Windows 7 Tips and Tricks – Shortcut KeysAnother cool feature of Windows 7 is its Peek feature. The right most button on your Task-bar is the Show Desktop / Peek button. Just hover your mouse over it and it will show your desktop by hiding all the open windows. The peek feature can also be accessed using Windows Key + Space. Press Windows Key(keep pressing) and press space to Peek at the desktop.

Windows Key + G
Gadgets are a nice addition to windows plate form since the days of Vista. There are dozen of Gadgets out there for Weather, Calender, RSS Feeds, and much more. Unfortunately, the Show Desktop button shows the Desktop with out Gadgets. Thus there is not easy way to access gadgets in time of need. But there is a trick to peek at your gadgets even if you have a dozen windows opened. Press Windows Key + G and all your gadgets will show on the top of every thing.

Windows Key + X
Mobility Center is not new to Windows. It was there in Vista too. But it is a cool feature and many of us would like to access it. Press Windows Key + X and the mobility center will appear.

Ctrl + Alt + [Left, Right, Up, Down]
Last but not the least. This is a cool feature that changes the orientation of your screen. Just give it a try and see for your self.

follow me on twitter
Subscribe me on Facebook 
Read More

November 21, 2011

Web Programmers need not to do these three blunders

3 Mistakes Web Programmers Need to Stop Making....

Jonathan Goldford is a partner at JG Visual, an Internet strategy company that works with organizations to develop and implement their online presence. You can connect with Jonathan on the JG Visual Facebook page.

Sometimes as programmers, we forget that 99.9% of the population doesn’t care how a piece of text, a button, an image or a video ends up onscreen. Most people just care that it’s fast, easy to use and gives them the content they want. Otherwise, they get upset — and rightfully so. Here are three common mistakes we programmers make, and what we can do to fix them.

1. Forgetting About Conventions

Ever since they started using the Internet, users have been trained how to interact with a website. Therefore, they often get frustrated when websites don’t meet their expectations. Here are some examples.

  • They hover over an object they think is clickable, but become confused when they see an arrow instead of a hand pointer.
  • They click on blue, underlined text, but find it’s not a link.
  • They click on the logo in the top left, believing it will return them to the homepage, only to find it takes them nowhere.

Web design doesn’t always meet our expectations. However, developers and designers should always maintain certain rules to avoid user confusion. Here are three.

Clickable Elements Should Have the Pointer on Rollover
Everything clickable should switch to the hand pointer when a user hovers over it. You can accomplish this using simple CSS. The code would look like this

div:hover { cursor: pointer; }

Style Links Appropriately
Links should look different than regular text, and should be underlined within a page’s main content. If you really want to stick with convention, make them blue — research found users engage most with blue links.

Make Logos Clickable
The logo in the header of your website should be clickable, and should take the user to the homepage. This is pretty simple: Just wrap your logo in a tag.

<a href=%u201D>
<img src=%u201Dlogo.gif%u201D alt=%u201DExample Company%u201D title=%u201DExample Company Logo%u201D height=%u201D100%u201D width=%u201D100%u201D />

2. Creating Slowly-Loading Websites

Users hate slow websites. Studies have shown that 40% of users will abandon a website that takes more than three seconds to load. Here’s how to avoid common speed mistakes by new programmers.

Resize Images Outside the Browser
New programmers will sometimes use a very large image, let’s say 600 pixels wide by 600 pixels tall, but will set the height and width so the image shrinks to the desired size. They use the following code. 

<img src=%u201Dbig-domo.jpg%u201D alt=%u201DDomo%u201D title=%u201DBig domo at the park%u201D height=%u201D200%u201D width=%u201D200%u201D />

There are two problems with this method: First, the full image still needs to load. Typically, bigger image files mean longer load times.

Second, shrinking an image using the height and width attributes can render a photo awkwardly, causing the browser to display a photo not nearly as clear as it would be were the image sized 200 x 200 pixels.

To fix these issues, resize and compress images in an editor like Photoshop or Gimp. Then code the image like we did above. Try to use a tool like Photoshop’s Save for Web & Devices to further shrink the file size.

Load JavaScript in the Footer
Many programmers unnecessarily load all the page’s JavaScript files in the head tag. This stalls the rest of the page load. In almost all cases, except for JavaScript critical to user interface navigation, it’s okay to load script in the footer. Then the rest of the page can load beforehand. Try this code.

Rest of the page%u2026
<script type=%u201Dtext/javascript%u201D src=%u201Djs/scripts.js%u201D></script>

Load CSS Externally
Sometimes new programmers load CSS on each individual page using inline styles or an internal stylesheet. For inline styles, code looks like this.

<p style=%u201Dmargin-top: 50px;%u201D>Hi Mom!</p>

And for an internal stylesheet, you’d most likely see this code in the head tag.

<style type=%u201Dtext/css%u201D>
p { margin-top: 50px; }

You should almost never use CSS in the page that holds your html. Store it externally using code like this.

<link rel="stylesheet" type="text/css" href=%u201Dcss/style.css" />

There are two advantages to loading CSS externally: First, the user’s computer will save the external stylesheet to be used on every page, instead of retrieving the same styles over and over. This greatly speeds up load time.

Second, using an external stylesheet is much easier to maintain. If you need to change the font size of your website’s paragraphs, you’re able change it in one place, without having to access each individual html file.

Learn more about good CSS practices at CSS Basics.

3. Not Accounting for Potential Backend Changes

Most programmers nowadays are using a content management system like WordPress, Joomla or Drupal to build their websites. This is great because it gives website owners the ability to make changes and updates.

The problem is that a lot of developers only program for a website’s content at launch time. For example, at launch a developer may only create CSS styles for website headings 1, 2 and 3. What if two months after the website’s launch, the communications director decides to set some text to heading 6, since that’s an option in WordPress’s format? That decision would revert to the default styles of the browser since the developer never styled for it initially. Here is how to avoid this situation.

Include Styles for All the Common Tags
To make sure that the design of your website remains consistent with any backend formatting, programmers should include styles to handle the following html tags.

  • Body (<body>)
  • Heading 1, 2, 3, 4, 5, 6 (<h1>, <h2>, <h3>, <h4>, <h5>, <h6>)
  • Link (<a>)
  • Paragraph (<p>)
  • Address (<address>)
  • Preformatted (<pre>)
  • Strong (<strong>)
  • Unordered list (<ul>)
  • Ordered list (<ol>)
  • Quotes (<blockquote>)

It’s best to check the WYSIWYG that your website owners are using to make sure you have all the appropriate tags covered.

Basic styling isn’t the only opportunity for your website to break down. Also make sure to prepare for large image uploads and for copy/paste from Word. Although items like these can seem trivial, educating your website owners about how to add content can make all the difference.

You’re Smart, But It’s Hard To Remember Everything

The mistakes listed here have nothing to do with a developer’s intelligence. Like most jobs, things fall through the cracks, especially when you’re just getting started.

Do you agree with the items listed above? Are there any others we should have included?

follow me on twitter
Subscribe me on Facebook
Read More

September 3, 2011

15 Indian Software Companies that can be next Infosys

India is a giant in software services, thanks in great degree to the extraordinary vision and work of NR Narayana Murthy, who retired this month from the company he founded, Infosys Technologies. There are skeptics who say that India will never be able to overcome this services mindset and move on to develop creative global products and platforms. 

We don't share that scepticism. We believe that the success of the software services industry has created talent that now has the desire, confidence and expertise to build global technology products. 

Thousands of such initiatives are in the works around the country. Here's we bring to you a sample of these, some that have reached a degree of maturity, others that have seen amazing success in a short period. 

Founders: Arvind Rao & Mouli Raman 

Founded in 2000, in California, but moved to Bangalore two years later. 
Business: Mobile value-added services like ringtones, ring back tones, alerts, voice-based searches. More recently, introduced innovative products like Karaophone that allows users to play karaoke with their social networks via mobile or landline phones, and RCS Phonebook, an interactive user address book that synchronises all contact information, including friends on social networks, into one central location for easy management and live access. The company has onsite presence in 52 countries and boasts of 105 million unique users every month. Rao, 52, who was in the venture capital industry in the US prior to forming On-Mobile, says the company's strength has been its risk sharing and joint work with operators to make the products a success, instead of simply licensing its technology. 

Mouli, 42, who worked for many years in Infosys, says OnMobile frequently receives requests from developed market operators to teach them the things being done in Asia. "They are hit by Google and Apple (app stores), and they believe we can help them counter this." The company is now focused on providing multilingual content. 
Customers: Most of the Indian telecom operators. Vodafone uses them globally; Telefonica of Spain 

Revenue: Rs 537 crore in 2010-11; international revenues contribute over 27%. It's not official, but it's possible that OnMobile is today the world's biggest company providing mobile value-added services.

Founders: Sanjay Nayak, Arnob Roy, Kumar Sivarajan 

Founded in 2000, in Bangalore 

Business: Developing intelligent network technologies, networks that not only transport data between two points, but also do it at the precise speeds that customers require, rerouting traffic when any one lane is choked or disrupted, and clean up disrupted signals. "It's like a bus that behaves according to the nature of its occupants. If it knows that its occupants are students, then it behaves in a particular way, and if it knows they are tourists, it behaves differently," says Nayak. 

Customers: Tejas solutions are deployed in all major telecom networks in India. It also sells in 60 countries. South Korea, which has the most advanced wireless broadband network in the world, has its backhaul (intermediate links) running partly on Tejas equipment. 

Revenue: Over Rs 750 crore. Tejas was initially funded by Gururaj Despande, and then by Intel Capital, Mayfield Fund, Battery Ventures, Goldman Sachs and Sandstone Capital. 

Founder: Yusuf Motiwala 

Founded in 2007, in Bangalore 

Business: Browser-based voice application. Unlike Skype, this requires no downloads or installations. Users just need to open a browser, log in and start talking. Motiwala, 38, provides the application programming interfaces so that anybody can integrate the voice application into their browsers. TringMe handles the backend network, technology and data centre, and charges for each minute of call that passes through the system. The technology also allows communication amongst multiple voice sources -- Web, mobile phone, instant messenger. "Skype has the first mover advantage. But we have significant advantages over them," says Motiwala, who previously worked in Lucent Technologies and Texas Instruments and who started the business with Rs 5 lakh. 

Customers: Over 120 enterprises, including IBM, Infosys and AOL 

Revenue: Not available. But TringMe handles over 42 million minutes of calls per month, and serves over 11 million users. The call minutes doubled in the last one year. Winner of Nasscom's most innovative startup 2009 award. 

Founder: Varun Shoor 

Founded in 2001, in Jalandhar 

Business: Helpdesk solutions to deliver better customer support. The company's flagship product brings all communications and support channels -- tickets, email, live chat, self-service, calls and remote desktop support on one platform. Another product is a comprehensive live chat and visitor monitoring solution that helps deliver real-time support. 

"Using our products, one can centrally manage all customer support channels. Our tools empower employees," says Shoor, who developed the technology and started the business when he was only 17. 

Customers: Over, 30,000, including GE, NASA, Virgin Mobile, FedEx, SEGA and ICANN. 

Revenue: It's in multiple million dollars. 


Founder: Rohit Singal 

Founded in 2006, in Bangalore 

Business: App developer. The company has developed over 300 apps, twenty of these are in the top 100 in leading app stores. It has apps for iPhone, iPad, Android, BlackBerry, Palm Pre and Windows 7 mobile platform. Sourcebits most popular apps include Robokill, Knocking Live, Daily Deeds, Night Stand, Skyfire, and Beast Farmer. 

Night Stand, an app which converts the iPhone/iPad into an alarm clock, reached the number two spot for all-time top download on the iTunes App Store within four days of its release and has been downloaded more than 3 million times. Knocking Live, the first live streaming app for iOS, has more than 2.3 million downloads. Singal, 35, is targeting the gaming space next. 

Customers: GE, Coca Cola, Sling Media , P&G , Hershey's , MIT Sloan School of Management 

Revenue: $6.5 million in 2010-11 Sequoia Capital and IDG Ventures India invested $10 million in Sourcebits in May. 

Founders: Sriram V Iyer & Arun Samudrala 

Founded in 2009, in Bangalore 

Business: Mobile platform development. The company's flagship product is UConnect, a connection management solution; if cellphone traffic on an LTE network is clogged, it offloads traffic to another available network such as Wi-Fi, so that the connection is not cut. UManage is a device management solution, helps device vendors (USB dongles, mobile phones, tablets, even TVs and set-top-boxes ) to fix/configure their devices even after it reaches the customer. Currently, the only way to upgrade is by connecting them to a PC or taking it to a service station. "There have been even instances of large scale recalls of devices to address problems. With our solution, such recalls will become unnecessary," says Iyer, 32, who previously worked with Samudrala, also 32, in Beceem Communications. Customers: Broadcom. Working with two of the world's leading semiconductor companies/ODMs to bundle UConnect with their LTE devices. 

Revenue: Rs 1.5 crore expected this year. Finalist at Qualcomm QPrize India 2010, finalist at Microsoft BizSpark India Startup Challenge 2011, finalist at's TechSparks 2011. 

Founder: Suresh Sambandam 

Founded in 2003, in Chennai 

Business: Orangescape was one of the early entrants into cloud computing. Its platform as-a-service product allows businesses to build customised applications using a visual modeling interface. These applications may either be deployed locally or on public clouds -- the Google App Engine, Microsoft's Azure, IBM's Smart Cloud or Amazon's EC2. Sambandam recognised the importance of partners early on, and today works with application developers and system integrators like TCS, Wipro, 3i Infotech, Mphasis and L&T Infotech. "One of the most important things for a startup to survive is to start selling at the early stages," says Sambandam, who previously worked with HP and Selectica. 

Customers: Unilever, Pfizer, Citigroup, Astra Zeneca, Ford, among others. 

Revenue: Over $1 million. TiEcon 2011 recognised it among the top 50 global startups. CRN magazine featured Orangescape among the global top 20 coolest cloud platforms. Nasscom recognised it as a top IT innovator in India for two successive years. 

Founders: Abdullah Khan & Mohamed Saliya 

Founded in 1999, in Bangalore 

Business: Embedded hardware, semiconductor platforms. The company provides integrated solutions for developing innovative products or systems in the areas of data communications, consumer electronics and multimedia. Khan previously worked with Tata Elxsi and CDoT, and Saliya in Philips Semiconductors and ISRO. 

Customers: GE Healthcare, Honeywell, Continental, Visteon , Japan railways, Panasonic , and many more 

Revenue: Not disclosed. Microsoft awarded iWave the Windows Embedded Partner Excellence Award in 2009. The award recognises visionaries and organizations around the world that use technology in an innovative and creative manner. 

Founder: Subash Menon 

Founded in 1992, in Bangalore 

Business: Products that allow communications service providers to improve their operational efficiency and deliver enhanced service experiences to subscribers. It has solutions for revenue assurance, cost management, fraud management, provisioning automation, data integrity management and more. The company started by providing fraud management solutions and its product Nikira became the No.1 fraud management solution in the world. A series of global acquisitions has enabled Menon, who started the firm with a Rs 20,000 loan from a former employer, to offer a wider portfolio of solutions 

Customers: 16 of the top 20 wireless operators worldwide and 26 of the world's 50 biggest telecommunications service providers. The company has more than 300 installations across 70 countries. Almost all telecom service providers in India are customers. T-Mobile, Verizon, Telefonica, Comcast, Sprint are among customers in the Americas. 

Revenue: Rs 492 crore in 2010-11. Awarded the Global Telecoms Business Innovation Award 2011 along with Swisscom for the industry's first successful Risk Reward Sharing model for fraud management. 

Founder: Pallav Nadhani 

Founded in 2001, in Kolkata, when Nadhani was 16 

Business: Charting products. Nandhani had begun by writing a charting component using Macromedia Flash, which enabled animation and interactivity in charts. He also wrote articles detailing this work for a technology publication that got him $1,500. "That became the seed capital for my company," he says. His biggest learning has been that customers do not look for features, they look for benefits. The company has been profitable from day one. Barring some advertising in technology magazines in the US and Europe, marketing has been through free online options and customer recommendations. 

Customers: 18,000 customers, including Google, Facebook, Microsoft, Intel, IBM 

Revenue: $4.5 million in 2010-11. Winner of the Deloitte Fast 50 India 2009 award and Nasscom's emerging company 2009 award. 

Founders: Saju Pillai & Aaditya Sood 

Founded in 2009, in Bangalore 

Business: Data centre management products. Automates processes in the data centres so that systems work faster, with fewer faults and greater security. And everything can be viewed and managed from a single window. Competitors include BMC, HP, CA. "But we do it better than them. We have competed against them and we have won every time," says Pillai, 31, who together with Sood, 30, had previously worked in Oracle. 

Customers: Six customers, including Astra Zeneca, UK, Endeavour Tech, one of the world's biggest stock exchanges, and one of the world's biggest banks. ISV to RedHat, VMware, Microsoft 

Revenue: Not disclosed. Finalist at YourStory .in's TechSpark 2011. 

Founder: Manav Garg 

Founded in 2004, in Bangalore 

Business: Products to manage risks in commodity trading. Commodities markets are notoriously volatile. A bad crop in Brazil or Vietnam, currency fluctuations, geopolitical situations --- anything can affect an organisation's ability to deliver. "A Nestle cannot tell customers they don't have coffee to sell. They have to manage country risks, quality risks, risk of shipments, risk of suppliers, to ensure they have enough coffee all the time," says Garg, 37. Garg saw the opportunity for such a software when he worked with Singapore-based G Premjee Group in their commodities trading business in the late 1990s. 

Customers: AWB (formerly Australian Wheat Board); Louis Dreyfus, Geneva; CHS, an US agricultural cooperative; New Boliden, a Swedish mining and smelting company; and more. 

Revenue: $10 million. Winner of the Nasscom Innovation 2009 award. Was in the Deloitte Technology Fast 50 for India in 2009. 


Founder: Atul Jalan 

Founded in 2004, in Bangalore 

Business: Analytics products for the retail industry. The products analyse customer behaviour, merchandising, supply chain performance, supplier performance and a host of other parameters and help retailers decide where to set up a store, what kind of products to stock in a store, where to stock them, which products should be placed together to optimise sales, identify the right promotions. "These are decisions that were earlier taken on the basis of gut feelings and hearsay," says Jalan, 41. 

Customers: Over 76 customers, most in the $1-20 billion revenue range, including McDonald's, Prada, Bally, SM Group, Haggen, Crocs, Ecco and Robinson's. 

Revenue: Approx $18 million IDG Ventures India, DFJ ePlanet Ventures and Fidelity International have invested in Manthan. 

Founder: Subbu Murugan 

Founded in 2006, in Chennai 

Business: Video management and publishing platform. It's a platform for video interstitials. Its video enables your websites, and allows you to easily organize, customise, publish, distribute, analyse and monetize your video assets. "The market for internet advertising in India is nearly Rs 1,000 crore; 8% of that is dedicated to video advertising," says Murugan, 39, who did an MS in computer information systems in Georgia State university, US. The company has a presence in 15 countries, mostly in Europe and the Americas. 

Customers: Many Indian publications and advertiser clients including Fox Networks, YuMe and Jivox. 

Revenue: Murugan does not talk about this. But he says 45% of the revenues come from outside India. 


Founders: Aneesh Reddy & Krishna Mehra 

Founded in 2008, in Kolkata, but soon shifted to Bangalore 

Business: Capillary's solution captures data about those who come to shop in a store or for a brand, analyses them, and offers them discounts in real-time. "Even as they are at the billing counter, they would be sent a discount message on their cellphone based on their age, past purchases, etc. These customised real-time offers translate to much higher conversion of discount and loyalty offers than the generalised offers that are typically made," says Reddy, 26, who studied together with Mehra, 26, in IIT-Kharagpur . 

Customers: Madura Garments, Raymond, Indus League, Levi's , Pizza Hut, Puma and more. Over 40 brands use the solution. 

Revenue: Not disclosed. Capillary reaches over 10 million consumers in over 5,000 stores in 400 cities. Winner of Qualcomm QPrize 2009 and finalist at's TechSparks 2011. Qualcomm has invested in the company, as have angel investors Harminder Sahni, Rajan Anandan and Venkat Tadanki.

Read More

© 2011-2016 Techimpulsion All Rights Reserved.

The content is copyrighted to Tech Impulsion and may not be reproduced on other websites.