资源描述
Click to edit Title Slide,Click to edit Master text styles,Second level,Third level,Fourth level,Fifth level,Click to edit Title Slide,Click to edit Master text styles,Second level,Third level,Fourth level,Fifth level,*,Click to edit Title Slide,Click to edit Master text styles,Second level,Third level,Fourth level,Fifth level,Click to edit Title Slide,Click to edit Master text styles,Second level,Third level,Fourth level,Fifth level,Click to edit Title Slide,Click to edit Master text styles,Second level,Third level,Fourth level,Fifth level,*,可视化的软件架构设计,张炜,Technical Evangelist,Microsoft,议程,建模,使用,UML,生成代码,对代码进行反向工程,生成报表,课程准备,有一定桌面或者,Web,应用的开发经验,有一定使用,Visual C#,Visual C+,Visual Basic,or Visual Basic.NET,的经验,难度:中,议程,建模,使用,UML,生成代码,对代码进行反向工程,生成报表,建模,为什么要用模型,?,在创建系统之前,可以更好的理解潜在的一些风险,模型可以让我们描述系统的结构和行为,并且利用它和同事沟通,模型提供了指导我们创建系统的模板,我们还可以利用它为使用系统的人提供帮助,模型还描述了我们所做的决策,建模,企业架构功能,UML,软件建模,完全支持,UML 1.2,建模规范,对现有的代码进行,UML,反向工程,生成可订制的,Visual Basic,C+,和,C#,代码框架,自动检查语义错误,可定制的,UML,报表,议程,建模,使用,UML,生成代码,对代码进行反向工程,生成报表,使用,UML,UML,的定义,UML,是一种这样的语言,:,可视化,功能规范,系统构造,文档化,使用,UML,让你用一种标准的方法来设计软件,UML,是一种开放式标准,使用,UML,图表类型,结构化图表,(,静态,),类,(Class),图,(,静态结构,),构件,(Component),图,实施,(Deployment),图,行为图表,(,动态,),用例,(Use case),图,顺序,(Sequence),图,协作,(Collaboration),图,状态,(Statechart),图,活动,(Activity),图,使用,UML,类图,uses,uses,uses,uses,default,categories,book,searchresults,search,使用,UML,用例,(Use Case),图,用例通常用于,:,对系统的前后关联建模,对系统的需求建模,Internet Customer,Customer Account Management,Purchase Books,Product Catalog Search,使用,UML,构件,(Component),图,构件图通常用于,:,对源代码建模,对可执行体的发布建模,对物理数据库建模,对可适应的系统建模,Web,Business Facade,SystemFramework,使用,UML,实施,(Deployment),图,实施图通常用于,:,对嵌入式系统建模,对客户,/,服务器系统建模,对完全分布式系统建模,DataAccess,Database Server,Database,使用,UML,顺序,(Sequence),图,顺序图通常用于,:,按照时间顺序对控制流建模,:Web:book,:BusinessFacade:ProductSystem,:DataAccess:Books,GetBooksByISBN(),GetBooksByAuthor(),GetBooksByNaturalLanguage(),GetBooksBySubject(),GetBooksByTitle(),GetBookById(),使用,UML,其他类型图表,协作,(Collaboration),图通常用于,:,按照组织对控制流建模,状态,(State chart),图通常用于,:,对反应型对象建模,活动,(Activity),图通常用于,:,对工作流建模,对操作建模,使用,UML,构造块,(Building Blocks),元素,一个模型中最基本的构造块,关系,事物之间的联系,图,一组元素的图形表示,使用,UML,类,每个类都必须有一个名字,以同其它类区分,.,可能包含路径的名称,用以表示该类存在的地方,Business rules:Customer,(“Customer”,类存在于“,Business rules”,包中,.),属性,(Attributes),描述一个类的实例可以拥有的一组值,操作是一个服务的实现,该服务可以由类的任何对象请求以影响其行为,Name,Attributes,Operations,使用,UML,依赖关系,依赖是一种使用关系,它说明一个事物规范的变化可能影响到使用它的另一个事务,但反之则不然,在本例中,“Window”,类依赖于“,Event”,类,.,Window,+Open(),+Close(),+Move(),+Display(),+handleEvent(),Event,使用,UML,泛化,(Generalization)/,继承,(Inheritance),关系,泛化指把一般类连接到较为特殊的类,也称为超类,/,子类关系或父类,/,子类关系,使用,UML,关联,(Association),关系,是一种结构关系,它指明一个事物的对象与另一个事务的对象间的联系,关联可以有,名称,角色,多重性,Person,Company,Works For,Name,Person,Company,Employee Employer,Role,Person,Company,Employee Employer,Role w/Multiplicity,1*,使用,UML,演示,#1,议程,建模,使用UML,生成代码,对代码进行反向工程,生成报表,生成代码,企业架构版可以,:,对某个类生成代码,将生成的代码作为新项目的一部分,Windows,Forms,ASP.NET,Class Library,Web Service,etc.,用一种特定的语言生成代码,:,C#,C+,Visual Basic.NET,使用代码模板生成代码,生成代码,操作,操作可以生成为,:,属性,(Property),过程,(Procedure),事件,(Event),构造函数或者淅构函数,可以为每个生成的类文件指定路径,预览选项可以让你查看将要生成的代码,用于类,Classes,属性,Attributes,操作,Operations,等的代码模板,生成代码,错误检查,UML,图会检查下述两种类型的错误,:,语义,代码,语义错误包括图表相关遗漏和未完成的信息,代码错误包括能够导致代码编译失败的错误,生成代码,演示,#2,议程,建模,使用,UML,生成代码,对代码进行反向工程,生成报表,反向工程,集成到了,Visual Studio,.NET,企业版开发环境中,Project|Visio UML|Reverse Engineer,Visio UML Add-in toolbar button,指定路径和文件名,会创建新的,Visio,模型,可以马上在图中使用这些类,Visio,图被加入到解决方案中,反向工程,演示,#3,议程,建模,使用,UML,生成代码,对代码进行反向工程,生成报表,生成报表,UML|Reports,菜单,可以生成各种不同的,丰富的报表,静态结构,状态图,构件,实施,活动,报表是可以定制的,生成报表,报表内容,可以指定报表的范围,可以基于,:,活动图,整个,UML,模型,指定对象种类以包括,每个报表都有它自己的类别,每个种类都有它自己的详细级别,可以为每个新的模型,包,构件选择定制的分隔符,UML,报表可订制,生成报表,其它报表选项,从,UML,报表窗口,可以,:,打印,标准打印选项,预览,导出,指定文件名称和位置,RTF,格式,生成报表,导出到,Web,将,UML,图表存储为,web,页,HTML,帧格式,方便的浏览多个图表,可以将图表嵌入到现有的框架中,添加导航条,显示公司信息,标志,使用模板来保证一致性,很容易的将信息发布到,Intranet,生成报表,演示,#4,总结,建模,使用,UML,生成代码,对代码进行反向工程,生成报表,MSDN,开发员最好的和必备的资源,站在微软技术最前沿!,为开发者创建的网络,提供一年12期的光盘资料,分三个级别,开发库最新的开发文档,示例代码,专业版开发库+全部微软操作系统+,SDK+DDK,宇宙版专业版+其他所有微软产品,目的:,为开发人员提供最先进的技术资料,产品,并提供相互帮助的机会,调用,WEB,服务,获得酷鼠滑板,用任何语言创建一个任何类型的程序,添加一个,Web,引用,设置好各项参数(,CdKey,sName,)然后调用,Register(),请访问,获得详细信息,参与世界大赛,总奖金,$400000,美元,编写一个,Web,服务的应用,并注册到,UDDI,服务器,一个小建议:可以对现有站点包装,可以免费,host,你的服务,请访问,获得详细信息,Questions And Answers,
展开阅读全文