写点什么

模块一作业

用户头像
VE
关注
发布于: 2 小时前

1. 画出微信的业务架构图。

2. “学生管理系统”毕设架构设计

假设今年学校毕业设计要求提升,要求做真正可运行的学生管理系统,学院对毕设的具体要求如下:

① 要求可以通过公网域名访问;

② 要求至少 3 人合作完成;

③ 能够支撑管理 1000 个学生;

④ 答辩的时候会根据架构方案来进行打分,不推荐太简单和太复杂的方案。


你找了 2 个好朋友一起来做这个项目,你们的基本情况如下:

① 大家都会 Java,但是有一个是 PHP 高手;

② 大家经济条件一般。


作业要求:

① 对照面向复杂度架构设计方法论,构思 2 个以上的备选架构方案。

② 使用 PPT 来画出你的备选架构方案,并说明方案的优缺点。

③ 给出你选择的最终方案以及选择理由。

2.1 判断复杂度

  • 高性能?---------------无要求

  • 高可用?---------------数据不能全部丢失

  • 可扩展?---------------有一定复杂度

  • 成本、安全?------------低成本


综上可知,项目复杂度为:

可扩展:业务需求比较复杂,

数据高可用:数据不能全部丢失,

成本与安全:成本不能过高

2.2 方案取舍

2.2.1 画出备选架构

备选架构 1:

备选架构 2:


备选架构 3:

2.2.2 分析方案优缺点

  • 优点

备选架构 1:按模块划分子系统,便于后续扩展,也利于团队分工协作,符合演化原则。

备选架构 2:复核团队技术水平和积累,开发成本较低,系统运维成本低,符合合适性原则。不进行系统拆分,部署简单,符合简单原则。一次性交付,无需考虑太多后期演化,符合演化原则。

备选架构 3:按模块划分为各个微服务,拓展性很强,利于团队分工协作。


  • 缺点

备选架构 1:对团队能力要求略高,开发成本略有提升,违背了合适原则。进行了系统拆分,部署维护难度提升。违背了简单原则。

备选架构 2:由于所有模块都集中在一个应用上,各个模块的耦合度较高,不利于同时开发。

备选架构 3:对团队能力要求很高,开发成本大,违背了合适原则。将系统进行拆分,并且增加了微服务基础配置的布置,大大提升了部署难度。违背了简单原则。需要支持的学生数量有限,此方案远远超出了当前业务需求,违背了演化原则。

2.2.3 方案确定

综上所述:基于现有团队技术条件,并且考虑团队的经济能力,最终选择备选架构 2。若后续条件充足,可以考虑从备选架构 2 演化至备选架构 1。

用户头像

VE

关注

还未添加个人签名 2021.04.18 加入

还未添加个人简介

评论

发布
暂无评论
模块一作业