课程概述


《软件体系结构与设计模式》课程为计算机科学、人工智能、网络空间安全等专业的方向课,面向本科三、四年级学生,课程内容包括两个部分:(1)软件体系结构的理论与风格;(2)软件开发的设计模式与应用。

课程目标

以1-3人团队为单位,自选一个软件开发项目(如图书管理系统、手机游戏应用、区块链应用、人脸识别系统等),运用现代软件体系结构和设计模式,制定软件设计方案,完成项目开发和软件测试,形成项目文档和演示报告。编程语言、软件平台、演示形式自定。

考核方式

上课时间

  • 理论课:1-14周,每周4学时,共56学时
    • 周二下午5-6节(14:30–16:10):海韵教学楼101
    • 周四下午5-6节(14:30–16:10):海韵教学楼302
  • 实验课:3-15周,每单周2学时,上7周,共14学时
    • 单周二下午7-8节(16:40–18:20):海韵实验楼404

教材和参考书




教师介绍


陈龙彪博士是厦门大学信息学院助理教授。他于2010年从浙江大学竺可桢学院获得工学学士学位;于2016年获得浙江大学博士学位,导师为潘纲教授;于2018年获得法国索邦大学博士学位。现工作于厦门大学福建省智慧城市感知与计算重点实验室(SCSC)。他的主要研究方向为大数据分析、城市感知计算、普适计算。已在国际著名期刊和顶级会议上发表学术论文20余篇,两次获得ACM UBICOMP最佳论文提名奖。成果曾获中央电视台、新华社、China Daily等国内外媒体报道与关注。目前主持国家自然科学基金青年项目、福建省自然科学基金面上项目、厦门大学校长基金项目各一项。



课程大纲


Week 1

Week 2

Week 3

Week 4

Week 5

Week 6

Week 7

Week 8

Week 9

Week 10

Week 11

  • 面向对象的体系架构(OOA) [Slides]
    • 页面小游戏设计
  • 实验课:设计模式实践 [二]

Week 12

  • 面向服务的体系架构(SOA) [Slides]
    • 区块链系统设计

Week 13

  • 面向资源的体系架构(ROA)
    • RSS聚合系统设计
  • 优秀系统架构师讲座
    • 特邀演讲:《微服务架构设计与实践》

Week 14

  • 周二理论课:项目汇报 [一]
  • 周四理论课:项目汇报 [一]

Week 15

  • 周二实验课:项目汇报 [三]


选题参考

大数据

  • 共享单车骑行分析与可视化系统
  • 网约汽车出行分析与可视化系统
  • 灾后道路损毁分析与可视化系统
  • 医保定点机构分析与可视化系统
  • 药物相互作用分析与可视化系统
  • 城市安全事件分析与可视化系统
  • 城市人群活动分析与可视化系统

人工智能

新兴技术

  • 基于Block Chain的食品溯源系统
  • 基于Raspberry Pi的嵌入式应用
  • 基于微信小程序的移动应用
  • 基于Android的移动应用
  • 基于iOS的移动应用

其他