Development aspects of Intelligent Adaptive Systems 2017
(ISEC was formerly known as Indian Software Engineering Conference)

The proposed workshop is a continuation of the workshop titled Software Architectures for Adaptive Autonomous Systems, 
co-located with ISEC-2016, Goa, India. The focus of the earlier workshop was to explore the architectural elements of 
software which can exhibit intelligent behavior essential to manage and operate large and complex systems.  The scope of the proposed workshop is more holistic. In this, we want to explore the distinguishing characteristics  of the life-cycle phases of adaptive software including design and implementation.

The motivation for the subject of the workshop is derived from the Internet of Things (IoT), which is revolutionizing  all domains of industry and society through an unprecedented proliferation of cyber-physical systems and their integration 
using a variety of communication protocols. Potential to create high value solutions due to digitization of everything is 
highly perceived especially in use-cases surrounding users as in Smart Cities, industrial manufacturers (robots, drones, 
3-D printers, Industry 4.0), automotive (autonomous cars from Google, Tesla), service operators (e.g. transport) and government authorities. The remarkable value proposition in these systems is derived from (1) the knowledge and insight about the world gained from the prodigious amount of data using the sensing capability and (2) automatic control of the systems to affect changes to the systems and environment through the actuation capability, of the IoT devices. 

On the contrary, IoT based systems are incredibly complex; this complexity in the management and operation of these systems arises out of not only the sheer scale but also the variety and mobility of the constituent devices and their integration  through innovative applications. Consequently, since all the states of the system and the environment cannot be foreseen as  design time, there is a growing trend towards designing such systems as can adapt to the changing requirements, internal state and the environments. Such adaptive systems need to be autonomous – they learn the need for change without an external (manual) trigger and integrate the changed behavior through self-* (self-configuring, self-managing, self-healing) mechanisms. 

Since the paradigm of adaptivity and the architectural elements such as learning and decision making are completely different  from the traditional software development, there is a pressing need to have rigorous methodologies to specify, develop and test such systems. This is necessary from the perspectives of optimizing the system performance across the changes during the system run-time and more critically, from the point of view of ensuring safety and developing confidence in the intelligent systems, taking note of the accidents involving autonomous cars from Google and Tesla, and a number of accidents involving robots in the industry, leading to fatalities.

In this workshop, we want to analyze and understand the impact of the new paradigm on the different phases of the life cycle  of adaptive software and explore interesting solutions, frameworks and algorithms to address the new challenges. This includes the formal specification of requirements of adaptivity, design and architectural patterns to help develop adaptive systems exhibiting real-time performance, formal verification of such systems against the requirements, test generation and execution, runtime verification and debugging support which must now take into account the evolving nature of the system and environment since otherwise, one would be testing or debugging an obsolete system.

There have been attempts to address these questions in the literature, albeit in simpler systems that were not autonomous. 
The adaptivity requirements have been specified as transition in-variants, formal languages temporal logics) to specify the 
structural and behavioral change in the programs. Reference architectures have been suggested to design and implement  adaptive systems: MAPE-K, Adaptive Enterprise, PELEA, SOA-PE are some examples. A huge body of literature for  planning and re-planning in problem solving domains provides algorithms for adaptivity in systems, through formal specification of domains and problems (e.g. using standardized languages like PDDL) and a host of search techniques and tools. However, there is a distinct void in the space of requirement specification, formal verification, run time verification and 
debugging of the adaptive autonomous systems. 

The purpose of this workshop is to enumerate these issues, survey the recent works and propose possible solutions. Another important purpose is to consolidate a local community including academicians and industrial practitioners for symbiotic research interaction in the field of adaptive systems and intelligent software.
It will comprise of invited papers as well as a few invited talks in the area.