第0章 构架及架构师.pptxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第0章 构架及架构师

第0章 构架及架构师 构架 起因:17世纪20年代,瑞典和波兰交战。瑞典国王下令建造巨型战舰—瓦萨战舰。 要求:舰长70m,载员300人,两层甲板装载64门重炮 设计师:henrik大师 考虑因素:工期、性能、功能、安全性、可靠性、造价等。 实现方法:先按单层炮舰设计,在扩充为双层。 结果:试航礼炮未放完,就翻入水中。 分析原因:比例严重失调(构架存在问题) 说明问题:? ◇软件构架 第0章 构架及架构师 构架 软件构架师技术、商业好社会等诸多因素作用的结果,而软件构架的存在反过来又会影响技术、商业和社会环境,从而影响到未来的构架。这种相互影响的周期称为构架商业周期 ◇软件构架商业周期 办公室里的争论 办公室里,关于什么是软件架构,争论正酣。 程序员说,软件架构就是要决定需要编写哪些类,使用哪些现成框架。程序经理笑了; 程序经理说,软件架构就是模块的划分和接口的定义。系统分析员笑了; 系统分析员说,软件架构就是为业务领域对象的关系建模。配置管理员笑了; 配置管理员说,软件架构就是开发出来的以及编译过后的软件到底是个啥结构。数据库工程师笑了; 数据库工程师说,软件架构规定了持久化数据的结构,其他一切只不过是对数据的操作而已。部署工程师笑了; 部署工程师说,软件架构规定了软件部署到硬件的策略。用户笑了; 用户说,软件架构就是决定一个个子系统如何划分。程序员又笑了; 大家想了想说,这些架构视图好像我们都需要啊,软家架构师哭了。      ........上述争论可以总结为一句话:不同涉众看待软件架构的视角是不同的 第0章 构架及架构师 构架 1.构架受系统涉众的影响: ◇软件构架的产生 开发组织的管理层涉众 客户涉众 维护组织涉众 最终用户涉众 进行市场营销的涉众 成本要低,人人都得有活干 特性突出、很快能投放市场、成本低、有竞争力 行为、性能、安全性、可靠性、易用性 可修改性 成本要低,及时交付、不要改动太频繁 第0章 构架及架构师 构架 2.构架受开发组织的影响 Eg:人员技能、开发进度和预算、直接投资和长期投资、子系统的转包等 3.构架受设计师的素质和经验的影响 4.构架受技术环境的影响 Eg:基于web、面向对象、支持中间件等 5.其他影响因素 Eg:及涉众的交流 6.构架对诸影响因素的反作用 ◇软件构架的产生 架构师 架构师这个称呼不是拍脑袋想出来的,是有国际标准(ISO/IEC 42010)可查的。架构师是软件开发活动中的众多角色之一,它可能是一个人、一个小组,也可能是一个团队。微软对架构师有一个分类参考,我们参考一下,他们把架构师分为4种:企业架构师EA(Enterprise Architect)、基础结构架构师IA(Infrastructure Architect)、特定技术架构TSA(Technology-Specific Architect)和解决方案架构师SA (Solution Architect)。 ◇软件架构师 第0章 构架及架构师 架构师 ◇软件架构师-- 名人堂 第0章 构架及架构师 架构师 1、确认需求 在项目开发过程中,架构师是在需求规格说明书完成后介入的,需求规格说明书必须得到架构师的认可。架构师需要和分析人员反复交流,以保证自己完整并准确地理解用户需求。 2、系统分解 依据用户需求,架构师将系统整体分解为更小的子系统和组件,从而形成不同的逻辑层或服务。随后,架构师会确定各层的接口,层及层相互之间的关系。架构师不仅要对整个系统分层,进行“纵向”分解,还要对同一逻辑层分块,进行“横向”分解。 软件架构师的功力基本体现于此,这是一项相对复杂的工作。 ◇软件架构师——主要职责 第0章 构架及架构师 架构师 3、技术选型 架构师通过对系统的一系列的分解,最终形成了软件的整体架构。技术选择主要取决于软件架构。 Eg:Web Server运行在Windows上还是Linux上?数据库采用MSSql、Oracle还是Mysql?需要不需要采用MVC或者Spring等轻量级的框架?前端采用富客户端还是瘦客户端方式?类似的工作,都需要在这个阶段提出,并进行评估。 架构师对产品和技术的选型仅仅限于评估,没有决定权,最终的决定权归项目经理。架构师提出的技术方案为项目经理提供了重要的参考信息,项目经理会从项目预算、人力资源、时间进度等实际情况进行权衡,最终进行确认。 ◇软件架构师——主要职责 第0章 构架及架构师 架构师 4、制定技术规格说明 架构师在项目开发过程中,是技术权威。他需要协调所有的开发人员,及开发人员一直保持沟通,始终保证开发者依照它的架构意图去实现各项功能。 架构师与开发者沟通的最重要的形式是技术规格说明书,它可以是UML视图、Word文档,Visio文件等各种表现

文档评论(0)

jgx3536 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:6111134150000003

1亿VIP精品文档

相关文档