您位于: 首页 学术活动

学术活动

SOSE2012
Image 01.tif
Development of dynamically evolving and self-adaptive software 2014-01-2309:0011:55 ———— Room 1504, No.1 Science Buildin
Software is increasingly embedded in unstable settings where changes occur at all levels and continuously. Changes may occur at the requirements level. They may occur in the environment, and thereby affect the domain assumptions upon which the software was developed. They may also affect the computational infrastructure within which the software is run. Changes may lead an existing software into a situation where it fails to satisfy its intended goals. They may lead to failures or to unacceptable quality of service, and thus often to breaking the contract with the software's clients. Software engineering has long studied the problem of off-line evolution (aka software maintenance). Many applications, however, are continuously running and ask for on-line change support as they are providing service: they require self-adapting capabilities. To achieve this goal, a paradigm shift is needed, which dissolves the traditional boundary between development time and run time. In particular, models must be kept at run-time and verification must be performed to detect possible requirements violations. The tutorial starts by focusing on the real-world requirements that lead to self-adaptive systems and then discuss how reflective capabilities can be designed to support self-adaptive capabilities. It will discuss the issues involved in run-time verification (in the context of model checking) and in supporting safe dynamic software updates.
Image 02.tif
Image copy_of_02.tif
Image copy2_of_02.tif
Engineering Cyberphysical System Software 2014-01-2409:0010:30 ———— Room 1504, No.1 Science Building
Abstract: I will present examples of our ongoing work around engineering software for Cyberphysical Systems (CPS). By placing a computing core within the physical world, CPSs enable digital systems to interact with the surrounding environment at unprecedented granularity and scale. Within this domain, I will illustrate two related research efforts. LiftOff is a programming system to develop applications using aerial drones; for example, to monitor pollution at altitude. Aerial drones bring sensing at places where no traditional technology can reach. LiftOff allows to program multiple drones collectively, by creating the illusion of a single computing device that occupies the physical space of interest. We deployed LiftOff in a real-world scenario for aerial mapping of an archeological site in Aquileia (Italy), gathering precious insights into its effectiveness. Our LiftOff prototype builds upon Virtus: the first implementation of the staple virtual synchrony model able to run under tight resource constraints. Virtus provides atomic multicast and view management on CPS platforms characterized by low-power wireless communications, battery-driven operation, limited storage facilities, and risible computation power. It nevertheless succeeds in offering a stepping stone to apply established concepts from the dependable distributed systems literature, exemplifying our current efforts towards more dependable operation of CPSs.