问题:

  1. SE是什么的缩略语?
    系统工程师System Engineer,在计算机 系统的开发过程中,SE是参与所有开发阶段的工程师。
  2. IT是什么的缩略语?
    信息技术Information Technology
  3. 请列举一个软件开发过程的模型。
    瀑布模型、原型模型、螺旋模型等

SE指的是在进行业务的信息化时,负责调查、分析业务内容,确定计算机系统的基础设计及其详细规格的技术人员。同时SE也负责系统开发的项目管理和软件的开发管理、维护管理工作。由于主要的工作是基础设计,所以不同于编写程序的程序员,SE需要具备从硬件结构、软件的构建方法乃至横跨整个业务的广泛知识以及项目管理的经验。

瀑布模型:

graph LR 开始(开始)-->需求分析-->外部设计-->内部设计-->程序设计-->编码实现-->测试-->部署和维护-->目标(目标)

在瀑布模型中,每完成一个阶段,都要书写文档报告并进行审核。进行审核时还需要召开会议,在会上由SE为开发团队的成员、上司以及客户讲解文档的内容。若审核通过了,就可以从上司或客户那里得到批准,继续进入后续的开发阶段。一旦进入了后续的阶段,就不能回退到之前的阶段。为了避免回退到上一阶段,一是要力求完美地完成每一个阶段的工作,二是要彻底地执行审核过程,这些就是瀑布模型的特征。

阶段

文档

需求分析

系统策划文档、系统功能需求规格文档

外部设计

外部设计文档(从用户的角度,比如系统处理的数据、显式在画面上的用户界面等)

内部设计

内部设计文档(从开发者的角度,将外部设计的内容具体化)

程序设计

程序设计文档

编码实现

模块设计文档、测试计划文档

测试

测试报告(定量地标示出测试结果。比如,涂色检查是逐一确认系统功能需求规格文档中的功能;覆盖测试是检查代码覆盖率等)

部署和维护

部署手册(将计算机系统安装到客户的环境中)、维护手册(定期检查计算机系统是否能正常工作,根据需要进行文件备份或根据应用场景的变化对系统进行部分改造)

具有代表性的程序设计方法

设计方法

拆解时所关注的事物

通用功能分割法

在整个计算机系统中通用的功能

STS法

数据流(输入、变换、输出)

TR法

事务(数据的处理单位)

Jackson法

输入数据和输出数据

Warnier法

输入数据

面对对象法

构成计算机系统的事物(对象)

有意思,用设备利用率的概念让用户愿意花两倍的价格多买一套设备。
假设设备故障率是20%,那么设备利用率就是80%。
如果有两台设备,只要有一台设备不故障,工作就可以进行下去,因此此时的设备利用率是1-0.2*0.2=96%。