On Software Testing and Quality Assurance : Letter to Self


(photo by Cierpki)

After weeks of software quality assurance course, it scares me how many software teams I’ve been in the past that don’t do some, or even most, of the testing and QA basics that I learned in this course.

Finally, it’s the last week of the course and I’m going back to the professional world soon. So, this is a letter that I address to myself weeks, months, or years from now. Now I maybe supercharged with what I’ve learned in class, about regression testing, automated test cases, boundary value analysis, metrics, and so on.

But as time passes by, as the pressure of completing projects come, as the lazy devil tempted me to not write unit testing (oh wait, I can blame the devil), and of course as my memory started to fail me about what I learned in this course, I might not do any of the QA practices.

So this is the reminder for “that” me. Never give up what’s right for a short-time gain. You are better than this, you have the discipline to overcome the temptation, review the SQA lessons and blog posts you have written when you believed that a good quality software requires various measures but they are worth the price. Continue reading “On Software Testing and Quality Assurance : Letter to Self”

Testing Automation Process and Tools

Multi Tools
(creative photo by johnnyberg)

As we’ve discuss in the previous post about testing in Agile software development environment, automation is a very important part to successfully to be agile. However, one doesn’t need to be familiar with Agile process at all to see the immediate benefit of automating the testing process.

This time we’ll see different testing automation tools that we can use to make our life easier. 🙂 Continue reading “Testing Automation Process and Tools”

trac Bug / Defect Tracking Software Review

trac is a very minimalistic defect tracking system that has been around since 2006 (six years ago). In internet years where software come and go in just 1-2 years, this is a very long time.

Used by some of the big names such as NASA, WordPress, jQuery, and BitNami, trac is definitely worth to check. Continue reading “trac Bug / Defect Tracking Software Review”

Agile Testing

Space Rocket
(illustration by Rybson)

Agile, the hottest software development lifecycle (SDLC) nowadays, was initially used in small projects and considered not suitable for medium and large projects. But now large companies have picked up the trend and adopting it into their major projects.

By now we’ve agreed about the importance of testing in all stages of software development project. Yet, those stages are actually closer to the waterfall or other iterative and incremental SDLC with longer phase period. Agile iteration, typically called sprint, are a lot shorter and only last for 2-4 weeks.

In this blog post we’ll see the challenges, myths, and how the testing in agile can be performed. Continue reading “Agile Testing”

Outsourcing Testing and QA: Is it Feasible, Advisable, Risky?

outsource team
(photo by spekulator)

The exciting part of IT is, every several years there are always new trend in the industry where most of the people, even the experts and big companies, are riding the bandwagon. The new trend that promises that it will save costs, bring more productivity, and everything in between. The trend that usually disrupt the existing way of work and creates the pros and cons party.

Few years ago, such trend is outsourcing, and people and organizations have experienced it. Some had positive experience, some had negative ones, and some other had, probably, a bit traumatizing times. Continue reading “Outsourcing Testing and QA: Is it Feasible, Advisable, Risky?”

Meet Our Two Friends, IEEE 730-2002 and IEEE 829-2008 Standards

two jumping people
(photo by lusi)

Whenever we see numbers mixed with letters such as the title of this blog post we know that we’re up to something heavy.

Be prepared, because this time we’ll talk about the IEEE standards for the Software Quality Assurance Plan (SQAP) and Test Plan.
Continue reading “Meet Our Two Friends, IEEE 730-2002 and IEEE 829-2008 Standards”

Validation in Pharma Industry

pharmacy pills
(photo by Danny de Bruyne)

No, it’s not a typo, this time we’re talking about the validation, process, and quality assurance (QA) in pharmaceutical industry.

Maybe I’m not be the best person to talk about it although I had some experience in medical technology and clinical laboratory few years ago. Nonetheless, there are actually some similarities between pharma QA process with software QA process (now that’s the word we’re waiting for). Continue reading “Validation in Pharma Industry”

Can We Write Good Quality Software Faster?

Codes on screen
(photo by kakaopor)

Steve from Ardalis.com wrote an interesting article that discuss about the internal and external software quality. He defines external quality as the software’s presentation and behavior from a user or customer’s perspective, such as, bugs, UI, input validations, etc. While internal quality refers to to how the software was constructed, and how easy it might be to maintain or extend.

So, external quality is the quality that can be appreciated by everyone, while internal quality is the code beauty that can only be appreciated by developers, and here we focus on the latter.

He proceeds to discuss that virtually all of the software codes created today is of relatively poor internal quality, and this is largely due to the capabilities of the developers in the development team, unappreciation to code quality, and lack of time to write good quality code. Continue reading “Can We Write Good Quality Software Faster?”

Recovery Testing: The Neglected Child of QA!

Failure… the word that sounds bad, everyone hates it. Don’t bother to say the whole word, even the first letter has a negative meaning in a gradebook.

We’re so afraid of failure, we always try to avoid it, even up to the point that we fool ourselves saying that our system will never fail.

But let’s just face the fact, everything that can fail will fail at some point of time, says Murphy’s law.

This is where Recovery Testing comes to play, we need to test our system how it handles failure (and it should be better than how some us, humans, do).

Let’s see what do we need to know to do recovery testing. Continue reading “Recovery Testing: The Neglected Child of QA!”

Performance Testing: Definitions, Tools, and Challenges

speedometer picture
(photo by Sardinelly)

Testing whether the system can do the expected functions specified in the requirements is one thing, there other thing is to test how well the system is doing it.

It doesn’t make sense if a system can perfectly do its functions, but only when one person is using it and as soon as the second user is logged in, the system stops. Or in case of a single-user desktop application, the application works fine processing ten items, but crashes when processing 100 items.

So the topic for this blog post is quality of service testing, also called non-functional requirement testing, and in particular we’ll take a look at the performance, load, and stress testing. Continue reading “Performance Testing: Definitions, Tools, and Challenges”