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

下载本文档

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

文档简介

软件架构在软件开发过程中的作用1、软件架构的定义 软件架构(software architecture)是一系列相关的抽象模式,用于指导大型软件系统各个方面的设计。软件架构是一个系统的草图。软件架构描述的对象是直接构成系统的抽象组件。各个组件之间的连接则明确和相对细致地描述组件之间的通讯。在实现阶段,这些抽象组件被细化为实际的组件,比如具体某个类或者对象。在面向对象领域中,组件之间的连接通常用接口_(计算机科学)来实现。2、软件架构的种类根据我们关注的角度不同,可以将架构分成三种:逻辑架构软件系统中元件之间的关系,比如用户界面,数据库,外部系统接口,商业逻辑元件等等。物理架构软件元件是怎样放到硬件上的。比如一个分布于北京和上海的分布式系统的物理架构,图中所有的元件都是物理设备,包括网络分流器、代理服务器、WEB服务器、应用服务器、报表服务器、整合服务器、存储服务器、主机等等。系统架构系统的非功能性特征,如可扩展性、可靠性、强壮性、灵活性、性能等。系统架构的设计要求架构师具备软件和硬件的功能和性能的过硬知识,这一工作无疑是架构设计工作中最为困难的工作。此外,从每一个角度上看,都可以看到架构的两要素:元件划分和设计决定。首先,一个软件系统中的元件首先是逻辑元件。这些逻辑元件如何放到硬件上,以及这些元件如何为整个系统的可扩展性、可靠性、强壮性、灵活性、性能等做出贡献,是非常重要的信息。其次,进行软件设计需要做出的决定中,必然会包括逻辑结构、物理结构,以及它们如何影响到系统的所有非功能性特征。这些决定中会有很多是一旦作出,就很难更改的。根据作者的经验,一个基于数据库的系统架构,有多少个数据表,就会有多少页的架构设计文档。比如一个中等的数据库应用系统通常含有一百个左右的数据表,这样的一个系统设计通常需要有一百页左右的架构设计文档。3、 表现方法 软件架构是通过多种架构视图来表示的。这些视图本质上是以图形方式来摘要说明“在构架方面具有重要意义”的模型元素。它包括:用例视图:包括用例和场景;逻辑视图:包括最重要的设计类、从这些设计类到包和子系统的组织形式,以及从这些包和子系统到层的组织形式。它还包括一些用例实现;实施视图:包括实施模型及其从模块到包和层的组织形式的概览。 同时还描述了将逻辑视图中的包和类向实施视图中的包和模块分配的情况;进程视图:包括所涉及任务(进程和线程)的描述,它们的交互和配置,以及将设计对象和类向任务的分配情况。只有在系统具有很高程度的并行时,才需要该视图 ;配置视图:包括对最典型的平台配置的各种物理节点的描述以及将任务(来自进程视图)向物理节点分配的情况。只有在分布式系统中才需要该视图。4、 具体作用软件架构对新产品开发的作用:软件架构是沟通现实世界和计算机世界的一座桥。1.上乘业务目标。软件架构担负着为完成业务目标而进行大局规划的职责。2.下接技术决策。将面向业务的需求转向面向技术的软件架构设计方案,为后面的技术开发工作提供切实的指导和限制。3.控制复杂性。基于分而治之的思想,控制问题的复杂性。4.组织开发。5.利用迭代开发和增量交付。6.提高质量。软件架构对软件产品线开发的作用1.固化核心知识。2.提供可重用资产。3.缩短推出产品周期。4.降低开发和维护总成本。5.提高产品质量。6.支持批量定制。什么是软件产品线架构:针对一个公司或者组织内部一系列产品而设计的通用架构。这一系列产品具有很多相似性,从而它们可以共享同一个架构和部分具体实现,提高生产率。软件产品线架构的特点1.必须考虑一系列明确许可的变化。2.一定要文档化。3.必须提供产品创建者指南,描述架构的实例化过程。软件架构对软件维护的作用维护工作的两个来源:Bug和需求变更。一个Bug的修复或者一个新功能的增加,往往涉及架构中的一条模块协作链,因此谅解架构将有利于维护工作;反之,不了解架构而盲目修改程序,可能违背架构设计的思路,使整个系统的架构慢慢变得混乱,并可能引发出其他莫名其妙的Bug和问题。软件架构对软件升级的作用软件架构对这对软件系统不断修改,也需要进行重构,在以下两种情况,需要进行重构:1.架构太混乱

温馨提示

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

评论

0/150

提交评论