ACM Home Page
Please provide us with feedback. Feedback
The challenges of open-world software
Full text PdfPdf (150 KB)
Source Workshop on Software and Performance archive
Proceedings of the 6th international workshop on Software and performance table of contents
Buenes Aires, Argentina
Pages: 90 - 90  
Year of Publication: 2007
ISBN:1-59593-297-6
Author
Carlo Ghezzi  Politecnico di Milano, Milano, Italy
Sponsors
SIGMETRICS: ACM Special Interest Group on Measurement and Evaluation
ACM: Association for Computing Machinery
SIGSOFT: ACM Special Interest Group on Software Engineering
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 2,   Downloads (12 Months): 37,   Citation Count: 0
Additional Information:

abstract   index terms   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/1216993.1216995
What is a DOI?

ABSTRACT

Software has been evolving from pre-defined, monolithic, centralized architectures to decentralized, distributed, dynamically composed federations of components whose goal is to provide useful services. Software processes have been evolving along similar lines, from pre-specified sequential work- flows to decentralized and multi-organization endeavors. The organizations to which software solutions are targeted have also been evolving from highly structured to agile and networked enterprises. All this is affecting the way software is engineered (i.e., conceived, architected, and produced).Software applications increasingly live in an open world: They are embedded in dynamically evolvable environments and must adapt to continuous and even unpredictable change. Accordingly, software architectures need to evolve dynamically and must support reconfiguration and self-organizing features to respond to change requirements. Programming languages and their underlying support infrastructure, in turn, must provide specific features to support this level of dynamism. The traditional approaches followed to ensure software quality, which focus exclusively on pre-runtime validation, are inadequate in this new context. Continuous validation becomes necessary: validation must extend to after the system is deployed and running.The talk surveys the main architectural styles that support dynamic software compositions, the language and infrastructure requirements, and provides a view of the validation process for dynamically evolvable software systems.