Systems in areas such as energy, health care, environment and communications are growing larger and more complex each day.
The complexity of these systems and their effect on so many aspects of human existence makes many of them critically important, and at the same time challenging to develop and evolve in a sustainable fashion.
And the sustainability and health of each of these systems is at the core of our economic sustainability and prosperity.
So we need to look at the big picture when designing such large, complex systems. We need to effectively manage interdependencies between the subsystems while keeping development costs to a minimum, and keeping an eye on future needs and problems.
The starting point is reliable requirements engineering – capturing, structuring and accurately representing a user’s requirements so they can be correctly embodied in systems that meet those requirements.
One such complex system under development is the worldwide sustainable technological ecosystem – essentially, engineering the shift from fossil fuel-based systems towards reliable and sustainable systems that do less damage to our planet.
The UAE is an active participant in the development of this worldwide system through its Masdar initiative.
Our project focuses on defining methods for working out exactly what our sustainability requirements should be – in particular, the generic requirements for a sustainable city system.
Preliminary investigations have shown us that traditional requirements-engineering approaches will not be able to tackle such a huge challenge.
Instead, we will be using reverse engineering – taking a mature, functioning system and working out what was required for its design. For our case study of a complex sustainable system we are using the architectural specifications of Masdar City.
We have already identified some key differences between traditional requirements engineering and the development of complex sustainable systems.
We usually start with a customer who knows what he wants. But for sustainable systems, customers either do not know or do not care, since these requirements (lower carbon dioxide production, for example) are not directly visible to them.
So we need to create – that is, engineer – requirements. We cannot simply ask the customer.
Traditional requirements engineering focuses on discovering and defining what a system should do as opposed to how it should be done, a premise embedded in most requirement definitions.
As such, traditional requirements engineering focuses on obtaining from the customers a partial picture of the solution rather than just their needs.
In complex sustainable systems, on the other hand, we have to focus on what the problem, not just what the system should do – especially since many requirements are related to the relations and interactions between different systems, rather than the intrinsic properties and characteristics of those systems.
Our traditional methods are tailored towards eliciting existing requirements that are either explicit or implicit. They focus on analysis only of requirements pertaining to the system under construction, but not of the requirements that it will create.
Not anticipating the effects of certain design decisions can lead to disasters, such as the effect of cheap borrowing on the economic downturn of 2008.
This kind of strategic requirements engineering, although complicated and groundbreaking, could provide great benefits to the UAE’s economic sustainability, helping us to anticipate future requirements and understand the likely effect of the way we meet those requirements.
And, of course, all of these things are especially critical in a country that is changing as rapidly as the Emirates.
Dr. Davor Svetinovic is an assistant professor of computing and information science at the Masdar Institute of Science and Technology