Friday, 30 March 2012

Ambigous Defects and Deloitte Social Innovation Pioneer Selection

While writing this blog entry, I am beginning to notice how much more I am beginning to think like a software tester, not only in using the 'blog stubs' method that I have developed, but also in gradually being able to make sense of the processes, as well as being able to apply some of these concepts beyond professional contexts.

Like the game of cricket, software testing is largely over-complicated by jargon. Just from the very title of this entry, you may already have noticed that 'testing speak' is starting to become more visible within my vocabulary, with the use of the term defect. In software testing, the term defect refers to a flaw in a component or system that can cause it to fail to perform its required function. More generally though, a defect refers to a fault that detracts from perfection. Going through the revision questions of the ISEB Foundation Certificate, I am beginning to find much 'defects' in its use of the English language, where another  concept familiar to readers of this blog is also visible - ambiguity!

I have often written here about ambiguity presenting a major challenge to people with Asperger's Syndrome, and also have a piece on this subject in the current edition of The Autism File. Where ambiguity causes 'defects' in the ISEB training material is within multi-choice questions. To start with, I am going to put myself in the unlikely position as a person with Asperger's Syndrome of defending the concept of ambiguity. Multi-choice exams are often dismissed as being 'too easy' or 'like filling in the National Lottery', but where they can be made challenging (which I am sure most would agree that exams should be) is through ambiguity, as long as it makes sense! For ambiguity to make sense in a multiple-choice exam though, you can't have possible answers that use a different word to mean the same thing such as in the following example:

Regulation Acceptance Testing is performed against any regulations that must be what?

A. Understood
B. Read
C. Adhered to
D. Followed

At first, it is apparent that all available answers apply to the question, but then on closer inspection, it becomes clearer that is little difference, if any, between choices C and D. The correct answer is C, but D virtually means the same thing. Ambiguity doesn't just apply to the recruitment process, but it is also present during the training stage and can cause confusion. 

Having been immersed in software testing, as well as blog stubs, something that it also helps me to be mindful of is that when writing a blog entry, issues that I describe often go beyond the blog stubs to add further dimensions to the other aspects of my role at Autism Works, in this case, the Operational Procedures, where I may look at reinforcing guidance on training employees with autism and Asperger's Syndrome. Chris Neville-Smith, one of our Test Analysts, has suggested that when we start training new trainee test analysts, it may help to have a 'jargon-buster' guide to help make sense of any ambiguity. 


Kilimanjaro (5895m), Tanzania
Elsewhere, we have had good reason to celebrate this week after being selected from over 300 applications to be a Deloitte Social Innovation Pioneer! Thirty social enterprises, including Autism Works, were selected by Deloitte to receive £1 million worth of support to help grow their business. Outside of work, my training for the Bupa Great North Run is progressing quite well, despite the strain it can put on me physically sometimes! I have now extended my challenge into a double challenge - the Great North Run this year and then in October 2013, hopefully climbing Mount Kilimanjaro, Africa's highest peak at 5895m (19,341ft). 


Sponsorship raised from my Kilimanjaro challenge will go to the Daisy Chain Project. To find out more about my double challenge, click here. Stay tuned to see how this progresses.


I would like to say a huge thank you to all who have so kindly donated to my challenge for Daisy Chain so far, and to feel free to pass this link through your networks.


Friday, 16 March 2012

Stubs, Pies and Lighthouses

This week at Autism Works has seen me take another turn with my software testing training. In last week's entry, I talked about how aspects of the ISEB Foundation in Software Testing Training Course reminded me of previously gained knowledge from university experiences as well as the principles of Buddhism. Having now completed the six lessons of the course, I have started to see aspects of software testing come into my work, including writing this blog and have also benefited from some creative use of training material, similar to what I advocate in my workshops on Asperger's Syndrome for Employers.


When learning about software testing within a life-cycle of a software product, I have come across special-purpose implementation of software components in existing software products, or stubs. this has provided me with a different approach to writing my blog whereby I list 'blog stubs' to expand on, which, I am finding, is very conducive to the way I think in relation to Asperger's Syndrome in a visual and structural sense. The list of blog stubs provides me with a structure, giving me a visual image as to how paragraphs and content will be structured, as well as occasionally enabling me to come up with an image to explain what I am writing about. Autism Works' Test Manager Grayson Cobb did this very effectively in explaining the techniques of statement and branch testing coverage using an image of three pies, to explain the workings of the following code:   
                                               
 
    If A = 3 then
    Display_message A;
    If B = 2 then
    Display_message B;
    Else
    Display_message C;
    Else
    Display_message D;



