软件的定义:
软件=程序+相关文档,软件大于程序
程序=数据+算法
软件的分类:
服务 如VC6.0
维护 如360
操作管理 如windows
软件危机:
社会上,如何日益开发与如何日益维护
软件工程的定义:
开发,运行,维护,修复软件
软件工程的目标:
1.开发成本,维护成本
2.软件功能,软件性能
3.易用,可靠,可移植
4.及时完成开发任务
软件过程:
开发与维护软件的工作步骤
软件生存周期:
软件从开始制作到停止使用所经历的时间
生存周期的3个时期:计划(what),开发(how),运行(change)
计划:
1 问题定义------“用户需要解决什么问题”
2 可行性研究------“问题可以解决吗”
社会可行性 经济可行性 技术可行性
开发:
3 需求分析------“目标系统有什么功能” 对应验收测试
4 概要设计-------“怎么做”(软件结构)对应集成测试
5 详细设计------“具体怎么做”(软件模块)对应单元测试
6 编码
7 测试------(单元测试,集成测试,验收测试&