目录

  • 1 软件工程与软件设计
    • 1.1 课程教学大纲和教学日历
    • 1.2 软件工程
    • 1.3 软件的生存周期
    • 1.4 软件开发过程模型
    • 1.5 软件设计
    • 1.6 软件体系结构
    • 1.7 本章课件
    • 1.8 课堂笔记
    • 1.9 作业
  • 2 统一建模语言UML
    • 2.1 UML概述
    • 2.2 面向对象开发方法
    • 2.3 UML2.0结构建模
    • 2.4 UML2.0行为建模
    • 2.5 本章课件
    • 2.6 课堂笔记
    • 2.7 作业
  • 3 软件设计基础
    • 3.1 软件设计的基本概念
    • 3.2 软件设计过程
    • 3.3 软件设计质量
    • 3.4 软件体系结构设计
      • 3.4.1 软件体系结构设计一般过程
        • 3.4.1.1 软件体系结构设计步骤
    • 3.5 高可信软件
    • 3.6 软件设计规格说明及软件设计评审
    • 3.7 本章课件
    • 3.8 本章作业
    • 3.9 第三章课堂笔记一
    • 3.10 第三章课堂笔记二
    • 3.11 课程引导单
  • 4 第4章
    • 4.1 整体概述
    • 4.2 基于UML的分析与设计过程
    • 4.3 用例分析与设计
    • 4.4 概念模型与顶层架构设计
    • 4.5 用户界面设计
    • 4.6 数据模型设计
    • 4.7 设计精化
    • 4.8 类设计
    • 4.9 部署模型设计
    • 4.10 本章课件
    • 4.11 本章作业
    • 4.12 第四章课堂笔记一
    • 4.13 第四章课堂笔记二
    • 4.14 课程引导单
  • 5 第5章 面向数据流的软件设计方法
    • 5.1 略讲
  • 6 第6章 用户界面设计
    • 6.1 界面设计的基本原则
    • 6.2 设计良好界面的主要途径
    • 6.3 用户界面的分析与设计过程
    • 6.4 用户界面分析
    • 6.5 用户界面设计
    • 6.6 用户界面原型
    • 6.7 界面设计的评估
    • 6.8 本章小结
    • 6.9 课程引导单
    • 6.10 本章课件
    • 6.11 本章作业
    • 6.12 课堂笔记1
    • 6.13 课堂笔记2
  • 7 体系结构风格与设计模式
    • 7.1 体系结构概念、描述、风格
    • 7.2 设计模式基础 代码资源
      • 7.2.1 基础回顾视频
    • 7.3 设计模式-工厂方法
    • 7.4 设计模式-抽象工厂
    • 7.5 设计模式-单件
    • 7.6 设计模式-组合 迭代器 观察者
    • 7.7 本章课件
    • 7.8 本章作业
    • 7.9 课堂笔记
  • 8 基于分布构件的体系结构
    • 8.1 8.1 EJB分布构件
    • 8.2 8.2 DCOM分布构件
    • 8.3 8.3 CORBA分布构件
    • 8.4 本章课件
    • 8.5 本章作业
    • 8.6 课堂笔记
  • 9 软件体系结构评估
    • 9.1 软件体系结构评估概述
      • 9.1.1 课件
      • 9.1.2 视频
    • 9.2 软件体系结构评估方法
      • 9.2.1 课件
      • 9.2.2 视频
    • 9.3 实例分析
      • 9.3.1 课件
      • 9.3.2 视频
    • 9.4 作业
    • 9.5 9.1-9.2课堂笔记
    • 9.6 9.3课堂笔记
  • 10 软件设计的进化
    • 10.1 遗留系统
      • 10.1.1 课件
      • 10.1.2 视频
    • 10.2 软件的进化策略
      • 10.2.1 课件
      • 10.2.2 视频
    • 10.3 软件再工程
      • 10.3.1 课件
      • 10.3.2 视频
    • 10.4 软件体系结构的进化
      • 10.4.1 课件
      • 10.4.2 视频
    • 10.5 代码重构和数据重构、软件移植
      • 10.5.1 课件
      • 10.5.2 视频
    • 10.6 作业
    • 10.7 10.1-10.3课堂笔记
    • 10.8 10.4-10.5课堂笔记
  • 11 实验
    • 11.1 实验教学大纲
    • 11.2 实验PPT
    • 11.3 实验讲解视频
    • 11.4 实验2 UML类图设计
    • 11.5 实验3 编程视频 代码下载
    • 11.6 实验3 简易写法
    • 11.7 实验4 工厂方法复习视频
    • 11.8 实验4 协作图 类图 代码
    • 11.9 实验4 适配器模式
    • 11.10 拓展内容5 后续改进
    • 11.11 实验参考资料
    • 11.12 实验报告模板
    • 11.13 实验报告提交
    • 11.14 软件常见功能模块
实验3 编程视频 代码下载

代码下载:

由面B课本例题,改进制作实验3的第1版代码:

组合模式例题代码:


怎样改进和完善,参考体系结构的第10章。

待改进的功能点参考:

 * 后续第2版改进1:自动求解节点所在层数、兄弟节点编号

 * 后续第2版改进2:读取数据库的表,根据不同的用户身份,返回不同的菜单给前台终端

 * 后续第3版:不同用户身份对应的不同菜单,管理员可以动态调整、配置。

拓展补充1:数据库怎样存放用户的多级菜单,了解“RABC数据库权限设计”

拓展补充2:怎样精确控制到某张表、某个字段的权限,首先用编程能力实现,其次了解Shiro工具库。

技术动态:数据库有mysql,MongoDB,Redis多种类型。有的数据库不再依赖SQL语句,更方便使用面向对象编程、设计模式编程解决问题。可以用JavaBean数组模拟数据库的一张表。

其他后台 Node.js/Python Django也可以使用向对象编程、设计模式编程。