AWS PaaS文档中心

AWS PaaS可以构建什么样的应用

AWS PaaS是AWS平台家族的第6代产品,在以企业流程应用为核心的六大应用场景,提供集约化的IT平台能力。犹如拥有一把六脉神剑,以更低的成本、更高的效率打通平台化构建企业应用的经脉,真正简化了企业流程应用的开发、运行和维护。

  1. 流程类应用
  2. 数据类应用
  3. 协同类应用
  4. 移动类应用
  5. 集成类应用
  6. 服务类应用

这些应用类型通常在现实中组合使用,AWS PaaS并不限定要构建的应用类型。

1. 流程类应用

适合普遍存在于企业/政府组织中的各种流程,合规连接组织内外的业务、人员和系统。如审批类流程、业务处理流程、上下游商业活动的自动化对接。

基本步骤

  1. 设计流程模型,测试流程的合规性
  2. 设计BO模型(业务对象)
  3. 设计表单模型
  4. 将表单绑定到流程节点
  5. 设置启动权限,部署到用户端,使用

示例效果

流程设计 流程运行
表单设计 表单运行

示例应用

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内部应用产生的用户数据,也可以是外部数据源

基本步骤

  1. 设计DW模型(DW,Data Windows)
  2. 部署到用户端,使用

示例效果

DW设计 DW运行

AWS PaaS为构建数据类应用提供了强大的建模工具和引擎(DW,Data Windows),可以通过配置,完成复杂的数据交互类应用和报表,为操作者提供互联网级的用户体验。

说明
可视化模型设计 - 流程类视图
- 数据类视图
- 报表类视图
丰富的交互布局 传统网格布局、导航树布局、 单记录布局、 URL布局、嵌套DW布局、单页布局
强大的配置方案 数据方案、排序方案、查询方案、外观方案、行为方案、值转换方案、工具条方案
灵活的查询模板 BO报表、SQL报表、交叉报表、图形报表、链接报表
丰富的图形组件 饼图、柱图、折线图、漏斗图、雷达图、仪表盘、地图、散点图、矩阵树图...

图形组件

饼图 柱图 折线图
漏斗图 雷达图 仪表盘
地图 散点图 矩阵树图

3. 协同类应用

适合不能用建模配置完成的无模式应用,比如一些提高个人和团队效率的办公协作应用(如日程、投票)。

这类无模式应用并不局限在办公协作,任何不适合免代码构建的场景,都可以采用该方式开发实现。

基本步骤

  1. 本地安装AWS开发环境和Eclipse开发工具
  2. 基于AWS MVC编程框架进行代码开发、调试
  3. 测试、打包分发到生产环境
  4. 部署到用户端,使用

示例效果

开发环境 应用运行

示例应用

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交互标准),实现移动端处理。

基本步骤

  1. 在相关应用里,为移动App封装ASLP服务
  2. 开发者使用Android/iOS编程工具,完成移动App开发、调试
  3. 创建AWS PaaS的移动类型应用,上传编译的移动应用程序包
  4. 通过MAM授权安装权限,用户在移动端安装、访问

示例效果

日历 网盘

示例应用

4.2 开发HTML5移动应用

HTML5已经成为企业移动解决方案的主流技术路线,一次开发可运行在各种移动设备。此种情况下,AWS PaaS定位成一个H5应用快速生成工具和轻量级移动开发框架。

H5自动生成功能

  • 移动表单,适用于在手机、平板设备访问流程表单

示例应用

移动门户表单 微信端表单

轻量级移动开发架构

在当今体验为主的移动互联网时代,移动端技术一年一小变、三年一大变,作为一个企业级PaaS平台,内置任何移动端框架都会即刻过时。因此,AWS PaaS提倡开发者学习和使用最新、最流行的H5框架,由PaaS统一提供访问入口和运行环境

//加入自己熟悉的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/

基本步骤

  1. 本地安装AWS开发环境和HBuilder开发工具
  2. 基于AWS MVC编程框架进行代码开发、调试
  3. 配置应用入口,测试、打包分发到生产环境
  4. 部署到用户端,使用

示例效果

工资单 CRM移动端

示例应用

5. 集成类应用

企业级应用,集成几乎无处不在。集成类应用适用于为上层场景提供集成服务,主要包括:

5.1 轻量级的ESB总线服务

AWS PaaS为上层应用提供了对企业内外各种异构系统的适配访问,统一SOAP服务的注册、发布,使企业IT部门集中管理各类服务接口的运行、监控和日志,简化系统集成的复杂度。

5.2 可视化的流程编排服务

AWS PaaS提供了Process Service - 流程服务接口标准,开发者可以基于该标准,将企业内常见系统接口封装成可视化集成组件,供流程设计人员直接使用。如更新SAP订单、生成EAS凭证。

示例效果

编排服务 映射服务参数

示例应用

5.3 封装成集成工具应用

示例应用

5.4 将第三方产品封装成应用

示例应用

6. 服务类应用

API是AWS PaaS开放给开发者的编程接口,用来与AWS PaaS各种引擎和程序服务资源进行跨网络、跨设备、跨系统的交互。AWS PaaS的基础架构,是一个原生的API Server,开发者可以将任何处理快速封装成互联网Web API,提供给第三方系统。

利用AWS PaaS的API架构设施,可以将这些服务封装成自己的应用,统一向外部提供交互服务。详细,请参见AWS PaaS API参考指南

常见场景

  • 将流程引擎以服务的方式,提供给第三方系统
  • 将PaaS的后台处理逻辑,以HTTP+JSON方式提供给移动端应用
  • 与企业内部系统和外部SaaS/B2B服务,安全的进行API互操作

延伸阅读