Systems & Software Talk 

Project "Success" Metrics & Project Development Methodology

07:18, 2009-Mar-10  ..  Posted in General  ..  1 comments  ..  Link

A few years ago at SQAForums I solicited the membership for some project metrics. I have included them here. The reader is cautioned that this is far from being considered as “scientific”. The intent was to get a general feel of IT-projects success levels, and - echo that back to the participants. The other inspiration for this was related to periodic studies of the same, by the U.S. Government Accountability Office (GAO).

 

I am thinking about doing this again with a bit more “scientificism”. Then I think about doing that alone and realize that I would rather attend a 4-hour opera where a performer using a contralto carrier, is blurting out vocal buffers where the buffered content consists of test procedures for an email application.

 

Anyway, if you are interested in partnering in a reprise, please let me know. Otherwise, you may as I do find the data interesting and without surprise.

 

 



Software Testing Misunderstandings and Disrespect

06:29, 2009-Feb-25  ..  Posted in General  ..  5 comments  ..  Link

Software Testing & Quality Assurance

Part 1 – Software Testing Misunderstandings and Disrespect

This is Part 1 of a multi-part blog entry. Part 1 here is a setup for the nuts and bolts of remedies to be blogged in Part 2. If you wish to participate and have ideas as to how our profession can reverse the trend (assuming you agree there is a negative trend) described within, by all means comment here to Part 1 and I will include your ideas in Part 2.

 

Introduction

Is it time for a globally-based initiative to correct misunderstandings of what we do and restore respect to the software testing profession? Have too many organizations and individuals minimized the importance of what we do? Is overall respect waning for what we do and what we bring to the table? Do organizations still profile test engineers and classify them as lesser creatures relative to BAs and developers? I think so. My red flags began to unfurl in the wind of the apparent misunderstandings and diminished respect exposed in various posts as SQAForums as well as at the links below:

http://www.wisegeek.com/how-can-i-become-a-software-tester.htm

http://www.gamecareerguide.com/features/372/the_acid_test_qa_as_a_bridge_to_a_.php?page=1

Thanks to the people who located these and thanks to Anna Baik for her post at the below link which further exposes the public misunderstanding.

http://www.softwaretestingclub.com/forum/topics/would-you-recognise-your-job

 

Where Do We Fit Into This?

 Here are my thoughts.  I must insist however that you as a reader of this material are part owner in this dilemma and worldwide erosion of the public respect shown this profession. The amount of hidden misunderstandings and disrespect cannot be quantified of course and only you the “recipients” can speak to such. I suggest we are all partly responsible for restoration of software and systems testing to a more respectable position. Does that sound like a deal? I believe the core reasons for the continued and seemingly growing disrespect and misunderstandings of our profession are rooted in the following main reasons. I think the number one reason may surprise some and the other core reasons or symptoms are irrelevant if the main reason is addressed.

1.       We allow it to happen and do little to stop and correct this problem.

2.       Many organizations have structured departments and compensation based upon those very misunderstandings.

3.       Because of item 2, we now have an established culture based upon myths and misunderstandings – a culture that because of all the above wrongly but naturally promotes disrespect.

4.       Consulting firms are quick to put profit $$ before the customers’ best interests where they offer unqualified human resources for test engineering roles. This phenomenon is rampant in our industry and is very damaging to the credibility of our profession.

 

$$ Background

First I would like to summarize one big aspect of this pickle – something we are all aware of. Publicly traded companies rightfully intend to be profitable. The stockholders rightfully expect a return on their investments. Obviously employee/contractor compensation is one of many factors which can affect the profit margin. The global recession has caused some governments to bring a microscope to bear on compensation for certain corporate positions. In the context of this article, I am alluding to imbalance of compensation that may directly or indirectly affect all of us. I will leave my opinions aside with respect to that difficult issue and move on to another thought stream – that of globalization and outsourcing. First of all, I am in favor of globalization for (among many other reasons I will omit) the opportunity to learn about my sisters, brothers, their cultures and their languages.  I am rightfully skeptical of the total intent of outsourcing. (Note! My opinions and feelings are not those of, are independent of and do not necessarily align with or otherwise agree with those of my employers.) The intent of outsourcing is/was to cut costs and increase profitability. That is fair. It sure makes me as a stockholder smile. On the other hand, one might ask, “How much of outsourcing is exploitation?” I will leave that to you to ponder and get back to the issue of software and systems testing respect.

 

