(一)软件开发阶段有哪些?包含哪些具体工作?
1. 问题定义
工作:搞清楚“要解决的问题是什么”。
2. 可行性研究
工作:了解用户的要求及实现的环境,从技术、经济、操作和法律等方面研究并论证软件系
统的可行性。
3. 需求分析
工作:确定“目标系统必须做什么”。
4. 概要设计
工作:确定目标系统必须怎么做,概括的提出解决问题的办法。
5. 详细设计
工作:怎样具体地实现目标系统。
6. 编码与单元测试
工作:把每个模块的控制结构写成计算机可接受的程序编码,并对编写出的每个模块代码进
行认真细致地测试。
7. 综合测试
工作:通过各种类型的测试使软件达到预期效果。
(二)软件开发模型有哪些?它们的特点是什么?
1. 瀑布模型
特点:
1) 阶段间具体顺序性和依赖性;
2) 推迟实现的观点;
3) 质量保证的观点。
2. 原型模型
特点:
1) 不带反馈环
2) 线性顺序进行的
3) 适用于需求不确定的系统增量模型
3. 增量模型
特点:
1) 能在较短的时间向用户提交可完成的部分产品
2) 逐步增加产品功能可以使用户有较充裕的时间学习和适应新产品
3) 适用于需求不确定的系统¸
4. 螺旋模型
特点:
1) 对可选方案和约束条件的强调有利于已有软件的重用,也有助于把软件质量作为软件开
发的一个重要目标¸¸¸
2) 减少了过多测试或测试不足所带来的风险¸¸¸
3) 维护只是模型的另一个周期,在维护和开发之间没有本质区别
4) 适用于内部开发的大规模软件项目¸¸
5. 喷泉模型
特点:
1) 体现了面向对象软件开发过程迭代和无缝的特性
(三)数据流符号有哪些?分别代表什么意思?