The importance of 24×7 automation in your quality assurance process

dnaI was in a discussion the other day about automation, which in itself is an extremely broad term, but we were talking around quality assurance and the importance of having some kind of automated process when the “product” was ready. Whether this be spreadsheets, reports, commercial products, applications, system builds, etc. At some level you should have automation to verify that at least at a high level the product is consumable.

Test driven development and agile development have played a huge role in the quality of software over the past 10 years and it shocks me to know companies are simply not doing this today.

My side of the discussion was around the work I did when I joined Iris Associates – which changed to Lotus, then ultimately to IBM Collaboration Solutions. While this was around software quality, the story I was in discussion about was data integrity in spreadsheets. We had several layers of automation following a build. Once the build completed (on five different platforms) a series of automated tests were run for build verification. Once the automated tests ran there were some manual tests run if the automated tests had passed. We then had what we called “automated system tests”, also known as DNA (Domino Notes Automation). These tests were much more functional in nature and not at a single API level. So you can imagine these tests using many (if not hundreds or thousands of API’s) to complete what would normally be done by a human. I remember talking to a QA person about automating Event Admin (a Domino Server feature) and he said the hundred or so tests run by DNA would take me three months to do manually – and DNA did it in about 20 minutes – every day, on every build, on every platform. At the end of the day, and I am not sure of the exact number, but there were literally 10’s of thousands of tests run every single day on almost every single supported platform for both client and server. The results of the tests were of course published to a Lotus Notes database and notification emails were generated.

Why is this important?

So on any given day you could see exactly what and who broke the build. This was a huge leap forward in terms of quality because you no longer introduce a problem into the build and find out two months later during feature testing or even worse after the code is shipped. Resolution was often fast because we could isolate the exact submitted code from the ClearCase source control system.

Having a “clean” build meant any developer could synchronize the latest binaries and start work on “the next thing”. This allowed over 1200 developers to not be dependent on a single build model. A single build model is, we do builds on Fridays. That would mean if you wanted to start working on “the latest code” you would have to wait until Friday or use last Friday’s build. Over time this could kill a development cycle, especially if Friday’s build was bad. And remember, if you do builds once a week that’s 1200 developers checking code in every day – unchecked. By the time Friday roles around you may have merge conflicts and even worse – run time conflicts.

Today, much of this is done in the form of Unit Tests – like JUnit or our custom internal unit test suite called DLLTest for C/C++. Many members on my team had patents around this process and some of the small utilities we wrote in order to accomplish this. See below for the two patents I received for my automation work.

Patent References: (patent profile)

2006/0070,034 2006 System and method for creating and restoring a test environment
2005/0289,517 2005 System and methods for client and template validation

LinkedIn Groups come through again!

While playing around in Sametime I came across this apparently not too well-known feature and blogged about it last week – Can’t remember that person who Sametime’d you?.

Before I begin I want to thank everyone for responding, liking, and emailing me!

Continue reading

My two most popular posts this year

It’s not often I get more than a few hundred hits on blog posts. I actually average between 200-400 hits per post but for some reason these two posts have received a lot of views.

The statistics come from PlanetLotus.org, an aggregation site where most of my Lotus brethren follow. What is interesting is the Searchandizing post is really just a video and has nowhere near the video views as the blog post views. My blog actually does not have as many hits as the PlanetLotus post does, meaning the PlanetLotus post is probably getting picked up in search results and they are not clicking through to my site. The bold number on the left is the hit count for the posts:

Planet Lotus Hits

Here are the links to the original posts:

 

Free “Mastering XPages” book!

I am offering my copy of “Mastering XPages” by the amazing team of Martin Donnelly, Mark Wallace, and Tony McGuckin to the first responder of this point. Please email me at bob [at] balfes.net. The only catch is you pay for shipping and handling.

Will Googles Web Intents usurp some of the Open Social 2.0 function?

Looks like Google is off doing their own thing in a very interesting space – application integration with Web Intents. Web Intents are not new and have been a primary piece of the Android operating system; it will be interesting to have this concept in a web application. You can read some healthy discussion over on the Open Social forum and also check out this presentation about Web Intents.

Continue reading

Lotus Ad shows up in crazy YouTube video

I saw this video on Facebook, shared by Richard Schwartz and thought the video was disturbing at first but realized it must be fake. What caught my eye was the Lotus advertisement near the beginning. I watch the ad area a couple of times and it looks like they are random. I just wonder how many of the 750K people saw that Lotus ad.

White Paper: Leveraging Lotus Notes for Better Project Collaboration

image by: Alen Lepofsky

If only everyone understood the power of Lotus Notes. Neil clearly does and outlines it very well in this white paper:

 

Project Management Duly Noted: Leveraging Lotus Notes for Better Project Collaboration

By: Neil Stolovitsky

Abstract:

For many knowledge workers, Lotus Notes is the lifeline to their team members, supervisors and clients. Unfortunately, in many cases Lotus notes is not utilized to its fullest potential beyond the use of email and calendaring. For those working in a Lotus Notes environment, the powerful collaboration capabilities, the sharing of documents and the simple extension of composite applications are never fully realized. In addition, the online and offline capabilities unique to Lotus Notes are not fully benefited by its users.

For the project management professional, when effectively implemented, the Lotus Notes platform can be the ideal environment to roll out an effective project management governance framework that will drive better results, increase visibility and provide a more collaborative environment among its project stakeholders.

In this paper, I will be highlighting how project management organizations can get the most out of their Lotus Notes investment.

To download the white paper:
http://www.geniusinside.com/files/WhitePaper/WP-LeveragingLotusNotesforBetterProjectCollaboration.pdf