当前位置: 首页 > 编程日记 > 正文

Enterprise Architect 7 入门教程 1

一.  简介
生命周期软件设计方案——Enterprise Architect是以目标为导向的软件系统。它覆盖了系统开发的整个周期,除了开发类模型之外,还包括事务进程分析,使用案例需求,动态模型,组件和布局,系统管理,非功能需求,用户界面设计,测试和维护等。
为整个团队提供高级的UML 2.0建模工具。
EA为用户提供一个高性能、直观的工作界面,联合UML 2.0最新规范,为桌面电脑工作人员、开发和应用团队打造先进的软件建模方案。该产品不仅特性丰富,而且性价比极高,可以用来配备您的整个工作团队,包括分析人员、测试人员、项目经理、品质控制和部署人员等。
丰富系统设计
Enterprise Architect是一个完全的UML分析和设计工具,它能完成从需求收集经步骤分析、模型设计到测试和维护的整个软件开发过程。它基于多用户Windows平台的图形工具可以帮助您设计健全可维护的软件。除此,它还包含特性灵活的高品质文档输出。用户指南可以在线获取。

快速、稳定、高性能
统一建模语言能够以一致方式构建强健和可跟踪的软件系统模型,而EA为该构建过程提供了一个易于使用和快速灵活的工作环境。
端到端跟踪
Enterprise Architect提供了从需求分析、软件设计一直到执行和部署整个过程的全面可跟踪性。结合内置的任务和资源分配,项目管理人员和QA团队能够及时获取他们需要的信息,以便使项目按计划进行。
在UML 2.0上构建
通过UML(统一建模语言),您可以构建严格的可追踪的软件系统模型。EA为UML构建软件模型提供了一个快速便捷的应用环境,它支持OMG定义的新UML2.0标准。
Enterprise Architect的基础构建于UML 2.0规范之上,不仅如此,使用UML Profile还可以扩展建模范围,与此同时,模型验证将确保其完整性。产品含有免费的extensions for BPMN 和 Eriksson-Penker profile,能够将业务程序、信息和工作流程联合到一个模型内。
利用EA,设计人员可以充分利用13 UML 2.0图表的功能——EA支持全部13种 UML 2.0图表和相关的图表元素;
包括:
结构图表:类、对象、合成元素、包、组件、布局;
行为图表:使用案例、通信、序列、交互概述、行为、状态、时序;
扩展:分析(简单行为)、定制(需求、变动和UI设计)。
EA提供使用工具,能够跟踪依赖关系、支持大型模型,帮助您管理大型复杂的工程;含有CVS或SCC提供工具,以时间快照为基线,通过比较来跟踪模型变动,从而实现版本控制;含有类似explorer的项目视窗,为您提供直观高性能的工作界面。
    EA还含有一个所见即所得形式的模板编辑器,提供强大的文档生成和报告工具,能够生成复杂详细的报告,报告可以按照公司或客户要求的格式提供所需信息。
EA具备源代码的前向和反向工程能力,支持多种通用语言,包括C++, C#, Java, Delphi, VB.Net, Visual Basic和PHP,除此,还可以获取免费的CORBA和Python附加组件。EA提供一个内置的源代码编辑器,含语法突出功能,确保能够在一致的工作环境中快速导航和查找您的模型源代码。对于Eclipse或Visual Studio.Net工作人员,Sparx Systems还提供到这些IDE的轻量链接工具,您可以在EA中进行建模,而后直接跳转到自己偏爱的编辑器中进行源代码的进一步开发。代码生成模板还允许您对生成的源代码进行定制,使之同公司规范相符。
EA还提供对大多数软件开发语言和数据库架构的逆向工程支持,令您的应用程序可视化,从源代码、Java.jar文件甚至是.Net二进制汇编语言中获取完整框架。通过导入框架和库代码,实现对您已有投资重复利用的最大化。
EA还提供变换模板,编辑和开发均非常简单,支持先进的模型驱动结构体系(MDA)。通过内置的DDL, C#, Java, EJB 和 XSD变换,您可以从简单的“平台独立模型”开始来构建复杂的解决方案,并定位于“平台专门模型”(PSM)。一个PIM可以用来生成并同步多个PSM,使工作效率得到显著提高。

主要特性
UML设计和构建;
使用案例,逻辑,动态和物理模型;
定制进程模型的扩展或其他;
高品质的MS Word 兼容文档;
应用直观方便;
低许可费;
数据建模,前向DDL数据库工程,反向ODBC数据库工程;
多用户(Professional 和 Corporate Edition);
前向或逆向代码工 程(Professional 和 Corporate Edition)——支持Java, C#, C++, VB.Net, Delphi, Visual Basic 和 PHP;
XML导入/导出容易;
拼写检查;

