版权所有:内蒙古大学图书馆 技术提供:维普资讯• 智图
内蒙古自治区呼和浩特市赛罕区大学西街235号 邮编: 010021
作者机构:Carnegie Mellon Univ Inst Software Res Inst Pittsburgh PA 15213 USA Univ British Columbia Dept Comp Sci Vancouver BC V6T 1Z4 Canada
出 版 物:《JOURNAL OF SYSTEMS AND SOFTWARE》 (系统与软件杂志)
年 卷 期:2007年第80卷第2期
页 面:240-264页
核心收录:
学科分类:08[工学] 0835[工学-软件工程] 0812[工学-计算机科学与技术(可授工学、理学学位)]
基 金:National Science Foundation, NSF, (CCR-0204047) National Science Foundation, NSF National Aeronautics and Space Administration, NASA, (NCC-2-1298, NNA05CS30A) National Aeronautics and Space Administration, NASA Army Research Office, ARO, (DAAD19-02-1-0389) Army Research Office, ARO Jet Propulsion Laboratory, JPL Carnegie Mellon University, CMU
主 题:AliasJava ArchJava ownership domains re-engineering
摘 要:Without rigorous software development and maintenance, software tends to lose its original architectural structure and become difficult to understand and modify. ArchJava, a recently proposed programming language which embeds a component-and-connector architectural specification within Java implementation code, offers the promise of preventing the loss of architectural structure. AliasJava, which can be used in conjunction with ArchJava, is an annotation system that extends Java to express how data is confined within, passed among, or shared between components and objects in a software system. We describe a case study in which we incrementally re-engineer an existing Java implementation to obtain an implementation which enforces the architectural control flow and data sharing. Building on results from similar case studies, we chose an application consisting of over 16,000 source lines of Java code and over 90 classes. We describe our process, the detailed steps involved (some of which can be automated), as well as some lessons learned and perceived limitations with the languages, techniques and tools we used. (C) 2006 Elsevier Inc. All rights reserved.