Unless one has an IT background, the above code is unlikely to make sense initially, as much as it didn't to me, not to mention the relationship with the pies! The first two actions (A=3 and B=2) are both specific and have an equally specific outcome while the next two actions (else) are open. So to do a 'statement test' to ensure the specific actions work you would need to test two actions (A=3 and B=2), but to do a 'branch test', you would need to test all actions. How this works in relation to the pies is that of the three pies, one is mince and the other two are steak, but is unknown which is which, so one would have to taste all three pies to see which one was mince and which two were steak, performing three tests. It became much clearer to me after Grayson used his previous experience as a chef in explaining the process!


Many people with Asperger's Syndrome and High-Functioning Autism, including myself and, perhaps most famously, Temple Grandin are largely visual thinkers, often benefiting from use of images to understand different working processes, hence the title of one of Temple Grandin's best known works Thinking in Pictures. In relation to how I think visually, I find it especially helpful when learning a new theory or task, in this case a software testing technique, it helps to use an effective visual image or to act a task out enabling me to see the workings of it, and so that I am able to replicate the task effectively.   


Souter Lighthouse, Whitburn,
the world's first electrically-lit lighthouse
Away from work, I have continued with my training for this year's Bupa Great North Run, including doing my first extended outdoor run, running along the coast between Seaburn and Whitburn from lighthouse to lighthouse. My run started and finished at the Old Lighthouse in Seaburn running up to Whitburn's Souter Lighthouse, the world's first electrically-lit lighthouse, before coming back to seaburn, a round trip of six miles. Once I got going, I really began to enjoy it and couldn't stop! Hopefully it will be like this come September 16th 2012! For more information on my challenge, click here


Stay tuned to Adventures with Autism Works to see how both my Great North Run and ISEB training progress, as well as how Autism Works continues to develop. 

Friday, 9 March 2012

Moving Office and Learning a New Language

Welcome back to Adventures with Autism Works. This last fortnight has seen some interesting developments for me at Autism Works, not least with regards to what I am learning from the ISEB Foundation in Software Testing Training Course that I am currently doing, and today sees us move into some temporary offices before we move to Milburn House on Dean Street, a little further down the road from our current premises on Grey Street in Newcastle-upon-Tyne.

I feel that I am making quite reasonable progress with the ISEB Foundation course. As well as learning some new terminology and gaining an understanding of software testing tools, I am also finding that there is a lot of similarities in the course to what I have previously studied or practised, from the Management module that I studied as part of my MA (Hons) in Information Management to Buddhist philosophies I have heard described in Dhamma talks delivered by Ajahn Munindo and Ajahn Sumedho.

Much of lessons one and two of the course have been about Quality Assurance, along the theme of preventing defective products from being made through testing rather that allowing defective products from coming off the production line through lack of testing. This reminded me very much of an interview with Tom Peters, the renowned Management Consultant, that I watched when a student at Northumbria University, in which he talks about achieving excellence through assessment techniques and continuously identifying areas for improvement. This was when the concept of management was totally new to me, but in applying such an approach to the present time, Tom Peters recognises that there is no one-size-fits all approach to management consultancy, which is why his service doesn't have a single approach. Rather like the Autism Works recruitment process cannot have a one-size-fits all approach due to the huge difference between individuals on the autistic spectrum, due to the different requirements of software developers, the company can't have a one-size-fits-all approach to testing.

However, an approach that we can employ with whichever testing tool that we approach testing a company's software with is one of our key assets, our independence from the constraints and systems that software developers work under, which as readers of this blog may remember is what we like to market ourselves on at Autism Works. As we are not familiar with the systems and working practices, it can enable to see their work from a different perspective, thus see details more clearly. This is very similar to the 16 knowledges (nanas), central to practising insight meditation, which focus on how we can be 'conditioned' by how we interpret our surroundings, in other words, how our mind can 'edit' how we see the world around us. Another aspect of software testing where Buddhist philosophy can be applied is in communication of truth between the development and testing teams, rather than applying blame, as the developers and testers are on the same side with a joint goal of getting effective and well-tested software to the market quickly. To enable this, it helps to use empathy where necessary.

As I write this piece, we have just moved into temporary accommodation until our preferred new premises are fitted with broadband, which should be in about a month's time. Taking apart desks and furniture for moving reminded me of various comedies involving DIY going wrong! Elsewhere, I have also had some very generous donations for my Bupa Great North Run Challenge over the last two weeks - a huge thank you to all those who have thus far donated. You can visit my Great North Run page at http://www.justgiving.com/Chris-MitchellGNR

Stay tuned to this blog for more adventures in the world of software testing!