本文档将有可能存在的体系架构、工具、平台的多方案进行详细描述,备选方案作为决策对象,决策的结果将作为概要设计和详细设计的重要依据。

1、产品范围:根据《产品需求规格说明书》,该文档阐述各技术平台的差异。
2、涉及到的干系人有:项目经理、质量小组、开发小组。
1.3 读者对象项目经理、质量保证人员:据此来进行项目策划。
测试人员:据此进行测试过程。
开发人员,包括设计人员、编码人员:明确技术平台,清楚项目开发工作。
用户IT主管:清楚与确认其技术需求。
1.4 参考文档《产品需求规格说明书》
1.5 术语与缩写解释术语或缩略语
解释
Springboot
开发框架种类
springCloud
开发框架种类
Mysql
数据库种类
Oracle
数据库种类
Sqlserver
数据库种类
idea
开发工具种类
webstorm
开发工具种类
Eclipse
开发工具种类
2 体系架构2.1 开发框架2.1.1 Springboot1)架构说明:项目系统框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。
2)特点:创建独立的Spring应用程序,嵌入的Tomcat,无需部署WAR文件。
3)优势:特别适合构建微服务系统,另外给我们封装了各种经常使用的套件,比如mybatis、hibernate、redis、mongodb等。
4)劣势:从原来的xml配置方式转换到JAVA配置方式变化有点大,版本迭代速度很快,一些模块改动很大。
2.1.2 SpringCloud1) 架构说明:项目系统框架。
2) 特点:可以创建独立的Spring应用程序,并且基于其Maven或Gradle插件,可以创建可执行的JARs和WARs;。
3) 优势:方便对外输出各种形式的服务;非常简洁的安全策略集成。
4) 劣势:集成度较高,使用过程中不太容易了解底层。
2.2 体系架构对比
体系架构名称
特点
优势
劣势
决策结果
Springboot
采用页面控制机制,可以为单个页面添加事件处理函数
使得复杂项目更加容易维护,减少项目之间的耦合,扩展性很好;
能够对HTML有完全的控制权限,对于前端来说很友好
没有那么多的现成控件使用,开发效率相对较低
springCloud
可以创建独立的Spring应用程序,并且基于其Maven或Gradle插件,可以创建可执行的JARs和WARs;
方便对外输出各种形式的服务;非常简洁的安全策略集成。
集成度较高,使用过程中不太容易了解底层。
3 数据库平台3.1 可选平台3.1.1 Mysql
1) 架构说明:数据库服务器
2) 特点: 适用于中型及大型项目
3) 优势: 功能强大,运行稳定
4) 劣势:数据库占用空间比较大
3.1.2 Oracle1)架构说明: 数据库服务器
2)特点: 完全支持所有的工业标准,数据安全级别为C2级(最高级)
3)优势: 安全性方面,性能最高。具有丰富的开发工具,覆盖开发周期的各阶段。
4)劣势: 操作安装比较复杂,对管理员水平要求比较高,费用昂贵
3.1.3 Sqlserver1)架构说明:数据库服务器
2)特点: 适用于中型及大型项目
3)优势: 功能强大,运行稳定
4)劣势:数据库占用空间比较大
3.2 各平台对比数据库名称
特点
优势
劣势
决策结果
Mysql
适用于中型及大型项目
功能强大、
运行稳定
数据库占用空间比较大
√
Oracle
完全支持所有的工业标准,数据安全级别为C2级(最高级)
安全性方面,性能最高。
具有丰富的开发工具,覆盖开发周期的各阶段。
操作安装比较复杂,对管理员水平要求比较高,费用昂贵
Sqlserver
适用于中型及大型项目
功能强大、
运行稳定
数据库占用空间比较大
4 开发工具4.1 可选工具4.1.1 Idea
1)架构说明:开发工具
2)特点:开发j2ee程序会更加方便些
3)优势:集成了多种插件
4)劣势:部分插件收费
4.1.2 Webstorm1)架构说明:是jetbrains公司旗下一款JavaScript 开发工具。已经被广大中国JS开发者誉为"Web前端开发神器"、"最强大的HTML5编辑器"、"最智能的JavaScript IDE"等。与IntelliJ IDEA同源,继承了IntelliJ IDEA强大的JS部分的功能。
2)特点:是一个强大的前端开发 ide,大多数人使用 webstorm 的主要原因应该是它 NB 的智能提示功能。强大的智能提示只是它的一个功能特性,它还具有许多有用的特性,比如版本控制、本地历史、即时模板等。这里我列一下对我来说非常有用的功能。
3)优势:支持不同浏览器的提示,还包括所有用户自定义的函数(项目中);代码不仅可以格式化,而且所有规则都可以自己来定义;可以快速找到代码中的错误或者需要优化的地方,并给出修改意见,快速修复等。
4)劣势:启动时非常耗cup和内存。
4.1.3 Eclipse1) 架构说明:开发工具
2) 特点:是免费的,是开发的必要IDE
3) 优势:免费
4) 劣势:缺少各类插件
4.2 开发工具对比工具名称
特点
优势
劣势
决策结果
idea
开发j2ee程序会更加方便些
集成了多种插件
部分插件收费
Webstorm
是一个强大的前端开发 ide,大多数人用webstorm 的主要原因应该是它 NB 的智能提示功能。强大的智能提示只是它的一个功能特性,它还具有许多有用的特性,比如版本控制、本地历史、即时模板等。这里我列一下对我来说非常有用的功能
支持不同浏览器的提示,还包括所有用户自定义的函数(项目中);代码不仅可以格式化,而且所有规则都可以自己来定义;可以快速找到代码中的错误或者需要优化的地方,并给出修改意见,快速修复等
启动时非常耗cup和内存
√
Eclipse
JAVA平台的多方向开发
免费的
缺少各类插件