This Fortune -100 client asked us to join a diversified group of developers, cooperatively working with them as consultants, on a new Mobile WiMax silicon chipset. The development effort was distributed among several teams spread over multiple geographical locations with some overseas. Our assignment was to provide development tool support across the board to the teams that worked on every aspect of the device, from the radio frequency (RF) front end to baseband signal processing, through the media access (MAC) layers.
According to this client we were chosen for the job because of our diversified knowledge of electronics hardware (including RF systems), expertise in REAL TIME system design, and wide background in systems integration and testing. From the outset, the project proved very challenging and we were determined to meet those challenges.
Soon after coming onboard, we reviewed the available project documents and found areas that were lacking in coverage. Very quickly we concluded that the areas falling short were due to differences in perspectives between the different technical disciplines involved in the development effort. Due to our ability to effectively bridge technical nuances between software engineers, hardware engineers and scientists of other disciplines, we were first able to highlight areas lacking in important details and then eventually fill these areas with relevant information. We ventured though this phase with great sensitivity and care, ensuring that technical subjects would be discussed on their own merit while building con census on all critical technical choices. Doing so prevented any ego-driven concerns and personal biases of individuals from diverting the agreed-upon direction. Capitalizing on many years of industrial experience we were able to sail through the interpersonal "white waters" that are so typical in the lifetime of a multi-team development efforts, while reaching our final destination without casualties. This initial effort paid off for the rest of our term on this project because people eventually recognized the value and effectiveness of both, our communication and management methods and came to trust our interdisciplinary problem-solving approach.
Once we acquired enough information about the project it became clear to us that the available implementation framework could not meet project objectives that were slated to take place beyond the first four monthes of the project schedule. The available framework was inherited from a previous project that the company implemented during the previous year and was considered "mature". Consequently there were no resources allocated to review and revise the framework to meet the actual requirements of the current project. This, unfortunately proved to be a detrimental mistake, since the old framework could not perform asynchronous operations and could not respond to REAL TIME events, as was required for the product that we needed to support. Worse yet, the old framework needed a major adaptation to properly function in the MULTI-CORE (dual ARM-9) hardware environment on which our software executed. The worst part was that there was no slack at all in the schedule to allow for development of a new solution without jeopardizing the overall project schedule. At the same time, notifying the other teams that our team could not meet their long-term objectives would have been received with disastrous consequences. Despite the typical rigidity found in many Fortune-100 companies, the hiring manager understood the situation and (perhaps out of no choice) took charge and called for a complete change of direction, soliciting our advice for alternative action.
For us as consultants, it was a perfect opportunity. We have witnessed similar situations before and we were ready to respond with the "pedal to the metal". We began by asking many questions and involving all members of the team in identifying the minimal set of requirements necessary to implement an alternative solution. We continued with making suggestions spending many hours at the black board, drawing diagrams, tables and figures. After two weeks we were able to build a consensus design plan to which the group manager as well a sthe rest of our team, commited. While the other half of the team was supporting the ongoing effort, we were charged with designing, documenting, and implementing a proof-of-concept solution in six weeks. Under the circumstances, failure was not an option...
On the designated date, we were able to demonstrate to the weary manager, as well as the rest of the team, a working model of our framework. We demonstrated several test cases, typical of the operations required to support future code, and demonstared an operating mode emulating the behavior of the old framework, thereby creating a migration path for backward compatibility.
Though we encountered the occasional implementation bug in the original framework code, our solid design never changed over the next nine months that we spent working on this project. Our new framework fulfilled all requirements, those that were known prior to the beginning of our effort, as well as new requirements that landed on us as a result of hardware changes and new system software revisions. To be fair, we cannot boast that we designed and implemented this effective solution in a mere six weeks. After all, we relied on more than 30 years of prior experience to weed bad choices from good ones. We drew from that experience to keep things consistent and simple, without sacrificing the flexibility and reliability required of an omnipotent framework.
The greatest satisfaction that we received from this project is knowing that our efforts contributed to the birth of a product that is actually changing the world of mobile communication around the world as we speak. We were informed that the Fortune-100 company has already sold several million of these devices, worldwide. We were also told that the potential total sales volume for these devices could reach 100 million or more units over the next six years. |