SE负责监管计算机系统的构建
问题:
-
SE是什么的缩略语?
系统工程师System Engineer,在计算机 系统的开发过程中,SE是参与所有开发阶段的工程师。
-
IT是什么的缩略语?
信息技术Information Technology
-
请列举一个软件开发过程的模型。
瀑布模型、原型模型、螺旋模型等
SE指的是在进行业务的信息化时,负责调查、分析业务内容,确定计算机系统的基础设计及其详细规格的技术人员。同时SE也负责系统开发的项目管理和软件的开发管理、维护管理工作。由于主要的工作是基础设计,所以不同于编写程序的程序员,SE需要具备从硬件结构、软件的构建方法乃至横跨整个业务的广泛知识以及项目管理的经验。
瀑布模型:
graph LR
开始(开始)-->需求分析-->外部设计-->内部设计-->程序设计-->编码实现-->测试-->部署和维护-->目标(目标)
在瀑布模型中,每完成一个阶段,都要书写文档报告并进行审核。进行审核时还需要召开会议,在会上由SE为开发团队的成员、上司以及客户讲解文档的内容。若审核通过了,就可以从上司或客户那里得到批准,继续进入后续的开发阶段。一旦进入了后续的阶段,就不能回退到之前的阶段。为了避免回退到上一阶段,一是要力求完美地完成每一个阶段的工作,二是要彻底地执行审核过程,这些就是瀑布模型的特征。
阶段 | 文档 |
---|---|
需求分析 | 系统策划文档、系统功能需求规格文档 |
外部设计 | 外部设计文档(从用户的角度,比如系统处理的数据、显式在画面上的用户界面等) |
内部设计 | 内部设计文档(从开发者的角度,将外部设计的内容具体化) |
程序设计 | 程序设计文档 |
编码实现 | 模块设计文档、测试计划文档 |
测试 | 测试报告(定量地标示出测试结果。比如,涂色检查是逐一确认系统功能需求规格文档中的功能;覆盖测试是检查代码覆盖率等) |
部署和维护 | 部署手册(将计算机系统安装到客户的环境中)、维护手册(定期检查计算机系统是否能正常工作,根据需要进行文件备份或根据应用场景的变化对系统进行部分改造) |
具有代表性的程序设计方法
设计方法 | 拆解时所关注的事物 |
---|---|
通用功能分割法 | 在整个计算机系统中通用的功能 |
STS法 | 数据流(输入、变换、输出) |
TR法 | 事务(数据的处理单位) |
Jackson法 | 输入数据和输出数据 |
Warnier法 | 输入数据 |
面对对象法 | 构成计算机系统的事物(对象) |
有意思,用设备利用率的概念让用户愿意花两倍的价格多买一套设备。
假设设备故障率是20%,那么设备利用率就是80%。
如果有两台设备,只要有一台设备不故障,工作就可以进行下去,因此此时的设备利用率是1-0.2*0.2=96%。