产品新增特性

RTF所见即所得模板编辑器和报告生成器——EA 增强了其企业版和专业版中RTF文档生成功能,采用一个模板驱动方式生成RTF文档,允许用户在模型的元素层面上对其文档的外观、内容等进行定制。
l         版本控制改进——对版本控件作了明显改进,支持对嵌套软件包的控制,这样,在导入基版本控制软件包时,就不会再覆盖嵌套软件包了。大型文件加载时间显著缩短,同时对AccuRev和Perforce的支持也得到改进。
l         基线支持——企业版提供新的基线函数,在当前模型中,允许用户将一个完整的软件包分支保存为一个压缩的XMI文件。通过该基线函数,用户可以对当前软件包和存储的基线软件包进行比较。
l         MDA风格转换——EA专业版和企业版中提供MDA风格转换功能。MDA转换通过一个模板驱动方法将PIM(平台独立模型)元素转换为PSM(平台相关模型)元素。
比较工具(Diff)——专业版和企业版提供该功能,允许用户对模型结构体系和保存的XMI进行对照比较。包括以下比较内容:基线函数创建的基线、保存在硬盘上的EA XMI文件、由EA XMI控制的版本。
l         导入二进制模块——EA专业版和企业版允许对Java Archive (.jar), . NET PE Files* (.exe, .dll)和Intermediate Language (.il)二进制模块进行反向工程。
l         构建和运行——EA Professional 和 Corporate版本支持该功能,为开发人员提供集成工具,将UML开发和建模同源代码开发和编译相集成。能够使用MDA变换从源类中生成nUnit和jUnit测试类,并将测试过程直接集成到EA IDE中,如今还可以将UML和建模集成到构建/测试/运行/部署程序中。
l         MOF——在MOF 1.3和1.4标准下,允许向XMI导出包。向包中分配固定类型的元模型,可以创建MOF模型。MOF模型还可以输出为MOF 1.3或1.4 XMI文件规范。
l         工程商讨论坛——确保整个团队始终处于最新状态。使用商讨论坛可以讨论您工程的开发和进度,同时为了讨论方便,还可以将工程内容进行分类,并制定标题。用户可以针对某个标题发出消息线程或响应消息线程。在论坛消息板中,您可以链接到图表的不同元素。在当前模型下还可以使用其他模型的商讨论坛。
l         Web服务——支持对W3C Web服务定义语言(WSDL)的前向和反向工程。支持对WSDL文件的建模、生成、输入操作。
l         XML架构(XSD)——支持对W3C XML架构(WSDL)的前向和反向工程。支持对XML架构的建模、生成、输入操作。
The Corporate Edition定位于大规模开发组。它支持Desktop和 Professional版本的所有功能,如连接到SQL服务器、MySQL, Oracle9i, PostgreSQL, MSDE,Adaptive Server Anywhere 和 MS Access backends以实现知识库共享。它还支持用户安全、用户注册、用户组、复制和元素的用户级同步。该版本还包含对MDG技术的支持,而且用户还也可以获得更多的资源。
The Professional Edition定位于工作组和开发人员。它支持通过复制和网络文件实现项目共享。专业版还含有ActiveX接口,可以查询EA项目、以XMI格式提取信息。它完全支持代码导入/导出,模型元素和源代码的同步以及对SQL Server, MySQL, Oracle9i的逆向工程,而且包含对MDG技术的支持。
The Desktop Edition是为个体用户准备的,可以生成UML分析和设计模型。除代码工程(源代码和DLL导入/导出) 、Active-X接口和多用户模型共享之外,它可以实现专业版的所有功能。
二.           创建工程
依次点击“File->New Project->命名保存->在“Select model”中选择需要创建的类型(如图-1)->单击“OK”确认,得到界面如图-2所示

图-1
Business Process
业务流程
Requirements
需求分析
Use Case
用例
Domain Model
领域模型
Class
类设计
Database
数据库设计
Component
组件
Deployment
部署
Testing
测试
Maintenance
维护
Project Management
项目管理
User Interface
用户接口
表-1

图-2
三.           一些基本的通用设置
3.1 设置默认代码环境
依次点击:“Tool->Options-Source Code Engineering->Default Language For Code Generation->C#”如图3所示:

图-3
单击“Close”确认退出。
3.2 设置默认数据库
依次点击:“Tool->Options- Code Editors->Default Database->SQL Server 2005”
如图4所示:

