本发明专利技术公开了一种基于软件元视图构造软件视图的可视软件建模方法,在确定软件元视图基础组元后通过以软件层级视图、软件接口视图、软件交互视图、软件算法视图、软件流程视图、软件传输视图为步骤要素构造软件视图,为各种领域软件建模活动提供具有运算性、通用性、易用性优点的可视软件建模规范:本发明专利技术构造的软件视图结构清晰,层次可调,建模粒度可控,具有可被运算的充分一致性;方法统一,既方便自顶向下分析设计,也方便自底向上实现集成,适用于各种软件建模;建模方法简单,完全可视化建模,即使不熟悉建模语言和计算机程序语言的普通领域人员,也能独立轻松构造软件视图,免除了对专业建模人员或程序开发人员的依赖和沟通,建模时间大大缩短。
【技术实现步骤摘要】
一种基于软件元视图构造软件视图的可视软件建模方法
本专利技术涉及软件工程
,具体是一种基于软件元视图构造软件视图的可视软件建模方法和计算机程序产品。
技术介绍
在信息技术高度发达的今天,软件对人类的生活和发展起着越来越重要的作用。软件方法在经历了面向函数、面向过程等发展阶段之后,面向对象的软件方法已经相当成熟,并成为当前的主流软件方法。随着软件系统越来越复杂,面向对象的方法暴露出越来越多的不足,模型驱动方法成为人们追求的理想软件设计方法。模型驱动的软件方法的核心思想是:开发者专注于构造软件模型,将知识表达为软件模型,软件模型转化为计算机可运行的程序的代码工作交给计算机自动完成。模型驱动的理念虽然早就提出,最近二十年的努力之下,模型驱动方法在业界还基本上存在于理念和口号与探索层面,实际应用还是采用面向对象方法。模型驱动发展缓慢的根本原因是缺乏一个能够支持简单有效地构造软件模型的方法。其实,不管是那种软件方法,软件建模都是软件开发的核心活动。在软件建模的实践活动符中,以图形方式描述软件模型的软件视图,因为其直观性,成为人们首选的方式。这些描述软件模型的视图称为软件视图。通过对这些软件视图进行抽象,可以得到这些软件视图都遵循的基础视图,称为软件元视图。软件元视图是关于软件视图的视图,是软件视图的抽象,提供一套构造严谨的软件视图所需要的构件元素和规则的一个精确定义。软件元视图用作以可视化方式进行软件建模的规范,自然对于软件视图的质量和软件建模的效率具有决定性的作用。因此,人们一直关注于软件元视图的研究。OMG提出的MOF是关于软件建模的系统研究,被业界广泛认同。MOF包含一套四层视图描述机制,其中的M1层即为软件元视图。UML(统一建模语言,UnifiedModelingLanguage)属于M1层,是当前主流的面向对象可视化建模语言工业标准。UML虽然明确地声明不是一种方法论,不提供任何软件建模方法,只是一种描述建模方法的图形式描述语言,但实际上很大程度上被人们当成软件元视图来使用。遗憾的是,UML存在如下的缺陷:第一,非运算性:UML由于缺乏严谨的理论支撑,利用UML构造的软件视图缺乏可运算性,即采用UML描述的视图缺乏采用自动代码生成技术转换成可以运行软件的充分和一致性信息,要获得可以由计算机运行的软件必须最终由人工通过代码的形式进行编辑;这个缺陷也使得UML只能成为一种软件分析的辅助性表示工具,而不能成为真正的构造具有可运算性软件视图的软件元视图;第二,代码导向:虽然UML声称是独立于具体语言和平台的视图描述语言,但本质上UML基本上是面向程序员采用面向对象的编程语言进行程序分析和设计的表达工具。这种面向程序员的代码导向特点,使得“重实现、轻业务”成为软件开发的行业痼疾。第三,难以使用:UML创造了的概念、大量的关系和大量的图。这些概念、关系、图之间的关系又多又松散。UML本意是面向程序人员所设计,其复杂和混乱不仅专业软件人员很难掌握,更使得普通领域人员与UML完全绝缘。基于预制构件进行图形式装配的可视软件建模方法,广泛地应用于各种领域的软件建模。科学工程领域广泛使用的可视软件建模工具Simlink就是采用这种方法的一个典型代表。这种基于预制件装配的可视软件建模方法有两大基本缺陷:第一,必须基于预制构件进行装配,软件视图的构造严重受制于预制构件;预制构件的接口是固定的,由于不支持任意接口的构件集成,这类可视化软件建模方法通常被应用于基于领域构件库进行特定的领域建模,从而并不适合于通用性的软件建模;第二,构件的装配和运行原则也很简易,基于上是由数据的传递关系决定构件的工作协同关系,同时,随着构件的增多,数据传递的复杂性使得视图可读性急剧变差,因此,这种方法虽然声称是进行软件建模,但实际上只适用于描述相对简单的算法,无法描述大型复杂的软件;近年来,面向某些特定领域的快速开发平台流行起来,部分这类平台已经实现了无须代码,全部采用图形的方式构造软件。这类快速平台所依赖的软件构造原理是引擎模式:所谓引擎模式是指通过报表设计器设计出报表模板,发布到报表引擎中,在运行时,只需要向报表引擎里传递相关的参数,如报表条件,报表引擎负责查询数据库,加工数据,然后以各种方式展现出来。开发者不需要编码,只需通过WEB页面进行参数定制即可,这些参数存放在系统数据库或XML文件中。系统运行时,引擎会调用这些参数进行页面展现及业务处理。这类开发平台的通常只具有一个适用于如协同管理这类相对固定的业务内容和以数据为中心的体系架构的可视装配方法,而并无一个明确的软件元视图。总的看来,尽管模型驱动方法用作一种理想的软件开发方法得到普遍的认同,但是目前还缺乏一种容易被普通领域人员理解和掌握的软件元视图,提供通用性的可视化软件建模规范,支持各种领域的软件建模活动,特别是复杂软件系统的可视化建模,以构造具有可运算性的软件视图,以便通过自动代码生成技术将软件视图自动转换成计算机可以运行的软件,使模型驱动软件方法落到实处。
技术实现思路
鉴于现有技术的以上缺点,本专利技术的目的是提供一种基于软件元视图构造软件视图的可视软件建模方法,在确定软件元视图基础组元后通过软件层级视图、软件接口视图、软件交互视图、软件算法视图、软件流程视图、软件传输视图为步骤要素构成的软件视图完成构造;采用跨领域的基础性图件,构造各种特定领域的软件视图;为各种领域建模活动提供一种容易被普通领域人员理解和掌握的通用性软件建模规范。本专利技术的目的是通过如下的手段实现的。一种基于软件元视图构造软件视图的可视软件建模方法,计算机可读程序代码包含一组可以被计算机的处理器所执行的指令,通过对一个软件元视图定义的用作描述软件视图的数据进行处理来构造软件视图,所述软件视图是软件模型的可视表示,所述软件元视图是软件元模型的可视表示,其所用的软件元视图包含如下组元:软件层级图件:以由软件构件类型符为节点的树形结构表示视图的软件层级视图在实际软件建模环境中用作模板配置形成软件视图的软件层级视图;所述软件层级视图是指软件层级模型的可视表示;所述软件构件类型符是指软件构件类型的可视表示;所述由软件构件类型符为节点的树形结构称为软件层级树;软件接口图件:以属性符集、功能符集、事件符集三部分结构表示软件接口视图在实际软件建模环境中用作模板配置形成软件接口视图;所述软件接口视图是指软件接口模型的可视表示;所述功能符集中的功能符包括软件交互功能符、软件算法功能符、软件流程功能符三种形式;软件交互功能符的功能实现方式由软件交互视图提供;软件算法功能符的功能实现方式由软件算法视图提供;软件流程功能符的供实现方式由软件流程视图与软件传输视图相组合提供;软件交互图件:以交互符为节点的树形结构表示软件交互视图在实际建模环境中用作模板配置形成软件交互视图;所述软件交互视图是指软件交互模型的可视表示;所述交互符是指具有与实际软件建模环境进行信息交互功能的交互元的可视表示;软件算法图件:以算符为节点的树形结构表示软件算法视图在实际软件建模环境中用作模板配置形成软件算法视图,所述软件算法视图是指软件算法模型的可视表示;所述算符是指算元的可视表示;软件流程图件:以活动符为节点进行组合表示软件流程视图在实际软件建模环境中用作模本文档来自技高网...
【技术保护点】
一种基于软件元视图构造软件视图的可视软件建模方法,基于一个含有计算机可读程序代码的计算机可读存储介质,所述计算机可读程序代码包含一组可以被计算机的处理器所执行的指令,通过对一个软件元视图定义的用作描述软件视图的数据进行处理来构造软件视图,所述软件视图是软件模型的可视表示,所述软件元视图是软件元模型的可视表示,其所用的软件元视图包含如下组元:软件层级图件:以由软件构件类型符为节点的树形结构表示视图的软件层级视图,并在实际软件建模环境中用作模板配置形成软件视图的软件层级视图;所述软件层级视图是指软件层级模型的可视表示;所述软件构件类型符是指软件构件类型的可视表示;所述由软件构件类型符为节点的树形结构称为软件层级树;软件接口图件:以属性符集、功能符集、事件符集三部分结构表示软件接口视图,并在实际软件建模环境中用作模板配置形成软件接口视图;所述软件接口视图是指软件接口模型的可视表示;所述功能符集中的功能符包括软件交互功能符、软件算法功能符、软件流程功能符三种形式;软件交互功能符的功能实现方式由软件交互视图提供;软件算法功能符的功能实现方式由软件算法视图提供;软件流程功能符的供实现方式由软件流程视图与软件传输视图相组合提供;软件交互图件:以交互符为节点的树形结构表示软件交互视图,并在实际建模环境中用作模板配置形成软件交互视图;所述软件交互视图是指软件交互模型的可视表示;所述交互符是指具有与实际软件建模环境进行信息交互功能的交互元的可视表示;软件算法图件:以算符为节点的树形结构表示软件算法视图,并在实际软件建模环境中用作模板配置形成软件算法视图,所述软件算法视图是指软件算法模型的可视表示;所述算符是指算元的可视表示;软件流程图件:以活动符为节点进行组合表示软件流程视图,并在实际软件建模环境中用作模板配置形成软件流程视图;所述软件流程视图是指软件流程模型的可视表示;所述活动符是指活动的可视表示;软件传输图件:采用包括输入传输符集、输出传输符集的两部分结构表示软件传输视图,并在实际软件建模环境中用作模板配置形成软件传输视图;所述软件传输视图是指软件传输模型的可视表示;所述传输符是指传输的可视表示;采用上述六个组元构造软件视图的具体步骤如下:1)构造软件层级视图:软件层级图件读入从实际软件建模环境送来的软件层级视图操作信息,所述软件层级视图操作信息是指如新建软件构件类型符、添加软件构件类型符、选择软件构件类型符、命名软件构件类型符、删除软件构件类型符的操作信息,软件层级图件响应软件层级视图操作信息对软件层级树的软件构件类型符节点进行相应操作而获得软件层级视图;2)构造软件接口视图:对步骤1)得到的软件层级视图中的软件构件类型符逐一构造软件接口视图,各软件接口视图的构造步骤包括:软件接口图件读入从实际软件建模环境送来的软件接口视图操作信息;所述软件接口视图操作信息是指对属性符、功能符、事件符进行如新建、命名、删除的操作信息,软件接口图件响应软件接口视图操作信息进行相应操作而获得软件接口视图;软件交互功能符对应的软件交互视图由步骤3)构造,软件算法功能符对应的软件算法视图由步骤4)构造,软件流程功能符对应的软件流程视图由步骤5)构造;3)构造软件交互视图:对步骤2)中得到的软件交互功能符逐一构造软件交互视图,各软件交互视图的构造步骤包括:软件交互图件读入从实际软件建模环境送来的软件交互视图操作信息;4)构造软件算法视图:对步骤2)中得到的软件算法功能符逐一构造软件算法视图,各软件算法视图的构造步骤包括:软件算法图件读入从实际软件建模环境送来的软件算法视图操作信息;5)构造软件流程视图:对步骤2)中得到的软件流程功能符逐一构造软件流程视图,各软件流程视图的构造步骤包括:软件流程图件读入从实际软件建模环境送来的软件流程视图操作信息;6)构造软件传输视图:对步骤5)中得到的软件流程视图中的活动符逐一构造软件传输视图,各软件传输视图的构造步骤包括:软件传输图件读入从实际软件建模环境送来的软件传输视图操作信息;所述软件传输视图操作信息是指如添加传输符、选择传输符、删除传输符的操作信息,软件传输图件响应软件传输视图操作信息进行相应操作而获得软件传输视图;至此,由软件层级视图、软件接口视图、软件交互视图、软件算法视图、软件流程视图、软件传输视图为要素所构成的软件视图构造完成。...
【技术特征摘要】
1.一种基于软件元视图构造软件视图的可视软件建模方法,计算机可读程序代码包含一组可以被计算机的处理器所执行的指令,通过对一个软件元视图定义的用作描述软件视图的数据进行处理来构造软件视图,所述软件视图是软件模型的可视表示,所述软件元视图是软件元模型的可视表示,其所用的软件元视图包含如下组元:软件层级图件:以由软件构件类型符为节点的树形结构表示视图的软件层级视图在实际软件建模环境中用作模板配置形成软件视图的软件层级视图;所述软件层级视图是指软件层级模型的可视表示;所述软件构件类型符是指软件构件类型的可视表示;所述由软件构件类型符为节点的树形结构称为软件层级树;软件接口图件:以属性符集、功能符集、事件符集三部分结构表示软件接口视图在实际软件建模环境中用作模板配置形成软件接口视图;所述软件接口视图是指软件接口模型的可视表示;所述功能符集中的功能符包括软件交互功能符、软件算法功能符、软件流程功能符三种形式;软件交互功能符的功能实现方式由软件交互视图提供;软件算法功能符的功能实现方式由软件算法视图提供;软件流程功能符的功能实现方式由软件流程视图与软件传输视图相组合提供;软件交互图件:以交互符为节点的树形结构表示软件交互视图在实际建模环境中用作模板配置形成软件交互视图;所述软件交互视图是指软件交互模型的可视表示;所述交互符是指具有与实际软件建模环境进行信息交互功能的交互元的可视表示;软件算法图件:以算符为节点的树形结构表示软件算法视图在实际软件建模环境中用作模板配置形成软件算法视图,所述软件算法视图是指软件算法模型的可视表示;所述算符是指算元的可视表示;软件流程图件:以活动符为节点进行组合表示软件流程视图在实际软件建模环境中用作模板配置形成软件流程视图;所述软件流程视图是指软件流程模型的可视表示;所述活动符是指活动的可视表示;软件传输图件:采用包括输入传输符集、输出传输符集的两部分结构表示软件传输视图在实际软件建模环境中用作模板配置形成软件传输视图;所述软件传输视图是指软件传输模型的可视表示;传输符是指传输的可视表示;采用上述六个组元构造软件视图的具体步骤如下:1).构造软件层级视图:软件层级图件读入从实际软件建模环境送来的软件层级视图操作信息,所述软件层级视图操作信息是指新建软件构件类型符、添加软件构件类型符、选择软件构件类型符、命名软件构件类型符、删除软件构件类型符的操作信息,软件层级图件响应软件层级视图操作信息对软件层级树的软件构件类型符节点进行相应操作而获得软件层级视图;2).构造软件接口视图:对步骤1)得到的软件层级视图中的软件构件类型符逐一构造软件接口视图,各软件接口视图的构造步骤包括:软件接口图件读入从实际软件建模环境送来的软件接口视图操作信息;所述软件接口视图操作信息是指对属性符、功能符、事件符进行新建、命名、删除的操作信息,软件接口图件响应软件接口视图操作信息进行相应操作而获得软件接口视图;软件交互功能符对应的软件交互视图由步骤3)构造,软件算法功能符对应的软件算法视图由步骤4)构造,软件流程功能符对应的软件流程视图由步骤5)构造;3).构造软件交互视图:对步骤2)中提到的软件交互功能符逐一构造软件交互视图,各软件交互视图的构造步骤包括:软件交互图件读入从实际软件建模环境送来的软件交互视图操作信息;4).构造软件算法视图:对步骤2)中提到的软件算法功能符逐一构造软件算法视图,各软件算法视图的构造步骤包括:软件算法图件读入从实际软件建模环境送来的软件算法视图操作信息;5).构造软件流程视图:对步骤2)中提到的软件流程功能符逐一构造软件流程视图,各软件流程视图的构造步骤包括:软件流程图件读入从实际软件建模环境送来的软件流程视图操作信息;6).构造软件传输视图:对步骤5)中得到的软件流程视图中的活动符逐一构造软件传输视图,各软件传输视图的构造步骤包括:软件传输图件读入从实际软件建模环境送来的软件传输视图操作信息;所述软件传输视图操作信息是指添加传输符、选择传输符、删除传输符的操作信息,软件传输图件响应软件传输视图操作信息进行相应操作而获得软件传输视图;至此,由软件层级视图、软件接口视图、软件交互视图、软件算法视图、软件流程...
【专利技术属性】
技术研发人员:符长明,龙春生,唐鸿,
申请(专利权)人:成都普中软件有限公司,
类型:发明
国别省市:四川;51
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。