本书以软件职业能力培养为导向,将软件生命周期与UML建模技术融入典型工作任务,以“微视界”短视频平台和图书管理系统两大真实项目贯穿全书,构建“岗位任务驱动—理论知识支撑—建模实操落地”的技能训练体系,旨在帮助学生实现所学技能与岗位要求的无缝对接。全书共8个模块,分别为运用软件工程的思想开发系统,编制项目可行性研究报告与开发计划,建立系统需求模型,构建系统分析与设计模型,设计系统架构、界面及数据库,完成系统编码与配置管理,执行系统测试与软件部署,实施系统维护与逆向工程。
本书既可作为各类院校计算机、软件工程及相关专业的教材,也可供软件开发爱好者及相关从业人员参考使用。
基础知识篇
模块1 运用软件工程的思想开发系统
知识梳理
学习情境一 认识软件工程与开发过程
一、软件与软件危机
二、软件工程基础
三、软件过程与过程模型
四、智能软件工程
五、软件工程师的职业道德
学习情境二 认知面向对象方法与UML
一、理解面向对象方法
二、UML概述
工程实践
任务一 软件过程模型初步选型
任务二 使用UML表示开发过程
技能实训
职业风向标
模块自测
软件开发篇
模块2 编制项目可行性研究报告与开发计划
知识梳理
学习情境一 开展软件问题定义与可行性研究
一、问题定义
二、可行性研究
学习情境二 拟订软件开发计划
一、软件开发计划的作用
二、软件开发计划的主要内容
工程实践
任务一 编写可行性研究报告
任务二 拟订软件开发计划
技能实训
职业风向标
模块自测
模块3 建立系统需求模型
知识梳理
学习情境一 了解需求分析
一、需求分析概述
二、智能需求分析
学习情境二 建立用例模型
一、用例图概述
二、用例建模
学习情境三 构建活动图模型
一、什么是活动图
二、活动图的作用
三、活动图建模的步骤
工程实践
任务一 捕获并整理系统的需求清单
任务二 构建系统的用例模型
任务三 绘制系统核心业务的活动图
技能实训
职业风向标
模块自测
模块4 构建系统分析与设计模型
知识梳理
学习情境一 开展系统静态建模
一、类图
二、对象图
三、包图
学习情境二 开展系统动态建模
一、顺序图
二、状态图
工程实践
任务一 构建系统的静态模型
任务二 构建系统的动态模型
技能实训
职业风向标
模块自测
模块5 设计系统架构、界面及数据库
知识梳理
学习情境一 设计软件架构
一、软件架构基础
二、常用的软件架构模式
三、软件架构设计的表示方法
四、智能体协作的软件架构设计
学习情境二 设计用户界面
一、用户界面设计概述
二、用户界面设计的过程
三、AI辅助用户界面设计
学习情境三 设计数据库
一、数据库设计概述
二、数据库概念模型设计
三、数据库逻辑模型设计
工程实践
任务一 设计系统架构方案
任务二 设计系统的核心界面原型
任务三 设计系统的数据库结构
技能实训
职业风向标
模块自测
模块6 完成系统编码与配置管理
知识梳理
学习情境一 规范编写程序代码
一、程序设计语言基础
二、面向对象的程序设计
学习情境二 实施软件配置管理
一、软件配置管理
二、版本控制系统
三、Git和码云
工程实践
任务一 编写系统核心功能的代码
任务二 实现代码的远程托管
技能实训
职业风向标
模块自测
模块7 执行系统测试与软件部署
知识梳理
学习情境一 开展软件测试
一、软件测试概述
二、软件测试的工作流程
三、软件测试的各个阶段
四、软件测试方法
五、软件测试文档
学习情境二 部署软件系统
一、软件部署概述
二、软件部署方法
三、项目部署与发布流程
工程实践
任务一 设计登录注册模块的测试用例
任务二 完成系统的容器化部署
技能实训
职业风向标
模块自测
模块8 实施系统维护与逆向工程
知识梳理
学习情境一 实施软件维护
一、软件维护概述
二、软件维护的流程
三、软件的可维护性
学习情境二 探究逆向工程与软件再工程
一、逆向工程
二、软件再工程
工程实践
任务一 拟订软件维护方案
任务二 实施逆向工程重建类图
技能实训
职业风向标
模块自测
附录 能力图谱
参考文献