A net method for specification of reusable software

H. S. Dhama, V. Shtern
{"title":"A net method for specification of reusable software","authors":"H. S. Dhama, V. Shtern","doi":"10.1145/75199.75220","DOIUrl":null,"url":null,"abstract":"A method, called the N&Method. has been developed for specifying software components based on Petri nets. Using two types of nodes and three types of connectors, five primitives of the specification method have been constructed. Only these five primitives are then used as building blocks to specify software. Although the Net Method was originally designed for software components, it has been found to be particularly suited for specifying systems that have a number of parallel processes and require the synchronization of a number of activities. A graphics editor for the Net Method has been implemented and a Net simulation package is under development. l.~Hiah~pfSoftware~&u&&y 1 Reduction in the cost of software production through software reusability has been an aim of software producers for quite some time. Reusability efforts have come a long way with many different paradigms being used for the production of reusable software components [I, 6,8,10]. However, the concept of “mass produced software components” remains a long way off since, among other problems, the problem of functional specification of software components still looms large. 2.I!rQddwPfReusableSoftware This paper tackles only the problem of functional specification of functionality of reusable software components, irrespective of the model that was used for their development. However, for the sake of clarity and for ease of giving examples we would like to keep the paradigm of Ada packages and call the software components Logical Software Units (LSUs). This paper assumes that LSUs will come off-the-shelf in a standardized certified form and will have customization capability within a given functionality. 3. Development ef a &t@cation Method for Reusable Software Specification methods can be categorized under two broad headings: (a) Those that have a mathematical formalism as their base and use some type of algebraic notation. (b) Those that have a graphical notation whether they have a mathematical foundation or not Permission to copy without fee all or part of this material is granted provided that the copies are not made or distributed for direct commercial advantage, the ACM copyright notice and the title of the publication and its date appear, and notice IS given that copying is by permission of the Association for Computing Machinery. To copy otherwise, or to republish, requires a fee and/or specdic permission. V. Shteru Metropolitan College Boston University Boston, MA 02215 We would lie to develop a specification method belonging to the second category because we wish to follow the paradigm of the Sears’ catalog in providing the user with hierarchically arranged information on the huge number of LSUs that, we hope, will be available on the market at some future date. The LSU catalog will have a pictorial functional description of the LSU at a high level of abstraction (like pictures of tires in a Sears’ catalog) followed by one or more levels of description in increasing detail just as tire specifications, other than price and size, are given removed from the picture of the tire. Existing methods of graphical specification [4, 5.9, 1 l] suffer from one or more of the following drawbacks: (a) They are geared either towards representation at the architectural level of detail or towards representing details at the coding level without the ability to specify interactions at all levels of abstraction. (h) They do not make a distinction between au active choice and a passive choice and thereby mask the identity of the activity participant that makes the decision. An “active choice” is a decision made by a participant of an activity; a “passive choice” is made by default for other participants of the activity as a result of the active choice. (c)They do not distinguish between sequential activities and those activities that are independent and can be carried out in parallel, but are often carried out sequentialty because of limitations of resources. The &t Method of specification that we have developed addresses these issues and is due largely to the work of Holt and Commoner [2,3] which in turn is based on the work of Petri [7]. 3.1 Elements oJ the SDecification M&Q.~ The elements of the specification diagrams are: entities, activities and connectors (fig. 1). Entities participate in system activities and the relationships between these two elements are shown by directed connectors. These form directed graphs in three dimensions which are system space, time and choice. 0 El Entity Activity 1 ,t /“J Lifeline co~ector Activity connector Choice connector (Along time axis) (Along space axis) (Along choice axis) Fig. 1 Elements of the Specification Method 3.2 The Five Primitiva af & Snccification Method Using the elements of the specification method, five primitives of the specification method have been developed. Only these five basic representations combined in various ways, are needed to express the functional specifications of LSUs. Although we do not offer a proof of this 01989 ACM O-89791-305l/89/0500/0137$00.75 137 sufficiency, we make this statement on the basis of our considerable experience with the Net Method. 1. Sequential Activities are joined by verticaI connectors (Fig. 2). The figure shows an entity A which is transformed by activities 1,2 and 3 and then leaves the system.","PeriodicalId":435917,"journal":{"name":"International Workshop on Software Specification and Design","volume":"29 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"1989-04-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"2","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"International Workshop on Software Specification and Design","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/75199.75220","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 2

Abstract

A method, called the N&Method. has been developed for specifying software components based on Petri nets. Using two types of nodes and three types of connectors, five primitives of the specification method have been constructed. Only these five primitives are then used as building blocks to specify software. Although the Net Method was originally designed for software components, it has been found to be particularly suited for specifying systems that have a number of parallel processes and require the synchronization of a number of activities. A graphics editor for the Net Method has been implemented and a Net simulation package is under development. l.~Hiah~pfSoftware~&u&&y 1 Reduction in the cost of software production through software reusability has been an aim of software producers for quite some time. Reusability efforts have come a long way with many different paradigms being used for the production of reusable software components [I, 6,8,10]. However, the concept of “mass produced software components” remains a long way off since, among other problems, the problem of functional specification of software components still looms large. 2.I!rQddwPfReusableSoftware This paper tackles only the problem of functional specification of functionality of reusable software components, irrespective of the model that was used for their development. However, for the sake of clarity and for ease of giving examples we would like to keep the paradigm of Ada packages and call the software components Logical Software Units (LSUs). This paper assumes that LSUs will come off-the-shelf in a standardized certified form and will have customization capability within a given functionality. 3. Development ef a &t@cation Method for Reusable Software Specification methods can be categorized under two broad headings: (a) Those that have a mathematical formalism as their base and use some type of algebraic notation. (b) Those that have a graphical notation whether they have a mathematical foundation or not Permission to copy without fee all or part of this material is granted provided that the copies are not made or distributed for direct commercial advantage, the ACM copyright notice and the title of the publication and its date appear, and notice IS given that copying is by permission of the Association for Computing Machinery. To copy otherwise, or to republish, requires a fee and/or specdic permission. V. Shteru Metropolitan College Boston University Boston, MA 02215 We would lie to develop a specification method belonging to the second category because we wish to follow the paradigm of the Sears’ catalog in providing the user with hierarchically arranged information on the huge number of LSUs that, we hope, will be available on the market at some future date. The LSU catalog will have a pictorial functional description of the LSU at a high level of abstraction (like pictures of tires in a Sears’ catalog) followed by one or more levels of description in increasing detail just as tire specifications, other than price and size, are given removed from the picture of the tire. Existing methods of graphical specification [4, 5.9, 1 l] suffer from one or more of the following drawbacks: (a) They are geared either towards representation at the architectural level of detail or towards representing details at the coding level without the ability to specify interactions at all levels of abstraction. (h) They do not make a distinction between au active choice and a passive choice and thereby mask the identity of the activity participant that makes the decision. An “active choice” is a decision made by a participant of an activity; a “passive choice” is made by default for other participants of the activity as a result of the active choice. (c)They do not distinguish between sequential activities and those activities that are independent and can be carried out in parallel, but are often carried out sequentialty because of limitations of resources. The &t Method of specification that we have developed addresses these issues and is due largely to the work of Holt and Commoner [2,3] which in turn is based on the work of Petri [7]. 3.1 Elements oJ the SDecification M&Q.~ The elements of the specification diagrams are: entities, activities and connectors (fig. 1). Entities participate in system activities and the relationships between these two elements are shown by directed connectors. These form directed graphs in three dimensions which are system space, time and choice. 0 El Entity Activity 1 ,t /“J Lifeline co~ector Activity connector Choice connector (Along time axis) (Along space axis) (Along choice axis) Fig. 1 Elements of the Specification Method 3.2 The Five Primitiva af & Snccification Method Using the elements of the specification method, five primitives of the specification method have been developed. Only these five basic representations combined in various ways, are needed to express the functional specifications of LSUs. Although we do not offer a proof of this 01989 ACM O-89791-305l/89/0500/0137$00.75 137 sufficiency, we make this statement on the basis of our considerable experience with the Net Method. 1. Sequential Activities are joined by verticaI connectors (Fig. 2). The figure shows an entity A which is transformed by activities 1,2 and 3 and then leaves the system.
一种用于可重用软件规格说明的方法
一个叫做N&Method的方法。已开发用于指定基于Petri网的软件组件。使用两种类型的节点和三种类型的连接器,构造了规范方法的五个原语。只有这五个原语被用作构建块来指定软件。尽管Net方法最初是为软件组件设计的,但人们发现它特别适合于指定具有许多并行进程并要求许多活动同步的系统。Net方法的图形编辑器已经实现,Net模拟包正在开发中。通过软件的可重用性来降低软件生产的成本一直是软件生产商的一个目标。随着许多不同的范例被用于可重用软件组件的生产,可重用性工作已经取得了长足的进展[1,6,8,10]。然而,“批量生产的软件组件”的概念仍然有很长的路要走,因为在其他问题中,软件组件的功能规范问题仍然很突出。2.我!本文只处理可重用软件组件功能的功能规范问题,而不考虑用于其开发的模型。然而,为了清晰和方便给出示例,我们希望保留Ada包的范例,并将软件组件称为逻辑软件单元(Logical software unit, lsu)。本文假设lsu将以标准化的认证形式提供现货,并在给定的功能中具有自定义能力。3.可重用软件规范方法的开发&t@cation方法可以分为两大类:(a)那些以数学形式化为基础并使用某种代数符号的方法。(b)具有图形符号的,无论是否具有数学基础,均允许免费复制全部或部分本材料,前提是这些副本不是为了直接商业利益而制作或分发的,必须出现ACM版权声明、出版物名称和出版日期,并注明复制是由计算机协会许可的。以其他方式复制或重新发布,需要付费和/或特别许可。我们希望开发一种属于第二类的规范方法,因为我们希望遵循西尔斯目录的范例,为用户提供关于大量lsu的分层排列的信息,我们希望这些信息将在未来的某个日期在市场上可用。LSU目录将在高抽象层次上对LSU进行图形功能描述(就像Sears目录中的轮胎图片),然后是一个或多个级别的详细描述,就像轮胎规格(除了价格和尺寸)从轮胎图片中删除一样。现有的图形化说明方法[4,5.9,1 1]存在以下一个或多个缺点:(a)它们要么倾向于在架构级别的细节表示,要么倾向于在编码级别表示细节,而没有能力在所有抽象级别指定交互。(h)它们不区分主动选择和被动选择,从而掩盖了作出决定的活动参与者的身份。“主动选择”是由活动参与者做出的决定;作为主动选择的结果,默认情况下会为活动的其他参与者做出“被动选择”。(c)它们不区分依次进行的活动和那些独立的、可以并行进行,但由于资源的限制而往往依次进行的活动。我们开发的技术规范方法解决了这些问题,这在很大程度上要归功于Holt和Commoner[2,3]的工作,而后者又以Petri[7]的工作为基础。3.1规范M&Q的要素。规范图的元素是:实体、活动和连接器(图1)。实体参与系统活动,这两个元素之间的关系由定向连接器表示。这些构成了系统空间、时间和选择三个维度的有向图。1 .实体活动生命线co~ector活动连接器选择连接器(沿时间轴)(沿空间轴)(沿选择轴)图1规范方法的要素3.2五个基本要素与规范方法使用规范方法的要素,已经开发了规范方法的五个基本要素。仅需要将这五种基本表示以不同的方式组合在一起,就可以表示lsu的功能规范。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信