Archive for the ‘CAST’ Category

August and Everything After

Attribution Note:  This post’s title belongs to the Counting Crows album released in 1993.  *Please see below.

One of my software testing community colleagues emailed me this week, “You’ve been quiet.  How are things?”

I went into something akin to recluse mode after an amazing week in New York City in August 2014 where I participated in my first un-conference, TestRetreat2014 NYC with other passionate skilled quality-minded folks, and then participated in three days at CAST2014 NYC where I attended an awesome workshop lead by Noah Sussman, lead a track session (my 1st conference talk, yeah!), and served as LAWST-style facilitator [Ref.] for multiple speakers.  I am an extrovert who thrives on stimulating thoughts and connections in and with others.  I love people, but I also need space and quiet, focus time to recharge my batteries.  My personal goals derived from those energizing days were as follows:

  • TestRetreat – cross-pollinate by talking about software quality to non-testers and kids and engage with local agile or lean software groups.
  • CAST NYC – share my conference experiences (including details on that week) and insights through blog posts.

In keeping with my decompression needs, I had a delayed start plan; I intended to reflect and publish my mix of handwritten and typed notes by pumpkin time, Halloween. That did not happen.  Lesson learned:  Do not wait!  Share your thoughts and reflections while they are super fresh. Yes, I still intend to post insights from over a year ago.  Life happened.

In early October, I took a week long adventure trekking trip with 2 dear girlfriends, and when I returned home I learned that a loved one’s health had taken an alarming nose dive.  Outside of work responsibilities, family, and a 2-room home remodel project prompted by water, shade, and 65 year old plaster,  I did not muster any energy to connect with my software testing community or make a move on my good intentions until awhile after that loved one’s passing in May.

I have slowly been inching out of the woodwork since.  This summer I teamed up with someone locally to transfer leadership of the meetup group I founded, GCST, and to transition it to an agile meetup group.  I started a fresh effort to envision long-term goals and am now preparing and reviewing course materials to assist as an instructor for BBST Foundations.  I am also brushing up on  Gojko Adzic’s Specification by Example and Impact Mapping.  I drafted this post as I flew home to Florida from new job orientation in California.  That is big news.  I wear a product owner hat now.  I will remained focused on quality in software delivery in an agile environment for a different organization. I get to apply the testing mindset upfront in processes in direct collaboration with customers and as part of the development team!

Although, I have been a wallflower in the software testing community since last August – not actively participating in professional online groups – in the last year I did manage to contribute 3 company DevBlog entries and to do a few talks, which I now have listed in a Speaking page on this site.  Thanks for reaching out to me Matt Heusser and thank you for creating interactive spaces like TestRetreat and Software Delivery 24/7 for quality-minded folks to support each other and to learn from one another.

*Oh yeah, in closing, from back in the day, here is one of my favorite tracks from the aforementioned namesake album.   I hope you enjoy this tune, Rain King.

Nine-Dot Puzzle, Bewilderment, & the Art of Possibility

I closed my CAST track session with this puzzle:  Connect all 9 dots with four straight lines without taking the pen from paper.

9dotblog

 

The frames our minds create, define – and confine – what we perceive to be possible…Everybody hears: ‘Connect all 9 dots with four straight lines without taking the pen from paper, within the square formed by the outer dots.  And within that framework there is no solution. If, however we amend the original set of instructions by adding phrase, ‘Feel free to use the whole sheet of paper,’ it is likely that a new possibility would suddenly appear to you.  I might see the space outside the dots was crying out, ‘Hey bring some lines out here!’ – from Art Of Possibility: Transforming Professional and Personal Life.

My CAST session was inspired by various forms of bewilderment I met in testing, akin to experiences I worked through during 3 days in silence with paints, paintbrushes, and paper through a Process Arts workshop.  The painting weekend was an incredible experience for me.   Art, after all, is about rearranging us, creating surprising juxtapositions, emotional openings, startling presences, flight paths to the eternal.  

Now 15 years into my testing career, I see inter-disciplinary studies across all fields. In my mind, testing is not far from what I loved about studying and working in environmental science, which was whole-systems thinking and the growth of  ideas like those in Natural Capitalism.  Testing insights are everywhere waiting to be discovered…through studies and applications of sciences, personal study, play, and the practice of art.

P.S. We can still go beyond the above illustrated solution.  Check out how on Seth Godin’s post on Appropriate Cheating in the nine-dot problem.

 

 

All Kids Love Logs!

