工程管理
会员登陆可自行发布信息
首页资讯供应求购招商招聘展会社区
长期信息合作请联系:QQ66821730
机电之家工程首页 ---->工程管理工程技术工程案例工程论文 工程招聘 ┊ 行业培训资料下载
应急预案
我 要 找
标题 内容 作者
工程管理技术资料订阅工程管理资料信息
电工技术资料 您的位置: 机电之家-->工程管理资料栏目首页-> 工程论文 -> 软件工程论文 --> 敏捷思维- 架构设计中的方法学
阅读工程管理资料相关资料
敏捷思维- 架构设计中的方法学
本文作者 未知 摘自 机电之家

[

仅针对需求设计架构

仅针对需求设计架构的含义就是说不要做未来才有用的事情。有时候,我们会把架构考虑的非常复杂,主要的原因就是我们把很多未来的因素放入到现在来考虑。或者,我们在开发第一个产品的时候就视图把它做成一个完美的框架。以上的这两种思路有没有错呢?没有错,这只是如何看待投入的问题,有人希望开始的时候多投入一些,这样后续的投入就会节省下来。但在现实中,由于需求的不确定性,希望通过增加开始阶段的投入来将降低未来的投入往往是难以做到的,框架的设计也绝对不是能够一蹴而就的,此这种做法并不是一个好的做法。所以我们在后头会着重论述架构设计的简单性和迭代过程,也就是因为这个理由。

模式

模式将可以帮助我们抓住重点。设计模式在书的一开始(第二章)就讨论了一个设计一个文档编辑器的问题。为了解决设计文档编辑器引出的七个问题,一共使用了8种不同的模式。这8种模式的组合其实就是架构,因为它们解决的,都是系统中最高层的问题。

在实践中,人们发现架构也是存在模式的。比如,对于系统结构设计,我们使用层模式;对于分布式系统,我们使用代理模式;对于交互系统,我们使用MVC(模型-视图-控制器)模式。模式本来就是针对特定问题的解,因此,针对需求的特点,我们也可以采用相应的模式来设计架构。

在sun网站上提供的宠物商店的范例中,就把MVC模式的思想扩展成为架构的思想,用于提供不同的界面视图:

MVC架构图,这里提供原图的概览,查看其出处请点击以下连接:

http://java.sun.com/blueprints/patterns/j2ee_patterns/model_view_controller/index.html
 

 

 

 


我们可以了解到在图的背后隐藏着的需求:系统需要支持多种用户界面,包括为普通用户提供的HTML界面,为无线用户提供的WML界面,为管理员提供的Swing界面,以及为B2B业务设计的WebService界面。这是系统最重要的需求,因此,系统的设计者就需要确定一个稳定的架构,以解决多界面的问题。相对于多界面的问题,后端的业务处理逻辑都是一致的。比如HTML界面和WML界面的功能并没有太大的差别。把处理逻辑和界面分离开来还有额外的好处,可以在添加功能的同时,不涉及界面的改动,反之亦然。这就是我们在第二篇中提到的耦合度的问题。

MVC模式正可以适用于解决该问题。系统使用控制器来为业务逻辑选择不同的界面,这就完成了MVC架构的设计思路。在架构设计的工作中,我们手头上有模式这样一张好牌,有什么理由不去使用它呢?

抓住重点

在架构设计一开始,我们就说架构是一种抽象,那就是说,架构设计摒弃了具体的细节,仅仅抓住软件最高层的概念,也就是最上层、优先级最高、风险最大的那部分需求。

我们考虑、分析、解决一个问题,一定有一个渐进的过程。架构设计就是解决问题其中比较早期的一个阶段,我们不会在架构设计这个阶段投入过多的时间(具体的原因在下文会有讨论),因此关键点在于我们要能够在架构设计中把握住需求的重点。比如,我们在模式一节中提到了分布式系统和交互系统,分布和交互就是这两个系统的重点。那么,如果说我们面对的是一个分布式的交互系统,那么,我们就需要把这两种特性做为重点来考虑,并以此为基础,设计架构。而我们提到的宠物商店的范例也是类似的,除了MVC的架构,还有很多的设计问题需要解决,例如用于数据库访问的数据对象,用于视图管理的前端控制器,等等(具体使用到的架构模式可以访问sun的网站)。但是这些相对于MVC模式来说,属于局部的,优先级较低的部分,可以在架构确定后再来设计。

架构设计和领域专家

一个架构要设计的好,和对需求的理解是分不开的。因此在现实中,我们发现业务领域专家凭借着他对业务领域的了解,能够帮助开发人员设计出优秀的架构来。架构是需要抽象的,它是现实社会活动的一个基本模型,而业务领域的模型仅仅凭开发人员是很难设计出来的。在ERP的发展史上,我们看到MRP发展为MRPII,在发展到闭环MRP,直到发展成为现在的ERP,主要的因素是管理思想的演化,也就是说,对业务领域的理解进步了,架构才有可能进步。

因此,敏捷型架构设计的过程中,我们也非常强调领域专家的作用。

例3:信贷系统

在一个银行的信贷帐务处理系统中,我们应该如何把握最初的架构思路呢?从需求上来看,这个信贷帐务处理系统有几个特点:

它不是一个单独的系统,它需要和外部的其它系统交互,例如信贷业务系统、网上银行、数据仓库系统等。

在所有的需求中,最复杂的就是它的利息计算的需求,它要求能够支持多种的利息算法。

因此,我们的架构设计首先是从系统的全局环境开始考虑。其它系统和该系统的关系如何,应该如何设计系统间的接口。通过需求的调研,系统的接口分为4类:

和企业外部系统的接口。信贷系统需要连接到人民银行的系统。

和企业内部系统的接口。信贷系统需要能够为数据仓库系统和网上银行系统提供数据。

和平级系统的接口。信贷系统需要从平级的帐户、资金、财务系统中取数据,并向帐户、押汇系统发送数据。

具体的实现策略并不在我们的讨论范围之内,但是可以看到,架构策略的制定是以需求为基础的。我们可以把这部分的需求归纳为技术架构或平台架构。

然后是利息算法的问题,我们经过统计,目前的利息计算方式有四种,可预见到的还有两种。在一开始的阶段,我们并不需要考虑具体算法的实现,但是我们需要考虑算法的实现框架,因此我们很自然的想到Strategy模式可以胜任这一工作,把不同的利息算法封装起来。而我们的工作重点也就转到定义利息算法的接口问题。通过分析、比较多种利息算法,我们定义了一个最初始的算法接口,然后由不同的利息算法来实现算法接口。虽然,这个接口目前还不是很完整,但是它会在接下去的开发过程中慢慢的完善起来。这部分的需求属于业务架构的一部分。

考虑到系统的结构非常的复杂,因此在系统结构的处理上,我们采用了层模式做为系统的基本结构。此外,在每个层,我们还定义了几个子模块来处理特定的问题。这样,我们就可以将复杂的功能有序的组织起来。

经过上述的分析,我们对系统的架构有了一个简单的认识,但是还没有结束,一个架构应该包括系统的各个基本部分,因此,我们还要考虑票据处理、报表、帐务处理等环节,但是一开始就考虑周详,这要花费大量的时间,因此我们只是简单的定义了一个原始的架构,然后在后续的开发过程中把这个架构完善起来。

[本文共有 2 页,当前是第 2 页] <<上一页 下一页>>

]

