首页> 外文会议>International Symposium on Component-Based Software Engineering >Ensuring Consistency between Designs, Documentation, Formal Specifications, and Implementations
【24h】

Ensuring Consistency between Designs, Documentation, Formal Specifications, and Implementations

机译:确保设计,文档,正式规范和实施之间的一致性

获取原文

摘要

Software engineering experts and textbooks insist that all of the artifacts related to a system, (e.g., its design, documentation, and implementation), must be kept in-sync. Unfortunately, in the real world, it is a very rare case that any two of these are kept consistent, let alone all three. In general, as an implementation changes, its source code documentation, like that of Javadoc, is only occasionally updated at some later date. Unsurprisingly, most design documents, like those written in UML, are created as a read-only medium—they reflect what the designers thought they were building at one point in the past, but have little to do with the actual running system. Even those using formal methods make this mistake, sometimes updating an implementation and forgetting to make some subtle change to a related specification. The critical problem inherent in this approach is that abstraction levels, while theoretically inter-dependent, are actually completely independent in semantics and from the point of view of the tools in pervasive use. Entities in different layers have no formal relationship; at best, informal relations are maintained by ad hoc approaches like code markers, or code is generated once and never touched again. This paper presents a new approach to system design, documentation, implementation, specification, and verification that imposes a formal refinement relationship between abstraction levels that is invisible to the programmer and automatically maintained by an integrated set of tools. The new concept that enables this approach is called a semantic property, and their use is discussed in detail with a set of examples using the high-level specification language EBON, the detailed design and specification language JML, and the Java programming language as the implementation language.
机译:软件工程专家和教科书坚持所有相关的系统的文物,(例如,它的设计,文档和实现),必须保持同步。不幸的是,在现实世界中,这是一个非常罕见的情况下这些的任何两种都保持一致,更别说三个。在一般情况下,作为一种实现的变化,它的源代码文件,这样的Javadoc,只是偶尔在一些日期更新。不出所料,大部分的设计文件,像那些写在UML,创建为只读中他们反映了设计者以为他们是在一个点在过去的建筑,但没有什么实际的运行制做。即使是那些采用正规方法犯这样的错误,有时更新的实现和遗忘作一些微妙的变化,以相关规范。在这种方法中所固有的关键问题是,抽象水平,而理论上相互依赖的,实际上是在语义和从鉴于普遍使用的工具的点完全独立的。在不同层的实体都没有正式关系;在最好的,非正式的关系由专门维护方法,如代码标记,或者一旦生成的代码,并再也没有触及。本文件向系统设计,文档,实施,规范和验证的新方法强加的抽象级别之间的正式细化关系是不可见的程序员,并通过一个集成的工具集,自动维护。新概念,使这种方法被称为语义特性,以及它们的使用进行了详细的一套使用高级规范语言黑檀,详细设计和规范语言JML,和Java编程语言作为实现示例讨论语。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号