计算机体系结构与算法分析毕业设计说明书,毕业设计
毕业设计说明书
学生姓名: 何阳 学 号: 20083841 学 院: 计算机与信息工程学院 专业年级: 软件工程 题 目: 计算机体系结构与基础算法分析研究
指导教师: 魏善沛 (教授)
评阅教师: 车生兵 (教授)
中南林业科技大学本科毕业设计 软件体系结构与基础算法分析
2012年5月
1 引言
作为早期设计决策的体现,软件体系结构明确了对系统实现的约束条件、决定了开发和维护组织的组织结构、制约着系统的质量属性、还能预测软件的质量、并且使推理和控制更改更为简单、有助于循序渐进的原型设计、还可以作为培训的基础。并且软件体系结构作为可传递和可重用的模型,比代码级的重用有更加大的好处,大幅度的缩短了软件的开发周期,缓解编码压力。
而算法是指对特定问题求解步骤的一种描述,它是指令的有限序列,其中的每一条指令表示一个或多个操作。而一个程序的核心也是最基本的也在于算法,并不是只有解决高深问题的指令序列才叫算法,比如简单地从数组中查询一个数据,然后从链表中查询数据,然后从树中查询数据,然后从已经排好序的数组中二分查找数据,然后从排序树中查找数据,这些都是算法。
软件体系结构领域研究目前也是非常活跃,随着用于描述和推理的形式化语言的发展,在提高软件工程师对软件系统的描述和理解能力中,软件体系结构描述起着重要作用,所以了解这些形式化语言有助于我们理解整个软件体系结构的编排,帮助我们把握整个软件的开发。
算法的复用属于代码层面的复用,在解决相似的或者相同的问题方面有着很大的优势。并且在提高程序的运行速度和操作反应速度以及更好的利用资源这些方面有着很好的效应,所以算法的运用在开发的过程中也是不可忽视的环节。
体系结构复用属于设计复用,比代码复用更抽象。一般认为易于复用的标准包括:领域易于理解,变化相对慢,内部有构件标准,与已存在的基础设施兼容,在大规模系统开发时体现规模效应。体系结构是对系统的高层抽象,反应的是系统的主要组成元素及交互关系,并只对感兴趣的属性进行建模,所以相对于算法来说更稳定,更适合于复用。
由于体系结构是在软件开发过程之初产生的,因此设计好的体系结构可以减少和避免软件错误的产生和维护阶段的高昂代价。体系结构是系统集成的蓝本、系统验收的依据,习题结构本身也需要分析与测试,以确定体系结构是否满足需求。所以我们要对软件体系结构有很深刻的认识。
1
中南林业科技大学本科毕业设计 软件体系结构与基础算法分析
鉴于软件体系结构是应大系统开发和软件产品线技术而出现的,因此我们有必要去研究软件体系结构与基础算法之间的关系。
2 软件体系结构概述
自从软件系统首次被分成许多模块,模块之间相互作用,组合起来有整体的属性,就具有了体系结构。优秀的开发者常常会使用一些体系结构模式作为软件体系结构实际策略,但他们并没有规范地、明确地表达出来,这样就无法将他们的知识与别人交流。事实上,软件总是具有体系结构,不存在没有体系结构的软件。软件就好比一座楼房,从整体上讲,是因为它有基础、主体和装饰,即操作系统上的基础设施软件,实现计算逻辑的主体应用程序,方便使用的用户界面程序。从细节上来看,每一个程序也是有结构的。早期的结构化程序就是以语句组成模块,模块的聚集和嵌套形成的层层调用的程序结构就是体系结构。
2.1 软件体系结构定义
虽然软件体系结构已经在软件工程领域中有着广泛的应用,但迄今为止还没有一个被大家所公认的定义。许多专家学者从不同的角度和不同的侧面对软件体系结构进行了刻画,下面列举二个较为典型的定义:
① Dewayne Perry和Alexander Wolf曾这样定义:软件体系结构式具有一定形式的结构化元素,即构件集合,包括处理构件、数据构件和连接构件。处理构件对数据进行加工,数据构件是被加工的信息,连接构件把体系结构的不同部分组合连接起来。这一定义注重区分处理构件、数据构件和链结构件,这一方法在其他的定义和方法中基本上得到保持。
② Mart Shaw和David Garlan认为软件体系结构是软件设计过程中的一个层次,这一层次超越计算过程中的算法设计和数据结构设计。体系结构问题包括总体组织和全局控制,通信协议,同步数据存储给设计元素分配特定功能,设计元素的组织、规模和性能,在各设计方案间进行选择等。软件体系结构处理算法与数据结构上关于整体系统结构设计和描述方面的一些问题,如全局组织和全局控制结构,关于通信、同步与数据存取的协议,设计构建功能定义,物理分布合
2
中南林业科技大学本科毕业设计 软件体系结构与基础算法分析
成,设计方案的选择、评估与实现等。
在本论文中使用软件体系结构的下列定义:
软件体系结构为软件系统提供一个结构、行为和属性的高级抽象,有构成系统的元素的描述、这些元素的相互作用、指导元素集成的模式以及这些模式的约束组成。软件体系结构不仅制定了系统的组织结构和拓扑结构,并且显示系统需求和构成系统的元素之间的对应关系,提供了一些设计决策的基本原理。
2.2 构件与软件的重用
一般认为,构件是指语义完整、语法正确和有可重用价值的单位软件,是软件重用过程中可以明确辨识的系统;结构上,它是语义描述、通信接口和实现代码的复合体。
图2-1青鸟构件模型
2.3 软件体系结构风格
软件体系结构风格是描述某一特定应用领域中系统组织方式的惯用模式。体系结构风格定义一个系统家族,即一个体系结构定义一个词汇表和一组约束。词汇表中包含一些构件和连接件类型,而这组约束指出系统是如何将这些构件和连接件组合起来的。体系结构风格反应了领域中众多系统所共有的结构和语义特征,并指导如何各个模块和子系统有效地组织成一个完整的系统。按照这种方式
3
中南林业科技大学本科毕业设计 软件体系结构与基础算法分析
理解,软件体系结构风格定义了用于描述系统的术语表和一组指导构件系统的规则。
对软件体系结构风格的研究和实践促进对设计的重用,一些经过实践证实的解决方案也可以可靠地用于解决新的问题。体系结构风格的不变部分使不同的系统可以共享同一个实现代码。只要系统是使用常用的、规范的方法来组织,就可以使别的设计者可以很容易地理解系统的体系结构。 2.3.1 客户/服务器
客户/服务器(C/S)计算技术在信息产业中占有重要的地位。网络计算经历了从基于宿主机的计算模型到客户/服务器计算模型的演变。
C/S软件体系结构式基于资源不对等,且为实现共享而提出来的,是20世纪90年代成熟起来的技术,C/S体系结构定义了工作站如何与服务器相连,以实现数据和应用分布到多个处理机上。C/S体系结构有三个主要组成部分:数据库服务器、客户应用程序和网络,如图2-2所示。
图2-2 C/S体系结构示 …… 此处隐藏:1252字,全部文档内容请下载后查看。喜欢就下载吧 ……
相关推荐:
- [基础教育]2016-2022年中国钢芯铝绞线市场现状调
- [基础教育]语文部编版初一语文下册练习题 句式变
- [基础教育]南京继续教育参考答案--深入学习贯彻习
- [基础教育]国旗下讲话稿——珍惜时间好读书
- [基础教育]北师大版六年级数学下册圆锥的体积教学
- [基础教育]人教版-音乐-四年级下册-四年级下册音
- [基础教育]乔布斯2019年斯坦福大学毕业典礼致辞.d
- [基础教育]2015年加油站安全知识竞赛试题及答案
- [基础教育]2020年教师年度考核个人工作总结
- [基础教育]2019年中考历史试题-2019年大庆市初中
- [基础教育]初三仁爱英语第一轮总复习教案
- [基础教育]SG-A094电气配管安装工程隐蔽验收记录
- [基础教育]冀教版小学数学三年级下册第六单元教材
- [基础教育]青岛版(五制)小学科学二年级下册16《制
- [基础教育]2018-2019年初中科学初一中考真卷测试
- [基础教育]幼儿园大班期末简短评语精选
- [基础教育]2018云南临沧公务员考试申论技巧:这样
- [基础教育]学校食堂经营管理方案
- [基础教育]新中国砥砺奋进的七十年原文
- [基础教育]真空泵的选型及常用计算公式
- 高职田径课程教学现状与对策
- 全髋关节置换术在老年股骨颈骨折患者中
- 青人社厅函〔2016〕576号(附件)工资
- cp101-07砂子检验作业指导书 - secret
- 微观经济学 第八章 博弈论 习题
- 2014高考真题(词语运用)汇编及答案
- 2018年人教版七年级语文下册《第三单元
- 苏教版数学四年级上册第一单元试题 - M
- 四川大学新闻与传播考研2000-2010年真
- 浙江万里学院英语专业四年制本科教学计
- 最新2018马年事业祝福语-范文word版(2
- 最全模具行业术语英文翻译
- 皮亚杰的发展心理学理论
- 64篇高考情景式默写 练习题及答案
- 仿写(学生稿)
- 《SQL Server数据库技术》试卷A
- 第七章作业答案
- 江苏省赣榆县海头高级中学高中语文必修
- 浙江省2001年10月自考正常人体解剖学答
- 2012英语重点短语




