项目1 项目准备 1
工作任务1.1 项目开发选题 1
工作任务1.2 组建开发团队 2
工作任务1.3 项目进度安排 3
项目2 需求分析 5
工作任务2.1 需求分析概述 5
工作任务2.2 需求分析实施 6
2.2.1 需求分析的任务 6
2.2.2 需求分析的方法 7
2.2.3 确认用户的需求 8
2.2.4 需求规格说明书 9
2.2.5 整合需求规格说明书 12
项目3 软件设计 17
工作任务3.1 软件架构设计 17
3.1.1 软件架构的定义 18
3.1.2 软件架构的目的 18
3.1.3 软件架构设计的原则 18
3.1.4 软件架构设计的4+1视图模型 18
3.1.5 高校毕业设计选题系统软件设计实施 20
工作任务3.2 界面设计 21
3.2.1 界面设计的原则 21
3.2.2 用户界面分类 22
3.2.3 高校毕业设计选题系统界面布局 23
工作任务3.3 数据库设计 24
3.3.1 数据库设计定义 25
3.3.2 数据模型设计 25
3.3.3 规范化设计理论 27
3.3.4 数据库安全设计 28
3.3.5 高校毕业设计选题系统数据库设计 29
工作任务3.4 模块设计 32
3.4.1 模块化概述 33
3.4.2 抽象与逐步求精 34
项目4 编码实现 35
工作任务4.1 结构化程序设计方法 35
工作任务4.2 程序设计风格 35
工作任务4.3 源程序 35
4.3.1 符号名命名规则 36
4.3.2 程序注释行 36
4.3.3 空行和缩进 36
4.3.4 数据说明 37
4.3.5 语句结构 37
工作任务4.4 源代码文件 37
4.4.1 综合文件 38
4.4.2 程序组织文件 38
4.4.3 指令级注释 39
工作任务4.5 程序设计技术 39
4.5.1 冗余程序设计 39
4.5.2 防错性程序设计 39
4.5.3 程序的质量 40
4.5.4 编译程序和解释程序 40
工作任务4.6 编程语言的特点 41
4.6.1 过程性语言 41
4.6.2 说明性语言 41
4.6.3 脚本语言 42
4.6.4 低级语言 42
4.6.5 高级语言 43
工作任务4.7 编码文件与复审 45
工作任务4.8 高校毕业设计选题系统编码实现 45
4.8.1 登录功能 45
4.8.2 申报课题 48
4.8.3 审核并分配课题 49
4.8.4 课题选择 51
4.8.5 内定学生 54
4.8.6 导入教师和学生信息 56
项目5 软件测试 62
工作任务5.1 软件测试概述 62
工作任务5.2 软件测试术语 63
工作任务5.3 软件测试目标 64
工作任务5.4 软件测试方法 64
工作任务5.5 软件测试过程 65
5.5.1 软件测试模型 65
5.5.2 单元测试 68
5.5.3 集成测试 71
5.5.4 系统测试 74
工作任务5.6 高校毕业设计选题系统测试结果 75
项目6 用户手册 77
工作任务6.1 用户手册概述 77
工作任务6.2 用户手册的内容 77
工作任务6.3 完成《高校毕业设计选题系统用户手册》 78
项目7 系统配置 95
工作任务7.1 系统配置概述 95
工作任务7.2 系统配置方式 96
附录A 软件开发实战课程实施方案 98
附录B 项目开发实战参考题目 101
参考文献 134