In the control system business you may be familiar with the typical finger-pointing scenario where the software programmer and the hardware installer argue that any given issue is either software or hardware related. It’s an exhausting exchange for everyone involved, especially the client. In attempts to alleviate this, my company has created a step in our process called integration verification (IV) and applied it to every project we install.
Integration verification is the clear confirmation that the hardware installation is finished, approved and ready to handoff to the software programmer(s) for their portion of the installation. This step draws a hard line between the two services showing where one ends and the other begins. Problems can arise when there is no line drawn or there isn’t any clear indication that the hardware installation is done and functioning properly. Without this handoff, resources are forced to linger onsite and to tend to unresolved issues.
The first part of IV is completing the hardware checklist. This is a meticulous step-by-step checklist for the installer to ensure he has addressed all hardware connections. All connections must be verified to operate consistently as a whole system and by manual overrides. There has always been the tendency for the programmer to stretch the truth about how far along the software programming is. Conversely the installer has a tendency to stretch the truth about how far along the hardware is-often times in an effort to move along the traditionally sluggish software development. The hardware checklist is the agreed upon definition of “hardware installation done, ready for the software.” By enforcing this step, it removes the perceived deception on both sides and forces accountability.
Following the completion of the hardware checklist, the procedure moves on to device verification. Here, the programmer and the installer work on site together to confirm communication to the devices from the control system by testing each and every controlled device. This is a very important step as it brings a project to a known, defined state removing the possibility of hardware malfunctions and allowing the software to function properly. It also allows for complete confirmation of all hardware wiring in a single step, saving time. Debugging software becomes easier because the programmer isn’t distracted with chasing down a bug only to discover that it is hardware based. After all of the devices have been verified, the installer need not remain on site and is freed from chasing hardware issues. This complete handoff between hardware and software reduces the resources needed, increases profitability and reinforces accountability.
For IV to be successful, you must get your hands on the complete list of all hardware devices in which you are controlling and work your way down this list. Depending on the size of the system, this could take a few hours to a few days. However, for a standard residential system (20-30 devices) this should take about two days. Additionally, you should verify all audio/video routing in the same process by manually routing the audio and/or video through the switcher. As a programmer, you must resist the temptation to get sidetracked during IV into fixing program bugs. Once IV is complete, you can move on to installing and debugging the software with complete confidence that the hardware communications are functioning properly.
Integration verification has been a widely used and very successful process in most high-tech design companies, because it brings the system to a known, working state and allows for the programmer to begin testing and debugging software. The A/V control industry has yet to fully embrace this process.
IV is guaranteed to reduce headaches and give the client greater value for the work they receive; this in turn opens the window for repeat business. After witnessing the amount of time, money and headache that this process saves, it’s clear that IV is a great benefit to anyone trying to maintain a profit while increasing the value of the product that they produce.