By Qualtrax on July 3, 2014
… words that Tony Stark would never say about the Qualtrax Core Development team (we play different games). Although he is very critical of S.H.I.E.L.D.’s processes, he would be very interested in OUR process to get his feature request into Qualtrax:
Stark wants Qualtrax to integrate with his Iron Man suit: he needs the ability to complete an audit of Stark Industries while away fighting aliens and criminals. The idea is for Qualtrax and JARVIS to talk with each other via new endpoints in Qualtrax. Our Product Owner (Ken Vaughan) talks with Tony himself to get the exact requirements needed to interact with JARVIS.
After assessing world safety and the overall benefit to all our customers, Ken prioritizes the feature to get it in the next release. (I mean, we wouldn’t want to disappoint Iron Man, would we?) Ken tells the Core Development Team that it is the utmost importance, and we should make sure this feature is in the next version of Qualtrax.
Sprint planning comes around, where we look at what defects, features, and tasks (called “stories”) we will complete in the next two weeks (the sprint). We look at integration with JARVIS and figure exactly what we need to do. Then, we play a game called “Planning Poker” in order to estimate the relative amount of effort to complete a story.
We estimate that to get Qualtrax to integrate with JARVIS, it’ll be 5 points worth of effort. With the estimate in hand, we make an issue in GitHub that relates to Tony’s request.
We also use HuBoard to see where each story in the sprint is. With the JARVIS integration on the sprint, we put it in the “Ready” column.
We start working on the sprint, and Brandon begins work on the integration. The story moves to “In Progress”. He makes a “branch” – a separate copy of the code where he can work on the JARVIS integration away from the rest of the good, stable code that has already been tested and verified, as well as away from any other “unstable” code still in development. Good thing, because at the same time that Brandon is working on the integration, Jordan is improving some UI functions for new pages by implementing Twitter’s Bootstrap. We wouldn’t want those pieces of code fighting with each other, so we keep them separate, in each their own branch, until they have been tested and are ready to join the rest of the “stable” code.
When Brandon has finished his work, he marks that the feature is ready for review. Meanwhile, while on a tour of the Qualtrax facilities, Tony Stark points out that I am playing Cookie Clicker. I take a break from my very important cookie-clicking to review Brandon’s new code.
I review the code, and everything looks good! It uses automated tests to make sure there are no defects and adheres to our code standards and styles. I deem it ready to move on to testing. To make sure it works well, we use a combination of automated tests that our computers can run and manual tests that we run to hit anything the automated tests cannot. We can’t make automated tests that hit JARVIS, but Tony is generous and lends us a spare suit for testing.
After thorough testing with the Iron Man suit, documenting my test cases in GitHub and if they passed – which they all do – the feature is ready to merge in with the stable code! I tell our automated build process, Jenkins, to merge the new feature in with the stable code. Jenkins is smart and double-checks our work; it runs all of our automated tests, verifies that the code style is correct, and even cleans up after itself! (Don’t you wish your kids would do that?) This takes 15-30 minutes, so while we wait, Brandon and I play a game of FIFA Soccer 13. He plays as Real Madrid, and I as Germany. It goes down to penalty kicks, but I manage to win.
When the match is done, Jenkins has finished the job, and the code has been merged in with the stable code. The GitHub issue is closed, and the next release of Qualtrax will integrate beautifully with JARVIS. Tony Stark is very happy – but …
Will Qualtrax be released in time for Tony? Can he hold off evil villains while answering questions from an auditor?
Will our heroes* prevail?!
STAY TUNED NEXT TIME FOR ADVENTURES WITH QUALTRAX!
* Sorry, Tony, but let’s face it: the people at Qualtrax are the real heroes. Sure, you fly around in a suit you invented and take out threats and dangers that we cannot even imagine. You are chummy with a Norse god and “a giant green rage monster”, but what would you do if Stark Industries failed its ISO 17025 audit? You would be trading in the Iron suit for a regular (but I’m sure very well-tailored) suit while you deal with legal audits and angry customers upset that you’re no longer quality compliant. In summary, WE save YOUR butt – and a little Galaga never hurt anyone.