程序 » 软件维护前沿领域

ICSM 2008 还将举办一系列由本领域内杰出人士主讲的前沿课题讲座。这些讲座将涵盖软件维护和软件进化领域内的许多重要研究方向。

面向服务的体系结构(SOA)及其对软件维护和进化的影响

Grace Lewis Photo

Grace A. Lewis
卡耐基梅隆大学软件工程研究所,美国

星期二,9月30日,16:00–16:30

摘要

面向服务的体系结构(SOA)已经在软件系统的开发过程中产生了深远的影响。根据Gartner集团的报告, 2007年度50%的关键任务应用系统和事务处理系统是基于SOA的概念开发的。该数字在2010年将达到80%。 这意味着随着新的面向服务的系统和旧有系统在不断的被整合进SOA环境。在该环境下的软件维护和进化已被广为关注。本讲座将提供一个关于该问题的概览。 包括SOA概念,用于实现面向服务系统的先进经验,SOA环境对软件维护和软件进化的影响,以及该领域的一些研究难题。


与网络服务的设计,部署和操作相关的挑战和机遇

Kostas Kontogiannis Photo

Kostas Kontogiannis
雅典国家科技大学,希腊

星期二,9月30日,16:30–17:00

摘要

作为面向服务体系的实现手段,网络服务技术已有近十年的历史。网络服务技术已经被广大用户用于构建基于服务规范的软件系统的平台。尽管网络服务技术已经被广泛使用, 对于信息产业和商业领域,网络服务技术仍然面临重大挑战和机遇。就挑战而言,我们指的是工程和采纳的问题。就机遇而言,我们指商业和具体操作。本讲座首先讨论网络服务的现状,然后具体叙述与网络服务设计,实现,操作和维护相关的挑战和机遇。最后,我们讨论一些我们认为在下一代网络服务和面向服务系统的实现和部署过程中将扮演重要角色的新技术。


与影响分析相关的可追溯性管理

Andrea De Lucia Photo  Fausto Fasano Photo  Rocco Oliveto Photo

Andrea De Lucia
萨勒诺大学,意大利
Fausto Fasano
萨勒诺大学,意大利
Rocco Oliveto
萨勒诺大学,意大利

星期二,9月30日,17:00–17:30

摘要

软件变化影响性分析是指在软件维护过程中去判断计划中的软件变化可能带来的后果。该过程必须对软件变化的连锁反应进行分析和记录以免分析过程中出现任何遗漏。软件变化不仅影响源代码,也会对相关的软件产品, 例如需求,设计,测试等造成影响。因此,可追溯性管理可以被用来支持影响性分析。本讲座将着重于回顾与影响分析相关的可追溯性管理技术以及目前该领域的主要难点和未来研究方向。


程序理解的效用和表达力: 未来研究方向的一些想法

Jonathan Maletic Photo

Jonathan I. Maletic
肯特大学, 美国

星期二,9月30日,16:00–16:30

摘要

本讲座将呈现程序理解领域的一些研究难点。 我们将着重于讨论程序理解的表达力和效用以及与这两个分支相关的研究方向。我们将讨论基础的研究问题和程序理解技术的一些新应用。我们的研究表明,更好的测度,更进一步的经验研究以及对比实验将有助于对程序理解效用的研究。


软件逆向工程的新领域: 概念模型

Gerardo Canfora Photo  Massimiliano Di Penta Photo

Gerardo Canfora
萨尼奥大学, 意大利
Massimiliano Di Penta
萨尼奥大学, 意大利

星期二,9月30日,16:30–17:00

摘要

软件逆向工程是指基于软件的源代码甚至是二进制代码来重建软件系统的高层视图(用于帮助对软件系统的理解和维护)的过程。本讲座将着重于利用一个基于UML技术的模型来讨论逆向工程的关键概念。该UML模型包含一批UML类图。 这些类图的作用在于描述已存在的逆向工程的过程,工具,产品和用户的关系。


软件仓储挖掘的未来方向

Ahmed Hassan Photo

Ahmed E. Hassan
女王大学,加拿大

星期二,9月30日,17:00–17:30

摘要

源控制仓储,纠错仓储,历史交流记录, 部署日志和源代码仓储都是用于普通软件项目的软件仓储技术的典型特例。软件仓储挖掘(MSR)技术是指基于对软件仓储内容的分析来得到与该软件系统相关的重要信息。通过把这些静态的仓储内容转换成动态仓储形式,我们可以对现代软件开发过程进行决策支持。例如,在传统意义上而言,源控制仓储中的数据通常是用来得到源代码。但是,通过把该信息与纠错仓储相联系,我们可以帮助用户了解程序的复杂变化, 这些变化以及纠错记录可以用于提示用户关于高危代码段的存在。 本讲座将介绍软件仓储挖掘的历史以及该领域最近的一些应用成果。 我们还将讨论该领域的研究难点以及未来研究方向。


程序切片与切割

Keith Gallagher Photo  David Binkley Photo

Keith Gallagher
德伦大学, 英国
David Binkley
马里兰罗优拉学院, 美国

周三,10月1日,16:00–16:30

摘要

程序切片是指根据预定的切片标准而剔除无关程序部件的一种程序解构技术。切片后的残留程序就是源程序相对于切片标准的投影。本讲座将首先基于一些例子和教程来讲解程序切片的基本原理。 然后介绍程序切片的相关应用。 这些应用包括从早期的在程序纠错领域中的应用, 到现代的在有限状态模型下的基于属性的程序验证的相关应用。最后,我们将讨论该领域的一些研究难点。


已有软件中切面的挖掘与重构

Leon Moonen Photo

Leon Moonen
思穆拉研究室, 挪威

周三,10月1日,16:30–17:00

