Compromising on software outsourcing may lead to disaster

August 1st, 2019, Published in Articles: EngineerIT, Featured: EngineerIT

It remains a mystery at the heart of Boeing’s 737 Max crisis, how a company renowned for meticulous design, made seemingly basic software mistakes leading to two deadly crashes. Peter Robison at Bloomberg recently wrote “Longtime Boeing engineers say the effort was complicated by a push to outsource work to lower-paid contractors. The Max software, plagued by issues that could keep the planes grounded for a long time, was developed at a time Boeing was laying off experienced engineers and pressing suppliers to cut costs.

According to reports, the iconic American plane maker and its subcontractors have relied on temporary workers making as little as $9 an hour to develop and test software, often from countries lacking a deep background in aerospace – notably India.

In offices across from Seattle’s Boeing Field, recent college graduates employed by the Indian software developer HCL Technologies occupied several rows of desks, said Mark Rabin, a former Boeing software engineer who worked in a flight-test group that supported the Max. The coders from HCL were typically designing to specifications set by Boeing. Still, “it was controversial because it was far less efficient than Boeing engineers just writing the code,” Rabin said. Frequently, he recalled, “it took many rounds going back and forth because the code was not done correctly.”

Based on resumes posted on social media, HCL engineers helped develop and test the Max’s flight-display software, while employees from another Indian company, Cyient, handled software for flight-test equipment.

Boeing said the company did not rely on engineers from HCL and Cyient for the Manoeuvring Characteristics Augmentation System (MCAS), which has been linked to the Lion Air and Ethiopian Airlines disasters. The Chicago-based plane maker also said it didn’t rely on either firm for another software issue disclosed after the crashes, a cockpit warning light that wasn’t working for most buyers. A Boeing spokesman said, “Our primary focus is on always ensuring that our products and services are safe, of the highest quality and comply with all applicable regulations.”

Multiple investigations are trying to unravel how and when critical decisions were made about the Max’s software. During the crashes of Lion Air and Ethiopian Airlines, planes investigators suspect that the MCAS system pushed the planes into uncontrollable dives because of bad data from a single sensor. It has been an expensive lesson for Boeing, not just monetary but also at the cost of many people’s lives.

Lessons for all

When you have to downsize, take a critical look at who you are offering packages to. Loosing institutional memory can turn out to be more costly than the savings.

The outsourcing of software development is not something that is limited to Boeing; it is a common practice in many industry sectors. Generally, there are two main reasons why companies contract out software development. It is either because they lack in-house expertise, or are finding a more cost-effective option. There are merits in both cases.

Companies that develop new products and services may have the engineering skills but lack specialised software expertise and will go to the market to find a company to create the software required for their product or service.

What to look for when outsourcing software development

Gartner’s Luis Mangi says that identifying the appropriate criteria to determine which applications (or portions of applications) should be outsourced can be complicated. For organisations not experienced in application outsourcing, it is best to start small: choose projects that are not critical to the business (but have some visibility), or existing applications. Make sure they are relatively simple, do not impact mission-critical business processes, and have a history of few problems in production which are well-documented. This way you can build up a rapport with the company, learn about their expertise and way of working.

Outscoring of software development is a growing trend but selecting a partner for a software engineering outsourcing project requires considerable reflection on the factors that are most critical for long-term success. It is essential for both teams to have open communication and a strong grasp of the development processes. A development team must have a positive energy to become a productive part of the project. This energy can become infectious and drive team members to excel when it’s in the right place. Team spirit, therefore, needs to be encouraged from the beginning of the project, so that it can carry members through the inevitable challenges that occur for all projects.

An outsourcer’s geographic location is a critical consideration for any software development project. The distance separating the outsourcer and client can have a dramatic effect on the development process, even with essential technologies such as broadband internet access, videoconferencing and secure digital audio recordings. To outsource software development to a company halfway across the globe places unnecessary stress on both sides as the difference in time zone necessitates for one or both parties to work outside their normal business hours.

Another important aspect to consider is the company’s track record and its experience in the type of software development required. Think twice if the outsourcing company has never developed software in your field of operation.

Outscoring software development to another country because they charge less often comes back to bite. South Africa has many competent and successful software developers; they should be your first choice before considering India, Brazil or any so called “cheap software” countries. As the old saying goes, you get what you pay for.

Above all, frequent testing and feedback is important. Just waiting for the final product to be delivered can just make your new project or service fall out of the sky.

Related Articles

  • South African Government COVID-19 Corona Virus Resource Portal
  • Now Media acquires EngineerIT and Energize from EE Publishers
  • Printed electronics: The defining trends in 2019
  • Charlie and the (fully-automated) Chocolate Factory
  • SANSA app calculates best HF communication channel