There is an assumption in movie studios that a film story would be rewritten 3 times, once while actually writing it, once while making the film
& then the last time when it is being edited.
This same assumption holds good for a software as well. It actually is or should be redesigned 3 times before it’s release.
The first being when it is actually conceptualised, once during the coding process & the last during the testing of the product.
So, in essence the QA folks are the Software Editors.
So, in making of the software each of these departments has a vital role to play & have a chance to give their own creative input to the final end product.
The Product Manager(PM) or Architect would have a particular end product in his mind which would be addressing a real problem for the users.
The PM would have a clear vision as to what the end product should be like, but would be more or less clueless as to how to achieve it.
This is where Developers come into the scheme of things, where they bring their technical skills in coming up with the design, come up with various implementation ideas
starting from which coding language to choose, the colour scheme, integration between various pieces of software etc. This is essentially the character development, camera angles,
music etc in a film. The Developer in essence can enhance a product that a PM has conceptualised.
With the product completed, we come to the final stage which is essentially the software editing, the QA folks.
This is where one can make or break a software. Certainly no one wants to watch a long & tedious film, with bad pacing, bad audio syncing.
Even with good technical values a particular product would not be able to reach it’s users if the PM’s/Writer’s vision is not clearly visible to the users.
So, it’s important the QA folks looks at a product from a overall user perspective & see if everything is making sense in the product.
At the end of the day user is least concerned about your technical values, it is all about serving a purpose in the most efficient way.
So, if something has to be chopped, then it has to go.
Now, begs the question as to who is the most important in Software making process? If you answered Developer, then you are wrong. You would also be wrong if
you answered as QA. It’s always both working in tandem towards the end product. Both empathising with each other & giving critical & creative inputs to work towards
one common goal.
That is when the product has the potential to be the best.