New approach needed to overcome complex systems development

Share this article

complex

Today’s complex systems development is being hindered by a confused array of software tools and platforms.

Highlighting the scale of today’s complexity problem, the space shuttle used just 40,000 lines of code while a modern luxury car uses 90 million coding lines. In the USA there are 500,000 unfilled vacancies for developers and code-writers but just 50,000 students graduate each year with computer science qualifications, according to Harbor Research.

Designers and developers expect evolving software development tools to be functional, ubiquitous and easy-to-use. The first two expectations run counter to the third and in order to achieve all three, a new approach is required: a common means of developing and managing code that can orchestrate new development across families of interrelated hardware and diverse computing domains.

For decades we’ve been hearing that we’ll eventually cross a chasm and computers will finally form-fit themselves to human beings, rather than humans form-fitting to computers. And yet, more than forty years after Xerox PARC, we still haven’t made computing invisible. We live in a world of “apps” (a concept the PARC scientists opposed, incidentally) created by a priestly caste of programmers writing obscure code illegible to ordinary civilians. If you want a tiny app for your business, you have to hire an “app developer.” It’s like insisting that people get an agricultural degree to plant a vegetable garden.

Software architecture is quickly becoming the foundation of every technology-driven organisation; not just hardware and software companies but also any organisation that is building digital capabilities.

But the tools we are working with today to develop complex application solutions were not designed to handle the scope of new capabilities, the diversity of usage and devices, and the massive volume of data-points and interactions between and among systems. 

These challenges are diluting the ability of organisations to efficiently and effectively manage development. The fragmented nature of software development tools available today make it extremely difficult, if not impossible, to leverage new hardware, cloud and networking developments sprouting up across diverse domains and applications.

To overcome the complex obstacles involved, first, we need to achieve more distributed and intelligent infrastructure that enables powerful and pervasive networking and compute resources to be deeply embedded into our everyday lives to overcome infrastructural limitations on new, more dynamic software applications and solutions.

Second, emerging applications are increasingly running on specialised hardware platforms such as wearables and VR headsets, application-specific integrated circuits, accelerators for AI and inferencing workloads, and field-programmable gate arrays for specialised use cases such as software-defined networking devices. This requires new development tools that can abstract and reduce development complexity to enable application-specific hardware devices to work seamlessly with software.

Third, software applications today have become distributed, needing to work across multiple clouds, at the edge, and in diverse devices supporting multi-modal interfaces including voice, wearables, touch and AR/VR, in addition to web and mobile. Emerging software applications will increasingly need to support new and novel user experiences.

Fourth, we need better ways to manage data interactions and eliminate data boundaries — getting the application data close to its point of use while managing changes in the data quickly and consistently to enable fast, reliable and trusted application experiences — connecting users with the right code and the right data at the right time requires intelligent orchestration of application traffic and workloads across dynamic and distributed users and applications.

Related Posts
Others have also viewed

When software stops waiting for you

Enterprises have spent two decades optimising cloud delivery, yet the real constraint is no longer ...

Liquid cooling moves from experiment to foundation for UK academic AI

The physical limits of artificial intelligence are no longer an abstract concern for universities. As ...

Enterprise edge is becoming the next battleground for AI infrastructure

As artificial intelligence moves out of centralised data centres and into distributed, real-world operations, the ...

Industrial AI shifts from experimentation to systems of record

Artificial intelligence is moving into a new phase inside industry, one defined less by isolated ...