




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、软件工程软件工程 第2章 系统工程 2 什么是系统什么是系统 n系统系统(ISO):一组或一系列相关的元素:一组或一系列相关的元素人、人、 产品产品(硬件和软件硬件和软件)及过程(设备、装备、材及过程(设备、装备、材 料和规程)料和规程),其行为满足运转需要并且为,其行为满足运转需要并且为 产品生存周期的维持提供支撑产品生存周期的维持提供支撑 n软件密集系统软件密集系统(Software-Intensive System) nSoftware + Hardware + Human Activities n计算机软件只是其中的一环计算机软件只是其中的一环 n仅仅软件这一部分也是由密集交互的多种软
2、件组成仅仅软件这一部分也是由密集交互的多种软件组成 的的多种应用软件、操作系统、中间件等多种应用软件、操作系统、中间件等 3 系统的例子系统的例子 n国美电器的销售系统国美电器的销售系统 n在若干城市的若干门店、具有合作关系的家电企业在若干城市的若干门店、具有合作关系的家电企业 n一套行之有效的销售模式:处理上游和下游的关系一套行之有效的销售模式:处理上游和下游的关系 n计算机系统:校园一卡通计算机系统:校园一卡通 n硬件设备:服务器、刷卡器、一卡通网络、硬件设备:服务器、刷卡器、一卡通网络、IC卡卡 n软件系统:结算软件、银行接口、查询系统软件系统:结算软件、银行接口、查询系统 n规程规程/
3、人员:设计与一卡通相关办理、消费、挂失、充值、人员:设计与一卡通相关办理、消费、挂失、充值、 结算等制度和流程,设置相应的岗位和职责结算等制度和流程,设置相应的岗位和职责 n系统分析和规划:合理规划各软硬件部件、规程、人员系统分析和规划:合理规划各软硬件部件、规程、人员 的目标、需求,使各部分相互配合形成完整的的目标、需求,使各部分相互配合形成完整的 4 系统工程系统工程 n系统工程:关注目标系统各种相关要系统工程:关注目标系统各种相关要 素的分析、设计,并将其组织成素的分析、设计,并将其组织成有机有机 的系统的系统 n有机:像生命体一样,各个部分密切配合、有序演有机:像生命体一样,各个部分密
4、切配合、有序演 化,达到系统的总体目标化,达到系统的总体目标 n系统工程与软件工程系统工程与软件工程 n系统工程更加广泛,软件工程源于系统工程系统工程更加广泛,软件工程源于系统工程 n任何软件的开发都处于一个更大的系统之中,因此任何软件的开发都处于一个更大的系统之中,因此 软件开发必须先从了解软件所处的系统全局视图软件开发必须先从了解软件所处的系统全局视图 5 内容摘要内容摘要 n系统工程的任务系统工程的任务 n可行性分析可行性分析 6 n所谓基于计算机的系统是指:通过处理信息来完所谓基于计算机的系统是指:通过处理信息来完 成某些预定义目标而组织在一起的元素的组合成某些预定义目标而组织在一起的
5、元素的组合 n对于用户而言有意义的是可以达到预期目标的系对于用户而言有意义的是可以达到预期目标的系 统统(完整的软硬件解决方案完整的软硬件解决方案)而不是单一软件而不是单一软件 n组成基于计算机系统的元素主要有:软件、硬件、组成基于计算机系统的元素主要有:软件、硬件、 人员、数据库人员、数据库(及其它系统软件及其它系统软件)、文档和规程、文档和规程 (Procedure) 7 系统元素系统元素 n软件软件指计算机程序、数据结构和相关的工作产品,指计算机程序、数据结构和相关的工作产品, 以实现所需要的逻辑方法、规程或控制以实现所需要的逻辑方法、规程或控制 n硬件硬件指提供计算能力的电子设备、支持
6、数据流的指提供计算能力的电子设备、支持数据流的 互连设备互连设备( (如网络交换器、电信设备)和提供外部如网络交换器、电信设备)和提供外部 世界功能的电子机械设备(如传感器、马达等)世界功能的电子机械设备(如传感器、马达等) n人员人员指硬件和软件的用户和操作者指硬件和软件的用户和操作者 8 n数据库数据库 指通过软件访问并持久存储的指通过软件访问并持久存储的 大型的有组织的信息集合大型的有组织的信息集合 n文档文档 指描绘系统的使用和指描绘系统的使用和/或操作的或操作的 描述性信息描述性信息(如模型、规格说明、硬复如模型、规格说明、硬复 制手册、联机帮助文件、制手册、联机帮助文件、Web站点
7、站点) n规程(规程(procedures) 指定义每个系指定义每个系 统元素的特定使用或系统所处的过程性统元素的特定使用或系统所处的过程性 语境的步骤语境的步骤 9 计算机软件与系统计算机软件与系统 n计算机软件一般位于整个系统的核心位置计算机软件一般位于整个系统的核心位置 n不同的计算机信息系统具有不同的特点不同的计算机信息系统具有不同的特点 n一般应用软件系统只要求标准硬件一般应用软件系统只要求标准硬件(PC、服务器等、服务器等)配置,配置, 因此往往只需要关注软件本身因此往往只需要关注软件本身 n嵌入式软件系统中存在复杂的软硬件交互:例如工业控嵌入式软件系统中存在复杂的软硬件交互:例如
8、工业控 制系统需要直接控制多种硬件设备、手机终端软件需要制系统需要直接控制多种硬件设备、手机终端软件需要 考虑手机的配置情况等考虑手机的配置情况等 n随着软硬件技术的发展,软硬件的边界不断变化随着软硬件技术的发展,软硬件的边界不断变化 n不断增强的硬件指令支持不断增强的硬件指令支持 nUSB Key、加密狗等硬件解决了许多软件很难解决的问题、加密狗等硬件解决了许多软件很难解决的问题 10 系统的层次结构系统的层次结构 n任何系统都处在一个更大的系统之中,形成系统的任何系统都处在一个更大的系统之中,形成系统的 层次结构层次结构 n校园一卡通系统包括基础网络、结算系统、银行接口系统、消费终校园一卡
9、通系统包括基础网络、结算系统、银行接口系统、消费终 端等子系统端等子系统 n一卡通系统处于整个学校系统一卡通系统处于整个学校系统(教务、财务、学工教务、财务、学工)之中之中 n学校系统属于整个高等教育系统乃至社会系统的一环学校系统属于整个高等教育系统乃至社会系统的一环 n我们在某个项目中关注的具体系统总是有确定的边我们在某个项目中关注的具体系统总是有确定的边 界,例如对于结算系统项目而言:界,例如对于结算系统项目而言: n已知:消费终端可以将基本消费信息通过一卡通网络发送过来、银已知:消费终端可以将基本消费信息通过一卡通网络发送过来、银 行接口系统支持银行系统的联机圈存操作行接口系统支持银行系
10、统的联机圈存操作 n当前系统任务:根据消费及圈存信息记录更新各学生账户信息当前系统任务:根据消费及圈存信息记录更新各学生账户信息 11 基于计算机的系统结构基于计算机的系统结构 n对于基于计算机的系统而言对于基于计算机的系统而言 n基于计算机的系统可以成为一个更大的基于计算机系统中的一个元基于计算机的系统可以成为一个更大的基于计算机系统中的一个元 素,称其为那个更大系统的宏元素素,称其为那个更大系统的宏元素 n基于计算机的系统可呈现一个层次结构基于计算机的系统可呈现一个层次结构 工厂工厂 自动自动 化系化系 统统 12 为什么强调系统工程为什么强调系统工程 n被动选择:现实的信息系统往往是一个
11、被动选择:现实的信息系统往往是一个 复杂的系统工程,其中的软件需要与系复杂的系统工程,其中的软件需要与系 统中其它部件合理分配责任、密切配合,统中其它部件合理分配责任、密切配合, 从而达到系统的总体目标从而达到系统的总体目标 n主动选择:只作自己擅长的事情主动选择:只作自己擅长的事情 n选择合适的硬件解决方案选择合适的硬件解决方案 n选择基础软件解决方案,或者第三方软件部件和软件服选择基础软件解决方案,或者第三方软件部件和软件服 务,不用自己务,不用自己 13 例:一卡通结算系统中的安全性要求例:一卡通结算系统中的安全性要求 n从硬件方面,整个校园消费网络采用专线联从硬件方面,整个校园消费网络
12、采用专线联 接,不与校园网连通,同时要求敏感操作员接,不与校园网连通,同时要求敏感操作员 使用使用USB Key进行身份认证进行身份认证 n从应用软件方面,进行日志记录,并与从应用软件方面,进行日志记录,并与USB Key认证接口进行集成认证接口进行集成 n从制度方面:建立机房及核心服务器的日常从制度方面:建立机房及核心服务器的日常 安全管理制度,设置专人负责可疑交易信息安全管理制度,设置专人负责可疑交易信息 的监控的监控 14 软件项目的客户方基础设施软件项目的客户方基础设施 n业务现状、人员现状业务现状、人员现状 n遗留数据、遗留系统以及重用的可能遗留数据、遗留系统以及重用的可能 n是否处
13、于一个规划中的更大系统之中,是否处于一个规划中的更大系统之中, 与其他系统的关系如何与其他系统的关系如何 15 软件项目的第三方基础设施软件项目的第三方基础设施 n基础软硬件系统基础软硬件系统 n服务器、服务器、OS、DB等等 n可用软件构件可用软件构件 n特殊硬件设备:特殊硬件设备:USB Key、加密狗等、加密狗等 n可能的项目合作伙伴可能的项目合作伙伴 n软件外包软件外包 n构件外包构件外包 16 内容摘要内容摘要 n基于计算机的系统基于计算机的系统 n可行性分析可行性分析 17 计算机系统工程计算机系统工程 n计算机系统工程是一个问题求解的活计算机系统工程是一个问题求解的活 动,其目的
14、是分析基于计算机的系统动,其目的是分析基于计算机的系统 的的功能功能、性能性能等要求,并把它们分配等要求,并把它们分配 到基于计算机系统的各个到基于计算机系统的各个系统元素系统元素中,中, 确定它们的确定它们的约束条件约束条件和和接口接口 18 计算机系统工程的任务计算机系统工程的任务 n识别用户的要求识别用户的要求( (了解问题了解问题) ) 标识系统的功能和性能范围,确定标识系统的功能和性能范围,确定 系统的功能、性能、约束和接口系统的功能、性能、约束和接口 19 n系统建模和模拟系统建模和模拟( (提出完整的解决方案提出完整的解决方案) ) 通常可考虑建立如下模型:通常可考虑建立如下模型
15、: 硬件系统模型硬件系统模型:描述基于计算机系统中的硬件(包括计:描述基于计算机系统中的硬件(包括计 算机、受系统控制的其它硬件设备等)配置、通信协议、算机、受系统控制的其它硬件设备等)配置、通信协议、 拓扑结构、以及确保基于计算机系统的安全性、可靠性、拓扑结构、以及确保基于计算机系统的安全性、可靠性、 性能等要求的措施。性能等要求的措施。 软件系统模型软件系统模型:描述各软件子系统的功能、性能等要求,:描述各软件子系统的功能、性能等要求, 它们在硬件系统中的部署情况,以及软件子系统之间的它们在硬件系统中的部署情况,以及软件子系统之间的 交互。交互。 人机接口模型人机接口模型:描述人如何与基于
16、计算机的系统进行交:描述人如何与基于计算机的系统进行交 互,包括用户环境、用户的活动、人机交互的语法和语互,包括用户环境、用户的活动、人机交互的语法和语 义等。义等。 数据模型数据模型:描述基于计算机的系统使用了哪些数据库管:描述基于计算机的系统使用了哪些数据库管 理系统,如果使用多个数据库管理系统,还应描述它们理系统,如果使用多个数据库管理系统,还应描述它们 之间的数据转换方式,必要时可给出主要的数据结构。之间的数据转换方式,必要时可给出主要的数据结构。 20 系统模型通常可用图形描述,并加以相应的 文字说明。 必要时,在系统建模后可构造原型,进行系 统模拟,以分析所建的模型能否满足整个基于
17、 计算机的系统的要求。 21 n成本估算及进度安排成本估算及进度安排( (给出实施计划给出实施计划) ) 对将开发的基于计算机的系统进行成本估 算,并作出进度安排。 n可行性分析可行性分析( (系统及实施方案的现实可行性系统及实施方案的现实可行性) ) 从经济、技术、法律等方面分析所给出的 解决方案是否可行,通常只有当解决方案 可行并有一定的经济效益和/或社会效益时 才开始真正的基于计算机的系统的开发。 n生成系统规格说明生成系统规格说明 22 内容摘要内容摘要 n基于计算机的系统基于计算机的系统 n系统工程的任务系统工程的任务 23 可行性分析可行性分析 开发一个基于计算机的系统开发一个基于
18、计算机的系统( (以及其他系以及其他系 统统) )通常都受到资源(人力、财力、设备通常都受到资源(人力、财力、设备 等)和时间上的限制,可行性分析主要等)和时间上的限制,可行性分析主要 从经济、技术、法律等方面分析所给出从经济、技术、法律等方面分析所给出 的解决方案是否可行,能否在规定的资的解决方案是否可行,能否在规定的资 源和时间的约束下完成源和时间的约束下完成 24 经济可行性分析经济可行性分析 n经济可行性主要进行成本效益分析,从经济角度, 确定系统是否值得开发。 n基于计算机的系统的成本主要包括: 购置硬件、软件(如数据库管理系统、第三方 开发的构件等)和设备(如传感器等)的费用 系统
19、的开发费用 系统安装、运行和维护费用 人员培训费用 25 n效益 经济效益包括使用基于计算机的系统后可增加的 收入和可节省的运行费用(如操作人员数、工作 时间、消耗的物资等)。在进行成本效益分析时 通常只统计五年内的经济效益。 社会效益指使用基于计算机的系统后对社会产生 的影响(如提高了办事效益,使用户满意等), 通常社会效益只能定性地估计。 经济效益通常可用货币的时间价值、投资回 收期和纯收入来度量。 26 n货币的时间价值(以利率计算的机会成本) 设:当前金额为P,年利率为i,n年后的金额为F, 则 计算时,累计经济效益应折合成当前金额 例如,一个基于计算机的系统使用后,每年产生的 经济效
20、益为10万,如果年利率为5%,那么,五年 内该系统的累计经济效益是432948万,而不是50 万。 n iFP)1/( n iPF)1( 27 n投资回收期:累计的经济效益正好等于投 资数(成本)所需的时间 n纯收入:累计经济效益 投资数 当纯收入大于零时,该工程值得投资开发 当纯收入小于零时,该工程不值得投资(除非 它有明显的社会效益) 当纯收入等于零时,通常也不值得投资 显然,纯收入越大越好 28 技术可行性分析技术可行性分析 n技术可行性主要根据系统的功能、 性能、约束条件等,分析在现有资 源和技术条件下系统能否实现。 n技术可行性分析通常包括风险分析、 资源分析和技术分析。 29 风险
21、分析:分析在给定的约束条件下 设计和实现系统的风险。 采用不成熟的技术可能造成技术风险 人员流动可能给项目带来风险 成本和人员估算不合理造成的预算风险 风险分析的目的是找出风险,评价风 险的大小,并有效地控制和缓解风险。 30 资源分析:论证是否具备系统开发所 需的各类人员、软件、硬件等资源和 相应的工作环境。 例如,有一支开发过类似项目的开发 和管理的团队,或者开发人员比较熟 悉系统所处的领域,并有足够的人员 保证,所需的硬件和支撑软件能通过 合法的手段获取,那么从技术角度看, 可以认为具备设计和实现系统的条件。 31 技术分析:分析当前的科学技术是否支 持系统开发的各项活动。 在技术分析过
22、程中,分析员收集系统的 性能、可靠性、可维护性和生产率方面 的信息,分析实现系统功能、性能所需 的技术、方法、算法或过程,从技术角 度分析可能存在的风险,以及这些技术 问题对成本的影响。 技术可行性分析时通常需进行系统建模, 必要时可建造原型和进行系统模拟 32 法律可行性分析法律可行性分析 n研究系统开发过程中可能涉及到的合同、研究系统开发过程中可能涉及到的合同、 侵权、责任以及各种与法律相抵触的问题侵权、责任以及各种与法律相抵触的问题 n中华人民共和国著作权法中华人民共和国著作权法 n计算机软件保护条例计算机软件保护条例 n与计算机软件的使用场合相关的其他法律与计算机软件的使用场合相关的其他法律 n例如:开发一套网络监控系统对员工在个人例如:开发一套网络监控系统对员工
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 小学老师笔试题目及答案
- 小学经典比赛题目及答案
- 小学教室布置题目及答案
- 家庭理财生活常识试题及答案
- 去年忠县高考试卷答案及解析
- 科学防疫面试题目及答案
- 2025年急救生命支持类等设备操作考核试题及答案
- 衡器计量工模拟试题及答案
- 浙江汽车职业技术学院《编织首饰工艺》2024-2025学年第一学期期末试卷
- 2025年社区慢病门诊病历书写范文
- 部编人教版九年级道德与法治上册教材
- 短视频创意内容定制合同
- 棋牌室入股合伙人协议书
- 《租船问题》教学设计及说课稿
- 无痛胃肠镜全麻知情同意书
- 心衰患者的容量管理中国专家共识-共识解读
- 文松宋晓峰小品《非诚不找》奇葩男女来相亲金句不断台词剧本完整版
- 高等院校毕业生转正定级审批表-6
- 劳务合同模板电子下载
- 容错纠错机制运行过程中存在的问题及对策研究
- 氯甲烷泄露应急预案
评论
0/150
提交评论