QA versus Software Testing

You may have noticed that other than the topic title I avoided the use of “Quality Assurance”. I did that for a reason. It is my belief that restoration of reasonable respect for software and systems testing begins with terminology – terminology which can effectively set expectations of our profession.  If the consumers of our skills and services have a good understanding of what to expect from us, they might better appreciate the value of what we bring to the table and treat us differently. It seems to me that having reasonable expectations of an employee or contractor is certainly a crucial success element, and is based in proper terminology which can yield proper expectations. On that note I offer the following terminology-related thoughts. Agreement with, or disagreement with what preceded and what follows is certainly your right. The point of this is not to change your beliefs. It is intended to offer up thoughts and possible avenues to restore a level of respect for our profession.

 

I believe that one can test and identify defects in systems and software until the cows come home. Assume that all defects identified are corrected after the cows arrive at home. Sure, when the defects existed they certainly lowered the level of quality. But there is absolutely no guarantee that a corrected and near-defect-free system or software application is of high quality. I think many of us have seen near-defect-free software of extremely poor quality. Therefore I submit to you that the purpose of software and systems testing is to identify defects, with a collateral responsibility to push for better software engineering processes/practices and quality awareness. It seems to me that it is then perfectly reasonable to suggest that the role of a Quality Assurance Engineer is to push for quality and do what it takes to reasonably prevent defects. However, “push for quality” and “prevent defects” is just not a sufficient guarantee that systems and software will be of high quality – correct? Typically, many of us are not in the position to stop the release of something we believe to be of poor quality. Therefore if we are not sufficiently empowered to stop poor quality from being released, why should we implicitly assume such empowerment by stating that we are a Quality Assurance person? Take another look at the last few sentences and questions. If the efforts of System/Software Test Engineers and Quality Assurance Engineers cannot guarantee quality, then who can? It seems to me that an organizational effort is required in order to give the terms “product” and “quality” a fleeting chance of earning the label “quality product”. Ask yourself before you disagree with me, "Can you in your role - alone, Assure Quality?" It seems to me that the bulk of the people who can assure any hope of quality are found at executive and management levels and in the early stages of a program or project where the seeds of quality will either be fertilized or ignored.

 

Many of us are aware of the famous “Quality Triangle”. I think it important to pay homage to that with respect to quality ownership and the key factors that play a huge role in determining a chance at product quality. Here is another variation on that famous artifact:

http://en.wikipedia.org/wiki/Project_triangle

 

Examples of Disrespect

I am sure we can all cite numerous instances of disrespect. As I alluded to previously there are countless instances of disrespect documented on the www.  One of my many many favorites is a classified ad from several years ago where the ad stated in part, “Quality Assurance Tester… with an opportunity to advance to software development.”  Let that and similar instances be our motivation to reverse this culture.

 

Granted it takes years to change a culture or climb this mountain. Bear in mind that the while the Earth’s tallest mountain is daunting to many, it is routinely conquered.

 

And in summary, perhaps I am just over-reacting to something I can do little about?? At age 60, should I even care?

 

End Part 1 - Setup

I really struggled to be serious throughout this entry. I wonder if Part 2 – Corrective Action will suggest that we all get mullet hairdos? “My achy breaky app…”



Happy Holidays 2007

05:41, 2007-Nov-29  ..  Posted in General  ..  1 comments  ..  Link

I love the melodies of Christmas carols. I am an amateur MIDI enthusiast and have a goal of publishing a Christmas CD consisting of my own arrangements. I am inspired by the works of Mannheim Steamroller.

I have included two links here to free downloads of my work. Both songs are in WMA format and less than 5MB each.

