Skip to main content

Software Development terms applied to Home Construction

Let's Invert the typically wrong headed view of Software Development project management as a construction project.  We can map it the other way just to see if it works... to have some fun, to explore the meaning of phrases we toss around quite frequently.

Site Landing Page

Normally Project Management terms come from a construction domain.  We are going to apply the lexicon of modern software to the construction of a home.  We will follow the construction project and meet some of the people doing the work.

This is a very small (8 homes from $600,000 skyward) program in my 30-40 year old neighborhood.

About 6 months ago I saw the programs landing page go up.  It gives casual observers and some of the stakeholders a general idea of the intent of the program.  And most importantly who to contact for additional information if you happen to be interested in their products.

The Refuge program has 8 product projects and has them running independently.  Yet much of their DevOps infrastructure has already been created, connected into the internet grid and stubbed out on-site.

They have spent around a year getting this very basic architectural infrastructure stack created and connected.  It is some of the most expensive work; with lots of planning and sign-off, all unseen to the interested stakeholder.

a Walking Skeleton
So today at the end of August, 2017, the program has 3 projects underway and starting to add value.  The walking skeleton of the 908 Vintner project is looking great.  Let's examine a few of the product's features and the engineers creating them.  Looking closely at the temporary construction and test framework on the right of the skeleton we see two engineers placing shaved pixels precisely onto the 2nd floor dormer feature's facade.  Pixel placement and facade construction is a tedious process in this project.  But the external facade is in the 80% complete phase.
Joey, a facade speciallist

Here is Joey, one of the specialist
(and generalist - very T-shaped engineer) is doing very precise pixel placement for the back-porch feature.

Interface for Fireplace Feature
We also see some of the interfaces have been hung for the sub-feature referred to generally as the back-porch fireplace.  If you zoom in and examine some of the facade's pixels you might find that their CSS techniques are very old school.  This group of engineers are actually utilizing one very high powered pixel-slicers, to make the component edges look very mitered and give that classic red brick look and feel.
a pixel slicing machine






 project infrastructure
Now let's inspect the status of one of the other projects not so far along.  Here we see a plumbing ditch that the DevOps people have requested be installed before the foundation is even laid.  This is site work, and if it is not within spec then major replanning or rework will be required in the project.

We also see on the just barely started project a set of stubbed out services in place on site.  These stubs are functional and highly regulated stubs that are used to boot-strap the projects builds.
Services Stubbed out.








 Next time we will take a look at some of the more functional interior features of the projects.

The Next Project

ground work
As the 2nd project on the program get's underway we see lots of the ground work needing to be done.  It require moving lots of dirt.  Now I question if a home foundation can be laid upon 3 feet of fill dirt.  but I see that the slab is going to have lots of steal and stressing compression cables.

After many of the project's services are located they are stubbed out.  Left here for some future engineer to connect to a functional appliance.  In this industry there is a lot of phased development with interfaces stubbed out.

port holes in firewall
Here's a look at the ground work with a firewall barrier in place.  Looks like they are taking extra precautions at the holes in the firewall.

firewall inspection
Malibu my golden retrieve, is inspecting the firewall, and steal reinforcement for the foundation.  [do we have a term in software for rebar or prestressed concrete components?]








Garbage Collection
But here's a situation I know we could help them... Garbage Collection.  OMG they don't play the game of cleaning up after yourself.  They create lots of trash piles and just expect someone else to come along and pick it up.  They do not recycle their bytes.  The system cost of this portions of the project would be a Lean Waste bonanza.








Initial Data Load

Data Normalized

I've been waiting for this day - the initial data dump.  Here we see a crew (some generalist and a few specialist) working together to insure the initial data in the Foundation is spread out evenly across the various hard drives of the RAID system and doesn't interfere with the stubbed out interface already located.

And just a day later all the data process scripts have normalized the initial data load.

Next someone laid out the plan onto the physical data layer in chalk.  Then I saw a designer of truss systems taking physical measurements (not using the plan).

