门户结构
门户没有标准,只有安全、适用和体验。典型的门户由以下几部分组成:
- 功能导航
- 工作区
- 门户内容(可选)
- 通知中心(可选)
- 个人配置(可选)
- 退出
上述所有功能元素的总入口,由实现
PortalSkinsInterface
接口的getHomePage()方法返回HTML页面提供(直接或间接)
功能导航(Navigator)
有时美观与效率是相悖的,一个高体验的门户能够恰当的将两者进行融合。作为指引用户访问各种操作的总入口,导航(菜单)是最重要的UX设计细节。回忆一下你接触到的各种功能导航场景:
- 微软Office软件的下拉菜单
- Windows XP的开始菜单
- Windows8 Metro桌面
- 曾经接触的某个ERP系统功能导航树
- 微软Outlook的抽屉菜单
- Google搜索和Google应用的导航
- 天猫网站的购物导航
- Wordpress站点导航
- iPad桌面
- ...
这些面对办公用户、业务用户和互联网用户的大众产品或服务都提供了合理的功能导航设计。因此,门户结构的首要元素是基于用户群体确定你的导航结构特征,这类设计往往掺杂了更多非功能性指标。
- 简单、简洁、一致,具有识别感
- 符合潜在人群的操作习惯或客户特征(如政府行业、大型集团)
- 可配置性强,容易融入企业文化或企业形象
- 适合用户长期使用,最终还是要提高工作效率
以下是设计功能导航
应注意的技术问题:
- 是否考虑到业务用户可能有大量功能入口?如何进行分类和组织,并在第一时间更方便的找到这些功能
- 是否考虑到在不同屏幕分辨率下,布局的自适应能力?通常我们会以最低1024*768分辨率做设计,那么在宽屏、大屏下访问呢?
- 是否考虑到大量导航菜单拥挤时,如何处理超出边界的区域
- 是否考虑到不同浏览器下UX体验的一致性?
- 如果作为一个数千、上万员工使用的导航条,是否充分考虑到性能优化?如降低网络流量、缩短请求在服务器端的响应时间
- 是否考虑到选用AWS 导航菜单提供的哪类ICON标准(
12*12/64*64/96*96
)?使门户实施人员能够基于配置,更自由的更改这些ICON
构建
功能导航
的PortalAPI来自AWS PaaS控制台维护的导航菜单
结构,最多支持三级
工作区
工作区
是响应功能导航
操作的结果区,是用户访问各种功能的操作区,这是被预期设计的一个或多个iframe。相对而言,工作区内各种功能页面是固定的,因此在设计上需要能够给用户以合理的视觉叠加,即功能导航
和工作区
的内容看起来是一个完整、协调的整体。
- 工作区在空间设计上应尽可能的大
- 工作区可能是一个不断替换的固定区域,可能是
Tab
形式的页签,也可能是一种设计上的组合 - 工作区应能够自适应用户的浏览器分辨率,并在调整窗口大小时做出自动的调整
尽可能避免
_blank
新窗口。这种模式容易在多窗口间频繁切换时导致用户操作路径的迷失,也无法在移动设备中获得更好的体验
门户内容(Portal布局)
通常当用户登入系统后,需要基于该用户的身份提供一个默认首页,分类的组织各种信息、数据和图表。
门户首页提供的常见内容:
- 个人信息汇总,如待办任务数量
- 个人日常事务的分类处理,如工作流任务、任务TODO、日程提醒
- 发布的最新通知、公告等文字内容和图片内容
- 发布的最新知识文档
- 与用户身份相关的业务看板,如销售统计、财务统计
- 与企业相关的公众信息,如股价、行情数据
- 访问其他系统的入口链接
这个部分可以由AWS PaaS提供的基础门户服务和小门户应用组合完成,开发者需了解如何在你的门户应用中嵌入和实施个性的门户内容
服务。
门户内容的设计原则:
- 选择实用性强的内容,经常用的
- 选择实效性强的内容,过期就会无价值的
- 与企业文化和创新驱动相关的内容,第一时间的价值宣传
- 充分考虑用户并发规模,减少首页门户的内容复杂度
通知中心(Notification)
与登录用户相关的各种通知服务由通知中心
应用提供,这是与AWS PaaS紧密融合的一个基础应用。如果你的门户需要支持该项功能,那么需要你基于通知中心
应用开放的ASLP开发符合该主题风格的消息到达处理过程。
该功能可形象的理解为个人手机
的通知中心,所有AWS应用都可以经过授权,调用接口向用户推送信息和处理信息。
- 当待办任务到达时提醒,并能够直接办理
- 当日程事件到达前提醒,并能够直接处理日程
- 当邮件到达时提醒,并能够直接阅读
工作网络
小组的各种通知信息,并直接互动- ...
可从
AWS企业应用商店
安装通知中心
应用。
个人配置(Personal Setting)
常用的个人配置项包括:
- 修改登录口令
- 完善联系信息
- 上传个人头像
- 查看登录日志
这些功能在PortalAPI中提供了接口。
退出(Logout)
应至少显性的为用户提供退出
操作,可以通过调用PortalAPI的会话注销接口销毁Session。