软件体系结构的风格和设计模式等

时间:2024.5.2

1. 软件体系结构的性质、研究意义和目标是什么?

性质:计算机体系结构是程序员所看到的计算机的属性,即概念性结构与功能特性。强调整体与部分,部分与部分的关系;研究系统构成的方法学;提倡多角度研究系统。

为什么研究软件体系结构?

软件系统要满足一定的需求(功能和质量)。随着软件系统的日益复杂,公众对软件的要求已不局限于功能上的满足,而是更加注重质量。

软件的质量受到软件体系结构的限制,或者说体系结构的选择受到要达到的质量特征的影响。

软件体系结构是软件系统的高层结构,高度抽象,超越算法和数据结构,试图在软件需求与软件设计之间架起一座桥梁,解决结构和需求向实现平坦过渡。

现在软件产生的问题:

◎ 软件成本日益增长

◎ 开发进度难以控制

在软件开发过程中,用户需求变化等各种意想不到的情况层出不穷,令软件开发过程很难保证按预定的计划实现,给项目计划和论证工作带来了很大的困难。

◎ 软件质量差

缺乏工程化思想的指导,程序员以自己的想法去代替用户对软件的需求,软件设计带有随意性,很多功能只是程序员的“一厢情愿”而已。

◎ 软件维护困难

特别是在软件使用过程中,原来的开发人员可能因各种原因已经离开原来的开发组织,使得软件几乎不可维护

2. 软件体系结构风格是描述某一特定应用领域中系统组 织方式的惯用模式。

体系结构风格反映了领域中众多系统所共有的结构和 语义特性,并指导如何将各个模块和子系统有效地组织成一个完整的系统。

管道-过滤器风格:缺乏交互性,常用于通信领域和编译器

事件驱动风格:易于完成并发多任务,具有良好的交互性,但对计算机系统的控制能力弱,很难共享数据。

分层风格:系统分成许多层,每层为上层服务,同时获取下层的服务。典型应用是网络协议。 仓库风格:数据单元被共享。常用于专家系统,如自然语言理解和模式识别。

3.3 客户/服务器风格

C/S体系结构定义了工作站如何与服务器相连,以实现数据和应用分布到多个处理机上。 C/S体系结构有三个主要组成部分:数据库服务器、客户应用程序和网络。

服务器

(1)数据库安全性的要求;

(2)数据库访问并发性的控制;

(3)全局数据完整性规则;

(4)数据库的备份与恢复。

客户应用程序

(1)提供用户与数据库交互的界面;

(2)向数据库服务器提交用户请求并接收来自数据库服务器的信息;

(3)利用客户应用程序对存在于客户端的数据执行应用逻辑要求。

◎ 网络通信软件的主要作用是完成数据库服务器和客户应用程序之间的数据传输。

C/S体系结构将应用一分为二,服务器负责(后台)数据管理,客户机(前台)完成与用户的交互任务。这是一种胖客户机瘦服务器的体系结构。

优点:

◎ C/S体系结构具有强大的数据操作和事务处理能力,模型思想简单,易于人们理解和接受。

◎ 系统的客户应用程序和服务器构件分别运行在不同的计算机上,对硬件和软件的变化显示出极大的适应性和灵活性,易于对系统进行扩充和缩小。

◎ 在C/S体系结构中,系统中的功能构件充分隔离,客户应用程序的开发集中于数据的显示和分析,而数据库服务器的开发则集中于数据的管理。

传统的二层C/S结构存在的局限:

◎ 二层C/S结构是单一服务器且以局域网为中心的,难以扩展至大型企业广域网或Internet。

◎ 软、硬件组合和集成能力有限。

◎ 客户机负载太重。

◎ 数据安全性不好。因为客户端程序可以直接访问数据库服务器,使数据库的安全性受到威胁。

三层C/S结构:增加一个应用服务器, 将应用逻辑驻留在应用服务器上,而表示层存在于客户机上,这种结构称为“瘦客户机”。

中间件:在三层C/S系统结构中,中间件是最重要的构件。

所谓中间件是一个用API定义的软件层,是具有强大通信能力和良好的可扩展性的分布式软件管理构架。

功能是在客户机和服务器或者服务器和服务器之间传送数据,实现客户机群和服务器群之间的通信。

优点:

◎ 允许合理地划分三层结构的功能,逻辑上保持相对独立性,提高系统的可维护性和可扩

展性。

◎ 允许更灵活有效地选用相应的平台和硬件系统,平台和各个组成部分具有良好的可升级性和开放性。

