软件工程-计算机系统工程课件.ppt
《软件工程-计算机系统工程课件.ppt》由会员分享,可在线阅读,更多相关《软件工程-计算机系统工程课件.ppt(82页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、1第二章第二章 计算机系统工程计算机系统工程软件工程课件软件工程课件软件工程软件工程2 2第二章第二章 计算机系统工程计算机系统工程2.1 基于计算机的系统基于计算机的系统2.2 计算机系统工程计算机系统工程2.3 系统分析与结构设计系统分析与结构设计2.4 可行性研究可行性研究2.5 其他系统描述方法其他系统描述方法软件工程软件工程3 3n某些元素的一个集合或排列,这些元素被组织某些元素的一个集合或排列,这些元素被组织起来以实现某种方法,过程或借助处理信息进起来以实现某种方法,过程或借助处理信息进行控制。基于计算机系统的系统元素:行控制。基于计算机系统的系统元素:2.1 基于计算机的系统基于
2、计算机的系统输入输入输输出出过程过程软件软件文档文档人人硬件硬件数据库数据库系统系统软件工程软件工程4 4n软件软件 计算机程序、数据结构、相关文档计算机程序、数据结构、相关文档n硬件硬件 电子计算设备(如电子计算设备(如CPU,存储器)和存储器)和外部机电设备(如传感器、马达等)外部机电设备(如传感器、马达等)n人人 硬件和软件的用户硬件和软件的用户n数据库数据库 一个大型的有组织的信息集合一个大型的有组织的信息集合n文档文档 手册、表格和其它用以描述系统使用和手册、表格和其它用以描述系统使用和操作的信息操作的信息n过程过程 定义每一种系统元素的特定使用步骤,定义每一种系统元素的特定使用步骤
3、,或系统驻留的过程性环境或系统驻留的过程性环境计算机系统的系统元素计算机系统的系统元素软件工程软件工程5 5计算机系统的层次结构计算机系统的层次结构n基于计算机的系统本身可以成为一个基于计算机的系统本身可以成为一个更大的基更大的基于计算机系统中的一个元素于计算机系统中的一个元素,并称为那个更大,并称为那个更大系统的系统的宏元素宏元素。例如:。例如:工厂自动化系统工厂自动化系统制造系统制造系统库存系统库存系统数据输入设备数据输入设备材料传输系统材料传输系统制造单元制造单元数控机床数控机床机器人机器人信息系统信息系统软件工程软件工程6 62.2 计算机系统工程计算机系统工程n软件系统是基于计算机系
4、统的一部分,因此,软件系统是基于计算机系统的一部分,因此,在软件开发之前,首先要关注计算机系统工程,在软件开发之前,首先要关注计算机系统工程,分析该基于计算机系统的系统元素以及系统元分析该基于计算机系统的系统元素以及系统元素之间的关系,确定待开发软件的周边环境。素之间的关系,确定待开发软件的周边环境。n计算机系统工程是一个问题求解活动,目的是计算机系统工程是一个问题求解活动,目的是揭示、分析所期望的功能,并把它们分配到各揭示、分析所期望的功能,并把它们分配到各个单独的系统元素中去。个单独的系统元素中去。软件工程软件工程7 7 系统工程的实施系统工程的实施n识别用户的要求识别用户的要求n评价系统
5、的可行性评价系统的可行性u进行经济分析和技术分析进行经济分析和技术分析n把功能分配给硬件、软件、人、数据库和其把功能分配给硬件、软件、人、数据库和其它系统元素它系统元素n建立成本和进度限制建立成本和进度限制n生成系统规格说明,形成所有后续工程的基生成系统规格说明,形成所有后续工程的基础础软件工程软件工程8 82.2.1 识别用户的要求识别用户的要求n系统工程师的任务是:系统工程师的任务是:u与用户合作确认用户的目标和约束;与用户合作确认用户的目标和约束;u导出功能、性能、接口、设计约束和信息结导出功能、性能、接口、设计约束和信息结构的表示;构的表示;u将它们分配到每一个系统元素中;将它们分配到
6、每一个系统元素中;软件工程软件工程9 9传输线分类系统传输线分类系统CLSS实例分析实例分析n向系统工程师提交关于CLSS的描述如下:CLSS识别在传输线上移动的箱子,把它们分类到传输线末端的6个料箱中的一个。箱子通过一个分类站,在那里扫描并识别箱子上印的识别数字(条形码),把箱子分装到合适的箱箱里。传输线缓慢地移动,箱子以随机的次序通过并均匀地放置在传输线上。n作为系统工程师,首先应当考虑并回答哪些问题?软件工程软件工程1010n有多少种需处理的不同的识别数字?它们的表示形式是什么样的?n传输线的速度是多少?箱子之间的距离又是多少?n分类站与料箱之间的距离有多远?n料箱之间相隔的距离有多远?
7、n如果箱子上没有识别数字,或识别数字不正确,应当怎么办?n如果料箱装满了怎么办?n如果箱子目的地和料箱容量的信息要被移到工厂自动化系统中其他地方吗?需要实时数据采集吗?n可接受的出错/失效率是多少?n传输线系统当前已存在并可操作的部分是哪些?n对开发进度和预算的限制有哪些?系统工程师提出一些候选的分配方案。在每一个候选方案中,系统的功能和性能都被分配给各种不同的系统生成元素。软件工程软件工程11 11n对同一功能,可以分配给不同的系统元素。为了选取一种最有效的分配方案,应对每一方案使用一组权衡准则进行评价。u项目考虑成本与进度u商业考虑赢得、竞争u技术分析技术实力、功能与性能实现、维护u生产评
8、估生产工具与设备有效、质量保证u人员问题研制、生产人员,用户u环境界面外部接口u法律考虑是否违法系统工程师还应当考虑能解决用户问题的现货供应方案。等价的系统是否存在?能否购买到解决方案的主要部件?软件工程软件工程1212n一旦将功能和性能分配给每一个系统元素,系统一旦将功能和性能分配给每一个系统元素,系统工程师将通过工程师将通过硬件工程、软件工程、人类工程和数硬件工程、软件工程、人类工程和数据库工程据库工程等建立相应系统元素的需求模型,确定其等建立相应系统元素的需求模型,确定其功能和性能范围,接口要求。功能和性能范围,接口要求。2.2.2 系统分析和结构设计系统分析和结构设计 软件工程软件工程
9、1313n计算机系统工程师计算机系统工程师选择硬件元件的某种组合以选择硬件元件的某种组合以构成基于计算机系统的硬件元素构成基于计算机系统的硬件元素u通过硬件需求分析,为硬件的所有元件确定通过硬件需求分析,为硬件的所有元件确定精确的精确的功能、性能功能、性能和和接口接口需求。以及设计需求。以及设计约约束条件束条件(如尺寸,环境)及(如尺寸,环境)及测试准则测试准则。u设计一个初步的设计一个初步的硬件配置方案硬件配置方案,包括,包括通信协通信协议议、拓扑结构拓扑结构等。等。u确定确定质量需求质量需求,包括安全性、可靠性、可用,包括安全性、可靠性、可用性等方面的质量标准。性等方面的质量标准。1、硬件
10、系统模型、硬件系统模型软件工程软件工程14142、软件系统模型、软件系统模型n为实现要求的功能和性能,必须制作或获取一为实现要求的功能和性能,必须制作或获取一系列软件部件系列软件部件n软件元素分为两类软件元素分为两类u通过软件需求分析,通过软件需求分析,确认分配给软件的功能确认分配给软件的功能和性能和性能。u按照功能分解的结果,提出按照功能分解的结果,提出软件系统分解为软件系统分解为一系列子系统一系列子系统的构想,描述各子系统的功能的构想,描述各子系统的功能和性能要求,以及各子系统之间的交互。和性能要求,以及各子系统之间的交互。u各子系统在硬件系统中的部署情况。各子系统在硬件系统中的部署情况。
11、(参考中小型医院数字图书馆软硬件配置分析方案)(参考中小型医院数字图书馆软硬件配置分析方案)软件工程软件工程15153、人机交互模型、人机交互模型n是应用从心理学和方法论导出的知识来确定和是应用从心理学和方法论导出的知识来确定和设计高质量设计高质量HCI的多学科活动的多学科活动u根据分配给人的各项活动,建立人员活动根据分配给人的各项活动,建立人员活动(任务)网络图,(任务)网络图,描述人机交互的环境描述人机交互的环境。u根据根据用户分类用户分类和每一类用户的特点,针对用和每一类用户的特点,针对用户要求的每一个动作和机器产生的每一个动户要求的每一个动作和机器产生的每一个动作,作,建立建立“对话对
12、话”方式构想方式构想。u设计用户界面原型设计用户界面原型,将硬件、软件和其他系,将硬件、软件和其他系统元素组合起来形成简化的用户环境,模拟统元素组合起来形成简化的用户环境,模拟和评价人机交互的所有步骤。和评价人机交互的所有步骤。软件工程软件工程1616n数据库工程(包括数据库工程(包括数据库分析数据库分析、设计设计和和实现实现)n对于使用数据库的系统,对于使用数据库的系统,信息仓库信息仓库往往是所有往往是所有功能的核心功能的核心u系统工程师建立数据库模型:系统工程师建立数据库模型:u定义数据库中定义数据库中包含的信息包含的信息,查询的类型查询的类型,数数据存取的方式据存取的方式和和数据库的容量
13、数据库的容量等。等。u如果使用多个数据库管理系统,还要描述它如果使用多个数据库管理系统,还要描述它们之间的们之间的数据转换方式数据转换方式和和必要的数据结构必要的数据结构。4、数据库模型、数据库模型软件工程软件工程17172.2.3 可行性研究可行性研究 n可行性研究从可行性研究从u经济经济u技术技术u法律法律u用户操作用户操作n等方面分析所给出的解决方案是否可行。等方面分析所给出的解决方案是否可行。n这是项目立项的依据。只有当解决方案可行且有这是项目立项的依据。只有当解决方案可行且有一定经济效益或社会效益时才能开始系统开发。一定经济效益或社会效益时才能开始系统开发。软件工程软件工程18182
14、.2.4 建立成本和进度的限制建立成本和进度的限制 n开发一个基于计算机的系统必须有足够的资金开发一个基于计算机的系统必须有足够的资金投入和(交付)时间约束,这是与客户在合同投入和(交付)时间约束,这是与客户在合同或任务书中已经达成协议的。或任务书中已经达成协议的。n因此,在系统工程阶段必须进行因此,在系统工程阶段必须进行u任务分解任务分解u成本估算成本估算u进度安排进度安排u资源计划资源计划 软件工程软件工程1919.生成生成系统需求规格说明系统需求规格说明 n系统需求规格说明是在系统需求规格说明是在后续阶段中开发硬件系后续阶段中开发硬件系统、软件系统、数据库系统和人机接口系统的统、软件系统
15、、数据库系统和人机接口系统的时候使用的一个文档。时候使用的一个文档。n它描述了一个基于计算机系统的它描述了一个基于计算机系统的功能和性能功能和性能,以及管理该系统开发的一些限制条件。以及管理该系统开发的一些限制条件。n它界定每个被分配的系统元素。例如,它给软它界定每个被分配的系统元素。例如,它给软件工程师指明了软件在整个系统和各种子系统件工程师指明了软件在整个系统和各种子系统环境中的作用。系统需求规格说明还描述了系环境中的作用。系统需求规格说明还描述了系统的输入输出(数据与控制)信息。统的输入输出(数据与控制)信息。软件工程软件工程20202.3 系统分析与结构设计系统分析与结构设计 概念概念
16、系统系统(需求需求)分析分析系统体系结构设计系统体系结构设计硬件硬件硬件工程硬件工程软件软件软件工程软件工程数据库数据库数据库工程数据库工程人人人类工程人类工程软件工程软件工程2121 硬件工程阶段硬件工程阶段软件工程软件工程2222 软件工程软件工程2323软件工程软件工程2424 软件工程阶段软件工程阶段软件工程软件工程2525 软件工程软件工程2626软件工程软件工程2727系统分析系统分析和结构设计的主要活动和结构设计的主要活动1.分析待开发系统的特定的预期使用要求,以规定分析待开发系统的特定的预期使用要求,以规定系统需求系统需求u系统需求规格说明应描述:系统需求规格说明应描述:p系统
17、的功能与性能;系统的功能与性能;p业务、组织和用户需求;业务、组织和用户需求;p安全性、保密性、人类工程(人机工程学)安全性、保密性、人类工程(人机工程学)、接口、运行和维护需求;、接口、运行和维护需求;p设计限制和鉴定需求。设计限制和鉴定需求。u系统需求规格说明应形成文档。系统需求规格说明应形成文档。软件工程软件工程28282.根据评价准则评价系统需求,并将评价结果形成根据评价准则评价系统需求,并将评价结果形成文档文档u评价准则包括:评价准则包括:p获取需要的可追溯性;获取需要的可追溯性;p获取需要的一致性;获取需要的一致性;p可测试性;可测试性;p系统结构设计的可行性;系统结构设计的可行性
18、;p运作和维护的可行性。运作和维护的可行性。n3.建立系统的顶层结构建立系统的顶层结构软件工程软件工程2929u结构中应标出硬件配置、软件配置和人工操结构中应标出硬件配置、软件配置和人工操作过程等系统元素。作过程等系统元素。u应确保所有系统需求都已分配到各个系统元应确保所有系统需求都已分配到各个系统元素中。素中。u分配到各个系统元素中的系统需求和系统结分配到各个系统元素中的系统需求和系统结构应形成文档。构应形成文档。4.根据评价准则评价这些系统元素的系统需求和结根据评价准则评价这些系统元素的系统需求和结构,并将评价结果形成文档构,并将评价结果形成文档n评价准则包括:评价准则包括:软件工程软件工
19、程3030u系统需求的可追溯性;系统需求的可追溯性;u与系统需求的一致性;与系统需求的一致性;u所使用的设计标准和方法的适宜性;所使用的设计标准和方法的适宜性;u软件部分满足指定需求的可行性;运行和维软件部分满足指定需求的可行性;运行和维护的可行性。护的可行性。软件工程软件工程3131业务过程建模业务过程建模 n业务过程建模的目的是定义一个能有效利用信业务过程建模的目的是定义一个能有效利用信息进行业务活动的体系。息进行业务活动的体系。n从企业信息技术需求的全局角度出发,不仅需从企业信息技术需求的全局角度出发,不仅需要说明适用的计算体系架构,还需要开发适用要说明适用的计算体系架构,还需要开发适用
20、于企业计算资源的特定配置的软件系统架构。于企业计算资源的特定配置的软件系统架构。u数据体系架构数据体系架构u应用体系架构应用体系架构u技术基础设施技术基础设施 软件工程软件工程3232数据体系架构数据体系架构n数据体系架构描述数据体系架构描述业务功能的信息需求业务功能的信息需求。n架构的基本单元是架构的基本单元是业务对象业务对象。一个业务对象包。一个业务对象包括一组属性以及对质量、特征或数据的描述。括一组属性以及对质量、特征或数据的描述。n数据体系架构还要描述数据体系架构还要描述业务对象之间的关系业务对象之间的关系。关系表明对象之间是如何相联系的。关系表明对象之间是如何相联系的。n例如,例如,
21、“消费者消费者”和和“产品产品A”两个对象之间可以两个对象之间可以通过通过“购买购买”关系发生联系。关系发生联系。n在业务活动中流动的数据对象可以通过数据库在业务活动中流动的数据对象可以通过数据库组织起来,为业务需要提供所需的信息。组织起来,为业务需要提供所需的信息。软件工程软件工程3333应用体系架构应用体系架构 n应用体系架构描述为实现某些业务需求,在数应用体系架构描述为实现某些业务需求,在数据体系架构范围内参与数据加工的那些组件构据体系架构范围内参与数据加工的那些组件构成的系统。成的系统。n从软件工程角度可认为应用体系架构就是执行从软件工程角度可认为应用体系架构就是执行变换的程序(软件)
22、系统。变换的程序(软件)系统。n从更广泛的意义来看,应用体系架构应当将人从更广泛的意义来看,应用体系架构应当将人员角色(信息的变换者和使用者)和待实现的员角色(信息的变换者和使用者)和待实现的业务过程联系在一起。业务过程联系在一起。软件工程软件工程3434技术基础设施技术基础设施 n技术基础设施为数据体系架构和应用体系架构技术基础设施为数据体系架构和应用体系架构提供组织基础。提供组织基础。n基础设施包括用来支持应用和数据的硬件和软基础设施包括用来支持应用和数据的硬件和软件,包括计算机、操作系统、网络、通信链路、件,包括计算机、操作系统、网络、通信链路、存储技术和用于实现这些技术的体系结构(如存
23、储技术和用于实现这些技术的体系结构(如客户服务器)。客户服务器)。软件工程软件工程3535产品工程产品工程n产品工程的目的是将用户期望的业经定义的一组产品工程的目的是将用户期望的业经定义的一组能力转化为实际产品。能力转化为实际产品。n为此,产品工程也要给出系统架构和基础设施。为此,产品工程也要给出系统架构和基础设施。这个系统架构包括这个系统架构包括 4 个系统构件:个系统构件:u软件软件u硬件硬件u数据(数据库)数据(数据库)u人员人员n基础设施则包括能集成各种构件的技术和用于支基础设施则包括能集成各种构件的技术和用于支持构件的信息(如文档、持构件的信息(如文档、CDROM、视频)、视频)。软
24、件工程软件工程3636产品工程层次图产品工程层次图 软件工程软件工程3737n全局视图由需求工程得到。全局视图由需求工程得到。n全局性需求由客户提出,包括全局性需求由客户提出,包括u信息和控制要求信息和控制要求u产品功能和行为产品功能和行为u产品整体性能产品整体性能u设计和接口约束条件设计和接口约束条件u其他特殊要求。其他特殊要求。n一旦这些需求确定下来,需求工程的工作就是将一旦这些需求确定下来,需求工程的工作就是将这些功能和行为分配到上述这些功能和行为分配到上述 4 个系统构件中。个系统构件中。软件工程软件工程3838n系统构件工程是一组并发活动,分别处理系统构件工程是一组并发活动,分别处理
25、u软件工程软件工程u硬件工程硬件工程u人类工程人类工程u数据库工程数据库工程n这些系统构件。这些系统构件。n特别需要重视特别需要重视u各个系统构建的工程规范的建立各个系统构建的工程规范的建立u维持相互之间的积极沟通,需求工程要建立维持相互之间的积极沟通,需求工程要建立便于沟通的接口机制。便于沟通的接口机制。软件工程软件工程3939n对软件工程来说,需要进行分析和设计建模活动,对软件工程来说,需要进行分析和设计建模活动,以及包括编码、测试和支持任务在内的构造和部以及包括编码、测试和支持任务在内的构造和部署活动。署活动。u分析的任务是使用数据、功能和行为模型来分析的任务是使用数据、功能和行为模型来
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件工程 计算机系统 工程 课件
限制150内