Google
·工程项目经理培训
·欧姆龙PLC编程维护培训
·杭州西门子PLC应用培训
·模具加工设计培训
·变频器维修培训
·安全员认证培训
·电工培训


·招聘项目管理人员
·首席技术执行官
·自控工程师
·数控编程学徒
·总工程师


项目竞标

最新商业情报

代理
[代理] 寻求地区代理
[代理] 电工产品诚招代理..
采购
[采购] 电动车控制器外壳
[采购] 高品质缓冲器
 敏捷思维- 架构设计中的方法学相关资料
  • 企业信息化项目规划建设八策略
  • 小案例渗透出ERP项目规划中的“三忌”
  • IT项目规划就要围着企业商业策略转
  • 日常生活中的项目管理
  • 项目规划依赖性过程之间的相互联系
  • 项目规划和项目计划
  • 做ERP项目规划时的六大项禁忌
  • 项目规划管理
  • 永凝液屋面施工工艺
  • 永凝液地下室施工工艺
  • ⊕这地方投资政策最优
    ⊕上千份机电行业研究报告
    ⊕机电项目招商啦
    ⊕谁把我买了?
    ⊕机电行业展会大全
    ⊕十万企业抢登行业网址大全
    机电之家会议开通
    ⊕每日最新求购信息
    ⊕电工技术资料为了谁?
    ⊕机电设备维修与管理
    机电之家(中国)工程管理技术资料中心资讯版权声明:
    1、凡注明“机电之家采编”字样的所有作品均系本网原创,版权归机电之家所有,任何媒体摘编或享用本作品,需注明文章来源。违反声明者,本网将追究其相关法律责任。
    2、凡本网注明“来源:XXX网(非本网)”的作品,均转载自其他媒体,目的在于传达更多资讯,本网不承担相关法律责任。

    3、如在资讯、广告等方面想与本网合作,请致电:0571-87774297。Email:donemi@hz.cn

    首页
    首页
    合作网站:
    | 中国机电网机电之家安全生产网 | 机电论文 | 机电论坛 | 机电设备贸易 | 机电网址大全 | 浙江机电网 | 陕西机电网 | 单片机技术网 |
    电工园地 | 工程管理网 |环球会展网机电产品网 | 机电人才网 | 中国工控网 | 五金工具网 | 安全生产网 | 商业情报站 | 图纸资料下载 |
    友情连接:
    | 中国机电网 |中国工控网 | 行业培训网 | 中国工程机械网 | 机电一体化网 | 行业下载网 | PLC技术网 | 变频器技术网 |
    关于我们 | 联系我们 | 广告联系 | 付款方式 | 使用帮助 | 工程管理网 | 会员助手 | 友情链接
    电话:0571-87774297(杭州) 传真:0571-87774298(杭州)点击这里给我发消息66821730(技术) 点击这里给我发消息58733127(审核)
    机电之家 工程管理网所共享的
    工程管理,合同与档案管理,质量与成本管理,进度管理,风险管理,施工与现场管理,工程监理,
    项目管理知识,竣工验收管理,工程技术,工程施工方案,施工工艺流程,施工技术方法,工程施工设计,工程案例,
    成功工程案例,失败工程案例,工程论文,软件工程论文,工程项目管理论文,工程造价论文,工程材料论文工程,
    监理论文,工业工程论文,等都是来自会员发表或 网上收集发表。如果有任何侵犯您权益的地方,
    请联系我们,我们将马上进行处理。
    企业登陆可自行免费发布资料,本站代发布邮箱为88ctv@163.com
    Copyright 2007 diangong.jdzj.com Inc All Rights Reserved.工程管理网
    技术支持:杭州滨兴科技有限公司 mailto:88ctv@163.com
    免费发布信息主办:浙江-杭州-工程管理网网络运营部安全生产