Wood data dump
Blue firewall/adaptor
A few days later (I think it may take days for the foundation's data to harden) there's a new crew out doing another data dump (but a new type of raw data - this data type is handled very differently than the previous data).  The very next day engineers are hard at work crafting frameworks for features common to all homes.  They build these frameworks from raw data of a base object Wood.  There will be lots of wood put into this project, and that wood base object will have many customizations, extensions, and specializations applied.  The wood and concrete interface will also be treated with a special interface firewall adaptor.  I'm not sure if this is a water firewall or an insect firewall - it may be a new air firewall component.

Wood Frameworks


See Also:

Strategic and Tactical IT Assets by Dave Nicolette

Post a Comment

Most Popular on Agile Complexification Inverter

David's notes on "Drive"

- "The Surprising Truth about what Motivates Us" by Dan Pink.

Amazon book order
What I notice first and really like is the subtle implication in the shadow of the "i" in Drive is a person taking one step in a running motion.  This brings to mind the old saying - "there is no I in TEAM".  There is however a ME in TEAM, and there is an I in DRIVE.  And when one talks about motivating a team or an individual - it all starts with - what's in it for me.

Introduction

Pink starts with an early experiment with monkeys on problem solving.  Seems the monkeys were much better problem solver's than the scientist thought they should be.  This 1949 experiment is explained as the early understanding of motivation.  At the time there were two main drivers of motivation:  biological & external influences.  Harry F. Harlow defines the third drive in a novel theory:  "The performance of the task provided intrinsic reward" (p 3).  This is Dan Pink's M…

Exercise:: Definition of Ready & Done

Assuming you are on a Scrum/Agile software development team, then one of the first 'working agreements' you have created with your team is a 'Definition of Done' - right?



Oh - you don't have a definition of what aspects a user story that is done will exhibit. Well then, you need to create a list of attributes of a done story. One way to do this would be to Google 'definition of done' ... here let me do that for you: http://tinyurl.com/3br9o6n. Then you could just use someone else's definition - there DONE!

But that would be cheating -- right? It is not the artifact - the list of done criteria, that is important for your team - it is the act of doing it for themselves, it is that shared understanding of having a debate over some of the gray areas that create a true working agreement. If some of the team believes that a story being done means that there can be no bugs found in the code - but some believe that there can be some minor issues - well, …

Team Performance Model - by Drexler and Sibbet

Many of you have all heard of the Tuckman model of team dynamics (Forming, Storming, Norming, Performing).  It was created in 1966 and has become the most popular model for describing team behavior.  Is it time to level up in your mental model of team dynamics?  Are you ready for a richer more functional model?



Introducing the Team Performance Model by Drexler and Sibbet



Orientation - Why am I here?
"Orientation is about understanding the purpose of a team and assessing what it will mean to be a member.  you need to understand the reason the team exist, what will be expected of you and how you will benefit from membership.  In a new team, these are individual concerns, because the group is only potentially a team.  that is why these concerns are illustrated as occurring in your imagination at an intuitive level.  As a team leader it is important to provide time and space for people to answer these internal questions themselves."

Keys to when Orientation challenges are resolve…

Refactoring - examples from the book

Martin Fowler's book Refactoring:  Improving the Design of Existing Code has a simple example of a movie rental domain model, which he refactors from a less than ideal object-oriented design to a more robust OO design. Included in this Refactoring_FirstExample.zip Zip file are the Java source code files of the Movie, Rental, and Customer classes. Along with a JUnit CustomerTest class. Using these example source files you too can follow along with the refactoring that Fowler presents in the first few chapters of his book.


Do You Put “CSM” After Your Name?

I’ve noticed a new trend—people have been gaining titles. When I was younger, only doctors had initials (like MD) after their names. I always figured that was because society held doctors, and sometime priests (OFM) in such high regard that we wanted to point out their higher learning. I hope it was to encourage others to apply themselves in school and become doctors also. Could it have been boastful?

The Wikipedia describes these “post-nominal initials”:
Post-nominal letters, also called post-nominal initials, are letters placed after the name of a person to indicate that the individual holds a position, educational degree, accreditation, office, or honor. An individual may use several different sets of post-nominal letters. The order in which these are listed after a name is based on the order of precedence and category of the order. That’s good enough for me.
So I ask you: is the use of CSM or CSP an appropriate use of post-nominal initials?
If your not an agilista, you may wonder …