[发明专利]一种基于时态的对象依赖关系发现方法和系统有效
申请号: | 201710124891.5 | 申请日: | 2017-03-03 |
公开(公告)号: | CN106970788B | 公开(公告)日: | 2018-08-07 |
发明(设计)人: | 史红权;赵晓哲;张俊;陈行军 | 申请(专利权)人: | 中国人民解放军海军大连舰艇学院 |
主分类号: | G06F8/70 | 分类号: | G06F8/70;G06F8/71 |
代理公司: | 深圳市博太联众专利代理事务所(特殊普通合伙) 44354 | 代理人: | 任转英 |
地址: | 116000 *** | 国省代码: | 辽宁;21 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 时态 对象 依赖 关系 发现 方法 系统 | ||
本申请涉及一种基于时态的软件配置管理对象依赖关系发现系统和方法。将包括以下至少一种的、随时间变化的——软件需求、设计、模型、构件、参数、软件产品、开发单位、开发人员的软件开发要素定义为时态实体。建立与时态实体和时态实体联系对应的表、视图、存储过程等数据库模式,以上数据库模式至少包括时间属性字段、时态实体内部依赖字段、时态实体外部依赖字段。访问以上所有数据库模式,建立多层时态依赖图MTDG(Multilayer Temporal Dependency Graph),根据以上多层时态依赖图,获得所需的关于时态实体内部和外部的依赖性分析。本申请有助于软件配置管理中及时发现软件系统中某部分变更后(版本升级、版本变化)对其它模块或整个软件系统的影响,降低软件开发和维护的成本,提高软件配置的效率。
技术领域
本发明涉及软件工程和数据库技术,特别涉及一种在软件配置和管理中发现软件对象基于时态的依赖关系的技术。
背景技术
建模软件需求、设计、模型、构件、参数和软件产品等软件开发要素及其之间的复杂联系,建立集成统一的数据模型,是软件开发支撑平台的基础,也是核心工作。图1显示了现有技术中集成统一数据模型的软件开发平台框架示意图。但是以上存在不能将时态技术应用到软件开发平台中的弊端。
本发明提出从时间维度出发,综合利用时态图技术和时态数据库技术,研究软件开发诸要素及其复杂联系的时态建模方法,设计集成统一的时态数据模型和存储模型,该模型包括软件需求(Requirement)库、设计(Design)库、模型(Model)库、构件(Component)库、参数(Parameter)库、软件产品(Software Product)库和时态实体联系数据图(Temporal Entity-Relationship Data Graph);在此基础上,研究时态数据维护、检索和分析技术,可以为新的软件开发支撑平台开发提供基础性的支持。图2显示以时态实体联系数据图为核心的集成统一数据模型,这是本发明思想的基础。
软件需求、设计、模型、构件、参数和软件产品等实体对象都具有不同的版本,每个版本具有相应的发布时间、使用时间和停用时间。具有时态属性,并且其状态随时间变化的实体,称为时态实体。图3描述了A实体(例如构件)和B实体(例如软件)的4种版本时态联系,其中At0,At1,At2,At3,At4,At5….由虚箭头线相连随时间发展演化成A实体的各个版本对象,B实体也有类似随时间演化的版本序列,每个时刻版本对象上的时态标签为该对象的有效时间“[发布时间,停用时间)”,边上的标签表示两个版本对象建立联系的有效时间“[开始时间,结束时间)”;图3表示At0版本“使用”Bt0版本;图3表示A实体由At1版本升级为At2版本,Bt1版本不变;图3表示At3版本不变,Bt3版本升级为Bt4版本;图3表示At3升级为At5版本,Bt4版本升级为Bt5版本。上述A和B两类时态实体之间的四种时态联系,实际上为两类时态联系:A版本变化,B版本同步变化;A版本变化,B版本不变化。
图3表明,软件开发中的软件需求、设计、模型、构件、参数和软件等时态实体本身不仅存在随时间演化的版本联系,时态实体之间存在复杂的时态联系。因此,结合时态扩展实体联系E-R模型和时态图(Temporal Graph)模型,研究软件开发要素的时态建模方法,构建软件开发要素的概念模型,构建时态实体联系图,可以描述上述六类实体之间的动态时态联系。
依赖关系,是软件实体间最主要的一种关系,尤其是在软件开发过程中,软件实体类之间的依赖关系以及实体类内部之间的依赖关系,对软件的变更影响分析以及风险分析等都具有非常大的影响。然而,目前对于依赖关系的研究工作大多集中于代码级的研究。
软件开发过程中,一共有六个主要的实体,即需求、设计、模型、构件、软件以及支持数据,这六个实体间存在大量的依赖关系,同样的,实体内部也包含多种依赖关系。
在软件系统中,某一部分发生变更之后,其代码的变更可能会发生在许多不同的模块中,甚至于,波及到整个系统,这就是变更的连锁反应(Chain Reaction),而这种连锁反应就是由实体间的依赖关系引起的。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国人民解放军海军大连舰艇学院,未经中国人民解放军海军大连舰艇学院许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710124891.5/2.html,转载请声明来源钻瓜专利网。