◎ 各层可选择各自最适合的语言并行开发。

◎ 利用功能层有效地隔离开表示层与数据层,未授权的用户难以绕过功能层非法访问数据层,为严格的安全管理奠定基础。

3.5 浏览器/服务器风格

◎浏览器/服务器(B/S)风格就是三层应用结构的一种实现方式,其具体结构为:浏览器/Web服务器/数据库服务器。

◎B/S体系结构利用不断成熟的WWW浏览器技术,用通用浏览器实现了原来需要复杂专用软件才能实现的强大功能,节约开发成本。

优点

◎系统安装、修改和维护全在服务器端解决。用户在使用系统时,仅需一个浏览器就可运行全部模块,达到了“零客户端” 。

◎B/S体系结构还提供了异种机、异种网、异种应用服务的联机、联网、统一服务的开放性基础。

缺点

◎ B/S体系结构缺乏对动态页面的支持能力,没有集成有效的数据库处理功能。

◎ B/S体系结构的系统扩展能力差,安全性难以控制。

◎ 采用B/S体系结构的应用系统,在数据查询等响应速度上,要远远地低于C/S体系结构。

◎ B/S体系结构的数据提交一般以页面为单位,数据的动态交互性不强,不利于在线事务处理(OLTP)应用

B/S与C/S混合软件体系结构

◎ B/S与C/S混合是一种典型的异构体系结构。

◎ 传统的C/S体系结构并非一无是处,而新兴的B/S结构也并非十全十美。C/S结构和B/S结构还将长期共存。

◇ 优点和缺点

◎ 优点是外部用户不直接访问数据库服务器,能保证企业数据库的相对安全。企业内部用户交互性较强,数据查询和修改的响应速度较快。

◎ 缺点是企业外部用户修改和维护数据时,速度较慢,比较烦琐,数据的动态交互性不强。 3设计模式的组成

四要素

模式名称(pattern name)

助记名,用一两个词描述模式的问题、解决方案和效果。

问题(problem)

描述应该在何时使用该模式。有时候,问题部分会包括使用模式必须满足的一系列先决条件。 解决方案(solution)

描述设计的组成成分,它们之间的相互关系及各自的职责和协作方式。模式像一个模板,可应用于多种不同场合。

解决方案并不描述一个特定而具体的设计,而是提供设计问题的抽象描述,用具有一般意义的元素组合来解决这个问题。

效果(consequences)

描述模式应用的效果及使用模式应权衡的问题

移植性。设计模式比框架更容易移植:框架一旦设计成形,以其为基础进行应用的开发显然要受制于框架的实现环境;而设计模式是与语言无关的,所以可以在更广泛的异构环境中进行应用。

框架是软件,而设计模式是软件的知识体,提升框架的设计水平。

模式,Pattern

应用领域。框架给出的是整个应用的体系结构;而设计模式则给出了单一设计问题的解决方案,并且这个方案可在不同的应用程序或者框架中进行应用。

内容。设计模式仅是一个单纯的设计,可被不同语言以不用方式来实现;而框架则是一种或多种设计模式和代码的混合体,编程者可以用各种方式对框架进行扩展,进而形成完整的不同的应用。

创建性模式(5种), 处理的是对象的创建过程

结构性模式(7种),处理的是对象/类的组合

行为性模式(13种),处理的是类和对象间的交互方式和任务分布

Factory Method(工厂模式)

Abstract Factory(抽象工厂模式)

Builder(建造模式)

Prototype(原型模式)

Singleton(单例模式)

Adapter (适配器模式)

Bridge(桥接模式)

Composite (组合模式)

Decorator (装饰模式)

Facade(门面模式)

Flyweight (享元模式)

Proxy(代理模式)


第二篇:毕业设计总结格式


毕业设计总结 企业网络的构建与规划 (系) 信息工程与艺术设计系 专 业 计算机网络技术 学生姓名 李慧清 学生学号指导教师 衣洋 提交时间 院

山东劳动职业技术学院信息工程与艺术设计系毕业设计总结

摘 要

随着计算机信息产业技术的普及和发展,各企事业单位的计算机应用越来越广泛。通过信息化提高企业的竞争力已成为大多数企业的共识,建立企业内部的局域网并联接国际网联网.信息化能够有效重复和加强协作,从而提高效率。企业要实现信息化管理,首要的条件就是建立企业局域网,然后在该系统的基础上开发应用各种基础和专业软件。网络化可以有效地实现企业内部的资源共享、信息发布、技术交流、生产组织。此外,还可以通过这个网络连接到世界上其它计算机,使得企业方便地实现与外部的交流。

