A question I get often is what is the difference between mobile, embedded, and more traditional software testing, e.g. IT or PC? I just did an interview for my upcoming book (publish due date Sept. 26, so watch for it). This topic came up there and in a couple of lines of text we addressed it. The book goes into more detail. But I think I’d like to address it a little bit more here and later on our web site, which should go live before the book is public.
Besides reading me, one can Google to find things like Wikipedia that outline difference and these are pretty good. And I think I say this in several places, but really I look at software domains as a continuum along a line or maybe multi-dimensional surface. At one extreme you have large main frames and supercomputers. These are big hardware and processing. Maybe at another extreme you have things like embedded microprocessors, FPGAs, and code on a chip (logic gates?). These are small and limited resources. In between you workstations, servers, PC, smart phones, and other devices which run software or can be programmed. Maybe I should be working on a multi-dimensional picture.
Each of these share concepts and approaches in testing. It is tempting to plan and conduct testing as if they are same because of what is common. And certainly a lot of testing can be done in common using classic test techniques. A tester would certainly find a lot of bugs and provide useful information just being “classic”. BUT, my research into taxonomies, which drive the upcoming book, showed some bugs patterns are more of an issue for mobile and embedded devices. In my opinion, a good tester will consider such patterns in planning and executing tests for a specialized domain such as mobile or embedded. My upcoming book provides such patterns (attacks) based on bugs.
Is it complete (meaning all bugs would be found)? No of course not and no test book or technique is. Much thinking is still needed. The nature of mobile and embedded are one aspect of context. Remember: “It depends”. More to come.
I just turn 60 yesterday. It becomes a time for reflection.
I have been working with computers, software, and testing/V&V for 35 years. They have changed. We have moved from buying minutes on the CPU, punch cards for input, and big systems of 100,000 lines of code, to buying data transfer down loads, voice/GUI input, and smart phones with 12-20 million lines of code in them. It seems that everyone has a computer (or 2+) in the pocket.
But they are still buggy. Louis Black has a great bit on bugs in smart phones. My wife swears at them. I read articles that say “coders and companies still are not testing enough (at all?) before fielding the software”. So maybe things have not changed that much.
My postings, book (September), and soon to be released web site offer attacks and test approaches that anyone can use. For most of my 35 years, I have advised many of the same thoughts (test early, everyone tests, use many techniques, etc.) Much of this is not new. Some people learn from our past and get better software. Some people do NOT learn from our past and reinvent the wheel over and over. Which type of person are you?
So I continue, as the earlier Blog indicated, wanting to be careful with how much I blog. Maybe that will change as I get more useful things to post. This time I would like to mention where things are on several fronts.
1. ISO 29119 Software Testing Standard part 1, 2, and 3 have been approved by ISO. I was IEEE project editor. It is a benchmark (for those that know about benchmarks they are useful for establishing where things are, but in the USA early land point benchmarks are known to be needing revision). IEEE and ISO will be releasing the software testing standard to general use in the coming weeks/months. I hope people start looking it over and give us feedback. There is work to be done.
2. My Book; all work is done except the cover. Software Test Attacks to Break Mobile and Embedded Software (the book) should be out in the next few months. We will have our web site up, class materials, and support info in the near future. It has been a long trip getting it done.
3. Conferences: I will be attending a number of conferences starting in late August until Early November. We’ll have more posting and info on those as well as some webinars. Be watching for those details or contact me. We will be at CAST, Softec Asia, STARwest, IEEE ISO29119 webinar, Embedded Software Testing (Spain), and ISO WG26 meeting. Topics will be ISO29119, mobile and embedded testing, and general testing. Hope to meet new friends at these meetings.
Life is busy in semi-retirement.