The first was put together on a Commodore Amiga 2000 accelerated with a 68020 card. I used Octamed to do the sequencing, driving a Rhodes (Roland) 660 keyboard. For the second song I used and for current work use Cakewalk and or FL-Studio aboard a 64-bit WIN-XP PC. I use these to drive the following:

  1. Rhodes (Roland) 660 keyboard
  2. Yamaha S03 Synthesizer keyboard
  3. Roland SC-33 Sound Canvas, and
  4. a Hercules Game Theater external sound card.

The Hercules card has the core Yamaha sound library. The Yamaha S03 goes far beyond that in terms of sounds.



Acceptance Testing (UAT) - Some Answers to Some Questions

08:11, 2007-Nov-18  ..  Posted in General  ..  0 comments  ..  Link

This is based upon questions posed at Club drivenQA.

http://club.drivenqa.com/forum/topic/show?id=751045%3ATopic%3A11785

For the purpose of review, in my opinion the standard reasons for UAT include and are not limited to:

  1. A demonstration of the software for the end users to prove that it meets or exceeds their needs, per the last agreed to sets of requirements.
  2. Provide a level of system and software confidence such that the end-user will signoff and accept the software.

How does one start? If you have any of specifications, requirements, system and business use cases you then have some key ingredients as a starting point. Beginning early in the project and then throughout the project you should meet with your customer to develop and/or refine the UAT plan. Remember that this is a demonstration. UAT assumes that the software and systems work as intended. All known defects have been corrected and validated as having been corrected or in some cases, acceptable workarounds are agreed to by the customer and/or workarounds are specified for those issues still being investigated.

What level of details should our scripts have?

The level of detail should be agreeable to the customer, and also have a degree of acceptable reproducibility. Test plan, test scenario, test case, and Pass/Fail criteria ambiguity can make it very difficult to settle disputes especially when issues do surface. Greater relevant detail reduces the probability of dispute especially if the UAT Plan and the trail weaving back through all upstream artifacts is robust and the deliverables upstream are contractually compliant.

Who should be involved in terms of Users?

If there are users who have been directly involved in the development life cycle, from a specification familiarity perspective they may be of great assistance in driving out the UAT plan within the confines of the contractual requirements. Any end-user is certainly capable of being helpful. I have seen Acceptance Tests conducted/witnessed by:

  1. End-users,
  2. System and/or black box testers, or
  3. A mixture of the above, and
  4. Possibly more.

Where should this be carried out (On or offsite)? It depends upon the customer’s desires as well as the practicability of the location(s) for the test or tests. If one is conducting operational and acceptance testing of aircraft carrier-borne aircraft landing systems, one would conduct this aboard the aircraft carrier in an area that does not inhibit flight and does not interfere with the surrounding environment. The key thing to consider is that the location faithfully represents the overall system architecture and configuration of the production system such that execution of the UAT plan is not compromised and the operation of the system and its applications is reasonalbe guaranteed. Does that mean the system should be identical to the actual production system? No not necessarily. The bottom line is that the location should not compromise the ability to conduct UAT. Other things to consider are costs and logistics. Which location makes the most sense after giving consideration to the latter? In some cases UAT can be conducted in multiple locations. If it makes sense to do that, then one should do that.

An important concept to consider here is the idea of Qualification Phase Testing or Phased Qualification testing. UAT does not necessarily need to be a big-bang one-shot operation. UAT can actually begin upstream in the development life cycle. How can that be? If there are components that are considered complete and the end-user can certify them as acceptable, why not get sign-off earlier?

What happens if some components require simulation such as credit checks or radar feeds? Assuming the simulations or stubs exist and are planned as part of UAT, the customer would need to approve their use.

