基于模块化的弹性扩展门户网站架构设计

基于模块化的弹性扩展门户网站架构设计
周游舟1ꎬ2
(1. 华夏航空股份有限公司ꎬ重庆 401120ꎻ 2. 西南大学政治与公共管理学院ꎬ重庆 400100)
摘要:随着系统需求和内容的增加ꎬ不仅门户网站系统稳定性很难得到保证ꎬ而且一个首页也很难满足不同用户的
需求. 为了满足多个开发团队协同开发、用户个性化需求及提高软件开发效率等因素ꎬ本文中设计一套基于模块化的弹
性扩展门户网站架构. 本设计思路主要来源于作者设计的所在单位使用的企业门户系统ꎬ并结合使用情况分析和提炼出
核心设计思路ꎬ可以解决中大型门户类网站面临的开发效率、个性化、复用性、稳定性等常见问题. 实际应用表明ꎬ该架构
设计达到了项目预期目标ꎬ能满足大部分企事业单位门户建设要求.
关键词:门户ꎻ门户网站ꎻ企业门户ꎻ模块化ꎻ弹性扩展
中图分类号:TB311 文献标志码:A DOI:10.3969 / j.issn.1000 ̄2375.2019.02.012
The design of a flexible portal architecture based on modular method
ZHOU Youzhou
1ꎬ2
(1. China Express Airlinesꎬ Chongqing 401120ꎬ Chinaꎻ
2. School of Politics and Public Administrationꎬ Southwest Universityꎬ Chongqing 400100ꎬ China)
Abstract:With the increase of system requirements and contentꎬ not only the system stability is hard to
be guaranteedꎬ but also the requirements of different users are hardly satisfied by a portal home page. In order
to realize the needs of collaborative development of multiple development teamsꎬ fulfill the requirements of
individual users and improve the software development efficiencyꎬ a flexible portal architecture was designed by
modular method. The idea mainly comes from the company’s enterprise portal system which is designed by the
author. The design can solve the mostly common problems of medium and large ̄scale portal site such as
development efficiencyꎬ personalizationꎬ reusabilityꎬ stability and so on. The actual application shows that the
architectural design is expected to achieve the targetꎬ and satisfies the requirements of the majority of
enterprises and institutions.
Key words:portal siteꎻ enterprise’s portalꎻ modularꎻ flexible
0 引言
在政府机构中ꎬ工商、公安等机构基本都拥有自己的门户网站ꎻ在企事业单位中ꎬ各中大型企业、医
院、学校等也有相应的办公门户. 在这些门户网站中ꎬ往往会碰到信息陈旧、板块空缺、布局杂乱、进入层
次太深、系统更新缓慢、用户很难找到自己关注信息等问题. 导致这些现象的因素很多ꎬ有的因为经费不
足而缺少维护ꎻ有的因为测试不全面导致系统稳定性差ꎻ有的因为缺少规划而赶不上发展速度ꎻ还有因
为无法利用现有系统资源ꎬ机构小而没有内容支撑门户网站建设等原因.
作为企事业单位中的信息部门ꎬ面对系统扁平化、个性化需求的增加ꎬ导致系统定制化趋势越来越
明显ꎬ信息部门除了创建数量庞大的系统来满足用户不断变化和增加的需求之外ꎬ还有其他应对措施
吗? 大多数人都知道ꎬ传统网站架构往往是根据业务需求、现有团队等因素考虑设计ꎬ主要解决的是通
176 湖北大学学报(自然科学版) 第 41 卷
用需求和当前业务ꎬ团队成员之间也相对了解ꎬ能快速完成一个个独立的信息系统. 但这样的系统设计
与开发团队耦合性太紧密ꎬ一旦团队核心人员变动ꎬ往往会导致系统可扩展性和稳定性受到极大的影
响ꎬ或一旦需求变化太大ꎬ系统就必须大规模重新设计才能满足需求. 在越来越依赖信息化的今天ꎬ需求
快速变化是比较正常的ꎬ这就导致上述各种现象. 为了规避这些现象ꎬ信息部门必须具备以下的能力才
能够应对挑战:1) 持续提高创新能力ꎬ使系统的技术含量越来越高ꎬ以满足客户需求ꎻ2) 不断缩短系统
研发时间ꎬ快速响应用户需求ꎻ3) 不断强化成本控制能力ꎬ通过优化产品生命周期内的各种成本来控制
系统总成本ꎬ取得投入产出比优势ꎻ4) 持续稳定的质量改进能力.
经验表明ꎬ设计信息系统一方面必须利用业务模块的批量化、标准化和通用化来缩短系统上线周
期、降低研发成本、提高模块重用性和系统稳定性ꎬ另一方面还要不断地进行研发创新使系统越来越个
性化ꎬ满足用户的定制需求. 这样ꎬ如何平衡系统的标准化、通用化与定制化、稳定性之间的矛盾ꎬ成为赢
得竞争的关键因素. 基于这两方面的考虑ꎬ设计一套基于模块化的弹性扩展门户网站架构. 该设计把业
务拆分为一个个模块ꎬ通过这些模块的组合可以向分支机构、下属单位、甚至岗位、人员提供相应的个性
化门户系统ꎬ不仅解决了企事业单位整体的系统建设成本ꎬ而且也解决了门户网站内容不足、内容复用、
组织机构之间信息交互等问题. 对软件开发团队来说ꎬ也解决了系统迭代的稳定性、模块之间的耦合度、
用户需求的个性化、开发团队分工与协助等问题.
1 系统分析与建模
1. 1 架构需求 企业门户是一个联接企业内部和外部的网站ꎬ它把各种应用系统、数据资源、业务处理
与企业各部门、分支机构等需求统一集成到门户之下ꎬ可以为企业提供一个单一的访问企业各种信息资
源的入口ꎬ企业的员工、分支机构、合作伙伴等都可以通过这个门户获得个性化的信息和服务. 经过多次
整理归纳ꎬ明确了企业及用户对架构的主要需求内容如下:
1) 企业门户统一入口地址ꎬ针对特定节假日有换肤功能ꎬ每个分支机构和部门有独立的门户ꎬ特定
岗位和特定角色也有特定门户.
2) 企业门户、部门门户等内部常规门户必须包含总公司的公告、邮件、流程审批等模块.
3) 特定用户可能在多个部门任职ꎬ则该用户的门户可能是包含多部门信息的独立门户ꎬ也可能是
采用切换的方式访问多个部门的门户.
4) 每个用户登录到门户首页ꎬ“第一眼”就能看到自己当天的待办工作和关注信息.
5) 每个模块只开发一次ꎬ后期只是各模块单独升级ꎬ可以重复利用ꎬ不要重复开发.
6) 每个门户的关注点和导航都不相同ꎬ但是相同模块在不同门户里的具体内容相同ꎬ导航页面之
间的切换不能改变用户的默认选择.
7) 每个模块相对独立ꎬ不能影响其他模块及整体系统的使用.
1. 2 系统选型 无架构ꎬ不系统ꎬ架构选型是门户系统成功的关键. 面对清晰的业务架构ꎬ而现有 OA
系统和零散业务系统无法满足企业发展. 在考察过单体式应用架构、分布式架构、SOA 架构等架构后ꎬ最
后集中在 OSGI 框架平台和自主研发基于模块化的弹性扩展门户网站架构的选择上.
OSGi(open service gateway initiative)技术是 Java 动态化模块化系统的一系列规范. 基于该规范ꎬ一
些开源社区和厂商实现具体的 OSGI 开发平台ꎬ如 Java 开发的 Felix 和 Equinoxꎬ以及. NET 平台实现的
OSGi. NET. 这些基于 OSGI 规范的架构ꎬ基本解决了软件复用、团队协作、软件可维护性、开放性等问题.
但是基于这些架构开发出来的产品ꎬ很难解决系统美观性和友好性问题ꎬ以及用户个性化需求的问题.
基于开源的 OSGI 架构平台思路ꎬ考虑到系统之间的集成和现有开发团队ꎬ最终选择自主研发基于模块
化的弹性扩展门户网站架构.
1. 3 系统建模 在本企业门户中ꎬ业务参与者包括各部门、分支机构、分(子)公司的全体人员. 系统管
理员指整个门户系统的管理者. 用例指各个业务场景ꎬ不同的业务场景可能由不同团队或人员独立开
发. 图 1 是以财务人员、人力人员、财务总监为例ꎬ说明各个模块之间的关系.
从图 1 可看出ꎬ系统管理员除了维护常规基础信息外ꎬ还需配置每个角色或用户的个性化设置. 财
第 2 期 周游舟:基于模块化的弹性扩展门户网站架构设计 177
图 1 系统业务例图
务人员、人力人员、财务总监等岗位角色关注的
方向不同ꎬ门户配置的重点模块也不太ꎻ但这些
不同角色、不同岗位的用户间有相同模块的配
置ꎬ只是侧重点不同而已. 例如ꎬ财务部门要求财
务门户要包含常规身份管理、邮件查看、流程审
批、新闻公告、日程排班等通用模块和预算模块、
报销模块、现金流模块、审计模块、工资模块. 这
时系统管理员就按需配置相应模块到页面指定
位置ꎬ如果相关模块还没有开发完成ꎬ则先把已
有模块配置好并先开通给用户使用ꎻ当后期完成
其他模块的工作后ꎬ则把相关模块再配置到财务
门户即可. 这样不仅不耽误用户使用ꎬ而且可以
不断迭代完善用户需求和体验. 同样ꎬ当财务部
门户不能满足财务总监需求时ꎬ可以针对性定制
财务总监门户. 这样各用户进入门户就能立马看
到工作内容和关注点ꎬ减少系统学习成本ꎬ提高
工作效率.
通过上述分析ꎬ整个门户网站是不断迭代完
善的过程ꎬ有些模块内容可能已经开发完毕但也
有模块还需后期开发完善. 为了达到稳定迭代和柔性化呈现个性化首页的目的ꎬ则需重点关注如下设
计. 首先ꎬ考虑不同门户首页满足不同用户的“定制首页设计”ꎻ其次ꎬ考虑不同配置与模块关系的“后台
配置设计”ꎻ最后ꎬ考虑相同模块在不同首页适配呈现的“模块开发”.
2 定制首页设计
门户首页是门户的精华所在ꎬ是企事业单位的办公和精神集中地ꎬ往往用户记住和使用最多的是门
户首页. 当用户看到首页ꎬ就知道门户是做什么ꎬ用户从这里得到哪些服务ꎬ获得哪些信息ꎬ下一步用户
将到哪里去ꎬ最终目的就是给用户带来极佳体验ꎬ并吸引足够多的注意力. 同样引导什么功能呢ꎬ用户进
入门户首页不可能只停留在首页ꎬ他会根据自己的工作和目的来决定去点击链接. 而如何引导用户用最
快的时间找到自己想要做和去的地方ꎬ则是对门户设计、用户体验和引导的综合考量. 门户首页模块化
设计的目的就是最大程度满足多样化用户需求ꎬ最大程度给每位用户带来极佳体验.
网页的模块化和汽车生产是如出一辙ꎬ首先把一个页面的每一个部分按照内容的独立性和关联性
分成不同的模块ꎬ这样一个页面就由背景和很多个模块组成ꎬ然后再将每个模块按照业务类别、外观样
式等因素分配给不同的组员进行开发ꎬ并最终又将这些模块按用户所需拼合在一起ꎬ形成一个完整的门
户首页. 图 2 是说明定制化首页的建模过程. 第一步ꎬ把设计页面过滤和清洗掉具体内容ꎬ并抽出模板页
面与模框(存放具体模块的单一容器ꎬ本设计命名为模框ꎬ图 2 中的每一个粉色长方形对应一个模框)
的布局. 第二步ꎬ在模板页面上标注每个模框的基本信息ꎬ包括模框唯一标识 id、长宽等基本属性ꎬ便于
开发人员调试和系统管理员配置. 第三步ꎬ完成各个模块的开发测试工作后按用户要求动态配置到对应
模框位置. 最后ꎬ程序根据系统参数和用户参数配置动态渲染出个性化的门户首页.
从以上分析可以得出ꎬ柔性化组装其实是通过模板和模框来定制用户个性化需求的过程. 每个具体
模块与模板页面是没有直接关联性ꎬ模块要呈现到页面指定位置ꎬ必须通过模框装载模块内容. 模框除
了装载模块之外ꎬ还向模块传递模块基本属性、用户信息和系统配置信息ꎬ包括基本的长宽位置信息、用
户基本信息、页面风格、主题包、语言参数、加载方式、用户自定义参数等. 模框的作用是作为模块和页面
的媒介ꎬ主动把当前页面信息和用户配置信息传递给具体模块. 从设计和开发的角度ꎬ模框使具体模块
与具体页面完全分离ꎻ从页面的渲染角度ꎬ模框又是模块和页面的胶水.
178 湖北大学学报(自然科学版) 第 41 卷
图 2 用户首页建模
3 后台配置设计
从定制首页设计中可预知ꎬ系统管理员需要在后台把页面主题、模板、模框、模块等信息配置完毕供
门户首页呈现调用. 下面先解释几者之间的关系ꎬ再详细说明每一项的具体含义. 图 3 说明了这些配置
图 3 后台配置参数之间的关系
之间的关系.
从图 3 中可以看出ꎬ一个模板对应多个模框ꎬ具体对
应多少个模框是根据用户首页建模拆分出的模框研究性
和创新性. 模框与模块是一对一关系ꎬ每个模块都需要一
个模框装载才能在页面上渲染. 模框只是为了达到模块在
设计和开发上的分离和渲染上的融合ꎬ以及模块复用的功
能才在模板和模块之间抽象出的中间逻辑ꎬ是模块在模板
上的一个预占位. 对一个集体来说ꎬ统一主题制作不仅节
省主题开发成本ꎬ而且可以更好地适配页面. 对用户来说ꎬ能看到和关注的是模板上最终呈现的那些内
容(即那些模块). 在常规页面看似简单的开发ꎬ但在模块化的门户首页中ꎬ门户首页渲染是通过系统、
页面、模框、模块层层入栈传递参数ꎬ层层出栈构造页面结果. 首页的渲染不只是模块的规则组合ꎬ而且
还需页面风格、用户语言等参数的搭配渲染. 下面是几项核心配置的简要说明:
图 4 模板、模框配置管理
1) 主题配置:用于指定门户 CSS 样式、图片、语言包等调用的文件夹ꎬ主要属性包括主题名称、主题
语言、描述.
2) 模板配置:用于体现门户首页模框位置的固化和配置模块的定位. 主要属性包括名称、模板文件
名、URL 地址、宽度、高度、模框总数、设计预览图、语言类别.
3) 模框配置:用于描述将来配置特定模块呈现在页
面上的固定位置以及模框与页面的关系. 主要属性包括
模框名称、标记、宽度、高度、适配说明. 图 4 是模板、模框
的配置展示.
4) 模块配置:用于描述每个业务模块基本信息ꎬ主
要供系统管理员或用户选择查看. 主要属性包括显示名
称、类名、相对路径、宽度、高度、类型、是否异步加载、是
否可调整、语言类别.
5) 模块与模板配置:用于配置首页呈现的内容形
态ꎬ主要是配置模板与门户导航和模块的关系. 图 5 是模
板与模块配置说明图.
6) 主题与模板配置:用于配置最终首页呈现样式ꎬ
第 2 期 周游舟:基于模块化的弹性扩展门户网站架构设计 179
一个模板可以配置多个主题ꎬ一个主题可以配置多个模板.
后台配置及用户设置的最终目的是生成加载门户首页的配置信息ꎬ图 6 是门户首页配置信息图. 该
图完整地体现了主题、模板、模框、模块之间的关系. 用户登录系统成功后ꎬ门户首先在系统缓存中找到
用户首页配置信息并反馈给首页装载渲染ꎻ如果缓存中没有用户首页配置信息ꎬ则读取在系统后台基于
角色、部门、岗位、个人生成的配置文件组合ꎬ并写入缓存供再次调用. 如用户有多个首页配置信息ꎬ则系
统加载默认配置参数进行渲染ꎬ并在首页固定位置动态生成门户切换按钮.
图 5 模板与模块配置 图 6 门户首页配置信息
根据以上“后台配置设计”介绍ꎬ结合“定制化首页”设计思路ꎬ推导出门户首页渲染过程如下:首
先ꎬ针对不同用户的个性化需求进行逐一建模ꎬ并挖掘出不同首页模板. 然后ꎬ在后台根据首页建模的布
局和用户岗位、角色、部门等信息进行首页模板、模框、模块的配置ꎬ并最终生成不同的“门户首页配置信
息”配置关系. 最后ꎬ不同的首页模板根据相应配置文件渲染出个性化的首页.
4 模块开发
4. 1 总体开发思路 模块是构成门户的一部分ꎬ一般具有独立完整的功能ꎬ具有一致的前后端接口和
加载方式ꎬ相同形态的模块在门户中可以相互替换ꎬ不同模块的按需组合就构成了最终个性化首页. 为
什么要这样设计呢? 我们发现在一个项目里ꎬ需求提出者往往参照某一两个系统而提出ꎬ在这些系统页
面中ꎬ都会存在内容和外观相同或相似的部分ꎬ如果我们按照模块化来设计与开发ꎬ不同的业务已经变
成了一个个的模块ꎬ那么这些相同业务或相似界面的模块就可以分给同一个团队或个人来开发. 假如不
同模块之间互不影响ꎬ或不同模块相互之间交互都有相应规范ꎬ那么不同开发团队可以同步进行开发ꎬ
这样效率必将有很大的提高ꎬ且代码的质量和系统稳定性也会得到相应保证. 由于每个模块都是单独存
在的ꎬ所以当任何门户首页需要用到这个模块时ꎬ都可以很便捷地直接将这个模块配置到首页使用ꎬ而
不必再次重新开发ꎬ大大增强了模块复用性.
怎样设计开发出这种具有通用性、互换性、相对独立性的模块呢? 在“后台配置设计”中已经了解
模块呈现过程关系设计的基础上ꎬ再简要介绍模块的交互设计思路. 首先把模块类型分为:列表自适应
型、焦点图型、导航条型、广告型. 其次在列表自适应型中ꎬ已经定义好模块自适应模框的样式和供前端
调用的常用方法ꎬ业务开发人员不在关注怎样适应模框、模块加载处理等共性问题ꎬ只需关注列表数据
来源及列表对应二级、三级业务页面ꎬ而且在二级、三级等页面开发中ꎬ业务开发人员也只需关注页面内
容ꎬ而页面导航、风格等共性问题不需要花费精力. 同样ꎬ焦点图型的模块基类已经定义好适配模框方法
和图片切换方法ꎬ导航条型基类已经处理好相同的页面在不同门户自动加载不同导航条的方法ꎻ只有广
告型模块约束相对较少ꎬ适合模块扩展和特殊处理场景. 针对不同的业务版块ꎬ不同团队可以按照微服
务的方式同步开发首页模块和相应二级、三级页面ꎬ也可以按照常规方式开发首页模块.
4. 2 基本实现思路 在了解上面设计思路后ꎬ下面以 3 个核心基类来说明主要实现思路. 图 7 是 3 个
核心基类. 图中的 3 个核心类分别是:门户首页基类 BaseHomePage、门户首页模块基类 BaseUserControl、
180 湖北大学学报(自然科学版) 第 41 卷
图 7 核心基类
其他二三级页面基类 BasePage. 门户首页基类除了
当前主题、语言和用户信息外ꎬ其中最重要的方法
就是加载模块方法(LoadControls)ꎬ在页面基类方法
中已经实现了从缓存及配置文件中自动加载模块
的方法ꎬ后期开发人员只需关注“定制首页设计”中
的首页建模和特殊细节处理. 门户首页模块基类主
要目的是提供标准启动方法(OnStart)供首页通过
反射的方式调用ꎬ并把用户及配置信息传递给具体
模块初始化使用ꎻ在常规模块的开发中ꎬ模块开发
人员只需考虑采用前端或后台的方式获取后端数据并进行模块渲染ꎬ不再关心常规权限、换肤、日志等
通用功能. 二三级页面基类虽然只提供了当前用户信息及配置信息供调用ꎬ但在页面前端提供了导航、
样式等动态生成内容和通用处理方法.
对于业务复杂、流量及并发大的模块ꎬ团队成员可以考虑采用微服务的方式处理模块业务逻辑ꎬ为
了交互方便ꎬ架构也提供了共享 session 和单点登录集成方式. 在整个项目开发中ꎬ为了提高开发效率、
系统稳定性、分工明确性. 为此ꎬ在本架构设计过程中ꎬ同步编写了“门户开发规范及过程管控”的规范
化文档ꎬ为开发实践打下了良好的基础.
4. 3 开发实践 有了以上的设计和开发思路ꎬ在进行实际开发过程中还需考虑基本规范、模块前端、模
块后端及模块交互等系列问题. 基本规范包括那些呢? 首先ꎬ在按照不同业务进行团队分工后ꎬ需要防
止不同开发团队的命名冲突ꎬ否则可能导致模块加载失败ꎻ其次ꎬ需要考虑不同模块的并发控制ꎻ最后ꎬ
还需考虑模块与系统间的集成.
在实际开发过程中ꎬ针对该架构制定了前端、后端及数据库开发规范. 在进行单个模块开发时ꎬ需要
根据规划确定模块的简写ꎬ如系统模块简写是“ SYS”. 规定命名空间( java 叫包)以模块简写单独结尾ꎬ
这样在加载模块的时候就不会造成冲突. 同样ꎬ在前端的 css 样式文件和 javascript 脚本文件中也把不同
模块的文件放在以模块简写的文件夹下面ꎻ并且在脚本中涉及相同的函数名称添加模块前缀ꎬ在样式文
件中涉及到样式文件采用模块简称的类限定ꎬ防止样式文件冲突. 在数据库层面ꎬ除了基本数据库规范
外ꎬ主要是在表名的前缀添加模块简写的方式区分和防止不必要的冲突ꎻ当然ꎬ根据模块流量和并非情
况ꎬ不同模块数据可以放在同一数据库ꎬ也可以把单个模块存放在一个或多个独立数据库中.
在模块前端开发过程中ꎬ除了遵守基本前端规范之外ꎬ本设计提炼出常用的前端模块样式和通用
javascript 函数ꎬ如多种列表样式、图片切换样式及相应的自适应样式等ꎬ当模块开发人员发现自己开发
的模块存在对应模块样式时ꎬ只需按照前端文档进行调用ꎬ减少前端调试时间. 样式文件、脚本及图片等
静态文件按照规范统一放在主题包文件夹下面ꎬ整个主题包可以单独部署在单独二级域名下的服务器
上ꎬ也可以部署在网站的子目录下. 当配置文件配置为相对路径时ꎬ则模块前端和后端调用相对路径下
的静态文件ꎻ同理ꎬ配置为二级域名时ꎬ前后端则自动调用独立服务器下的静态资源.
在模块后端开发过程中ꎬ我们推荐采用模块后台代码轻量化方式ꎬ结合微服务处理后端业务逻辑方
式. 当然没有后台业务代码逻辑ꎬ或把简单业务逻辑直接写在后台也是可以正确进行模块渲染. 主要是
根据模块业务复杂性和模块并发大小来综合考虑是否在后端采用微服务方式处理业务逻辑ꎬ是否提供
统一的 API 供模块后台调用ꎬ以及后端数据库是否分库和集群等方式. 在模块与各系统交互过程中ꎬ如
果是自主开发的系统ꎬ推荐采用 Session 共享集成方式ꎬ否则推荐采用单点登录集成方式.
5 总结
本文中针对模块在门户网站中的设计研究ꎬ提出基于模块化的弹性扩展门户网站架构设计ꎬ并将该
架构设计在华夏航空企业门户中进行应用. 3 年的实际应用表明确实解决了用户需求个性化、团队分
工、开发效率、系统扩展性和稳定性等关键问题. 本设计只是软件模块化在具体行业中的一次成功应用
思路分享ꎬ软件模块化的目的是建立可重用的软件组件ꎬ在不需要修改或仅作少量修改的情况下ꎬ可再
第 2 期 周游舟:基于模块化的弹性扩展门户网站架构设计 181
次用来组建新的软件系统ꎬ提高软件的开发周期和可靠性. 模块化的弹性扩展框架设计可以在保持系统
较高通用性的同时提供产品的多样化配置ꎬ因此基于模块化的弹性扩展是解决定制设计和批量化开发
这对矛盾的一条出路ꎬ是企事业单位门户开发设计的一条出路.
6 参考文献
[1] 明新国ꎬ孔凡斌ꎬ何丽娜. 面向客户选项的模块化产品开发[M]. 北京:机械工业出版社ꎬ2017.
[2] 童时中. 模块化原理、设计方法及应用[M]. 北京:中国标准出版社ꎬ2000.
[3] 周游舟. 企业单点登录方案与系统集成应用[J]. 四川职业技术学院学报ꎬ2018ꎬ28(1):159 ̄163.
[4] 周游舟. 企业信息化建设过程中的常见问题分析[J]. 科学与财富ꎬ2017ꎬ35: 174.
[5] 徐峰. 软件需求最佳实践[M]. 北京:电子工业出版社 ꎬ2008.
[6] 王庆友. 作为首席架构师ꎬ我是如何选择并落地架构方案的? [EB/ OL]. (2016 ̄09 ̄01) [2018 ̄01 ̄22]. http: / / www.
infoq. com/ cn / articles/ how ̄chief ̄architect ̄choose ̄architect.
[7] OSGi 中文社区. OSGi R4 服务平台核心规范[EB/ OL]. (2017 ̄07 ̄01) [2018 ̄01 ̄22]. http: / / www. osgi. com. cn / .
[8] 开发工厂. 三分钟实现一个插件平台和一个插件———基于最简单的 OSGi. NET 插件框架[EB/ OL]. (2012 ̄06 ̄22)
[2018 ̄01 ̄22]. http: / / www. iopenworks. com/ .
[9] 肯尼斯 C 劳顿. 管理信息系统[M]. 13 版. 北京:机械工业出版社ꎬ2015.
[10] 杨冠宝. 阿里巴巴 Java 开发手册[M]. 北京:电子工业出版社ꎬ2018.
(责任编辑 江津)

 

posted @ 2019-03-14 12:01  星释天狼  阅读(867)  评论(0)    收藏  举报