软件体系结构在软件开发过程中的作用.doc_第1页
软件体系结构在软件开发过程中的作用.doc_第2页
软件体系结构在软件开发过程中的作用.doc_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

软件体系结构在软件开发过程中的作用1 为什么要用软件体系结构的思想来开发软件产品? 软件从最初的程序到今天的程序加文档,看起来并没有什么变化。然而今天的软件要实现的功能已与昨天不可同日而语,对软件各方面功能和性能的要求决定了软件空前的复杂。软件的开发已不是简单的写程序,在软件开发的整个生命周期里,从需求分析到设计到编码到测试到维护,编码仅占一小部分。软件开发的侧重点从编码已经转移到需求分析和软件总体架构设计 许多项目都是在回顾时,才发现问题在结构上.因结构的局限性,付出太多的代价. 在体系设计上付出一天努力解决的问题,在以后阶段可能要多付出几天到十几天也不一定能解决。由于当今的软件产品需求复杂、内容丰富、变更频繁。很难想像在一个没有规范,没有构造思想指导下软件开发会取得什么样的“成果”。2 软件体系结构在软件开发过程中的作用 1. 规范软件开发的基本架构。 体系结构一般说来与需求是密切相关的.明确的需求可以制定明确的软件规格,越明确的规格设计出来的软件架构越清晰.需求的变更也是必须要考虑,有明确的变更趋势也可以更早的在设计中体现出来。 在定制软件规格的阶段,要考虑一个问题,就是一些核心的技术,指的是这个项目中比较重要的关键的技术,应验证这些技术是否可行,如果稳定可靠才能采用,否则只能另寻它路.一些难关也是要考虑的.这样制定的规格才能符合实际.这些工作应作为结构设计上的重要参考. 今天几乎所有的软件开发都不可能从头做起,需要借鉴前人或组织中其他项目所拥有的经验。一个良好的软件体系结构可以给我们很多的帮助和参考。良好的体系结构可以规范软件开发过程,少走弯路,事半功倍。 2.便于开发人员与用户的沟通。 软件的高度复杂也决定了软件开发需要充分的设计,需要研究开发模式,研究体系结构,从宏观和更抽象的层次把握软件的开发,并把这整个过程付诸于文档的形式记录下来,在软件开发人员与系统设计人员、用户以及其他有关人员之间进行沟通交流,以达成共同的理解。 如果有明确的需求和规格,那应该进行详细的结构设计,从用例,到类图,到关键部分的序列图,活动图等,越细越好.多多的交流,尽量让更多的人了解项目的需求与现实环境,为设计提出建议.结构设计注重体系的灵活性.较多的考虑各种变更的可能性.这是最关键的阶段. 但这通常是理想状态,一般来说客户不会给出太明确的需求。应用软件体系结构的思想和方法可以比较好的划分范围、确定时间、规划成本、保证质量。 3. 模块化、层次化设计,有利于减少返工,提高效率。 整个项目一般受到多种限制,尤其明显的是计划,面对这些问题.在设计架构上要注意模块的划分,模块越独立越好.尽量把有明确需求的应用划分为独立的模块,模块与模块之间减少交集,一旦某个模块出现问题也不至于牵一发而动全身。 层次化设计就是一层一层分割,一目了然的处理方式。层次体系结构利用分层的处理方式来处理复杂的的功能,层次系统由于是上层子系统使用下层子系统的功能,而下层子系统不能够使用上层子系统的功能,下层每个程序接口执行当前的一个简单的功能,而上层通过调用不同的下层子程序,并按不同的顺序来执行这些下层程序,有效的杜绝了不同层次之间不该有的交集,减少了错误的发生,也便于检错。 4. 便于系统开发前、后期的筹备与服务。 现在的软件产品已经摆脱了小规模、作坊式的生产方式。对于软件公司来说,利用体系结构的思想开发产品不仅可以规范流程、节省时间而且还能留下大量的开发文档、产品类型框架、软件开发标准流程等资料。为今后的售前咨询和售后服务提供参考和依据。 说到软件体系结构就不能不提及非功能性需求。非功能性需求集中了各种约束,其中“人”的因素至关重要。可以说人是整个软件产品计划中的重中之重。一个IT项目的成败固然与良好的体系结构有密接的关系,但作为体系结构中的一环,应该投入大量的时间和精力去了解客户真正想要什么样的产品,开发人员是否充分与客户进行了有效的沟通,特别是一些隐性需求,其中会包含许多利益的成份。并非看上去最合理的IT架构就是最符要求的设计。人是一切项目成功的推手也是一切项目失败的导演,更是一切项目得以为继的绊脚石。 作为一个有着17年工作经验的在职人员从来没有参加过任何项目,实在是一种莫大的遗憾或者说是“悲哀”。但我亲眼见识过我单位的IT项目,并且也在某种程度上是一个使用者。就我的发现来说我单位的IT项目完全处于一种“人治”的阶段。没有从IT项目管理的角度去思考过问题,更谈不上用体系结构的思想去构建项目,基本上处于想到哪儿做到哪儿的地步。前期方案的制定、技术流派的选择、后期服务等相关方面均没有考虑。致使不同的功能模块使用不同的方式去开发,开发小组之间少有交流,导致后

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论