版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第3章
计算机系统工程
计算机软件工程和硬件工程可以看作是一门更广义的学科——“计算机系统工程”内的活动。它们所要做的都是按一定的次序开发基于计算机的系统。计算机系统工程是指与构造基于计算机系统有关的过程、方法和技术。它是一种问题求解活动。计算机系统工程的任务是:组织并指导系统工程师定义全系统各层次中的所有基于计算机系统的要素。第3章
计算机系统工程
20世纪60年代开始发展起来的计算机系统工程,是计算机硬件、软件、数据通信装置、数据存储设备、规章制度和有关人员的统一体。软件工程在各个领域有着广泛的应用,如计算机辅助设计(CAD)系统、计算机辅助制造(CAM)系统、计算机辅助教学系统、计算机辅助医疗系统、军用的计算机指挥系统、通信软件工程、公用或专用的现代通信系统和信息服务系统都各具特色,管理软件是一类最具代表性的软件工程。
第3章
计算机系统工程3.1基于计算机的系统3.2可行性研究
3.3系统开发过程的新体系结构——快速原型与面向对象
3.4本章小结
3.1基于计算机的系统
基于计算机的系统是“某些要素的一个集合,这些要素被组织起来以实现某种方法、过程或借助处理信息进行控制。”图3.1给出了基于计算机系统的系统要素及相互之间关系。图3.1基于计算机系统的系统要素及相互之间关系
3.1.1计算机系统工程
计算机系统工程是一个问题求解活动,目的是揭示、分析所期望的功能,并把它们分配到各个单独的系统要素中去。计算机系统开发设计周期见图3.2。图3.2系统开发设计周期在系统的功能规范确立之后,下一步要对系统的功能进行认真、仔细的分析,问题的焦点集中于功能、性能、信息流和容量上。一个计算机系统方案应包括以下几个方面的内容:
(1)任务的来源,技术要求,质量指标和经费.(2)采取的技术途径。
(3)方案的规模,子系统的划分。
(4)系统的数据库结构。
(5)预计系统的各项指标。
(6)所需的设备、仪器、关键元器件、工艺工具等的购置情况及保证条件。(7)研制周期、异常情况的处理等等。用户中心设计——UCD方法在某种程度上代表了当今的计算机系统技术发展水平,使用该方法能设计极具竞争力的产品,UCD方法适合一切项目。现将传统设计方法与用户中心设计——UCD方法加以比较。
传统的设计方法技术驱动以组件为中心有限的多学科协作注重产品的内部体系结构没有专门考虑用户体验竞争意识不强开发先于用户评价产品缺陷质量观不重视用户测量只考虑现有用户
UCD方法用户驱动以解决方案为中心多学科小组成员协同工作注重产品的外部设计专门考虑用户体验以竞争为目标由用户评价设计方案后才开发用户质量观很重视用户测量考虑当前和将来所有用户图3.3UCD方法和传统设计方法的比较
3.1.2硬件和硬件工程
基于计算机的系统离不开计算机硬件的支撑。计算机系统工程师根据系统需求为硬件系统指派任务,产生硬件需求。
21世纪以来,信息可以很方便地通过计算机网络实现共享。作为网络文件服务器的计算机,可以给分布在网络上不同站点的客户提供共享的公用程序和数据,这就是客户/服务器计算模式。计算机的硬件工程是在几十年电子设计经验的基础上发展起来的,一般将硬件工程分为三个阶段。
硬件工程阶段需解决的问题成果(一)硬件研制计划需求分析根据功能可选择、采购的硬件?哪几种硬件接口?必须制造的硬件?潜在的问题及资源?确定项目成本估计、工程进度估计、硬件规格说明(二)硬件设计硬件实现确定硬件元素中的所有元件精确的功能、性能和接口需求。设计约束条件(如尺寸,环境)及测试准则;必要时建造原型并对原型进行测试;画出生产图、硬件规格说明书、对规格说明书评审和修改(三)生产、销售售后服务质量如何得到保证?产品的维护和修理如何实现?建立质量保证方法、建立产品销售机构、储备备件,售后服务表3.1硬件工程三个阶段
3.1.3软件和软件工程
从系统工程的角度来看,软件与硬件、软件工程与硬件工程分别是基于计算机系统和基于计算机的系统工程的重要组成部分。系统工程的论证阶段应该确定系统的软硬件功能和性能。系统对软件提出的功能和性能要求将成为软件需求分析的基础。基于计算机系统的软件要素由程序、数据和文档组成。它们分为两类应用软件与系统软件:应用软件实现信息处理,系统软件完成使应用软件能与其他系统要素交互的控制功能。
一个基于计算机的系统可以用输入—处理—输出(IPO)模型来表示。软件要素在这个模型的各个方面都起着一定的作用。
(1)软件从系统的外部实体或其他系统要素(包括宏要素)接收输入信息。
(2)软件还用于建立数据库的接口,使程序能够存取预先存储的数据。(3)软件实现系统功能所需要的计算方法。(4)在实际使用中,软件必须产生输出,把数据转换成某种能适合于输出介质的格式,或适合于输出设备接口的格式。软件工程三个阶段软件工程阶段必须完成的步骤阶段成果(一)软件定义制定软件项目规划;需求分析和定义;确定软件性能和资源约束;软件要素定义验收标准成本、工程进度估计;通过软件原型化/信息域分析获得软件规格说明;对软件规格说明技术评审(二)软件开发、实现软件总体结构设计——软件模块结构;数据设计、过程设计——接口及信息结构;编码——生成源程序代码确定一些有效性准则;对规格说明书评审修改;根据准则判断软件质量(三)检验、发行、维护测试软件,找出错误:进行单元测试——调试,组装测试——调试;开发用户文档;把软件发行给终端用户对测试文档、测试用例和测试结果进行评审;建立配置管理机制;整个使用寿命中维护软件;3.1.4人机工程
人机工程是应用从心理学和方法论导出的知识来确定和设计高质量HCI(人机界面)的多学科活动。人机工程过程包括以下步骤:(1)活动分析。
(2)语义分析和设计:
(3)语法和词法设计:
(4)用户环境设计:
(5)原型:
人机工程的关键要素是设计一个整体解决方案,它应该对用户而言:易于购买、易于安装
、易于学习、易于使用、直观、吸引人、
有用3.1.5数据库和数据库工程
数据库系统是基于计算机系统的重要组成部分,它将有关的硬件、软件、数据和数据库管理人员组合起来,为用户提供信息服务。开发、运行和管理一个数据库系统是一项复杂的数据库工程,人们也常称之为数据库工程。
阶段任务结果(一)需求分析、可行性研究调查用户信息需求、处理要求进行可行性论证;提出成本预算和工作计划(二)选择硬件和软件应确定数据管理系统;支持数据库查询、维护和分析确定运行的操作系统、网络环境(三)数据库设计与实现根据需求分析和数据分析;概念设计;逻辑设计;物理设计;评审、测试;产生需求说明和数据说明;产生数据库概念模型;产生逻辑模型;产生数据软件工程的原则;生成各种文档(四)运行和管理及时补充、修改和更新数据库;数据的收集、整理、分类;储存数据库的管理和维护对数量大、类型多、关系复杂的数据存储应有利于数据的查询、修改并尽量减少数据的冗余;为用户提供培训及有关资料表3.4数据库工程的阶段不同的数据存储管理模式有不同的特点,适用范围也不相同。
3.2可行性研究可行性研究的目的就是用最小的代价在尽可能短的时间内确定问题是否能够解决。
在讨论一个项目是否可行,需要从市场可行性、技术可行性、经济可行性、法律可行性分析几个方面着手进行考虑。3.2.1可行性研究的任务
图3.4表明了可行性研究的步骤
3.2.2市场可行性
要求在项目启动时定位目标市场,清楚在这个市场中的所有用户及他们的特点,并且清楚大部分目标用户当前所采用的解决方案,从而掌握产品竞争形势。必须在项目一开始就得到这些信息。如果没有这些信息或信息不全,那么接下来的设计活动是否有效就值得怀疑了。3.2.3经济可行性
基于计算机系统的成本—效益分析是可行性研究的重要内容,它用于评估基于计算机系统的经济合理性,给出系统开发的成本论证,并将估算的成本与预期的利润进行对比。计算机系统的成本由四个部分组成:①购置并安装软硬件及有关设备的费用;②系统开发费用;③系统安装、运行和维护费用;④人员培训费用。在系统分析和设计阶段只能得到上述费用的预算,即估算成本。在系统开发完毕并交付用户运行后,上述费用的统计结果就是实际成本。
系统效益包括经济效益和社会效益两部分。经济效益指应用系统为用户增加的收入,可以通过直接的或统计的方法估算。社会效益只能用定性的方法估算。1.成本估计(1)代码行技术(2)任务分解技术
2.成本/效益分析
成本/效益分析的第一步是估计开发成本、运行费用和新系统将带来的经济效益。3.货币的时间价值通常用利率的形式表示货币的时间价值。假设年利率为i,如果现在存入P元,则n年后可以得到的钱数为:F=P(1+i)n这也就是P元钱在n年后的价值。反之,如果n年后能收入F元钱,那么这些钱的现在价值是:P=F/(l+i)n
假定年利率为12%,利用上面计算货币现在价值的公式可以算出修改库存清单系统后每年预计节省的钱的现在价值,如表所示。
年将来值(元)(l+i)n现在值(元)累计的现在值(元)125001.122232.142232.14225001.251992.984225.12325001.401779.456004.57425001.571588.807593.37525001.761418.579011.944.投资回收期
所谓投资回收期就是使累计的经济效益等于最初投资所需要的时间。投资回收期越短就越能获得利润。例如,修改库存清单系统:两年以后可以节省4225.12元,比最初的投资(5000元)还少774.88元;三年以后将再节省1779.45元,774.88/1779.45=0.44,因此,投资回收期是2.44年。
5.纯收入
衡量工程价值的另一项经济指标是工程的纯收入,也就是在整个生命周期之内系统的累计经济效益(折合成现在值)与投资之差。
3.2.4技术可行性
技术可行性的评估必须在软件系统分析和定义过程中进行,当技术可行性确定后,就可以完成在规格说明书。一般地,技术可行性要考虑的情况包括:
开发风险:在分析时给出的各种约束条件下,系统能否被设计出来,并实现必需的功能和性能?资源有效性:可用于开发系统元素的人员是否存在问题?是否具备用于建立系统的其他资源(硬件、软件)?技术:相关技术的发展是否能支持这个系统?3.2.5方案选择
系统分析任务完成后,系统工程师开始研究问题求解方案。通常系统工程师将一个大的复杂系统分解为若干个子系统;精确地定义子系统的界面、功能和性能;给出各子系统之间的关系。这样可以降低解决方案的复杂性,有利于人员的组织和分工,提高系统开发效率和工作质量。可行性研究的结果可作为系统规格说明书的一个附件。
项目背景:问题描述;实现环境;限制条件;管理概要与注意事项:重要的研究结果;说明;注意事项;影响;候选方案:候选系统的配置;选择最终方案的准则;系统描述:简略的范围描述;分配元素的可行性;市场可行性
:项目是否有潜在市场,以及市场的变化对项目影响经济可行性(成本—效益分析):经费概算;预期的经济效益;技术可行性(技术风险评价):技术实力;已有工作基础;设备条件;法律可行性:系统开发可能导致的侵权、违法和责任;用户使用可行性:用户单位的行政管理、工作制度;使用人员的素质;其他与项目有关的问题:其他方案介绍;未来可能的变化。表3.7可行性研究报告目录
3.3系统开发过程的新体系结构
——快速原型与面向对象
1.存在的问题(1)有些类型的系统需求是模糊的(2)项目参与者之间存在通信鸿沟(3)预先定义的需求可能是过时的
2.解决问题的途径
为克服传统方法的缺点,人们在实践中逐渐创造出快速原型法和面向对象方法等软件工程的新途径。
面向对象的统一软件开发方法迭代开发模式
3.4本章小结计算机系统工程
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 外科术后出血考试试题及答案解析
- 2026年兰州市安宁区政务服务中心(窗口人员)招聘笔试备考试题及答案详解
- 自考种子学试卷及答案解析
- 基于交际翻译理论的《澳大利亚经济概况》(第四至六章)英汉翻译实践报告
- 基于函数摘要和欠约束符号执行的内存泄漏缺陷检测技术研究
- SnS2@SnS异质结-CS与CoS1.097-HMCS复合材料的可控制备及其在DSSCs对电极中的应用研究
- 2026中铁十五局集团有限公司招聘(21人)笔试备考试题及答案详解
- 重污染企业跨行业并购重组绿色绩效研究-以金圆股份为例
- 2026年山西省临汾市工会人员招聘考试参考题库及答案详解
- 通讯网络公司技术项目经理绩效考核表
- 2025年4月自考08119管理会计试题及答案含评分参考
- 冰雪运动研学行行业深度调研及发展项目商业计划书
- 婚纱影楼门市培训
- GB/T 31033-2025石油天然气钻井井控技术要求
- 入伍退学费委托书模板
- 消防改造工程施工投标方案(技术方案)
- T-CI 349-2024 城市河道(水域)智慧养护管理规范
- 光伏发电工程施工应急预案
- 控制工程-课件
- 主播艺人入职面试信息登记表
- 03S702钢筋混凝土化粪池图集
评论
0/150
提交评论