摘要

在该讲座中, 我们首先介绍如何在理解,维护和进化已有软件系统的过程中挖掘与重构切面。我们描述一种集成的,系统的用于帮助软件业者在已有软件源代码中辨别,记录和移植切面的方法。我们还将介绍该方法在集成性上的一些考量。最后,我们讨论我们所学到的经验以及该领域未来的研究方向。


网站进化的前沿领域

Shihong Huang Photo

黄世红
佛罗里达大西洋大学,美国

周三,10月1日,16:00–16:30

摘要

大规模软件系统必须持续保持进化以适应不断变化的商业需求。大量网站由于实践,规模和负责度的考量,已经被归类为旧有系统。相对与其他的旧有系统,这些相对较新的旧有系统对于企业本身,仍然具有一定价值。然而,如何利用这些价值颇具挑战性。一个旧有的网站系统在保留着许多传统软件系统的功能的同时,还有自己独特的功能。 因此,如何进行该类网站的进化应该不仅仅局限于传统软件的维护和进化技术,同时也应该包括很多新的研究方向。本讲座将首先概览网站进化这个研究领域并讨论网站进化研究的独特性。我们还将介绍该领域的一些前沿方向并着重于介绍可访问性问题。


基于部件的工具构造

Holger Kienle Photo

Holger M. Kienle
维多利亚大学,加拿大

周三,10月1日,16:30–17:00

摘要

本讲座主要介绍一种新的基于已有部件(包括成品部件,集成开发环境以及特定领域工具等)来构造软件工程研究工具的方法。该方法可被视为在学术界中使用的基于部件的开发技术的一个实例。由于该方法避免了从头开发研究工具,提高了效率,因此已被很多研究者所采用。例如,为了适应新的研究方向,工具能够很快的被原型化和进化。而且,在提高效率的同时,这种工具能够很容易的被采用。


在开发和维护过程中重新测试

Mary Jean Harrold Photo  Alessandro Orso Photo

Mary Jean Harrold
乔治亚理工学院, 美国
Alessandro Orso
乔治亚理工学院, 美国

星期四,10月2日,15:30–16:00

摘要

大多数的软件在开发和维护过程将持续进化和改变。 对于新的或者已经改变的部分,以及已存在的可能被影响的部分进行重新测试是十分必要的。该行为通常被称为回归测试,这种测试往往占了软件开发费用中相当大的比例。基于这个原因,人们针对回归测试进行了大量的研究。 本讲座将首先概览回归测试研究中的主要问题, 分析该领域当前的状态以及在工业界和学术界中应用的情况。我们还将讨论该领域的一些研究难点。


与安全性相关的软件分析

Spiros Mancoridis Photo

Spiros Mancoridis
德雷塞尔大学, 美国

星期四,10月2日,16:00–16:30

摘要

我们概览那些用于帮助软件维护业者提高系统安全性的过程,实践和技术。我们着重于讨论安全体系的有效化,验证体系的具体实现符合安全编码的原则, 以及如何保护系统不受恶意代码的侵害等问题。在概览该领域当前状况的同时,我们还将探讨该领域的一些研究难点。


软件克隆检测

Rainer Koschke Photo

Rainer Koschke
不来梅大学,德国

星期四,10月2日,16:30–17:00

摘要

通过特定的拷贝-粘贴的方式进行软件重用在实践中会对软件进化造成不良影响。本讲座介绍软件克隆检测技术(发现,追踪,呈现,评估,删除,改变)以及我们所收集到的一些经验数据。我们还将讨论该领域的未来研究方向。


软件进化的过去,现在和未来

Michael Godfrey Photo  Daniel German Photo

Michael W. Godfrey
滑铁卢大学,加拿大
Daniel M. German
维多利亚大学,加拿大

星期四,10月2日,15:30–16:00

摘要

由于软件系统必须应对需求的变化,平台的演变以及其他环境的变化,所以我们说软件开发的本质是改变。本讲座将从几个方面对软件进化来进行讨论。我们讨论软件进化和软件维护的相同与不同点。我们讨论软件进化的雷曼定律以及Bennett和Rajlich的开发周期模型对软件进化技术的影响。我们还将从科学和社会学的角度来分析软件进化和其他类进化的异同。最后,我们还将陈述软件进化领域的一些研究难题以及未来的研究方向。


混合软件可视化技术来支持软件维护中的协作

Margaret-Anne Storey

Margaret-Anne Storey
维多利亚大学,加拿大

星期四,10月2日,16:00–16:30

摘要

我们认为协作化的软件可视化技术能提高软件的可维护性。我们首先从程序理解,过程理解和软件进化的角度来检视可视化技术是如何支持软件维护的。从中我们可以总结出软件可视化工具很少能提供对协作开发和共享视图的支持。因此,我们概览从计算机辅助的协作工作的角度所进行的研究。我们认为这些研究应该被应用到软件可视化领域。我们讨论该研究方向的难点和机遇。我们认为,无论是从个人的角度还是团队的角度, 对软件可视化的协作层面的重视能够提高软件的可维护性。


系统的系统:软件维护和进化的新挑战

Dennis Smith Photo

Dennis B. Smith
卡耐基梅隆大学软件工程研究所,美国

星期四,10月2日,16:30–17:00

摘要

在过去的十年里,软件工程的实践热点已经从开发传统的独立系统转变成开发大型的系统的系统(SOS)。然而,到SOS的转变过程往往并不是由一个独立的组织控制。这意味者传统的软件维护和进化实践也必须随之改变。本讲座将介绍SOS的基本概念以及阐述SOS对于软件进化和维护的影响。


http://www.icsm2008.org.cn/program-f.html
版权 © 2008 ICSM