软件工程02-计算机系统工程
作者:互联网
计算机系统工程是软件生存周期的第一个过程,下面讲解系统工程要做什么。
基于计算机的系统
所谓基于计算机的系统是指:通过处理信息来完成某些预定义目标而组织在一起的元素的集合或排列。组成计算机系统的元素主要有:软件、硬件、人员、数据库、文档和规程。
系统元素
软件:指计算机程序、数据结构和相关的工作产品,以实现所需要的逻辑方法、规程或控制
硬件:指提供计算能力的电子设备、支持数据流的互连设备(如网络交换器、电信设备)和提供外部世界功能的电子机械设备(如传感器、马达等)
人员:指硬件和软件的用户和操作者
数据库:指通过软件访问并持久存储的大型的有组织的信息集合
文档:指描绘系统的使用和/或操作的描述性信息(如模型、规格说明、硬复制手册、联机帮助文件、Web站点)
规程:指定义每个系统元素的特定使用或系统所处的过程性语境的步骤
系统工程的任务
1.识别用户的要求
识别用户对基于计算机的系统的总体要求,标识系统的功能和性能范围,确定系统的功能、性能、数据、接口和约束。
2.系统建模和模拟
通常考虑建立如下模型:
硬件系统模型:描述基于计算机系统中的硬件(包括计算机、受系统控制的其他硬件设备等)配置、通信协议、拓扑结构、以及确保基于计算机系统的安全性、可靠性、性能等要求的措施。
软件系统模型:描述各软件子系统的功能、性能等要求,他们在硬件系统中的部署情况,以及软件子系统之间的交互。
人机接口模型:描述人如何与基于计算机的系统进行交互,包括用户环境、用户的活动、人机交互的语法和语义等。
数据模型:描述基于计算机的系统使用了哪些数据库管理系统,如果使用多个数据库管理系统,还应描述他们之间的数据转换方式,必要时可给出主要的数据结构。
3.成本估算及进度安排
对将开发的基于计算机系统进行成本估算,并作出进度安排。
4.可行性分析
从经济、技术、法律等方面分析所给出的解决方案是否可行,通常只有当解决方案可行并有一定的经济效益、社会效益时才开始真正的基于计算机的系统的开发。
5.生成系统规格说明书
以上各任务完成后,应形成一份系统规格说明,作为以后开发基于计算机的系统的依据。系统规格说明描述基于计算机的系统的功能、性能各约束条件,描述系统的输入输出和控制信息,给出各系统元素的模型,进行可行性分析,最后给出成本估算和进度安排计划。
可行性分析
开发一个基于计算机的系统,通常都受到资源(人力、财力、设备等)和时间上的限制
可行性分析主要从经济、技术、法律等方面分析所给出的解决方法是否可行,能否在规定的资源和时间的约束下完成。
经济可行性分析
- 经济可行性主要进行成本效益分析,从经济角度,确定系统是否值得开发
- 基于计算机的系统的成本主要包括:
购置硬件、软件(数据库那些)和外围设备(传感器等)的费用
系统的开发费用
系统安装、运行和维护的费用
人员培训费用 - 效益:
经济效益包括基于计算机的系统后,可增加的收入和可节省的运行费用(如操作人员、工作时间、消耗的物资等)。在进行成本效益时通常只统计五年内的经济效益。
经济效益通常可用货币的时间价值、投资回收期和纯收入来度量
社会效益指使用基于计算机的系统后对社会产生的影响(如提高了办事效益,使用户满意等),通常社会效益只能定性地估计 - 货币的时间价值
设:当前金额为P,年利率为i,n年后的金额为F,则
F=P(1+i)^n
P=F/(1+i)^n
计算时,累计经济效益应折合成当前金额
例如,一个基于计算机的系统使用后,每年产生的经济效益为10万,如果年利率为5%,那么,五年内该系统的累计经济效益是43.2948万,而不是50万。 - 投资回报期:累计的经济效益正好等于投资数(成本)所需的时间(回本期)
- 纯收入:累计经济效益-投资数
当纯收入大于零时,该工程值得投资开发
当纯收入小于零时,该工程不值得投资(除非它有明显的社会效益)
当纯收入等于零时,通常也不值得投资
显然纯收入越大越好
技术可行性分析
技术可行性主要根据系统的功能、性能、约束条件等,分析在现有资源和技术条件下系统能否实现
技术可行性分析通常包括:
- 风险分析
- 资源分析
- 技术分析
风险分析
分析在给定的约束条件下设计和实现系统的风险
- 采用不成熟的技术可能造成技术风险
- 人员流动可能给项目带来风险
- 成本和人员估算不合理造成的预算风险
风险分析目的
- 找出风险
- 评价风险大小
- 有效地控制和缓解风险
资源分析
论证是否具备系统开发所需的各类人员、软件、硬件等资源和相应的工作环境
- 开发过类似项目的开发和管理的团队
- 或者开发人员比较熟悉系统所处的领域
- 有足够的人员保证
- 所需的硬件和支撑软件能通过合法手段获取
从技术角度上看,可以认为具备设计和实现系统的条件
技术分析
分析当前的科学技术是否支持系统开发的各项活动
在技术分析过程中:
- 分析员收集系统的性能、可靠性、可维护性和生产率方面的信息
- 分析实现系统功能、性能所需的技术、方法、算法或过程
- 从技术角度分析可能存在的风险,以及这些技术问题对成本的影响
技术可行性分析时通常需进行系统建模,必要时可建造原型和进行系统模拟
法律可行性分析
其实就是看有没有违反《中华人民共和国著作权法》和《计算机软件保护条例》,和一些研究系统开发过程中可能涉及到的合同、侵权、责任以及各种与法律相抵触的问题。
方案的选择和折衷
一个基于计算机的系统可以有多个可行的实现方案,每个方案对成本、时间、人员、技术、设备都有不同的要求,不同方案开发出来的系统在功能、性能方面也会有所不同。因此要在多个可行的实现方案中作出选择。
方案评估的依据是待开发系统的功能、性能、成本、开发时间、采用的技术、设备、风险以及对开发人员的要求等。
可行性分析结论
由于系统的功能和性能受到多种因素的影响,某些因素之间相互关联和制约,因此有以下可以选择的结论:
(可行性分析结论万能模板呗)
- 可以立即开始进行
- 需要推迟到某些条件(例如资金、人力、设备等)落实之后才能开始进行
- 需要对开发目标进行某些修改之后才能开始进行
- 因为某种原因(如,技术不成熟、经济上不合算等)不能进行
标签:02,分析,系统工程,计算机,可行性,系统,基于,技术,软件工程 来源: https://blog.csdn.net/weixin_43142450/article/details/114388398