This is a post born out of the fact I had been musing on the sheer amount of friends, relations and ex-colleagues having babies lately. I work as a software tester so am in the habit of creating tenuous links where no sane person would see one existing. Please bear with me.
It occurred to me during this musing that babies are quite like software.
Think about the planning for a prospective project. Ideally the planning for a software development project should always be done during the time that the developers are writing the code, so that once the first iteration of development is completed, the next stage in the project can begin without interruption. Ideally, prospective parents should use their 9 month-ish compilation time to carry out their planning. All chances for planning will be lost after this stage. Once compilation is finished, there is a rapid dramatic release and a new program, wrapped in a blanket, delivered to the tester and the project manager (who has also contributed code to the project)
To further advance my point about babies being like software and help anyone who has recently started the baby software compiler going; here are the reasons babies are like software.
Initial observation of the Baby will reveal the GUI to be very pleasing to the project. This excellent design frequently causes a knock on effect known as staring at the baby in wonder for hours at a time. During these early stages, the project may be still working out their roles. A tester may jokingly tell the PM that as she supervised the first 3 semesters of the build process, he can take over the next 3 semesters of the implementation. However, this will not happen. It takes a wide user base to raise a baby.
Planning is essential as the Baby release will experience noticeable upgrades every few weeks. This rapid growth will require new casing with every increase in disk size so it is inadvisable to stock up on a huge volume of same size casing in advance as the baby will have outgrown it before you have time to take it out of the packaging.
Huge bug: The Baby release does not come with volume control. The only selectable options are on or off and it sometimes feels unusually easy to trigger ON and unfairly complicated to locate OFF. In most (but not all instances) OFF can be triggered by adding hardware or software, depending on how the project is feeding.
For the tester using the software method of feeding, disk damage can occur if the drives are not positioned correctly or over-accessed. Keeping cold cabbages in the freezer is an excellent work-around to this issue. As wonderful as the feeding software, Booble 1.0 and Booble 2.0 is, it is limited to a 1-user per household licence restriction. So if the tester takes on the role of software feeding, it is the role of the non-feeding project manager to make sure that all the best tools are made available so she can carry out her role. These include frequently poured baths, back-rubs, praise, appreciation, chocolates, a few hours off every week and dinner cooked for her whenever possible. This ensures happy working relationship between all parties working on the project.
Sleep mode can be tricky to enter. A newborn baby will be totally unaware of project expectations that darkness triggers slumber and daylight triggers wakefulness. There is no known fix for this issue except the workaround of time. Difficulties entering sleep mode can be characterised by the aforementioned issues with volume control.
Sometimes disks can get dirty. The only appropriate response to this is to implement an emergency change control to replace the disks. Symptoms of this need may be characterised by a rapid change in volume and smell. Never leave the house without fresh supplies of disks. With some babies, catastrophic disk failure can occur, to plan ahead for those instances, the experienced tester and PM will always travel with fresh supplies of casing.
The Baby release can be prone to infection. Their virus is typically characterised by running noses and weepy eyes. This can be frequent in the first year especially during the times of the teeth upgrade. Calpol is the spybot of the baby world.
There are also plenty of manuals available for your new software. The difficulty is selecting the one that is right for you which can be difficult when faced with an industry that is designed to make new parents feel like a failure if they do not use their product. This is exactly how so-called software development methodology gurus can make companies who do not use their processes feel. They both do it for the same contemptible reason, to create a worry that can only be “relieved” by spending money on their services.
There are the methodologies that recommend carrying out project tasks at certain time without variation. Gina Ford, author of ‘The contented baby book’, is the Spiral method in a starched apron. They both advocate defined tasks to be repeated at certain times without deviation in order to attain a fixed goal. The thing I never liked about Gina Ford (and the Spiral method come to think of it) is the idea of repeating a task for the sake of repeating it. This woman recommends getting a baby out of bed at 7.00am every morning, even if the baby is sleeping. Waking a sleeping baby is reliably likely to invoke the issues of volume control discussed earlier. Also, isn’t there a word for an unquestioning adherence to procedure and tasks? In the name of balance I should add that, I am told by those in the know that this is a good methodology by those projects that like a strict and regular routine.
More easygoing parents might prefer the Object-Oriented Model. If they imagine themselves as the user, then they use their experience to improve or add functionality to the application, sorry Baby. Dr. Spock may be thought of as the author of the manual for the OOM parent. The only problem for the new tester, sorry parent, is that it is near-impossible to work this methodology correctly without prior testing (parenting) experience. Without knowing the impact of any implemented change, it is impossible to know the consequences of implementing it. The baby catalogue may say that a £39.99 device to warm nappy wipes is a good idea to save babies from the shock of a cold one. However, it takes an experienced parent to realise that this is complete hokum designed to create a need where none exists. Most nappy wipes tend to be at room temperature anyway.
The V-model, touchy feely, everyone working together, new age, use lots of buzz words, taking references from once-popular culture methodology has its childcare theory equivalent in the Baby Whisperer Tracy Hogg. They are welcome to each other. I believe Mars is vacant this time of year and heartily suggest both methodologies take the one way shuttle there.
Babies, I have found, like so many other things, are best managed using agile methods. Peter Mayle is the man who wrote the manual for the Agile parent, a dependable volume called Baby Taming. Now, I know Agile involves a disciplined project management process. I know there should be frequent inspection and adaptation. I know that there should be a leadership philosophy that encourages teamwork, self-organization and accountability. I also know that, if you try to point this out to a sleep deprived woman with sore nipples who is entering her second hour of rocking a teething baby with a heavy cold to sleep in her aching arms, she will tell you to go away using very loud inelegant language. She will also probably make a threat on your life. You should take this seriously and not make the same mistake again.
This is a demonstration, is any were needed that babies, like Agile, are best planned out in advance and not implemented in a panic once the project has already started. It is also a fitting conclusion to my stance that babies, are indeed, like software.

Cartoon by Randall Munroe of the wonderful xkcd.com
I am the KnowledgeMill software tester and a Mother of 2 beautiful children. I have nearly 8 years experience of being a Mother and nearly 15 years software testing experience. Yes, I have read all the books mentioned in this article and worked with all the methodologies. My daughter currently has the cold virus and my son the football bug. I am working on testing the desktop suite of KMCS products. I use Agile at home and in work.