Menu

Software Testing: The critical pass-through stage in SDLC

We have discussed basics of Big Data and Cloud earlier. When someone looked at a career in IT in the initial days of IT and to an extent even now, lack of the right perspective made him or her believe that Software Testing is a secondary priority activity.

It is increasingly and rightly being recognized as a very critical aspect of the Software Development Life Cycle. Do you know that the need is directly driven by business necessity than anything else!

Today, IT is involved in every phase of the operations and functioning of an organisation. IT drives, triggers, manages and runs critical decisions, systems and processes. This is why an error in an IT system can potentially cause a massive impact, not only on that organization’s operations, reputation, revenue and compliance, but also on externally interfaced systems. For e.g. the interconnected global financial systems like cards and fund transfers. Imagine deposits missing from your bank account, cards failing while on an overseas trip!

Irrespective of all the massive time, mental and physical effort spent on designing and building a system, Testing is THE phase that helps decide whether to release the application for usage or hold it in the shelves.

In fact, about 30-40% of the budget for the development of a mission critical application is earmarked for Testing!

What is Software Testing

For an onlooker, software testing appears to be just running an application, entering values and checking output. But thats a leaf in the landscape. Testing is a science altogether.

Software Testing broadly checks some or all of the below aspects of an application depending on the domain, function and usage:

Conformance to functional requirements or specifications

Explicitly stated, and

Not explicitly mentioned but obvious or common sense.

Compliance to legal regulations and standards where applicable

Ability to withstand invalid inputs and usage

Intentional: Malicious attempts to impact the business, reputation, compliance etc of an organisation

General: Such as due to ignorance or lack of knowledge or skills

Ability to withstand intentional malicious usage for business applications

Performance i.e. Speed, response, concurrent loads

Access and Security

Ability to work in different stated hardware and software environments

Ensure meaningful error messages and indications are provided to the user

To achieve these goals there are very many ways and routes. Key among them are listed below:

Opportunities in Software Testing

A Software Testing career is really worth pursuing!

There are now companies entirely focused on Software Testing and this industry quietly generates a huge number of jobs while many people look aside towards limited programming jobs and miss the opportunity.