AWS PaaS可以构建什么样的应用
AWS PaaS是AWS平台家族第6代产品,从深度支撑政企六大应用场景进行架构设计,提供全面的无代码/低代码应用构建能力。可以更低成本、更高效率、更低门槛持续构建下一代应用,简化应用的开发、运行和维护。
这些应用类型通常在现实中组合使用,AWS PaaS并不限定要构建的应用类型。
1. 流程类应用
适合普遍存在于企业/政府组织中的各种流程,合规连接组织内外的业务、人员和系统。如审批类流程、业务处理流程、上下游商业活动的自动化对接。
基本步骤
- 设计流程模型,测试流程的合规性
- 设计BO模型(业务对象)
- 设计表单模型
- 将表单绑定到流程节点
- 设置启动权限,部署到用户端,使用
示例效果
流程设计 | 流程运行 |
---|---|
表单设计 | 表单运行 |
---|---|
示例应用
AWS PaaS为构建流程类应用提供了强大的建模工具和引擎,可以通过配置完成复杂的流程应用。
项 | 说明 |
---|---|
可视化模型设计 | - Process Model(符合ISO/IEC 19510:2013规范的BPMN2) - Form Model(PC/移动端表单设计) - BO Model(定义业务数据对象) - DD Model(建立表单间数据的关联映射规则) - DR Model(建立表单间表格数据的批量引用映射规则) |
强大的权限控制 | 覆盖场景的权限配置。如菜单权限、操作权限、表单权限、字段权限、记录权限 |
丰富的UI和规则库 | 基于Material Design风格的表单UI组件库、@公式规则 |
专业流程设计器 | 简单、专业、智能的在线流程设计器 |
事件驱动架构 | 通过事件触发开发者的Java代码 |
强大的流程引擎 | 设计即执行。丰富的行为模式,完全开放的引擎API |
高体验的运行框架 | 由BPMS基础工具包提供的一组流程客户端处理(如待办、跟踪、委托) |
BPMN2.0建模与引擎规范 | 流程控制模式 |
---|---|
AWS BPMN2 Process参考指南 | AWS 流程引擎对WCP的支持评估 |
2. 数据类应用
适合普遍存在于企业/政府组织中的各种数据管理,如业务台账、数据记录的增删改查、查询报表、统计报表。
数据可以来自AWS PaaS内部应用产生的用户数据,也可以是外部数据源
基本步骤
- 设计DW模型(DW,Data Windows)
- 部署到用户端,使用
示例效果
DW设计 | DW运行 |
---|---|
AWS PaaS为构建数据类应用提供了强大的建模工具和引擎(DW,Data Windows),可以通过配置,完成复杂的数据交互类应用和报表,为操作者提供互联网级的用户体验。
项 | 说明 |
---|---|
可视化模型设计 | - 流程类视图 - 数据类视图 - 报表类视图 |
丰富的交互布局 | 传统网格布局、导航树布局、 单记录布局、 URL布局、嵌套DW布局、单页布局 |
强大的配置方案 | 数据方案、排序方案、查询方案、外观方案、行为方案、值转换方案、工具条方案 |
灵活的查询模板 | BO报表、SQL报表、交叉报表、图形报表、链接报表 |
丰富的图形组件 | 饼图、柱图、折线图、漏斗图、雷达图、仪表盘、地图、散点图、矩阵树图... |
图形组件
饼图 | 柱图 | 折线图 |
---|---|---|
漏斗图 | 雷达图 | 仪表盘 |
---|---|---|
地图 | 散点图 | 矩阵树图 |
---|---|---|
3. 决策类应用
适合于由数据+规则配置完成的无模式应用,比如由DMN配置完成和一些提高个人和团队效率的办公协作应用(如日程、投票)。
这类无模式应用并不局限在办公协作,任何不适合免代码构建的场景,都可以采用该方式开发实现。
基本步骤
- 本地安装AWS开发环境和Eclipse开发工具
- 基于AWS MVC编程框架进行代码开发、调试
- 测试、打包分发到生产环境
- 部署到用户端,使用
示例效果
开发环境 | 应用运行 |
---|---|
示例应用
AWS是一个支持全栈Java 8编程语言的Java PaaS,开发者可以使用自己熟悉的IDE,开发和调试运行在AWS 上的Java程序。
开发者直接调用AWS的Jar资源和SDK API,也可以在自己app资源工程加入自己熟悉的Jar资源和前端JS框架。
//加入自己熟悉的Jar资源
%AWS-HOME%/apps/install/%appId%/lib/
//加入自己熟悉的JS/CSS资源
%AWS-HOME%/webserver/webapps/portal/apps/%appId%/js/
%AWS-HOME%/webserver/webapps/portal/apps/%appId%/css/
%AWS-HOME%/webserver/webapps/portal/apps/%appId%/img/
%AWS-HOME%/webserver/webapps/portal/apps/%appId%/xxx/
项 | 说明 |
---|---|
AWS MVC | 一个轻量级、高性能的Web编程框架 |
IDE编程环境 | 推荐使用Eclipse |
4. 移动类应用
适合运行在手机和平板的移动场景。在AWS PaaS提供了完整的企业移动管理服务(EMM,Enterprise Mobile Management),即支持集成第三方移动应用也支持开发新移动应用,这里重点介绍开发新移动应用。
- 开发原生移动应用
- 开发HTML5移动应用
4.1 开发原生移动应用
为获得移动设备的最佳体验,满足特定体验需要,可以基于Android、iOS原生语言开发App。此种情况下,AWS PaaS定位成一个API Server和MAM Server,开发人员可以使用自己熟悉的原生移动开发框架,通过调用AWS PaaS应用开发的ASLP服务(一种基于HTTP协议的AWS API交互标准),实现移动端处理。
基本步骤
- 在相关应用里,为移动App封装ASLP服务
- 开发者使用Android/iOS编程工具,完成移动App开发、调试
- 创建AWS PaaS的移动类型应用,上传编译的移动应用程序包
- 通过MAM授权安装权限,用户在移动端安装、访问
示例效果
日历 | 网盘 |
---|---|
示例应用
4.2 开发HTML5移动应用
HTML5已经成为企业移动解决方案的主流技术路线,一次开发可运行在各种移动设备。此种情况下,AWS PaaS定位成一个H5应用快速生成工具和轻量级移动开发框架。
H5自动生成功能
- 移动表单,适用于在手机、平板设备访问流程表单
示例应用
移动门户表单 | 微信端表单 |
---|---|
轻量级移动开发架构
在当今体验为主的移动互联网时代,移动端技术一年一小变、三年一大变,作为一个企业级PaaS平台,内置任何移动端框架都会即刻过时。因此,AWS PaaS提倡开发者学习和使用最新、最流行的H5框架,由PaaS统一提供访问入口和运行环境。
- 基于AWS MVC的编程框架
- 推荐使用HBuilder开发、调试HTML5代码
- 使用内置的开源H5框架(MUI、阿里巴巴Weex、百度ECharts图表),或者引入团队习惯的前端框架
//加入自己熟悉的H5前端框架
%AWS-HOME%/webserver/webapps/portal/apps/%appId%/xxx/
//平台内置的JQuery框架
%AWS-HOME%/webserver/webapps/portal/commons/js/jquery/scripts/
//平台内置的MUI框架
%AWS-HOME%/webserver/webapps/portal/commons/plug-in/mui/
//平台内置的Bootstrap框架
%AWS-HOME%/webserver/webapps/portal/commons/plug-in/bootstrap/
//平台内置的Cordova框架
%AWS-HOME%/webserver/webapps/portal/commons/plug-in/cordova/
//平台内置的EChart框架
%AWS-HOME%/webserver/webapps/portal/commons/js/jquery/scripts/ui/echarts/
基本步骤
- 本地安装AWS开发环境和HBuilder开发工具
- 基于AWS MVC编程框架进行代码开发、调试
- 配置应用入口,测试、打包分发到生产环境
- 部署到用户端,使用
示例效果
工资单 | CRM移动端 |
---|---|
5. 集成类应用
数据驱动:
- 基于BPMN2.0服务编排
- 集成数据用于UI组件
- 集成数据用于DW视图
- 集成数据用于仪表盘
- 集成数据用于数据触发器
- 集成数据用于API发布
连接器:
- 集成数据(关系型/NoSQL)
- 集成接口(HTTP/SOAP)
- 集成消息(MQ/IoT MQTT)
- 集成应用(SAP/Oracle/用友/金蝶)
可视化服务编排服务
AWS PaaS提供了Process Service - 流程服务
接口标准,开发者可以基于该标准,将企业内常见系统接口封装成可视化集成组件,供流程设计人员直接使用。如更新SAP订单、生成EAS凭证。
示例效果
编排服务 | 映射服务参数 |
---|---|
6. 服务类应用
规范标准:
- 规范协议,HTTP/SOAP
- 规范调用,请求/数据/异常封装
策略丰富:
- 协议转换(如SOAP发布成HTTP)
- 访问控制(身份/业务安全策略)
- 流量控制(限流/熔断)
- 监控告警(规则/通知)
利用AWS PaaS的API架构设施,可以将这些服务封装成自己的应用,统一向外部提供交互服务。详细,请参见AWS PaaS API参考指南
常见场景
- 将流程引擎以服务的方式,提供给第三方系统
- 将PaaS的后台处理逻辑,以HTTP+JSON方式提供给移动端应用
- 与企业内部系统和外部SaaS/B2B服务,安全的进行API互操作