软件项目开发与管理案例教程

本书以一个贯穿项目为载体,以任务驱动的方式介绍软件开发中各阶段所需的知识、技术、方法、工具、开发过程,直至项目完成。本书围绕软件开发能力的培养组织内容,全书共8章,内容如下:第1章,介绍软件、软件开发、软件项目管理等相关概念,重点介绍软件开发中容易混淆的一些概念并为后续学习做知识准备;第2和第3章,介绍传统的软件开发方法,适合软件开发初学者学习;第4和第5章,介绍面向对象的开发方法,利于读者掌握目前流行的面向对象软件开发方法与工具;第6章,介绍软件的实现,包括编码与测试,只有通过测试的软件,其编码才能告一段落;第7章,介绍软件的维护;第8章,介绍本书软件项目完整的开发过程,可作为软件设计文档范本。
作者简介
牛德雄(1965-),男,汉族,硕士研究生毕业。主要研究方向:软件开发技术、软件工程、需求工程、项目管理、Java软件开发技术、移动开发技术
目  录
第1章软件开发与管理概述(1)
1.1软件与软件开发概述(1)
1.1.1程序、软件与系统(1)
1.1.2软件开发的特征(3)
1.2软件开发(5)
1.2.1软件开发过程(5)
1.2.2软件开发方法学和软件工程(9)
1.3软件项目管理内容(10)
1.3.1软件项目管理(11)
1.3.2软件质量管理(13)
1.3.3软件过程质量保证体系(15)
小结(18)
习题(18)
实训:制定某项目进度计划(19)
第2章进行需求分析了解用户需求(20)
2.1软件需求概述(20)
2.1.1需求分析任务(21)
2.1.2需求分析过程(21)
2.1.3需求管理(23)
2.1.4软件需求分析从问题定义开始(24)
2.2需求分析方法与分析模型(25)
2.2.1需求分析与建模方法(25)
2.2.2需求分析模型(25)
2.3用传统方法建立系统数据模型(26)
2.3.1数据模型(E-R图)的建立(26)
2.3.2E-R图简述(28)
2.3.3数据字典(30)
2.4用传统方法建立系统功能模型(30)
2.4.1系统功能模型(数据流图)的建立(31)
2.4.2数据流图简述(31)
2.4.3功能模型简述(32)
2.4.4功能模型的文字描述(33)
2.5建立系统动态模型(33)
2.6需求说明书及书写重点(35)
小结(36)
习题(36)
实训:对“学生管理系统”进行需求分析与建模(37)
第3章基于需求分析进行软件设计(40)
3.1软件设计(40)
3.1.1软件设计概述(40)
3.1.2软件设计与编码(42)
3.1.3软件设计的内容(43)
3.2项目设计案例(44)
3.2.1从E-R模型进行数据库设计(45)
3.2.2概要设计(软件结构设计)(46)
3.3软件模块的详细设计(49)
3.3.1详细设计的任务(49)
3.3.2详细设计的工具(50)
3.4软件设计原则(54)
3.4.1模块与模块独立性(54)
3.4.2模块的耦合性(55)
3.4.3模块的内聚性(56)
3.4.4模块的规模、大小适中原则(56)
3.4.5信息隐藏和局部化的原则(57)
3.4.6抽象性的原则(58)
3.5软件设计说明书(58)
3.5.1软件概要设计说明书大纲(58)
3.5.2软件详细设计说明书大纲(58)
小结(59)
习题(59)
实训一:对“学生管理系统”进行软件概要设计(60)
实训二:对“学生管理系统”进行详细设计(61)
第4章用对象的观点与方法进行分析建模(64)
4.1概述(64)
4.2从业务描述出发建立系统的用例模型(66)
4.2.1建立系统用例模型(66)
4.2.2确定系统的用例(67)
4.2.3用例之间的关系(68)
4.2.4描述用例(70)
4.3从用例的交互中识别实体建立对象模型(71)
4.3.1识别类与对象(71)
4.3.2确定类的属性(73)
4.3.3确定类之间的联系(73)
4.4类与类之间的“关系”(74)
4.4.1关联关系(74)
4.4.2泛化关系(75)
4.4.3依赖和细化关系(76)
4.4.4确定关联(77)
4.5从用例的交互中识别交互细节建立动态模型(77)
4.5.1建立顺序图(78)
4.5.2通过顺序图描述实体间的动态行为(79)
4.5.3通过顺序图等动态模型分析与确定类的行为(79)
小结(81)
习题(81)
实训:用面向对象的方法进行需求分析与建模(82)
第5章用面向对象的观点和方法设计软件(84)
5.1面向对象软件设计概述(84)
5.1.1包图(85)
5.1.2数据库设计(85)
5.1.3软件架构和类两个层面的设计(85)
5.2高层软件体系结构设计(86)
5.2.1软件体系结构设计概况(86)
5.2.2软件体系结构设计内容(86)
5.3底层类的设计(87)
5.3.1系统各部件类的设计及其层次(87)
5.3.2业务领域类的设计(88)
5.3.3类设计(90)
5.3.4使用MVC设计模式(91)
5.4面向对象软件开发过程及最佳做法(91)
小结(93)
习题(93)
实训:用面向对象的方法进行软件设计(94)
第6章按照软件设计进行编程实现并测试(96)
6.1软件编码概述(96)
6.1.1从软件设计过渡到软件编码(96)
6.1.2程序设计方法(97)
6.1.3常见计算机程序设计语言(98)
6.1.4常用软件开发工具(103)
6.1.5选择计算机程序设计语言并建立软件开发环境(104)
6.1.6制定程序编码规范(105)
6.1.7制定编程的过程标准(106)
6.2程序编码过程(106)
6.2.1迭代、增量的开发过程(107)
6.2.2选择某种MVC开发模式的工具编码(107)
6.2.3通过迭代开发直至满足用户需求(108)
6.3按照用户需求和软件设计测试软件(108)
6.3.1软件测试概述(108)
6.3.2软件测试阶段(111)
6.3.3软件测试用例设计案例(113)
小结(119)
习题(119)
实训:对“学生管理系统”进行实现并测试(120)
第7章通过软件维护不断满足用户的需求(121)
7.1软件维护概述(121)
7.1.1软件维护原因(121)
7.1.2软件维护类型(122)
7.1.3软件维护中的常见问题(123)
7.1.4软件维护策略(123)
7.2软件维护的过程(124)
7.2.1维护组织(125)
7.2.2维护报告(125)
7.2.3维护过程(125)
7.2.4维护记录(126)
7.2.5维护评价(127)
7.3提高软件的可维护性(127)
7.3.1软件的可维护性(127)
7.3.2软件可维护性的量化(127)
7.3.3提高可维护性的方法(128)
7.3.4软件维护的副作用(129)
7.4软件维护相关文档(129)
7.4.1软件问题报告(130)
7.4.2软件维护申请报告(130)
7.4.3软件维护报告(130)
7.4.4软件用户意见反馈及满意度调查(132)
7.5实施软件维护(134)
7.5.1维护机构(134)
7.5.2维护流程(134)
7.5.3维护评价(135)
7.5.4维护成本(135)
小结(135)
习题(135)
实训:设计一套结构化维护过程及文档格式(136)
第8章物流管理系统开发分析与设计案例(137)
8.1引言(137)
8.2项目概述(138)
8.3需求分析(138)
8.3.1业务描述(138)
8.3.2用例建模(138)
8.3.3用例交互实体建模—对象模型(实体类图)(139)
8.3.4功能分析(140)
8.3.5交互细节的建模—动态模型(141)
8.4软件设计(141)
8.4.1功能模块设计(141)
8.4.2软件架构设计(基于JavaEE)(142)
8.4.3实体类的设计(144)
8.4.4数据库设计(144)
8.5软件模块设计与实现(147)
8.5.1送货员信息管理模块(147)
8.5.2接单管理模块(149)
8.5.3接送货管理模块(150)
8.5.4仓储与分拣管理模块(151)
8.5.5结算管理模块(155)
小结(156)
附录A计算机软件开发文件编制指南(GB/T8567—1988)(157)
附录BUML简介(174)
术语表(176)
参考文献(177)

#现在前往

精选留言

软件,项目开发,管理案例,教程
sample
2020-08-24
写留言
签到
投稿
QQ咨询
返回顶部