企业网的建设是一项非常复杂的系统工程,企业作为一个特殊的网络应用环境,它的建设与使用都有其自身的特点。在选择局域网的网络技术时要体现 先进性,安全性,可靠性,可扩展性,经济性的原则。局域网技术是一项在20世纪xx年代发展起来的计算机互联技术,经过多年的发展,技术已经成熟,并得到了广泛的应用,局域网技术成为网络技术的重要组成部分。企业的规模、网络系统的复杂程度、网络应用的程度,用户对于网络的需求也各不相同,对于企业内部网,主要实现办公自动化和资源共享功能,通信服务功能,多媒体功能,远程VPN拨入服务功能等等。

关键词:局域网 交换机 路由器 配置 综合布线 服务器

第 2 页 共 5 页

引言

当今世界,各种先进的科学技术飞速发展,计算机和网络技术的发展,计算机网络及应用已惨透到社会各个领域,各行各业都处在全面网络化和信息化建设进程中,对网络应用型人才的需求也与日俱增,计算机网络行业已成为技术人才稀缺的行业之一。并且随着Internet的迅速普及,给我们的学习与生活条件带来更大的方便,我们与外部世界的联系将更加的紧密和快速。 随着人们对于信息资源共享以及信息交流的迫切需求,促使网络技术的产生和快速发展,计算机网络的产生和使用为人类信息文明的发展带来了变化。企业网已成为国与国之间通信的一部分,其主要包括各局域网的技术思想,网络设计方案、网络拓扑结构、交换与路由的配置,安全管理等内容。需要使各单位相互间真正做到高效的信息交换、资源共享,为各单位人员提供准确、可靠、快捷和各种生产数据和信息,充分发挥各单位现有的计算机设备和功能。为加强公司内部的业务和技术联系,提高工作效率,实现资源共享,降低运作及管理成本,公司内应建立生成树,实现公司的安全性和稳定性。

局域网是应用比较广泛的一种网络,也是本课题研究的对象。本片论文首先介绍了局域网的一些基础知识,如什么是局域网、局域网的分类、局域网组建等,之后对组建局域网所用到的两大类设备-路由器和交换机各进行了描述,并介绍了在组建网络时用的的一些基本命令和配置方法,最后通过实例来说明这些命令的使用。

在企业内部实现资源高度共享,为生产、办公、管理提供服务;实现办公自动化,提供总部与分部、分部与分部间通讯的出入口,提供电子函件、公告牌和办公信息查询等服务,提高工作效率和管理水平;及时、准确、可靠地收集、处理、存储、传输企业的办公、管理信息,完成与因特网的通讯和资源共享,实现企业资源和社会资源的有机结合;实现音频数字化资源共享、集中管理;建立企业网管理应用系统。以顺应时代的发展趋势,充分利用现代化技术来进一步提高管理质量和办公效率。

山东劳动职业技术学院信息工程与艺术设计系毕业设计总结

第一章 网络构建与规划的需求分析

1。1 拓扑结构需求分析

在进行网络的总体设计前,应当首先搞清楚给那些建筑物布线,每座建筑物中的哪些房间布线,每个房间的哪个位置要预留信息插座,建筑物之间的距离、建筑物的垂直高度和水平长度等。只有事先调查好这些情况,才能合理的设计网络拓扑结构,选择适当的位置作为网络管理中心以及作为设备间放置连线设备,有目的的选择组建网络所使用的通信介质和交换机。

1.2数据传输需求分析

网络设计者不仅要考虑到容纳网络中当前的用户,而且还应当微网络保留至少3-5年的可扩展能力,从而使在用户增加时,网络依然能够满足增长的需要。这一点非常重要,应为布线工程一旦完毕,就很难再进行扩充性施工。所以,在埋设网线和信息插座时,一定要有足够的余量,而连网设备则可以在需要时随时购置。

1.3性能需求分析

不同厂家乃至同一厂家不同型号的交换机在性能和功能上都有较大差异,有的安全性高、有的稳定性好、有的转发速度快、有的拥有特殊性能。因此,应当慎重考察和分析本网络对性能的根本需求,以便选择相应品牌和型号的交换机。

1.4安全需求

企业局域网其安全问题主要集中在对服务器的安全保护、防黑客和病毒、重要网段的保护以及管理安全上.因此, 必须采取相应的安全措施杜绝安全隐患,其中应该做到:公开服务器的安全保护防止黑客从外部攻击,入侵检测与监控,信息审计与记录,病毒防护,数据安全保护,数据备份与恢复,网络的安全管理。