We learn from logs – application logs, system event logs, API logs, network trace logs.  These are invaluable tools for testers.  To not consult logs or not have access to logs is to miss out on these benefits:

  1. Save time on bug investigation.e.g., Logs can show failure conditions related to data problems or issues with error handling, thereby saving you time trying to figure out what just happened.  Logs can point you to an environmental/operational health condition such as network or server related problems.
  2. Report the bug even when you cannot recreate the issue yourself. You have proof and details, which you can build upon if the bug shows up later.
  3. Strengthen your street cred with Programmers and other Testers.
    • Build bug reports which include exception stack traces, timestamps, request & response object details, which can help with the next bullet point.
    • Reduce the time Programmers spend pinpointing and fixing the bugs you reported.
    • Become a more technical tester.
    • Demonstrate that you have done your homework on the bug.
  4. Learn more about system internals and the software environment.
  5. Gain insight into error frequency and severity.
  6. Identify internal bugs, such as logging issues or security-related problems like un-obfuscated passwords.
  7. Investigate failures for which there is no visible error in the user interface.
  8. Proactively monitor system health. i.e., Investigate errors before they get escalated to you via Support.
  9. Identify on what day a particular error appears to have started, i.e., bugs introduced in a particular build, problems introduced as a result of an environmental change such as a change to server configuration .

Gotchas:

  1. What you zoom in on within logs may seem more significant than it is so remember to adjust your focus and stay neutral in your bug reporting.
    • What you notice is important, but what you are focused on might not be what you need to see. (Jesse Alford’s reference to AutoFocus in his Lightning Talk, Focusing the Mind’s Eye.  An Optics Analogy at CAST 2013. See Jesse’s talk here.)
  2. System logging bugs – inaccurate log levels, missing logs!
  3. Make sure your software architecture or operational configurations prevent DEBUG logs from getting into your production environment and creating a mess.

*Credits:  For fun – I borrowed ‘All Kids love logs!’  title from Ren and Stimpy.  Here is a tidbit from their quirky show [1 minute: 6 seconds via YouTube].

 

Career Composting


As kids, my brother and I loved to dig into our family’s enormous compost pile of oak and pecan tree leaves, vegetable scraps, and dried horse manure to find worms for Grandpa’s fishing trips.  Our rewards:  his ear-to-ear grin and 10 cents for every worm we found.  As an adult, I sift through a much smaller pile in my backyard and tend a tiny family garden.  Using my hands there goes a long way in clearing my head and often helps me turn over my work experiences.

I love to unearth bugs in software and appreciate help finding bugs in my thinking.  Like composting, growing into new habits take practice and patience. Here is the goodness which surfaced over time in the bins of the greatest personal challenges in my recent software testing history.

I have a voice and I trust myself to use it.

  • Test leadership – I articulate my strategy and my role as a tester.  I narrate 3 stories – status of the product/how I tested it, how good that testing was/why you should be pleased with my testing, Is there anything else you want to know? (Credits and thanks to Paul Holland’s Track Tutorial on End-to-End Agile Testing at CAST 2013 conference). I am not a gatekeeper or Product Owner, so I speak up when someone asks me to “make the call” to launch. I re-iterate my role in support of the business stakeholder team making an informed decision.  I make recommendations based on testing and quality issues.  I adjust the test strategy to explore areas of concern as project scope changes.
  • Management – I am responsible for providing direction and for communicating clearly;  I am not responsible for other people’s happiness. To be of best service, I direct my attention to the former, to the clarity and content of my message.

I will not underestimate the importance of community.

  • The above phrase resonated with me at CAST 2013 closing remarks by Scott Barber and Rob Sabourin.  I am continuously bolstered by the generosity of the software testing community through reading many blogs, my participation in a few sessions with Weekend Testing Americas, online coaching from Anne-Marie Charrett, learning from interactions and resources from online training through the Association for Software Testing, attending conferences.  I use techniques, tools and resources from the all of the aforementioned.
  • Now is the time to begin to give back.  I did a lightning talk at CAST 2013 on Leading Testing: Lessons Learned from Gumby. The positive responses and encouragement from those 4 minutes was part of the nudge I needed to draft my 1st post. I will devote energy to the fledgling meetup group I founded, Gulf Coast Software Testers, and I will eventually follow Claire Moss’s lead on co-branding this group as she has smartly done with Software Testing Club – Atlanta.

I ask for help.

  • I recognize emotional triggers as an invitation to cultivate self-awareness and an opportunity to grow my emotional intelligence (EQ). There is something (within me) that is asking for my attention.  No dillydallying!  I promptly confide in someone I trust to ask for feedback about the situation.
  • If I feel like something is technically over my head or if I get bogged down isolating failure conditions, I step away from my desk to get a 2nd opinion.  When I have been on the same test project for a long time, I reach out to my teammates to discuss testing with a developer, architect, and/or another tester to discover there are areas of the system, other scenarios, or approaches I have not considered.
  • Thank you to these great folks for their contributions, which have inspired me in this area:  Eric Jacobson – blog post, You’re a Tester, Relax;  Anne-Marie Charrett – Article [PDF], Beware the Lotus Eaters: Exploratory Testing; Paul Holland – YouTube video commentary on Skilled Testing.

Catch any worms lately?  What lessons did you learn in 2013 to apply in 2014? I wish you a hardy and prolific new year! 

– A heartfelt thank you to @aclairefication for her effervescent feedback, which helped me refine this post.