- 1、本文档共5页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
軟件架构设计最佳实践
软件架构设计最佳实践课程简介:本课程介绍:软件架构的概念:构件及协作关系;典型的软件架构介绍:分层架构及其派生类型;面向服务的架构设计:SOA;面向云的架构设计;用UML图表达软件架构;设计项跟踪及其架构重构;用代码表达架构;数据访问设计;业务逻辑设计;界面逻辑设计;.NET和C++互操作设计...等内容。课题
内容
Day 1
?软件架构的概念:构件及协作关系 - ?架构关注点,定义构件边界+构件之间通信 ?- 构件的描述:4+1视图 - ?非功能性需求:可用性、可靠性、鲁棒性、可维护性,可扩展性,可测性,性能,可复用性、模块化、易部署性等 ?- 架构设计方法:场景驱动的迭代架构设计 ?- 架构师角色:输入需求,输出架构 ?- 讨论:如何才能成为一名合格的架构师? - 案例导入:必应词典的架构介绍典型的软件架构介绍:分层架构及其派生类型- 一般分层模型:数据,业务+界面- 典型的分层模型:B/S架构,C/S架构和富客户端应用- 实例:JSP/JSF应用,ASP.NET应用,AJAX应用,REST风格应用- 练习:开发一个简单的B/S应用- 案例讨论:必应词典的分层架构?面向服务的架构设计:SOA - ?架构的核心元素:容器,组件,接口和通信 ?- 理解容器:基础服务,承载组件,容器间通信 - 典型的容器:.NET ?WCF容器,J2EE应用服务器如GlassFish ,COM容器 ?- 理解组件:使用容器,实现接口,组件间通信 - ?非侵入式设计:使用批注扩展组件/容器 - 典型的组件:WEB服务,.NET WCF服务 ,EJB ?Bean(消息,会话)等,COM组件,CORBA组件等 ?- 理解接口:约定功能,服务接口,远程/本地接口 - ?练习:编写一个简单的基于SOA的C/S应用 - 案例讨论:必应词典中的服务面向云的架构设计- 云架构:云为容器,提供运算,存储和通信等基础服务- 公有云应用:数据,逻辑,界面都由公共云承载- 混合云应用:部分数据/逻辑本地服务器+公有云;- 云应用的消息总线模型:将公有云模拟为本地资源统一通信- 练习:设计,实现并部署一个基于SOA的B/S架构的云应用- 案例讨论:从WEB词典到云词典
Day 2
?用UML图表达软件架构 - ?UML图概述:7种UML图及绘制工具(例如VS2010的架构师工具/ROSE绘图工具/VISIO绘图工具) ?- 用例视图:表达需求,定义系统边界 ?- 逻辑视图:类及其关系,类的组织 ?- 进程视图:表达运行时对象间的协作关系,活动图,序列图 - ?部署视图:描述物理组件如何分发配置到服务器 ?- 开发视图:描述在开发环境中软件的静态组织结构 - 练习:用UML图描述一个SOA小应用架构性能设计- 主要性能指标:平均响应时间、吞吐量或并发数、持续高速性- 影响性能的主要因素:算法,实现,数据库设计,通信- 性能瓶颈探测:性能探测工具及探测报告- 练习:用性能探测工具探测性能,压力测试及内存消耗- 讨论:必应词典的性能瓶颈及其对策?设计项跟踪及其架构重构 - ?迭代设计(小步快跑模式):架构的重构 ?- 设计项版本管理 ?- 设计项状态跟踪:设计项映射到代码和测试用例 - ?相关工具:微软团队项目服务器(Team Foundation Server)/其他工具 ?- 练习:利用源码管理工具跟踪架构设计相关项 - 讨论:必应词典的架构设计过程用代码表达架构- 设计元素:类,接口,模板,包- 利用面向对象编程语言:c#,Java,c++- 依赖抽象的设计原则:针对抽象编程,封装变化- 使用设计模式:创建型模式、结构型模式和行为型模式- 练习:用抽象类和接口定义一个有哪些信誉好的足球投注网站系统的架构数据访问设计:- 数据存储设计:文件,数据库,内存,…- 数据实体定义:主键,外键,二进制数据,约束- 数据访问层设计:数据表内存表间映射- 使用数据访问框架:LINQ 2 SQL/数据实体框架,JAVA 可持久化框架(JPA),ADO.NET 数据实体框架- 练习:使用数据访问框架操作数据库?业务逻辑设计: ?- 业务逻辑设计工具:工作流 ?- 将业务逻辑包装为服务 - ?确定业务逻辑设计正确性:单元测试 - 练习:用工作流实现一段业务逻辑,并验证实现的正确性并行应用设计:- 识别并行任务:Map-Reduce模型- 并行模式:生产-消费模式,并行,互斥和同步- 并行实现:多线程,线程池,并行库- 练习: 用工作流设计并行逻辑?界面逻辑设计 ?-
您可能关注的文档
- 軟件工程课程设计机票预定系统.doc
- 軟件工程课程设计指导.doc
- 軟件工程课程设计要求与题目.doc
- 軟件工程课程设计小组报告.doc
- 軟件工程课程设计要求.doc
- 軟件工程课程设计小区物业管理系统.doc
- 軟件工程课程设计题.doc
- 軟件工程运行设计2.doc
- 軟件工程课程设计封面.doc
- 軟件工程重点知识复习_资料集锦.doc
- 西安西玛电机有限公司校园招聘模拟试题附带答案详解附答案.docx
- 苏州金鹰国际购物中心有限公司校园招聘模拟试题附带答案详解参考答案.docx
- DB32/T+5093-2025+实验动物运输技术规范.docx
- DB32/T+5095.2-2025+医防融合数据传输接口规范++第2部分:法定传染病.docx
- 滨海地区茶菊栽培技术规程FDIS.docx
- DB44_T+2617-2025鱼鳔干制操作规程.docx
- 数字乡村 术语 编制说明.docx
- 粮油作物标准园建设规范FDIS.docx
- DB32/T+5100-2025+江淮地区稻茬小麦绿色综合防倒技术规程.docx
- DB4103T191-2025麦茬谷子免耕生产技术规程.docx
文档评论(0)