针对这个企业局域网络系统的实际情况,在系统考虑如何解决上述安全问题的设计时应满足如下要求:1.大幅度地提高系统的安全性(重点是可用性和可控性); 2.保持网络原有的能特点,即对网络的协议和传输具有很好的透明性,能透明接入,无需更改网络设置; 3.易于操作、维护,并便于自动化管理,而不增加或少增加附加操作; 4.尽量不影响原网络拓扑结构,同时便于系统及系统功能的扩展; 5.安全保密系统具有较好的性能价格比,一次性投资,可以长期使用; 6.安全产品具有合法性,及经过国家有关管理部门的认可或认证。

第 5 页 共 5 页

更多相关推荐:
软件设计师-工作总结

20xx年度个人工作总结-XXX一年来,我以“服从领导、团结同志、认真学习、扎实工作”为准则,坚持高标准、严要求,完成了各项工作任务。一、加强学习、不断提升自身素养作为一名入党积极分值,认真学习党的精神,积极向…

软件系统设计说明书

北京邮电大学软件学院项目名称软件系统设计说明书项目名称软件系统设计说明书版本历史公司名称Page2of9项目名称软件系统设计说明书目录0文档介绍401文档目的与范围402读者对象403参考文献404术语与缩写解...

软件系统分析与设计 - 精简版

数据字典作用数据字典就是用来具体描述数据流图内数据的逻辑属性数据字典的作用是对数据流图中的各种成分进行详细说明作为数据流图的细节补充和数据流图一起构成完整的系统需求模型数据字典一般应包括对数据项数据结构数据存储...

软件工程课程设计总结报告

软件工程课程设计总结报告1.选题理由及情况说明、小组分工情况?选题理由:随着社会信息量的与日俱增,作为信息存储的主要媒体之一图书,数量、规模比以往任何时候都大的多,不论个人还是图书管理部门都需要使用方便而有效的…

CMMI-工程-TS-模板I-1 软件系统设计报告

广州润衡软件连锁有限公司软件系统设计报告项目名称软件系统设计报告软件系统设计报告版本历史软件系统设计报告目录0文档介绍401文档目的与范围402读者对象403参考文献404术语与缩写解释41系统概述52设计约束...

软件工程硕士论文目录设计-系统设计与实现

基于ERP的企业库存管理系统设计与实现第1章绪论错误未定义书签11选题背景及研究的意义错误未定义书签111选题背景错误未定义书签112研究的意义错误未定义书签12国内外研究现状错误未定义书签121库存理论的发展...

博客系统软件设计说明书

文档编号LMS02版本号V10文档名称项目名称编写校对软件设计说明书图书管理系统学号姓名学号姓名审核日期院系专业学号姓名20xx年5月17日通达学院计算机科学与技术1引言11编写目的根据需求规格说明书在仔细考虑...

基于.NET结构的软件系统框架的设计与实现

基于NET结构的软件系统框架的设计与实现摘要本文以教务管理系统为例分析了基于NET结构的软件系统框架的特点介绍了采用ADONET实体类LINQToSQLADONET实体框架等四种开发技术实现基于NET结构的软件...

《软件设计与体系结构》教学大纲

软件设计与体系结构课程教学大纲课程名称课程编码课程性质学分数学时数课外学时执笔者制订单位软件设计与体系结构SoftwareDesignandArchitecture0603025课程类型专业选修课专业主干课适用...

青岛BIM学习总结(汇总) 勘察设计院软件

参加建筑施工企业BIM技术应用与工程项目全过程实践专题研讨会的学习总结中铁十一局集团有限公司勘测设计研究院阮平平参加完6月12日至13日的建筑施工企业BIM技术应用与工程项目全过程实践专题研讨会两天的会议听了各...

艺术设计软件CORE常用工具总结

CORE作图注意事项1导入CtrlI2贝塞尔抠图时按C字母收回手柄3是直线抠图时抠过之后要把直线转换为曲线再进行编辑4先抠大致形再用形状工具造型双击加减节点挪动节点位置等5平滑节点使线条更加光滑点击上面平滑6撤...

应用软件系统架构设计的“七种武器”

应用软件系统架构设计的七种武器对于软件架构这一概念有太多的版本目前在业界由大师级人物或组织提出的对这一概念的阐述就超过十种以上我个人比较赞同RUPRationalUnifiedProcess中对软件架构的定义即...

软件系统设计总结(14篇)