图-4
四.           Class模型
4.1.创建“Class”模型
依次点击“File->New Project->命名保存->在“Select model”中勾选“Class”(如图-5)
图-5
最后单击“确定”进入设计界面。
在设计界面的左边是工具箱(如图6)

图-6
Class Elements
Package
Class
Interface
接口
Enumeration
枚举
Table
Signal
对象通信信号的描述
Association
关联
Class Relationships
Associate
实现
Generalize
泛化
Compose
组成
Associate Class
关联类
Assembly
程序集
Realize
实现
Nesting
嵌套
Package Merge
包的合并
Package Import
包的导入
Common
Note
注释
Constraint
约束条件
Document
文档:附加文档附件
Artifact
人工:表示任意的系统任意的信息块
Requirement
需求描述
Issue
问题描述
Change
变化描述
Boundary
分界线
Dependency
依赖关系
Realize
实现
Trace
追踪
Information Flow
数据流
Note Link
注释链接
表-2
4.2.为模型中创建的“Class”对象使用别名
首先在工具箱中点选 ,然后在合适的位置左键单击确定,之后弹出属性窗口(如图7所示)

图-7
在“Name”栏中输入Class 的名称“Test”,然后在“Alias”中输入一个别名“测试”。其他相应设置好之后,确定退出属性窗口。
我们发现,在默认情况下“Class”所显示的名称是Test,但如果我们需要显示别名的时候,我们需要进行以下设置;
在类Test所在的包中找到class diagram,点击右键然后选择“Propreties…”进入如图8所示的窗口;

图-8
选择“Diagram”,进入如图9所示的窗口;

图-9
勾选“Use Alias if Available”,别名的显示即设置完成。
五.           代码的生成
5.1. 把整个包的设计类生成C#格式代码
依次单击“Project->Source Code Engineering->Generate Package Source Code…(如图10所示)”

图-10
进入如图11所示界面:

图-11
点击“Generate”,将包中所有的类成批转换为C#文件。
5.2.单个自动生成C#代码
右键单击需要转换为C#文件的“Class”,在菜单中选择“Generate Code…”或者使用快捷键“F11”,弹出如图12所示菜单:

