• 基于UPA模式的设计思想


    背景


    WEB2.0 --Web2.0 是相对Web1.0 的新的一类互联网应用的统称。Web1.0 的主要特点在于用户通过浏览器获取信息。Web2.0 则更注重用户的交互作用,用户既是网站内容的浏览者,也是网站内容的制造者。所谓网站内容的制造者是说互联网上的每一个用户不再仅仅是互联网的读者,同时也成为互联网的作者;不再仅仅是在互联网上冲浪,同时也成为波浪制造者;在模式上由单纯的“读”向“写”以及“共同建设”发展;由被动地接收互联网信息向主动创造互联网信息发展,从而更加人性化!

    百度连接 --百度连接开放平台基于OAuth2.0授权协议,向所有第三方开放了百度的账号体系、好友关系链以及相关产品线的核心数据接口。通过该平台,所有第三方网站只需通过百度账号就可以登录其网站,而百度应用开放平台的开发者还可以在其IFrame应用中获取百度登录用户的基本资料和好友关系等数据。目前,已有搜狐微博、奇艺网、拉手网、天极网等加入。2011年7月25日上午,百度连接开放平台已在百度开发者平台上发布。

    概述


    对于UPA设计模式即用户U(User)+应用P(Application)+行为A(Action),我们可以这样联系下生活。人作为一个自由体,可以在某个地方做某件事情。例如:我们可以在商场购物,在电影院看电影,在餐馆就餐,在公司上班,在图书馆借书等等,正是由于像商场、电影院、餐馆、公司、图书馆等等场所,丰富了人们的生活,满足了人的某种需求。其实在UPA设计模式中,用户U就相当于上例中的人,应用P如商场、电影院、餐馆等场所。行为A是购物、看电影、就餐、借书等这样的现实活动。正如下图清晰地示意了UPA设计模式:

    wps_clip_image-26712

                                                图1 现实生活

    wps_clip_image-13073

                                           图2 UPA设计思想

       我们可以这样简单概述UPA设计模式中,U、P、A、三者之间的关系:

       某用户U在特定的应用P中,发起某种行为A。如:小明在郑州大学上学。

       我们将上述例子进行简单的抽象得到了UPA设计思想的原型。那么对于一个网站系统,特别是综合性的门户系统,UPA又该怎样理解和实现呢?

    对于综合性门户系统,具有用户基数大、信息繁多、应用丰富的特点,必然需要合理的设计、组织各方面的关系,才能保证系统的健壮和稳定。我们以地方生活门户系统举例加以阐释。A市地方生活门户系统(以下简称A门户),设计初衷是辐射A市50万中青年人群,打造A市生活第一门户品牌,集地方资讯、交友、团购、娱乐、旅游等于一体的综合门户系统。对于A门户,首先需要解决的是50万的用户量,必然要建立一个高效、稳定的用户管理系统,以便于用户信息的维护和身份认证,其次对于众多的服务项目子系统,如果没有统一的规范标准,会造成各子系统之间的混乱,整个系统的臃肿。这就需要建立统一管理服务项目子系统机制,具体到UPA的设计思想中,用户管理系统即U(用户)的概念,服务项目子系统即P(应用),用户在各服务项目子系统中所能进行的操作即A(行为),如下图所示:

    wps_clip_image-31915

                                     图3  A市地方生活门户

    A市门户系统已经具有UPA设计思想的影子,但并不是UPA设计思想的最佳实践,我们可以提出这样两个问题进行探讨:

    1,A门户系统怎样引导用户注册,以便高效快捷的让用户“入住”系统,吸引大量用户?

    也许,对于引导用户的注册,我们可以从缩短用户注册流程,简化注册操作,加以实现。但是面对网络互连的大背景,分享用户是未来的发展趋势。或许,我们可以这样假设,互联网的发展趋势是统一的身份认证,对于已经拥有众多帐号的网民来说,实现统一身份认证,便可在互联网上“一卡通”,访问任何网站。A系统的简化注册流程的方法,却还是需要用户注册,这样势必会增加用户记忆负担,破坏用户体验,让用户流失,我们能否考虑在A系统的用户管理子系统中增加网络互连的功能,吸纳来自其他平台的用户呢?也就是U(用户)必须具有网络互连的功能。

    2,A门户系统怎样扩展服务项目,增加子平台?

    面对A系统业务需求的增加,高效的扩展服务项目即增加子系统,需要在用户系统和服务子系统之间,建立统一的应用管理机制,应用扩展标准和发布流程,以及服务项目子系统的自维护机制。而不是将各子系统的维护功能在用户管理系统中实现,那样会造成用户管理系统的庞大复杂,臃肿难以维护。建立应用扩展标准和统一的发布流程,有助于各应用的维护,提高应用开发效率。

    分析

    对于上述两个问题的解决,其实是UPA设计思想中关于U和P的概念及U和P之间关系的诠释。我们回归UPA设计思想,在UPA设计思想的角度进一步的说明。

    U(用户)的概念

    UPA设计思想中,U是最核心的部分,U即用户(User),并不是传统意义上的用户,也不是特指某一用户,而是广义上的用户生态系统概念。所谓用户生态系统,可以这样理解,由众多具有某些特性的用户组成的集群,并且具有用户维护、管理能力的应用系统。比如,我们传统上的具有用户注册、审核、用户信息维护、权限管理等功能的模块。同时,U还有联合、联结(Unite)之意,即桥梁作用。它能像桥梁一样连接众多陆地,实现互连互通。也即是连接各网络站点,实现帐号共享,互联互通。我们如果将采用UPA设计思想的系统,简单地看作U,便可形成如下网状图:

    wps_clip_image-8257

          图4 U1、U2、U3、U4分别代表不同种类的应用系统

    P(应用)的概念

    正如上文例子中,所说的P相当于现实生活中提供各种服务的场所。对于现实生活中的服务场所来说,有自己的管理机构,允许用户在服务场所发起相应的行为,同时对危害服务场所自身安全的行为加以监测和阻止。对于P来说,也应该具有自我维护管理能力,承载用户行为,并具备行为监测的功能。那么对于传统意义上的软件思想,我们可以这样类比,以新闻系统为例,P就相当于除用户管理模块外的整个系统,行为就是满足用户需求所实现的功能,如浏览新闻,分享新闻,评论新闻,编辑新闻,删除新闻等等。行为监测就如同权限审核,对于编辑新闻,删除新闻并不是一般用户所能操作的,也就是我们后面将要提到的高级行为,需要进行行为审查。在UPA设计思想中,P指丰富多彩的应用子系统,如A市门户系统中的团购、娱乐、旅游等等。对于P的理解,我们可以这样认为,P是满足用户某种需求,并且具有自我维护管理能力,承载用户行为的系统集群。 

    A(行为)的概念

    行为(Action)是用户在特定的应用中执行的某种操作,如新闻资讯应用中浏览新闻,娱乐应用中欣赏音乐。是满足用户需求的功能表现。每个应用P中承载的行为A并不相同,同样的行为A在不同的应用P中也具有不同的含义。如在新闻应用中浏览新闻,搜索新闻,而在音乐应用中欣赏音乐,搜索音乐,两个应用所承载的行为并不相同。在新闻应用中的搜索行为和在音乐应用中的搜索行为,虽然都是搜索行为,但含义并不相同,一个是搜索新闻,一个是搜索音乐。

    我们可以将行为进行如下分类:一般行为和高级行为

    一般行为指不需要经过行为审查的操作,反之为称为高级行为。如在新闻应用中删除新闻属于高级行为,需要进行行为审查,防止用户恶意操作,危害系统安全。

    在上述分别对U、P、A进行阐述后,我们可以更全面的对UPA设计思想进行表述,如下图:

    wps_clip_image-31553

                                                      图5  UPA模型

    1.U具有的职责:用户准入机制(包含其他平台的接入和自身的注册功能),开放互联,用户信息的维护,身份识别,应用注册

    wps_clip_image-1068

                                                图6  用户准入机制

    用户准入机制:我们假设B系统采用UPA设计思想,B系统支持如新浪帐号,百度帐号,QQ帐号,网易帐号,人人帐号等其他平台的用户接入,并且有自身的用户注册功能,某用户Q访问B系统,可以使用既有帐号接入,又可以使用B系统的自助申请注册。

    2.通信:包括P发起的用户认证和行为审查,以及U作出的响应回馈

    如果应用P中需要用户参与,那么就需要与U进行通信,由P发起用户身份认证。在U对用户身份进行身份识别通过后,反馈用户身份凭证给P。P便可以根据身份凭证监测用户行为,尽可能的满足用户行为需求,用户在P中发起某种高级行为A1,在P的规则下要求对A1行为进行行为审查,P根据用户身份凭证执行行为审查,未通过审查的,根据有害程度,反馈给U作相应处理,反之允许发起行为A1。

    wps_clip_image-6676

                                              图7 通信和行为审查

    3.P具备的职责:满足用户需求,承载用户行为,自身范围内的行为监测,用户身份认证

    对于所有应用P,必须在U中注册,得到授权许可,并在U中保存P的行为规则副本,才能成为合法应用,允许用户访问。

    综上:UPA设计思想,可以概述为:只要在U中取得合法的准入许可后,U中便具有用户的某些特征信息及身份凭证,用户可以在U中注册的合法应用P中,发起某些行为,达到自身的需求。

    说明:上述是我前段时间的论文初稿,本想等写完再拿来和大家分享,但是十分想听听园友们的意见,欢迎大家指正、批评。我的邮箱地址:hejiaquan2008@126.com,也可以直接回复,如果你觉得好,可以推荐一下,让更多的人看到。呵呵……

    随笔档案 - 2011年12月

    【译】Silverlight for Windows Phone Toolkit In Depth(六)

    2011-12-21 21:32 by AlphaThink, 794 visits, 网摘收藏编辑
    摘要:开篇: Silverlight for Windows Phone Toolkit In Depth(一) 上一篇:Silverlight for Windows Phone Toolkit In Depth(五) ExpanderView 概述 ExpanderView是由头部和可折叠的下拉项组成的控件。当用户点击头部时,ExpanderView将折叠或者打开。Expande... 阅读全文

    【译】Silverlight for Windows Phone Toolkit In Depth(五)

    2011-12-21 00:50 by AlphaThink, 808 visits, 网摘收藏编辑
    摘要:开篇: Silverlight for Windows Phone Toolkit In Depth(一) 上一篇:Silverlight for Windows Phone Toolkit In Depth(四) DatePicker 概述 Windows Phone Toolkit的DatePicker是一个能为你自动提供一个输入框的UI元素,当你在选择它时,选择器会显示... 阅读全文

    【译】Silverlight for Windows Phone Toolkit In Depth(四)

    2011-12-19 22:30 by AlphaThink, 801 visits, 网摘收藏编辑
    摘要:开篇: Silverlight for Windows Phone Toolkit In Depth(一) 上一篇:Silverlight for Windows Phone Toolkit In Depth(三) 说明:由于原书的第二版已经发布,所以后续章节均是基于原书第二版进行翻译的,前期翻译的与第二版区别不大,已经对部分进行了更正且用红色标注了修改的部分。 Cont... 阅读全文

    【译】Silverlight for Windows Phone Toolkit In Depth(三)

    2011-12-19 00:43 by AlphaThink, 801 visits, 网摘收藏编辑
    摘要:开篇: Silverlight for Windows Phone Tookit In Depth(一)上一篇:Silverlight for Windows Phone Tookit In Depth(二)AutoCompleteBox概述AutoCompleteBox是当用户在输入时在下拉列表中给出相应的匹配项的控件,它是由一个文本输入框和下拉列表组成。具有丰富的属性集支持个性化定制、模板显示、数据绑定和自动完成逻辑。准备开始使用AutoCompleteBox必须先在你的项目中添加引用Microsoft.Phone.Controls.Toolkit.dllNote:在安装完Toolkit后 阅读全文

    【译】Silverlight for Windows Phone Toolkit In Depth(二)

    2011-12-16 16:44 by AlphaThink, 896 visits, 网摘收藏编辑
    摘要:上一篇: Silverlight for Windows Phone Tookit In Depth(一)还需要什么?在使用Windows Phone Toolkit之前,你需要安装如下工具:Windows Phone Developer ToolsVisual Basic / VB tools download开始Silverlight for Windows Phone Toolkit之旅为了开始Silverlight for Windows Phone Toolkit之旅,请先访问http://silverlight.codeplex.com/releases/view/71550 (最 阅读全文

    【译】Silverlight for Windows Phone Toolkit In Depth(一)

    2011-12-15 23:57 by AlphaThink, 1063 visits, 网摘收藏编辑
    摘要:Silverlight for Windows Phone Toolkit In Depthby Boryana Miloshevska(翻译稿)译者:AlphaThink译者序在学习Windows Phone 7开发中,发现许多好的书籍,对自己帮助很大,不仅仅是学到许多开发技巧,更钦佩撰写这些书籍,分享知识的人,所以自己感触很大,很想把这些知识也分享给需要的人,因为这本书是英文版的,和我一样对英语不敏感的人也就麻烦了,所以我才准备着手翻译,一是对自己所学的加以巩固,提高自己的英语水平,二是分享给不太喜欢阅读英文书籍的朋友,好了,不废话了,另外声明一下,本人英语水平有限,翻译有不当的地方还望指 阅读全文

    芒果微盘开发小记

    2011-12-13 13:00 by AlphaThink, 73 visits, 网摘收藏编辑
    摘要:由于课程学习的需要,这段时间在研究Windows Phone 7开发,发现博客园里关于WP7开发资料最近一段时间井喷一样的出现,不乏许多牛人的视频,文章等等,自己也学到许多东西,在这里感谢一下博客园为我们提供了这么好的社区平台,好了,不多说废话了,下面就对近期的小项目--芒果微盘进行一下总结,还望园子的朋友批评指正,技术水平时间等等原因,仍有许多不足,欢迎拍砖。先晒一下界面预览: 项目中的一些要点1、REST服务2、封装SDK3、Silverlight ToolKit4、独立存储空间5、多任务下载芒果微盘是基于新浪微盘REST服务而开发的,包含基本的文件管理,热门资源搜索下载,本地文件管理等等 阅读全文


  • 相关阅读:
    CSS实现背景透明,文字不透明(兼容各浏览器)
    JQUERY SCROLL PATH自定义滚动路径
    Truffle3.0集成NodeJS并完全跑通(附详细实例,可能的错误)
    truffle的调用nodeJs的问题
    Truffle基础篇-Truffle做什么的?怎么安装?
    以太坊智能合约开发笔记
    day02 智能合约
    remix无法安装的解决方案
    基于eth快速发行自己的数字货币
    remix-ide的三种使用方式
  • 原文地址:https://www.cnblogs.com/Leo_wl/p/2369377.html
Copyright © 2020-2023  润新知