软件工程中的系统是指基于计算机的系统,而基于计算机的系统是指经过完成处理某些预约义目标而组织在一块儿的元素的集合或排列.系统工程过程依赖于应用领域而呈现不一样的形式,当工做的语境集中于业务企业时,进行业务过程工程,当关注产品生产的过程时,称为产品工程.算法
系统工程主要包括如下5个方面的任务:数据库
系统工程的第一步就是识别用户对基于计算机的系统的整体要求,标识系统的功能和性能范围,肯定系统的功能,性能,约束和接口.安全
系统模型一般可用图形来描述,配合相应的文字说明,.必要时在系统建模后可构造原型,进行系统模拟,以分析所建的模型是否知足整个基于计算机的系统的要求.一个基于计算机的系统一般能够考虑一下的模型:数据结构
硬件系统模型描述基于计算机系统中的硬件配置,通讯协议,拓扑结构,以及确保基于计算机系统的安全性,可靠性,性能等要求的措施.ide
基于计算机系统中的软件部分能够分为若干个子系统,软件系统模型描述各个子系统的功能,性能等要求,各软件子系统在硬件系统中的部署状况,以及软件子系统之间的交互.性能
人机接口模型描述人如何与基于计算机的系统进行交互,包括用户环境,用户的活动,人机交互的语法与语义等.设计
数据模型主要描述基于计算机的系统使用了哪些数据库管理系统,若是使用多个数据库管理系统还应描述它们之间的数据转换方式,必要时可给出主要的数据结构.3d
开发一个基于计算机的系统须要必定的资金投入和时间约束,所以在系统工程阶段对需开发的基于计算机的系统进行成本估算,并做出进度安排.blog
可行性分析主要从三方面进行:接口
主要进行成本效益分析,从经济角度肯定系统是否值得开发.
效益能够分为社会效益与经济效益,经济效益包括使用基于计算机的系统后可增长的收入和可节省的运行费用.社会效益指使用基于计算机的系统后对社会产生的影响,一般社会效益只能定性地估计,经济效益一般可用货币的时间价值,投资回收期和纯收入来度量.
一般能够利用年利率来衡量货币的时间价值,设银行储蓄的年利率为i,现存入钱P,在n年后可获得的钱F,则
所以,n年后获得的F,折合成如今的钱P的公式为:
投资回收期是指累计的经济效益正好等于投资成本所需的时间,投资回收期一般是用于评价开发一个工程的价值的重要经济指标.
纯收入指出了若干年扣除成本后的实际收入: 纯收入 = 累计经济效益 - 成本.
技术可行性主要根据系统的功能,性能,约束条件等,分析在现有资源和技术条件系统下可否实现.主要包括:
风险分析主要分析在给定的约束条件下设计和实现系统的风险,在可行性分析时,风险分析的目的是找出风险,评价风险的大小,分析可否有效地控制和缓解风险.
资源分析主要论证是否具有系统开发所需的各种人员,软件,硬件等资源和相应的工做环境.
技术分析主要分析当前的科学技术是否支持系统开发的各项活动.在技术分析过程当中,分析员收集系统的性能,可靠性,可维护性和生产率方面的信息,分析实现系统功能,性能所需的技术,方法,算法或过程,从技术角度分析可能存在的风险,以及这些技术问题对成本的影响.
法律可行性主要研究系统开发过程当中可能涉及到的合同,侵权,责任以及各类与法律相关抵触的问题.《中华人民共和国著做权法》与《计算机软件保护条例》是可行性分析的主要依据.
完成以上任务后应生成一份系统规格说明,做为之后开发基于计算机的系统的依据.系统规格说明描述基于计算机的系统的功能,性能与约束条件,描述系统的输入与输出控制信息给出各系统元素的模型,进行可行性分析,最后给出成本估算以及进度安排计划.