【delphi开源代码栏目提醒】:网学会员,鉴于大家对delphi开源代码十分关注,论文会员在此为大家搜集整理了“状态机 状态机 嵌套 uml工具 - 互联网”一文,供大家参考学习!
状态机 状态机 嵌套 uml工具 2011-06-18 状态机_状态机嵌套uml工具状态机_状态机嵌套uml工具 UML建模软件目前用的主要有3种 商业版本Telelogic TAU和Rational Rose 开源版本StarUML Telelogic TAU与Rational Rose的功能很强但是需要买License。
StarUML就是希望能提供和TAU/Rose一样功能的开源版本。
目前使用起来还是不错的。
能熟练使用其中一个是软件设计人员的基本功。
1先看Telelogic TAU telelogic tau Telelogic Tau SDL Suite主要用于协议的设计、描述、验证及实现支持图形化的SDL编辑、在线仿真和验证、代码自动生成、MSC消息顺序图编辑及测试用例test case自动生成等。
SDL Suite由以下几部分组成 SDL Editor SDL编辑器支持图形化的SDL编辑同时提供一个在线检查的分析器可以立即标出编辑中的静态语法和语义错误。
SDL Simulator SDL仿真器支持在开发环境下进行SDL系统的仿真运行仿真结果可自动生成MSC。
仿真器还可以自动穷举搜索SDL系统的所有路径保证系统的每一个状态都是可达的。
SDL Validator SDL验证器结合MSC验证系统行为是否与需求描述一致。
SDL Translator代码自动生成器支持三种代码生成第一种是无限制的C代码生成器支持一般的C和C代码生成第二种是优化的C代码生成器支持小型嵌入式系统的优化代码生成能满足这种系统对代码效率、最小内存和高性能的要求第三种是CHILL代码生成器。
由于在仿真和验证阶段使用的代码与最后生成的代码是相同的这就保证了测试系统与实际运行系统的一致。
MSC Editor MSC编辑器支持图形化的MSC编辑。
SDL Suite还支持与实际目标环境的集成。
它包含一个运行库提供SDL系统与环境打交道的源代码支持多种操作系统开发者可以在单任务、多任务和分布式系统之间进行选择。
自动生成的代码加上指定操作系统的运行库源代码经过合适的C编译器编译连接即可在实际环境中运行。
Telelogic Tau TTCN Suite可以作为通信协议的测试集生成工具支持协议一致性测试。
TTCN Suite提供给测试工程师强大的TTCN编辑器、句法分析器和编译器可将测试方案转化为C代码在测试设备上运行。
Telelogic Tau还提供了从SDL系统设计和MSC直接生成TTCN测试集的功能。
Telelogic Tau3.0是Telelogic的支持uml2.0的建模工具同时提供了模型验证Model Verifier代码生成code generator。
这是个欧洲公司据说已经有14年的业内经验了。
那个时候uml的版本还是负的2.0吧。
1.Uml建模 比较容易使用。
最重要的是它对模型的要求比较严格。
比如序列图中的对象或者消息必须是已经定义的。
否则会出错的。
这样严格应该是为了代码生成和模型验证吧。
Tau3.0有一种特殊的图叫做text图一般来说是一个类的方法的实现。
在text图里面有一个action symbol就是一个类似输入框的东西在里面可以写代码。
但是代码不是要用tau的语言来写的不是c也不是java。
在状态机图中也可以画action symbol。
另外。
还有一个图形元素叫做text symbol也可以写代码。
为了及早检查出错误tau有自动和手动check功能。
跟ide里类似比如函数名没定义变量没定义等等。
手动检查可以在要检查的元素上按右键选择或者使用快捷键f8。
好像没有timing图支持。
2.模型验证 这个应该是很多工具不具备的。
就是在uml模型上执行。
要想进行模型验证和代码生成至少需要类图和状态机图。
序列图活动图和用例图不被使用其他图根据需要有可能被使用。
需要的图和代码生成一样。
说是验证实际上就是把模型生成可执行代码执行。
在uml模型上能看到执行的过程等。
基本的debug机能都有step instep out等还有break point代码覆盖率统计的。
比较不错第一次看到时惊奇了一把。
3.代码生成 能生成ccjava代码。
并且能编译成可执行文件。
还能生成telelogic的面向嵌入式系统的agile c。
这次我做的是生成agile c和c代码。
基本上生成的代码不可读不可调试里面很多宏定义在uml建模时候的变量名生成之后也变得乱七八糟的了。
我们设计主要集中在业务领域通过signal和外部联系。
当然内部也有signal通信了。
主函数是uml kernel提供的不停的去检测外部环境进来的signal。
默认的性能比较差什么都不干cpu就在95以上。
4.其他 其它也提供了一些不错的东西比如TestingProfile启用了这个插件就能建立各种test case了。
而且test case是基于序列图和状态图的基本也不用编码只需要画图。
一组test case建立在test context之中这个context执行后会生成一个xml格式的报告。
2下面看看Rational Rose Rational Rose是Rational公司出品的一种面向对象的统一建模语言的可视化建模工具。
用于可视化建模和公司级水平软件应用的组件构造。
就像一个戏剧导演设计一个剧本一样一个软件设计师使用Rational Rose以演员数字、使用拖放式符号的程序表中的有用的案例元素椭圆、目标矩形和消息/关系箭头设计个种类来创造模型一个应用的框架。
当程序表被创建时Rational Rose记录下这个程序表然后以设计师选择的CVisual BasicJavaOracle8CORBA或者数据定义语言Data Definition Language来产生代码。
Rational Rose的两个受欢迎的特征是它的提供反复式发展和来回旅程工程的能力。
Rational Rose允许设计师利用反复发展有时也叫进化式发展因为在各个进程中新的应用能够被创建通过把一个反复的输出变成下一个反复的输入。
这和瀑布式发展形成对比在瀑布式发展中在一个用户开始尝试之前整个工程被从头到尾的完成。
然后当开发者开始理解组件之间是如何相互作用和在设计中进行调整时Rational Rose能够通过回溯和更新模型的其余部分来保证代码的一致性从而展现出被称为quot来回旅程工程quot的能力Rational Rose是可扩展的可以使用刻下载附加项和第三方应用软件它支持COM/DCOMActiveXJavaBeans和Corba组件标准. 当前市场上基于UML可视化建模的工具很多例如有Microsoft的Visio2002Oracle的Designer2000还有PlayCase、CA BPWin、CA ERWin、Sybase PowerDesigner等等。
为什么要选择Rational Rose呢这就不能不提到UML的三位创始人了面向对象领域的大师级人物Booch、Rumbaugh和Jacobson。
而这三位大师目前都在Rational公司担任首席工程师既然UML是业界标准的可视化建模语言那么选择Rational Rose的原因就不言而喻了。
而且Rose与Rational其他一系列的软件工程方面的产品的紧密集成使得Rose的可用性和扩展性更好。
需求构架分析/设计建造编码测试 需求管理-收集、管理及传达变更的软件需求和系统需求。
Rational RequisitePro可视化建模-生成一个反映软件应用程序、其构件、接口和之间关系的图形化的设计图便于理解和交流。
Rational Rose、Rational Rose RealTime编程环境-Rational Apex、Rational Summit/TM、Rational TestMate、 Rational Ada Analyzer软件质量和测试自动化-提供集成化编程和测试工具来简化构件的创建并代替昂贵、冗长且容易出错的手工测试从而在较短的时间内、在风险已降低的情况下生成更高质量的应用程序。
Rational Suite TestStudio、Rational Suite PerformanceStudio 配置管理 软件配置与变更管理-在创建、修改、构建和交付软件的过程中控制团队的日常开发。
Rational ClearCase、Rational ClearCase MultiSite、Rational ClearQuest、Rational ClearDDTS 软件
上一篇:
Scilab与Matlab在数据拟合方面的性能比较
下一篇:
科研管理杂志简介