《架构实战-软件架构设计的过程》读书笔记
作者:admin 日期:2012-02-14
身为公司的系统架构师,很长一段时间,我都不知我真正的职责是什么.实际上,在工作上,跟架构师的角色对应的任务也不多.更多的是项目的实施,代码的开发,当然.系统设计是必不可少的.只是,没有本书中所罗列的这么详细,这么复杂.分工也没有这么清晰.毕竟咱们不是IT公司,更多的是身兼数职的多面手.
看过此书,对架构师的概念总算是有了一个比较深入的理解,知道架构师是干什么的,是靠什么吃饭的.架构师与项目经理的区别在哪里. 每每做系统,做平台时,更多的只是三层架构,很少考虑其它因素,素不知架构架构,这两个字的满园大得很,用句不地道的话来说:这趟手很深,没两把刷子,还真玩不转.好歹也算是混了一个IBM高级架构师的证书,看过此书后,只能感觉自己只略知皮毛而已.
很愿意与大家分享一下看书时一些笔记,同时找了一下电子版,希望各位喜欢,个人建议还是花点钱买本实体书来看看.
一个优秀的架构师通常平衡掌握软件开发知识和业务领域知识.当架构师理解软件开发但不能业务模型时,可能会开发出一个不满足需求但反映这种架构师所熟悉内容的解决方案.
有效沟通是项目成功的基础.架构师应该既是优秀的聆听者,也是优秀的观察者.
软件架构设计代表的是一个架构的定义、文档的编写 、维护、改进和验证正确实现的活动。
所有的架构都是设计,但不是所有的设计都是架构.架构代表塑造一个系统的重要决策,换句话说,架构可以看作是战略上的设计,而详细设计可以看作是战术上的设计.
所有的系统都存在架构.
架构师的角色可能由一个团队来履行.包括首席架构师,应用架构师,基础设施架构师,数据架构师
项目经理与架构师的区别
架构师是根据需求分析人员跟客户沟通后,拿回的客户需求,将面向客户的需求文档变成面向开发人员的开发文档,同时要从功能实现和编程实现的角度出发来做系统的总体规划。
架构师的工作完成后,下一步就是开发团队沟通,然后每个开发人员各自依照开发文档负责一个或多个部分的开发工作。
而项目经理则是整个项目从头到尾的管理者,监督者,他的任务是随时保持和客户、和团队成员的沟通。对团队成员的工作进行监督和审核,以确保整个项目按时、按质、按量完成。包括处理项目实现过程中的一些特殊情况。在需求分析阶段。
简单点理解,以盖房子为例,架构师是建筑设计师,而项目经理就是工头或者说监工。一个管结构,一个管进度。
瀑布流程的缺陷:
项目进度不能精确地度量.
直到后期才能得到用户的反馈.
一些风险解决方案延迟到项目后期
软件架构的4+1视图模型:逻辑视图->开发视图->物理视图->过程视图
软件架构文档的大纲应该包含以下内容:前页 目标 架构概览 架构决策 需求视图 功能性视图 部署视图 验证视图 应用视图 基础结构视图 系统管理视图 可用性视图 性能视图 安全视图 附录
成功的架构师通常是那些知道可利用资源的人
需求影响架构,定义良好的需求导致高质量的架构,架构的决定影响需求,架构定义了子系统的需求.
一个名称,一个简要描述,有关参与者的确认,用例中主要的数据流和关键的非主要数据流的确认,这些通常用是在流程的这一步骤中所需要的关于用例的全部内容
成功地设计一个软件架构的前提之一是采用迭代式的开发生命周期,它有助于架构师在任何时候都把注意力集中在试图完成的结果上,而不被一件工作产品是否完成所拖累.
架构师由结果驱动,而不是由文档驱动.
架构除影响开发的内容和测试环境之外,对开发系统需要的技术也有重大的景程,需要在完成项目需要的理想情况和现实情况之间权衡.这种特殊的考虑突出了架构师和项目经理之间需要密切的联系.
逻辑架构尽可能地确保组件和技术无关,因此,能够使用不同的技术和产品来实现逻辑架构.在实际情况中,当选择了实现逻辑架构的技术的产品这后,必须记住每项技术都有自己的特性,这意味着你必须对这些差异进行一些解释以确保组件的说明没有歧义,从而使得这些组件可以进一步细化和实现.
架构师所做的最大贡献是确保考虑到最具有技术性的系统用户,从而确保能够捕获那些最具有技术性的需求并进行适当的细化,也有助于定义请求的优先级和最终需求的优先级.
架构师和项目经理的角色都很重要,而且通常都需要花费很多时间.这两个角色关注点差异也很大.由一个人同时扮演这两个角色的项目很少有成功的.因为一个人总会有倾向于这一个或那一个角色.结果,其中的一个角色执行得不恰当.架构师和项目经理之间相互影响的好处也不互存在.
上一篇: Win7环境下装SQL SERVER 2005 IIS的设置
下一篇: 这三年,述职
文章来自: 本站原创
引用通告: 查看所有引用 | 我要引用此文章
Tags: 架构实战 架构实战-软件架构设计的过程 软件架构设计的过程
相关日志:
下一篇: 这三年,述职
文章来自: 本站原创
引用通告: 查看所有引用 | 我要引用此文章
Tags: 架构实战 架构实战-软件架构设计的过程 软件架构设计的过程
相关日志:
评论: 0 | 引用: 0 | 查看次数: 5000
发表评论