The actual facility should facilitate execution of UAT and be free of distraction or other impediment to the process. The hot office gossip items such as Sally and Art’s budding office romance should be kept away. Put them on a hormone regulation treatment pan for the duration of the UAT, and - possibly beyond?? Roberta Rumormill should be required to take vacation during this phase so she can work on her Office Tell All novel. One would also need a couple rolls of Duct Tape for loud and otherwise obnoxious Boisterous Bob. Is there construction going on a the location? If so, Johnny Jackhammer, Davy Drywaller, Paul Painter, Randy Roofer, Willy Welder, Albert Asphalt, and Vince Low-Voltage should be given a few days off. Do people bring their pets to work? This is just not a good idea during UAT. While the sight of Paulina Parrot pooping on an end-user's shoulder, or - biting the main button from a blouse to cause a Janet Jackson wardrobe malfunction may be cute, these may not be part of the UAT plan. Leave the pets at home. One does not want an end-user locked in the grip of a pit bull. On the other hand if the software is on a mobile device that measures the force of a pit bull’s bite, then this would be a use case that should be executed by the customer; unless of course the Duct Tape is not having the desired effect on Boisterous Bob.

Other considerations are as follows. One does not want an end-user going into anaphylactic shock because of exposure to Project Manager Pedro's peanuts or Constance Cologne-overload. While the customer may be impressed with Earl Engineer’s big-air abilities on his skateboard, this may not be in the UAT plan. Skateboards land with tremendous force and can create a bone-crushing experience. Leave the skateboards, roller-blades and unicycles at home. Think about the hazards to safety in the UAT environment. In a automated wood furniture leg-making making shop you would not want Cassie Customer’s 4-foot pony tail to be spun in a lathe. How about what could happen in the paint cell on an automobile manufacturing line? You would not wish to transform your end-users into looking like those under this link (right-mouse opne in new window) - correct? Other hazards might include some self-made VIP walking in with fanfare muttering such nonsense as "Alright, let’s kick the tires on this thing." Call security and have this person escorted out the doors with the pit bull behind.

Ensure participants are bathed or showered and their anti-perspirant is certified up to 110 degrees Fahrenheit. Be professional but have fun!

 



Quality Assurance / Test Engineer Bill of Rights

06:55, 2007-Oct-23  ..  Posted in General  ..  1 comments  ..  Link

Observe your timepiece. I am about to tell you what time it is with your own timepiece. Insert Smilie

Be you a QA Analyst/ Engineer or Test Engineer/Analyst or Tester, your inherent rights as a Quality Assurance Professional are as follows. You have the right to:

  1. Seek improvement in industry, organizational, departmental, or team-originated professional works, methods, methodologies, processes and practices.
  2. If it does not fit, tactfully challenge, question, and debate any method, methodology, process, practice and any related material.
  3. Be instinctively skeptical of any material put in front of you.
  4. Verify and validate any material put in front of you.
  5. Critique any material put in front of you.
  6. Understand that one methodology does not solve all problems.
  7. Exercise your most basic instinct – find the flaws.
  8. Understand the meaning of the word theory.
  9. Be the best you can be and tactfully influence others to do the same.

What other rights do you feel could be listed here? Could any of the above be improved?



{ Last Page }   { Page 1 of 4 }   { Next Page }

About Me

Home
My Profile
Archives
Friends
My Photo Album

Links

Corey Goldberg
Effective Testing?
Bj Rollison I.M. Testy Blog
Alan Page: Software Testing & Rants
Dmitry's LoadRunner and QTP Blog
Veterans History Project
Air Traffic Control Watch
Music Making Fun
My home 1972-1975

Categories

Functional Testing
Performance Horror
Development
Performance Testing
General
Tools Tips
Warped Humor
LoadRunner Tips and Tricks

Recent Entries

They Need To Test More...
Software Disorder
LoadRunner (tm) & RTE 4 Func/Regr
LoadRunner (tm) Random Think time Function
Are Rock, Paper, Scissors-based Decisions Obsolete?

Friends

LauraScharp
philk10
richardw100
aalhait
jimhazen
strazzerj
Lynnem
bru
EklecticTester
jgottlieb
leakybrain
michaeljf
prainbow
rajeshmathur
rstens
Yury
zeeslo
whollymindless

Syndication

RSS Site Feed