图-12
单击图中1的位置,选择将要生成文件的存储路径,然后在2的位置选择要生成什么语言的文件(在此我们点击下拉菜单选择C#),最后点击3位置的“Generate”生成。
六.           设计模型与生成的代码同步
当生成了C#代码之后,接下来我们就将设计模型和生成的代码同步,步骤如下:
鼠标右键单击需要进行代码同步的对象,选择“Synchronize Model With Code…”或者使用快捷键“F7”,弹出如图13所示的对话框:

图-13
单击“是”,则我们就完成了生成的代码与设计模型进行了同步。

转载于:https://www.cnblogs.com/andy_tigger/archive/2009/11/13/1602269.html

相关文章:

FCS省选模拟赛 Day5

传送门 Solution Code #include<bits/stdc.h> #define ll long long #define max(a,b) ((a)>(b)?(a):(b)) #define min(a,b) ((a)<(b)?(a):(b)) inline int read() {int x0,f1;char chgetchar();while(ch<0||ch>9){if(ch-)f-1;chgetchar();}while(ch>…

python中的单例模式

单例模式&#xff08;Singleton Pattern&#xff09;是一种常用的软件设计模式&#xff0c;该模式的主要目的是确保某一个类只有一个实例存在。当你希望在整个系统中&#xff0c;某个类只能出现一个实例时&#xff0c;单例对象就能派上用场。 比如&#xff0c;某个服务器程序的…

JavaScript 数据类型转换

1. typeof 操作符 使用typeof操作符来检测变量的数据类型。 使用方式&#xff1a;typeof 变量名 或者 typeof(变量名) 返回结果&#xff1a; number、string、boolean、object、undefined、function typeof {} // 返回object typeof [] // 返回object typeof null // 返回o…

Cisco asa 5510升级IOS和ASDM

Cisco asa <?xml:namespace prefix st1 ns "urn:schemas-microsoft-com:office:smarttags" />5510升级IOS和ASDMshow version 查看当前运行的系统信息&#xff0c;包括启动文件&#xff08;即IOS)等 show boot 查看当…

Angular 服务

服务的概念 服务是在多个“互相不知道”的类之间共享信息的好办法。—— 官方文档 可以理解为组件中需要的数据源是由服务提供的&#xff0c;也可以理解为组件类中的方法通过调用服务中的方法向服务器请求数据。 Injectable() 服务 服务类需要导入Injectable符号并需要加上Inj…

[Linux] 029 脚本安装包

1. 脚本安装包 脚本安装包并不是独立的软件包类型&#xff0c;常见安装的是源码包是人为把安装过程写成了自动安装的脚本&#xff0c;只要执行脚本&#xff0c;定义简单的参数&#xff0c;就可以完成安装非常类似于 Windows 下软件的安装方式2. Webmin 的作用 Webmin 是一个基于…

基于Android平台扫码识别并链接服务器demo

资料在我的网盘&#xff1a;Android文件夹   第一&#xff1a;开发平台搭建。 本项目采用Android studio&#xff08;android-studio-bundle-162.4069837-windows.exe&#xff09;作为开发平台&#xff0c;安装JDK&#xff08;jdk-8u144-windows-x64.exe&#xff09;。 下载对…

WCF学习笔记(二):在WCF中使用集合传输数据

最近的开发&#xff0c;一直被DataContract头疼&#xff0c;微软为了更好的通用性和代码无关性&#xff0c;将DataContract进行了一系列的优化&#xff0c;使作为DataContract的类在进行Serialize的时候会被序列化成非常通用的数据格式&#xff0c;可以在任何开发语言中调用。但…

如何面对“大概什么时候能完成?”

你在听着经理、上级或是公司内部的某类用户滔滔不绝的给你讲需求&#xff0c;这里面常常能听到“最好能加上……”&#xff0c;“我希望……”&#xff0c;你一边听着&#xff0c;一边心里盘算着这些需求背后需要怎样的技术支撑&#xff0c;要采纳的方案&#xff0c;然后你看到…

Angular Http

Http服务 HttpClient 是 Angular 通过 HTTP 与远程服务器通讯的机制。 启用Http服务的准备工作 要让 HttpClient 在应用中随处可用&#xff0c;需要在根模块的NgModule.imports 数组中加入 HttpClientModule。 Http方法返回单个值 HTTP 是一个请求/响应式协议。你发起请求&am…

2019第四周作业(基础作业+挑战作业)

基础题1&#xff1a; 输入一个正整数 n (1≤n≤10)和n 阶方阵a的元素&#xff0c;如果方阵a中的所有元素都沿主对角线对称&#xff0c;输出“Yes”, 否则&#xff0c;输出“No”。主对角线为从矩阵的左上角至右下角的连线&#xff0c;方阵a中的所有元素都沿主对角线对称指对所有…

Taglib原理和实现:再论El和JST

作者&#xff1a; WalkingWithJava 出处&#xff1a; Java研究组织 问题&#xff1a;你想和JSTL共同工作。比如&#xff0c;在用自己的标签处理一些逻辑之后&#xff0c;让JSTL处理余下的工作。 看这个JSP例子&#xff1a; &#xff1c;% String name"diego"; reque…

UWP Windows10开发获取设备位置(经纬度)

UWP Windows10开发获取设备位置&#xff08;经纬度&#xff09; 原文:UWP Windows10开发获取设备位置&#xff08;经纬度&#xff09;1.首先要在UWP项目的Package.appxmanifest文件中配置位置权限&#xff0c;如下图所示&#xff1a; 2.Package.appxmanifest后选择第三个选项卡…

[零基础学JAVA]Java SE实战开发-37.MIS信息管理系统实战开发[JDBC](1)

MIS信息管理系统实战开发之使用MySQL实现保存开发背景ID、姓名、年龄为公共信息&#xff0c;而学生有成绩&#xff0c;工人有工资定义一个抽象类Person&#xff08;ID、姓名、年龄&#xff09;&#xff0c;学生是其子类&#xff0c;有成绩&#xff0c;工人是其子类有工资ID如何…

【数论总结】-----励志写好一篇数论总结↖(^ω^)↗//正在施工...未完工

近期学了学数论&#xff0c;来写一波总结吧。 &#xff08;1&#xff09;排列组合&#xff0c;比较基础的东西了吧。//只写个概念吧,(逃&#xff1a; 概念&#xff1a;就是从n个不同元素中&#xff0c;任取m(m≤n)个元素并成一组&#xff0c;叫做从n个不同元素中取出m个元素的一…

遍历Treeview每个节点并初始化(C#)

搞了好久&#xff0c;哎&#xff0c;C#的一些控件用起来还没习惯&#xff0c;所以折腾啊。 TreeView的形成&#xff0c;必然要初始化&#xff0c;数据记录是从数据库中取得的&#xff0c;那么要先取再遍历。介绍下心得吧。 首先&#xff0c;数据预期显示结果如下 其次&#xff…

codeforces3A

Shortest path of the king CodeForces - 3A 棋盘上的国王被单独放置。尽管他是孤独的&#xff0c;但并未伤心&#xff0c;因为他有事关全局的重要性。例如&#xff0c;他必须正式访问方格 t 。由于国王不习惯于浪费自己的时间&#xff0c;因此他想用最小的移动步数&#xff0…

for...in和 for...of

在对数据或者对象进行遍历时&#xff0c;经常使用的两种方法是 for...in和 for...of&#xff0c;那么这两种方法有什么区别呢&#xff1f; for…in for...in语句以任意顺序遍历一个对象的除Symbol以外的可枚举属性。 语法&#xff1a; for (variable in object) {// statem…

J2EE复习(二)XML

2019独角兽企业重金招聘Python工程师标准>>> XML&#xff08;eXtensible Markup Language&#xff09;简介XML 可扩展标记语言XML是一种您可以用来创建自己的标记的标记语言。XML由万维网协会&#xff08;W3C&#xff09;创建 XML和Html比较比较内容 …

Angular 路由

Angular 路由 简单路由配置 每个带路由的 Angular 应用都有一个Router&#xff08;路由器&#xff09;服务的单例对象。 当浏览器的 URL 变化时&#xff0c;路由器会查找对应的 Route&#xff08;路由&#xff09;&#xff0c;并据此决定该显示哪个组件。 路由器需要先配置才…

leecode第二十题(有效的括号)

class Solution { public:bool isValid(string s) {int start0,ends.size()-1;if(end-1)//万万没想到&#xff0c;他把空字符串当成true了return true;int ss[end1];//歪方法&#xff0c;把左括号全部<0&#xff0c;右括号都>0&#xff0c;且同类型符号绝对值一样for(int…

开始Hibernate介绍

1.介绍 一个框架 一个Java领域内的持久化框架 一个ORM框架 2.持久化 和数据库相关的各种操作 保存 更新 删除 查询 加载&#xff1a;根据特定的OID&#xff0c;把一个对象从数据库加载到你内存中。 OID&#xff1a;为了在系统中找到所需的对象&#xff0c;需要为每一个对象分配…

STL容器[06]

Linux文件锁学习笔记 转载于:https://www.cnblogs.com/motadou/archive/2009/11/25/1610328.html

ASP.NET 2.0在SQL Server 2005上自定义分页

这篇文章讲述了如何利用SQL Server 2005的新特性来简单高效的实现分页。对于那些暂时还没用到SQL Server2005的人们,请看在大规模数据中的高效分页方法。如果需要&#xff0c;这篇文章会补上这里讲到的内容。 出处&#xff1a;http://aspnet.4guysfromrolla.com/demos/printPag…

简单安装与使用composer

1、下载composer.exe工具&#xff0c;然后进行安装 这一步需要找到你使用的php版本文件 2、windowsr cmd 输入composer 安装中国镜像&#xff0c;提高使用效率 https://pkg.phpcomposer.com/ 赋值到cmd中执行即可。 1、找到自己的php环境地址并进入&#xff0c;如&#xf…

[推荐]C#快速开发3d游戏工具--Unity3d

最近有幸接触了一点Unity3d的东西&#xff0c;和大家分享一下。 Unity3d 简介 是一款可视化的&#xff0c;3d游戏开发软件。可以进行手动绘制3d场景&#xff0c;自己添加摄像机角度&#xff0c;3d模型设计&#xff0c;事件触发&#xff0c;对于园子里大家很感兴趣的地方在于&am…

Angular 可观察对象(Observable)

可观察对象(Observable) 可观察对象支持在应用的发布者和订阅者之间传递消息。 可观察对象是声明式的 —— 即定义的用于发布值的函数&#xff0c;在有消费者订阅它之前&#xff0c;这个函数不会实际执行。 可观察对象可能会发出的三种通知&#xff1a; 通知类型说明next必要…

select框高度问题

<div class"article-start-box"> <span class"categery">分类栏目</span> <select style"position: absolute;z-index: 1;margin-left: 40px;" class"choose" οnmοusedοwn"if(this.options.length>6)…

c#技巧教程(连载)

c#技巧教程系列_1 http://www.rayfile.com/files/e03d922e-2418-11de-858a-0019d11a795f/ 转载于:https://www.cnblogs.com/manwu2008/archive/2009/04/08/1431823.html

JavaScript 数据拷贝

JavaScript 数据类型 基本数据类型&#xff1a;字符串&#xff08;String&#xff09;、数字(Number)、布尔(Boolean)、对空&#xff08;Null&#xff09;、未定义&#xff08;Undefined&#xff09;、Symbol。引用数据类型&#xff1a;对象( Object )、数组( Array ) 和 方法…