首页 > 最新文献

Proceedings of the 24th International Conference on Software Engineering. ICSE 2002最新文献

英文 中文
The CommUnity Workbench 社区工作台
M. Wermelinger, C. Oliveira
CommUnity is a parallel program design language and framework that has been extended to provide a formal platform for the architectural design of open, reactive, reconfigurable systems. CommUnity programs are in the style of Unity programs, but they also combine elements from interacting processes. CommUnity also has a richer coordination model and it requires interactions between components to be made explicit. The CommUnity Workbench is being developed as a proof of concept of the framework, hiding the underlying "mathematical machinery" from the user. Currently, the tool provides a graphical integrated development environment to write CommUnity programs, draw a configuration, automatically calculate its co-limit and run it. The workbench prevents the creation of ill-formed configurations and gives great flexibility in testing CommUnity programs.
CommUnity是一种并行的程序设计语言和框架,它被扩展为开放的、反应性的、可重构的系统的体系结构设计提供了一个正式的平台。社区程序是Unity程序的风格,但它们也结合了交互过程中的元素。CommUnity也有更丰富的协调模型,它要求组件之间的交互是显式的。社区工作台是作为框架概念的证明而开发的,对用户隐藏了底层的“数学机制”。目前,该工具提供了一个图形化的集成开发环境,可以编写CommUnity程序,绘制组态,自动计算其co-limit并运行。工作台防止了错误配置的创建,并在测试CommUnity程序时提供了很大的灵活性。
{"title":"The CommUnity Workbench","authors":"M. Wermelinger, C. Oliveira","doi":"10.1145/581457.581464","DOIUrl":"https://doi.org/10.1145/581457.581464","url":null,"abstract":"CommUnity is a parallel program design language and framework that has been extended to provide a formal platform for the architectural design of open, reactive, reconfigurable systems. CommUnity programs are in the style of Unity programs, but they also combine elements from interacting processes. CommUnity also has a richer coordination model and it requires interactions between components to be made explicit. The CommUnity Workbench is being developed as a proof of concept of the framework, hiding the underlying \"mathematical machinery\" from the user. Currently, the tool provides a graphical integrated development environment to write CommUnity programs, draw a configuration, automatically calculate its co-limit and run it. The workbench prevents the creation of ill-formed configurations and gives great flexibility in testing CommUnity programs.","PeriodicalId":186061,"journal":{"name":"Proceedings of the 24th International Conference on Software Engineering. ICSE 2002","volume":"31 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2007-12-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127599119","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 1
Hyper/J/spl trade/: multi-dimensional separation of concerns for Java/spl trade/ Hyper/J/spl trade/: Java/spl trade/的多维关注点分离
P. Tarr, H. Ossher, S. Sutton
This paper describes how to accomplish multi-dimensional separation of concerns (MDSOC) with Hyper/J/sup TM/, a tool available for free download, in the context of standard Java/sup TM/ development. Hyper/J does not require any special languages or language variants, compilers, development environments, or processes - it works with standard Java, using any compiler, development environment, methodology and process. It can be used at any stage of the software lifecycle - from design and initial development of code, to the evolution of pre-existing code (whether or not it was developed using Hyper/J), to the adaptation and integration of separately developed components.
本文描述了如何在标准Java/sup TM/开发环境下,利用免费下载的Hyper/J/sup TM/工具实现多维关注点分离(MDSOC)。Hyper/J不需要任何特殊的语言或语言变体、编译器、开发环境或过程——它与标准Java一起工作,使用任何编译器、开发环境、方法和过程。它可以在软件生命周期的任何阶段使用——从代码的设计和初始开发,到预先存在的代码的演变(无论它是否使用Hyper/J开发),再到单独开发的组件的适应和集成。
{"title":"Hyper/J/spl trade/: multi-dimensional separation of concerns for Java/spl trade/","authors":"P. Tarr, H. Ossher, S. Sutton","doi":"10.1109/ICSE.2002.1008031","DOIUrl":"https://doi.org/10.1109/ICSE.2002.1008031","url":null,"abstract":"This paper describes how to accomplish multi-dimensional separation of concerns (MDSOC) with Hyper/J/sup TM/, a tool available for free download, in the context of standard Java/sup TM/ development. Hyper/J does not require any special languages or language variants, compilers, development environments, or processes - it works with standard Java, using any compiler, development environment, methodology and process. It can be used at any stage of the software lifecycle - from design and initial development of code, to the evolution of pre-existing code (whether or not it was developed using Hyper/J), to the adaptation and integration of separately developed components.","PeriodicalId":186061,"journal":{"name":"Proceedings of the 24th International Conference on Software Engineering. ICSE 2002","volume":"64 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2002-05-25","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128270115","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 8
Tutorial: introduction to the Rational Unified Process/sup /spl reg// 教程:介绍Rational统一过程/sup /spl reg//
Philippe B Kruchten
Summary form only given. The Rational Unified Process/sup /spl reg// (RUP/sup /spl reg//) is a software engineering process framework. It captures many of the best practices in modern software development in a form that is suitable for a wide range of projects and organizations. It embeds object-oriented techniques and uses UML as the principal notation for the several models that are built during the development. The RUP is also an open process framework that allows software organizations to tailor the process to their specific need, and to capture their own specific process know-how in the form of process components. Many process components are now developed by various organizations to cover different domains, technologies, tools, or type of development, and these components can be assembled to rapidly compose a suitable process. This tutorial introduces the basic concepts and principles, which lie under the RUP framework, and show concrete examples of its usage.
只提供摘要形式。Rational统一过程/sup /spl reg// (RUP/sup /spl reg//)是一个软件工程过程框架。它以一种适合于广泛的项目和组织的形式捕获了现代软件开发中的许多最佳实践。它嵌入了面向对象技术,并使用UML作为开发过程中构建的几个模型的主要符号。RUP也是一个开放的过程框架,它允许软件组织根据他们的特定需求裁剪过程,并以过程组件的形式获取他们自己的特定过程知识。许多过程组件现在由不同的组织开发,以覆盖不同的领域、技术、工具或开发类型,并且这些组件可以被组装起来以快速组成一个合适的过程。本教程介绍了基本概念和原则,躺在RUP框架下,展示使用的具体的例子。
{"title":"Tutorial: introduction to the Rational Unified Process/sup /spl reg//","authors":"Philippe B Kruchten","doi":"10.1109/ICSE.2002.1008039","DOIUrl":"https://doi.org/10.1109/ICSE.2002.1008039","url":null,"abstract":"Summary form only given. The Rational Unified Process/sup /spl reg// (RUP/sup /spl reg//) is a software engineering process framework. It captures many of the best practices in modern software development in a form that is suitable for a wide range of projects and organizations. It embeds object-oriented techniques and uses UML as the principal notation for the several models that are built during the development. The RUP is also an open process framework that allows software organizations to tailor the process to their specific need, and to capture their own specific process know-how in the form of process components. Many process components are now developed by various organizations to cover different domains, technologies, tools, or type of development, and these components can be assembled to rapidly compose a suitable process. This tutorial introduces the basic concepts and principles, which lie under the RUP framework, and show concrete examples of its usage.","PeriodicalId":186061,"journal":{"name":"Proceedings of the 24th International Conference on Software Engineering. ICSE 2002","volume":"33 4 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2002-05-25","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123617932","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 12
Detection of conflicting functional requirements in a use case-driven approach 在用例驱动的方法中检测冲突的功能需求
Jan Hendrik Hausmann, R. Heckel, Gabriele Taentzer
In object-oriented software development, requirements of different stakeholders are often manifested in use case models which complement the static domain model by dynamic and functional requirements. In the course of development, these requirements are analyzed and integrated to produce a consistent overall requirements specification. Iterations of the model may be triggered by conflicts between requirements of different parties. However, due to the diversity, incompleteness, and informal nature, in particular of functional and dynamic requirements, such conflicts are difficult to find. Formal approaches to requirements engineering, often based on logic ' attack these problems, but require highly specialized experts to write and reason about such specifications. We propose a formal interpretation of use case models consisting of UML use case, activity, and collaboration diagrams. The formalization, which is based on concepts from the theory of graph transformation, allows to make precise the notions of conflict and dependency between functional requirements expressed by different use cases. Then, use case models can be statically analyzed, and conflicts or dependencies detected by the analysis can be communicated to the modeler by annotating the model. An implementation of the static analysis within a graph transformation tool is presented.
在面向对象的软件开发中,不同涉众的需求经常表现在用例模型中,用例模型通过动态和功能需求来补充静态领域模型。在开发过程中,对这些需求进行分析和集成,以产生一致的总体需求规范。模型的迭代可能由不同方面的需求之间的冲突触发。然而,由于需求的多样性、不完全性和非正式性,特别是功能需求和动态需求,这种冲突很难被发现。需求工程的正式方法,通常基于逻辑来解决这些问题,但是需要高度专业化的专家来编写和推理这些规范。我们建议对由UML用例、活动和协作图组成的用例模型进行正式的解释。形式化基于图转换理论的概念,可以精确地定义由不同用例表达的功能需求之间的冲突和依赖关系。然后,可以静态地分析用例模型,并且可以通过注释模型将分析检测到的冲突或依赖关系传达给建模者。给出了静态分析在图形转换工具中的实现。
{"title":"Detection of conflicting functional requirements in a use case-driven approach","authors":"Jan Hendrik Hausmann, R. Heckel, Gabriele Taentzer","doi":"10.1145/581352.581355","DOIUrl":"https://doi.org/10.1145/581352.581355","url":null,"abstract":"In object-oriented software development, requirements of different stakeholders are often manifested in use case models which complement the static domain model by dynamic and functional requirements. In the course of development, these requirements are analyzed and integrated to produce a consistent overall requirements specification. Iterations of the model may be triggered by conflicts between requirements of different parties. However, due to the diversity, incompleteness, and informal nature, in particular of functional and dynamic requirements, such conflicts are difficult to find. Formal approaches to requirements engineering, often based on logic ' attack these problems, but require highly specialized experts to write and reason about such specifications. We propose a formal interpretation of use case models consisting of UML use case, activity, and collaboration diagrams. The formalization, which is based on concepts from the theory of graph transformation, allows to make precise the notions of conflict and dependency between functional requirements expressed by different use cases. Then, use case models can be statically analyzed, and conflicts or dependencies detected by the analysis can be communicated to the modeler by annotating the model. An implementation of the static analysis within a graph transformation tool is presented.","PeriodicalId":186061,"journal":{"name":"Proceedings of the 24th International Conference on Software Engineering. ICSE 2002","volume":"51 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2002-05-25","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129954298","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 103
A representation for describing and analyzing concerns in source code 描述和分析源代码中的关注点的一种表示形式
M. Robillard
Existing approaches that are available to help software developers locate and manage the scattered implementation of concerns use a representation based on lines of source code. Because they do not explicitly express program structure, concern representations based on source code have inherent limitations when finding, describing and analyzing concerns. To address these problems, we are trying to find a concern representation that captures as close as possible the amount and precision level of information that software developers need to efficiently plan a change, and that supports queries that can provide this information. As a proposed solution, we introduced the Concern Graph representation that abstracts the implementation details of a concern and makes explicit the relationships between different parts of the concern. The Concern Graph abstraction has also been designed to allow an obvious and expensive mapping back to the corresponding source code. To investigate the practical tradeoffs related to this approach, we have built the Feature Exploration and Analysis Tool (FEAT) that allows a developer to navigate over an extracted model of a Java program, to build up the subset of the model that corresponds to a concern of interest, and to analyze the relationships of that concern to the code base.
可用来帮助软件开发人员定位和管理分散的关注点实现的现有方法使用基于源代码行的表示。因为它们没有显式地表达程序结构,所以基于源代码的关注表示在查找、描述和分析关注时具有固有的局限性。为了解决这些问题,我们试图找到一种关注表示,它尽可能地捕获软件开发人员有效地计划变更所需的信息的数量和精确级别,并支持可以提供这些信息的查询。作为建议的解决方案,我们引入了关注图表示,它抽象了关注的实现细节,并明确了关注的不同部分之间的关系。关注图抽象也被设计成允许明显且昂贵的映射回相应的源代码。为了研究与此方法相关的实际权衡,我们已经构建了Feature Exploration and Analysis Tool (FEAT),它允许开发人员浏览Java程序的提取模型,构建与感兴趣的关注点相对应的模型子集,并分析该关注点与代码库的关系。
{"title":"A representation for describing and analyzing concerns in source code","authors":"M. Robillard","doi":"10.1145/581469.581470","DOIUrl":"https://doi.org/10.1145/581469.581470","url":null,"abstract":"Existing approaches that are available to help software developers locate and manage the scattered implementation of concerns use a representation based on lines of source code. Because they do not explicitly express program structure, concern representations based on source code have inherent limitations when finding, describing and analyzing concerns. To address these problems, we are trying to find a concern representation that captures as close as possible the amount and precision level of information that software developers need to efficiently plan a change, and that supports queries that can provide this information. As a proposed solution, we introduced the Concern Graph representation that abstracts the implementation details of a concern and makes explicit the relationships between different parts of the concern. The Concern Graph abstraction has also been designed to allow an obvious and expensive mapping back to the corresponding source code. To investigate the practical tradeoffs related to this approach, we have built the Feature Exploration and Analysis Tool (FEAT) that allows a developer to navigate over an extracted model of a Java program, to build up the subset of the model that corresponds to a concern of interest, and to analyze the relationships of that concern to the code base.","PeriodicalId":186061,"journal":{"name":"Proceedings of the 24th International Conference on Software Engineering. ICSE 2002","volume":"79 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2002-05-19","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"115487131","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 1
Principles of software evolution: 5th international workshop on principles of software evolution (IWPSE 2002) 软件进化的原理:第五届软件进化原理国际研讨会(IWPSE 2002)
M. Aoyama, Katsuro Inoue, V. Rajlich
We present an overview of the 5th International Workshop on Principles of Software Evolution (IWPSE 2002).
我们对第五届软件进化原理国际研讨会(IWPSE 2002)进行了概述。
{"title":"Principles of software evolution: 5th international workshop on principles of software evolution (IWPSE 2002)","authors":"M. Aoyama, Katsuro Inoue, V. Rajlich","doi":"10.1145/581339.581430","DOIUrl":"https://doi.org/10.1145/581339.581430","url":null,"abstract":"We present an overview of the 5th International Workshop on Principles of Software Evolution (IWPSE 2002).","PeriodicalId":186061,"journal":{"name":"Proceedings of the 24th International Conference on Software Engineering. ICSE 2002","volume":"49 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2002-05-19","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"117179527","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 0
Advanced visual modelling: beyond UML 高级可视化建模:超越UML
J. Gil, J. Howse, S. Kent
With the adoption of UML by the OMG and industry as the lingua-franca of visual systems modelling, one begins to ponder what will come next in this field? This tutorial brings a vision for visual modelling beyond UML. We present and consolidate radical new notations, proposed in a series of research papers and with quickly increasing adoption by industry, for the specification of complex systems in an intuitive visual, yet precise manner. The recurring theme of these notations is the upgrading of familiar diagrams into a powerful visual language. Spider diagrams considerably extend Venn diagrams to the specification of object-oriented (OO) systems. Most familiar OO concepts are translated into set-theoretical terms: classes into sets of objects, inheritance corresponding to subsets, and even statecharts are interpreted as the set of objects in that state. Constraint diagrams enhance the arrow notation to describe static system invariants which cannot be described by UML class-object diagrams. Reasoning rules are developed for the notation and strong completeness results are given. Finally, 3D diagrams show how the third dimension and VRML modelling can be used for a conceptual modelling of dynamic system behaviour. Much of the tutorial is based on a case study developed in industry, illustrating how the new notations are combined with those of UML, including OCL.
随着OMG和业界采用UML作为可视化系统建模的通用语言,人们开始思考这个领域接下来会发生什么?本教程介绍了UML之外的可视化建模。我们提出并巩固了一系列研究论文中提出的激进的新符号,并迅速被工业界采用,以直观的视觉方式规范复杂系统,但精确的方式。这些符号反复出现的主题是将熟悉的图表升级为强大的视觉语言。蜘蛛图在很大程度上将维恩图扩展到面向对象(OO)系统的规范。大多数熟悉的OO概念都被转换为集合理论术语:类转换为对象集,继承对应于子集,甚至状态图都被解释为处于该状态的对象集。约束图增强了箭头符号来描述UML类对象图无法描述的静态系统不变量。给出了该符号的推理规则,并给出了强完备性结果。最后,三维图显示了如何将三维和VRML建模用于动态系统行为的概念建模。本教程的大部分内容是基于在行业中开发的一个案例研究,说明了如何将新的符号与UML(包括OCL)的符号结合起来。
{"title":"Advanced visual modelling: beyond UML","authors":"J. Gil, J. Howse, S. Kent","doi":"10.1145/581339.581451","DOIUrl":"https://doi.org/10.1145/581339.581451","url":null,"abstract":"With the adoption of UML by the OMG and industry as the lingua-franca of visual systems modelling, one begins to ponder what will come next in this field? This tutorial brings a vision for visual modelling beyond UML. We present and consolidate radical new notations, proposed in a series of research papers and with quickly increasing adoption by industry, for the specification of complex systems in an intuitive visual, yet precise manner. The recurring theme of these notations is the upgrading of familiar diagrams into a powerful visual language. Spider diagrams considerably extend Venn diagrams to the specification of object-oriented (OO) systems. Most familiar OO concepts are translated into set-theoretical terms: classes into sets of objects, inheritance corresponding to subsets, and even statecharts are interpreted as the set of objects in that state. Constraint diagrams enhance the arrow notation to describe static system invariants which cannot be described by UML class-object diagrams. Reasoning rules are developed for the notation and strong completeness results are given. Finally, 3D diagrams show how the third dimension and VRML modelling can be used for a conceptual modelling of dynamic system behaviour. Much of the tutorial is based on a case study developed in industry, illustrating how the new notations are combined with those of UML, including OCL.","PeriodicalId":186061,"journal":{"name":"Proceedings of the 24th International Conference on Software Engineering. ICSE 2002","volume":"34 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2002-05-19","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123760424","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 1
Meeting challenges and surviving success: the 2nd workshop on open source software engineering 迎接挑战并获得成功:第二届开源软件工程研讨会
J. Feller
Much of the work published to date focuses on the past and present of OSS. For The 2 "a Workshop on Open Source Software Engineering, we are seeking a more future oriented approach. The goal of this year's workshop is to bring together researchers and practitioners to discuss both the short and long term sustainability of OSS. The workshop will seek to address the quality and maintainability of OSS products and tools, the replicability and portability of the OSS software engineering process, the stability and sustainability of OSS developer and user communities, and the viability and profitability of OSS business models.
迄今为止出版的大部分工作都集中在OSS的过去和现在。对于开源软件工程的研讨会,我们正在寻找一种更面向未来的方法。今年研讨会的目标是将研究人员和实践者聚集在一起,讨论OSS的短期和长期可持续性。研讨会将寻求解决OSS产品和工具的质量和可维护性,OSS软件工程过程的可复制性和可移植性,OSS开发人员和用户社区的稳定性和可持续性,以及OSS商业模型的可行性和盈利能力。
{"title":"Meeting challenges and surviving success: the 2nd workshop on open source software engineering","authors":"J. Feller","doi":"10.1145/581339.581436","DOIUrl":"https://doi.org/10.1145/581339.581436","url":null,"abstract":"Much of the work published to date focuses on the past and present of OSS. For The 2 \"a Workshop on Open Source Software Engineering, we are seeking a more future oriented approach. The goal of this year's workshop is to bring together researchers and practitioners to discuss both the short and long term sustainability of OSS. The workshop will seek to address the quality and maintainability of OSS products and tools, the replicability and portability of the OSS software engineering process, the stability and sustainability of OSS developer and user communities, and the viability and profitability of OSS business models.","PeriodicalId":186061,"journal":{"name":"Proceedings of the 24th International Conference on Software Engineering. ICSE 2002","volume":"9 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2002-05-19","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126607654","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 16
Browsing and searching source code of applications written using a GUI framework 浏览和搜索使用GUI框架编写的应用程序源代码
Amir Michail
Nowadays, applications are typically written using an object-oriented GUI framework. We explore the possibility of using the GUI of such applications to guide browsing and search of their source code. Such a tool would be helpful for software maintenance and reuse, particularly when the application source is unfamiliar. Generally, the GUI framework is in control and makes calls into the application code to handle various events, thus providing fundamental entry points into the application code, namely the callbacks. Of course, this is a property of frameworks in general but GUI frameworks have one additional advantage: the GUI is visible to the end-user and contains text messages describing what the application can do. Thus, we have an explicit connection between an informal specification fragment visible in the GUI and its precise entry point to the implementation in the source. We demonstrate our approach, which takes advantage of this connection, on KDE applications written using the KDE GUI framework.
如今,应用程序通常使用面向对象的GUI框架编写。我们探索了使用此类应用程序的GUI来指导浏览和搜索其源代码的可能性。这样的工具将有助于软件维护和重用,特别是在不熟悉应用程序源代码的情况下。通常,GUI框架控制并调用应用程序代码来处理各种事件,从而提供进入应用程序代码的基本入口点,即回调。当然,这是框架的一般属性,但GUI框架还有一个额外的优势:GUI对最终用户是可见的,并且包含描述应用程序可以做什么的文本消息。因此,我们在GUI中可见的非正式规范片段与其在源代码中实现的精确入口点之间建立了显式连接。我们在使用KDE GUI框架编写的KDE应用程序上演示了利用这种连接的方法。
{"title":"Browsing and searching source code of applications written using a GUI framework","authors":"Amir Michail","doi":"10.1145/581380.581381","DOIUrl":"https://doi.org/10.1145/581380.581381","url":null,"abstract":"Nowadays, applications are typically written using an object-oriented GUI framework. We explore the possibility of using the GUI of such applications to guide browsing and search of their source code. Such a tool would be helpful for software maintenance and reuse, particularly when the application source is unfamiliar. Generally, the GUI framework is in control and makes calls into the application code to handle various events, thus providing fundamental entry points into the application code, namely the callbacks. Of course, this is a property of frameworks in general but GUI frameworks have one additional advantage: the GUI is visible to the end-user and contains text messages describing what the application can do. Thus, we have an explicit connection between an informal specification fragment visible in the GUI and its precise entry point to the implementation in the source. We demonstrate our approach, which takes advantage of this connection, on KDE applications written using the KDE GUI framework.","PeriodicalId":186061,"journal":{"name":"Proceedings of the 24th International Conference on Software Engineering. ICSE 2002","volume":"85 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2002-05-19","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124672850","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 37
Lessons learned from 25 years of process improvement: the rise and fall of the NASA software engineering laboratory 25年过程改进的经验教训:NASA软件工程实验室的兴衰
V. Basili, F. McGarry, R. Pajerski, M. Zelkowitz
For 25 years the NASA/GSFC Software Engineering Laboratory (SEL) has been a major resource in software process improvement activities. But due to a changing climate at NASA, agency reorganization, and budget cuts, the SEL has lost much of its impact. In this paper we describe the history of the SEL and give some lessons learned on what we did right, what we did wrong, and what others can learn from our experiences. We briefly describe the research that was conducted by the SEL, describe how we evolved our understanding of software process improvement, and provide a set of lessons learned and hypotheses that should enable future groups to learn from and improve on our quarter century of experiences.
25年来,NASA/GSFC软件工程实验室(SEL)一直是软件过程改进活动的主要资源。但由于NASA内部环境的变化、机构重组和预算削减,SEL已经失去了很大的影响力。在本文中,我们描述了SEL的历史,并给出了一些经验教训,包括我们做对了什么,做错了什么,以及其他人可以从我们的经验中学到什么。我们简要地描述了由SEL进行的研究,描述了我们如何发展我们对软件过程改进的理解,并提供了一组经验教训和假设,这些经验教训和假设应该使未来的团队能够从我们25年的经验中学习和改进。
{"title":"Lessons learned from 25 years of process improvement: the rise and fall of the NASA software engineering laboratory","authors":"V. Basili, F. McGarry, R. Pajerski, M. Zelkowitz","doi":"10.1145/581339.581351","DOIUrl":"https://doi.org/10.1145/581339.581351","url":null,"abstract":"For 25 years the NASA/GSFC Software Engineering Laboratory (SEL) has been a major resource in software process improvement activities. But due to a changing climate at NASA, agency reorganization, and budget cuts, the SEL has lost much of its impact. In this paper we describe the history of the SEL and give some lessons learned on what we did right, what we did wrong, and what others can learn from our experiences. We briefly describe the research that was conducted by the SEL, describe how we evolved our understanding of software process improvement, and provide a set of lessons learned and hypotheses that should enable future groups to learn from and improve on our quarter century of experiences.","PeriodicalId":186061,"journal":{"name":"Proceedings of the 24th International Conference on Software Engineering. ICSE 2002","volume":"3 1-3 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2002-05-19","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129095722","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 160
期刊
Proceedings of the 24th International Conference on Software Engineering. ICSE 2002
全部 Acc. Chem. Res. ACS Applied Bio Materials ACS Appl. Electron. Mater. ACS Appl. Energy Mater. ACS Appl. Mater. Interfaces ACS Appl. Nano Mater. ACS Appl. Polym. Mater. ACS BIOMATER-SCI ENG ACS Catal. ACS Cent. Sci. ACS Chem. Biol. ACS Chemical Health & Safety ACS Chem. Neurosci. ACS Comb. Sci. ACS Earth Space Chem. ACS Energy Lett. ACS Infect. Dis. ACS Macro Lett. ACS Mater. Lett. ACS Med. Chem. Lett. ACS Nano ACS Omega ACS Photonics ACS Sens. ACS Sustainable Chem. Eng. ACS Synth. Biol. Anal. Chem. BIOCHEMISTRY-US Bioconjugate Chem. BIOMACROMOLECULES Chem. Res. Toxicol. Chem. Rev. Chem. Mater. CRYST GROWTH DES ENERG FUEL Environ. Sci. Technol. Environ. Sci. Technol. Lett. Eur. J. Inorg. Chem. IND ENG CHEM RES Inorg. Chem. J. Agric. Food. Chem. J. Chem. Eng. Data J. Chem. Educ. J. Chem. Inf. Model. J. Chem. Theory Comput. J. Med. Chem. J. Nat. Prod. J PROTEOME RES J. Am. Chem. Soc. LANGMUIR MACROMOLECULES Mol. Pharmaceutics Nano Lett. Org. Lett. ORG PROCESS RES DEV ORGANOMETALLICS J. Org. Chem. J. Phys. Chem. J. Phys. Chem. A J. Phys. Chem. B J. Phys. Chem. C J. Phys. Chem. Lett. Analyst Anal. Methods Biomater. Sci. Catal. Sci. Technol. Chem. Commun. Chem. Soc. Rev. CHEM EDUC RES PRACT CRYSTENGCOMM Dalton Trans. Energy Environ. Sci. ENVIRON SCI-NANO ENVIRON SCI-PROC IMP ENVIRON SCI-WAT RES Faraday Discuss. Food Funct. Green Chem. Inorg. Chem. Front. Integr. Biol. J. Anal. At. Spectrom. J. Mater. Chem. A J. Mater. Chem. B J. Mater. Chem. C Lab Chip Mater. Chem. Front. Mater. Horiz. MEDCHEMCOMM Metallomics Mol. Biosyst. Mol. Syst. Des. Eng. Nanoscale Nanoscale Horiz. Nat. Prod. Rep. New J. Chem. Org. Biomol. Chem. Org. Chem. Front. PHOTOCH PHOTOBIO SCI PCCP Polym. Chem.
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
0
微信
客服QQ
Book学术公众号 扫码关注我们
反馈
×
意见反馈
请填写您的意见或建议
请填写您的手机或邮箱
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
现在去查看 取消
×
提示
确定
Book学术官方微信
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术
文献互助 智能选刊 最新文献 互助须知 联系我们:info@booksci.cn
Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。
Copyright © 2023 Book学术 All rights reserved.
ghs 京公网安备 11010802042870号 京ICP备2023020795号-1