The problem of quality management is not what people don't know about it. The problem is what they think they do know.Philip B. Crosby
The problem of quality management is not what people don't know about it. The problem is what they think they do know.Philip B. Crosby
Recently I received a new issue of StickyMinds Better Software magazine. Usually there are one or two good articles worth reading but this issue (July/August 2011) has had a number of great articles I have been able to glean great information from. Just to name a few of these articles:
“Ask to See His…” by Lee Copeland
This about management always demanding to see a tester’s scripts and test cases detailed out to the click performance.
“Harvesting Stakeholder Perspectives to Organize Your Backlog” by Ellen Gottesdiener and Mary Gorman
A great game laid out here using persona’s during Scrum Backlog grooming and release planning meetings to better get a feel for how the product under development will be used
“Imaginary Friends – Creating Software With Personas” by Shmuel Gershon
Another great source for including persona’s in software development planning
Then the one which this post’s title references:
“When Software Smells Bad” by William Wake and Kevin Rutherford
Being a Quality Assurance Engineer by day and a self-proclaimed programmer by night (and mid-day for automation) I found this one quite useful in what these authors were attempting to relay. In general when creating software it is developed to full-fill a functional need, to produce an end result by which the user’s will gain business value to complete their tasks more efficiently (hopefully). Though this lofty goal is not always attained due to numerous constraints and reasons there is always a need to go back to this completed functionality and make it better, fix bugs or to improve the code base’s usability in order to accomplish the former. The latter is called refactoring.
During the course of refactoring a developer must decide what is good and what is bad code, the good code will not require refactoring as it can support bug fixes and enhancements, however the bad code is what is not maintainable or allows for change. In today’s Agile/Scrum software development life-cycle change is paramount (Working Software over comprehensive documentation – Agile Manifesto) so in order to provide the business value which Agile intends to support the code base must also. The trick is identifying the bad code which needs refactoring.
The authors of this article “When Software Smells Bad” provide a great summary of the common agile community term “code smells”. That is what I would like to list out for you now:
Code Smells:
In addition to these symptoms of bad code there are more common smells:
These are all indicators the code “smells” bad and may be in need of refactoring or even more serious issues. As Quality Assurance Engineer’s we need to ensure we are aware of these symptoms as well as we deal in t he code during automation design and development and during white-box testing. Understanding these code smells and being able to identify bad code will help any programmer at any level produce better code that is more sustainable, open to change, and maintainable. I have started to pay more attention to the smell of my code during QA automation development and have already identified more quickly where my code smells bad and have a more tangible set of symptoms to address.
Here is a useful set of code smells from the JAVA wiki – http://wiki.java.net/bin/view/People/SmellsToRefactorings
I have read the book Leadership and Self-Deception years ago but have come to realize the principles of “getting out of the box” are ones that need to be reviewed and studied numerous times. Our relationships, whether at home or at work are what makes or breaks us. Learning to step outside the many different boxes we find ourselves in where we feed our self-deceptions in order to feel confident everyone else has the problem is what will help us to finally see others for who they are, people (just like us, imagine that). We can all have successful, thriving, dynamic relationships; let us all start to identify the different “boxes” we put ourselves in.
Here is a great article summarizing some of the simple concepts and principles found within the book Leadership and Self-Deception.
Website Design and DevelopmentCustom website and application development to simple landing pages to compliment your online marketing.
Graphic DesignGraphic design for your website, print, and special events including Logos.
Computer & Network SupportSmall office, store or home network installation and support. CCTV surveillance installation including digital systems.
Search Engine OptimizationTop-of-the-line SEO and SEM consultations and unique content building.
Just obtained Certified Scrum Professional status today!
http://youtu.be/5n75gL4LWGA Jennifer Aniston's viral hit starring Keenan C
http://youtu.be/q7s5hYeRR50 Mother locked up in jail http://www.youtube.co
Just taught my daughter how to use her email address.
http://newstalk1290.com/files/2011/11/Soldier_Salute.pngleadership is creating an environment where everyone can contribute to solve the problem at hand.Esther