登陆注册
9664100000045

第45章 应用程序(1)

用户用来与内容管理系统交互的应用程序集是系统最外围的可见部分。虽然几乎全部的系统功能都是由后端组件提供的,但是正是这一部分应用程序集才使得用户可以对系统进行访问。因此,内容管理系统提供的应用程序集能最大限度地支持用户的需求以及与内容管理相关的工作流程,这一点是非常重要的。构建一套全面综合的用户应用程序集需要仔细考虑所有不同的过程和步骤。

理想的用户应用程序是为了跟目标用户组进行密切协作而开发的。它们将提供功能需求和操作需求方面的重要数据输入,而这些需求应该引导应用程序的设计。用户的输入也包括例如人机工程学应用这种因专注于技术问题而被轻易忽略的方面。理论上的需求研究不足以使我们能够完全获知用户的实际需求,目前仍停留在非常抽象的阶段,不能为我们提供任何实际可见的系统经验。因此,为了了解用户,我们应该采取一种可以用来提取用户需求的方法,即产生各种不同的原型。最初的原型是通过对当前工作流及用于具体工作环境的工具的研究而产生。

本章中所列的应用程序都是经过这种方法考虑并开发出来的,它们是大量的研究和主要媒体制作及传播公司商业项目运作的结果。然而,这些研究与合作所得到的一个重要的结论是:灵活性和可配置性是关键成功因素。几乎所有组织单元都会有非常专门的需求,例如应用程序的布局格式、操作,甚至部分地考虑到功能。除了考虑用户需求,也要考虑整体的基础设施。许多系统被整合起来,内容管理应用系统可能成为别的系统的一部分。因此,不仅要能单独提供一个基本应用程序集,还要能根据用户和整体系统需求提供一个能够整合和灵活配置的应用程序模块的可选集,这一点是至关重要的。基于组件的方法可以理想地满足这些需求。这样的应用程序组件示例将在本章讨论。

但是仅仅讨论应用程序控件太过抽象,不能够为第2章所讨论的应用程序捕获工作流提供足够的细节。因此,本章还将介绍支持具体工作流的应用程序示例。这些示例一般是从应用于广播和媒体生产环境的应用程序示例中派生出来的。大量不同的工作流,范围从深度存档、新闻加工到检索,都被考虑到了。其他的应用程序领域可能针对不同的客户而有所改变,但是基本的功能都是相同的。在这样的环境下如何配置应用程序模块集合,取决于基于一个接一个项目评估所获得的专门需求。

9.1应用程序设计原则

应用程序的设计和开发这些年一直在不断变化。过去一个系统只有一个用户界面,通过此界面用户与该系统进行交互,实现该系统的功能,其接口与系统功能部分是缠绕在一起的,整个系统的结构就是为了这些功能的应用。在过去的10年中,这种情况发生了改变。最初,客户机-服务器系统的出现消除了用户界面与实际运行环境之间的紧密偶合。分布式系统的出现取代了单独在主机上运行的应用程序。分布式系统的发展与基于窗口的应用程序的发展一起产生了一个交互性更强,对用户更为友善的应用程序环境。下一个改变用户与应用程序交互方式的主要发展是互联网的出现,用户界面以网页浏览器的形式出现。信息交换只需通过标准的脚本语言,而不需要安装除网页浏览器以外的任何其他专门的应用程序。用户界面的外观由网页设计者决定。网页应用程序越来越成熟和完善,目前已经能够支持可以在浏览器环境下运行的可下载应用组件。许多用户都已习惯于这种在网页环境下运行的交互方式。

在内容管理系统的设计过程中,我们必须考虑这些发展。另外,还有一些方面,如与实际用户需求同样重要的技术和功能需求。然而,对于怎样设计和实现应用程序没有什么一成不变的蓝图。但我们需要建立某些原则,这些原则有利于设计应用程序并将应用程序与系统或其他系统组件进行整合。

9.1.1应用程序和用户需求

一直以来,推动应用程序设计和界面发展的2个主要因素是:(1)为实现新的应用程序和交互模式而服务的技术;(2)应用程序要实现的用户需求。还有第3个因素,那就是用户、技术支持和维护,这在大规模应用环境的情况下非常重要。对于一个内容管理系统来说,能够轻松安装、配置和更新应用程序是很重要的。大量潜在的拥有不同角色和权限的用户,他们对内容有不同的认识,考虑到这些方面,内容管理系统必须能够支持个人应用需求。

与其他应用程序组件之间的互用性和整合性也是十分重要的因素,也就是说,在其他应用环境下这些组件也应该能够运行。内容管理系统要能够提供这样的一个宿主环境。为了使这些组件与用户整合后仍具有透明性,内容管理系统的外观应较容易适应各种不同的应用程序布局格式。

在设计应用程序界面的过程中,应考虑用户的需求。这些需求涵盖了所有的操作特性,包括功能方面和非功能方面的特性。工作流分析是一种建立需求的方法。进一步说,在应用和人机工程方面的操作处理是必须建立的一种系统设计参数。能准确获取这些需求,以确保用户能够在一个稳定、持续的基础上高效地操作系统并与系统交互是至关重要的。

就开发应用而言,这些不同的需求可以按照它们的来源和如何确定来进行区分:

·功能需求针对应用程序的特征和特征集合。它们主要是通过考察现有的或潜在的工作流而得到的。功能需求只是用来说明某个特定的应用组件所提供的功能类型,但并不规定如何展示这些功能类型。

·操作需求描述了应用程序的操作和使用。相对于功能需求,操作需求所处理的是应用程序运行中的一些动态需求。操作需求可被进一步分成:

(1)用户-应用程序交互描述了发生于用户和应用程序之间的实际交互。这其中包括在不同的应用环境下完成一个具体任务所涉及的各种不同的动作和步骤,其目的是尽可能高效地实现某个目标。在这种情形下,就要考虑到人机工程学了。

(2)应用程序的支持和维护涵盖关于在大规模多媒体内容组织中对应用程序进行安装、支持、更新和维护的所有需求。

·系统需求从应用程序存在的系统环境中得到。包括用来控制特定系统组件的具体(系统和用户)界面的定义。进一步说,源于某个具体的系统配置的应用程序之上的所有需求都是系统需求的一部分。这也包括与现有系统的整合及与第三方系统的整合。

尽管在产品整个生命周期内,核心功能需求集的进一步发展相对稳定、持续,但组织与组织间的操作需求却不尽相同,有时甚至在同一个组织的不同部门之间的需求也有所不同。因此应用组件可以使基于个人用户需求的应用配置简捷方便。

用户方代表应该从最初的设计过程阶段就参与进来并一直跟随工作,这包括初始应用程序设计,还有更为重要的是项目中的应用程序引入和配置。

总的说来,应用程序应该构筑于灵活的、可配置的组件之上,这些组件适用于项目实施阶段。应用程序的配置允许按照使用限制和用户需求来定制应用。在应用组件的设计过程中要考虑到功能和操作的需求。

9.1.1.1访问权限和用户角色

在内容管理系统这样的大规模分布式系统中,访问权限具有特殊的作用,它限制了特殊用户或用户组的读取、检索以及更改信息的种类和数量。访问权限不是一个二选一的概念(例如一个用户要么可以访问应用程序和数据条目,要么不可以),而是可以详细地规定哪些内容对象可以由谁访问,访问者被授予了何种访问权限(读、写或二者都授权)。与内容对象交互的类型和形式也是由访问权限决定的,例如某个用户或许获准访问某一内容对象的预览版,但是这个权限不足以使他访问该内容对象的详细资料。不仅可以对单个用户分配权限,还可以将权限分配给用户所属的组。在一家新闻工作室内,某个办公室的所有成员都被赋予权限可观看某个系列节目的原始资料,但是其他办公室的成员则无此权限。因此对于每一个内容对象,单个用户的访问权限和用户组的访问权限都要考虑到。访问控制列表(ACL)就是控制访问数据和资源的传统方式。在内容管理系统的应用环境中,访问控制列表能够得到扩展并且以一种灵活的方式来表述系统中不同成员的权限。

用户在组织中的角色不仅决定其访问权限而且决定其应用环境的配置,例如记者或编辑的应用环境不同于编目员的应用环境。通常情况下,应用程序是安装在确定的机器上的,但是将来大多数应用程序和它们的具体设置应该能够被同一组织中的任何一台计算机访问到,除非该应用程序需要特殊的硬件和装置支持。

因此,权限与用户在组织中的角色有关。用户的角色和权限取决于其信息访问和应用的环境。用户登录文件可用于指定在一个应用环境下的用户角色和权限。在这样的一个用户登录文件中,所有关于用户的相关信息都以计算机可处理的形式保存。用户登录文件中的数据控制着应用表现和信息访问。

扮演多重角色(例如管理员和编目员)的用户需要给予特殊对待。在这种情况下,就要决定用户应该以哪一种具体的角色登录,权限和应用环境应该与不同用户的登录文件相对应。

9.1.2基于组件的应用程序设计

运用模块方式,我们所需要的灵活性和整合性可以达到最佳效果。在这样的系统中,每一个模块都代表着一个具体的功能。在一个应用框架中,模块整合能够构建一种应用。模块的大小和功能是由模块所支持的任务及该模块上所建立的某些第三方组件决定的,例如模块可以是一个VCR控件,用于对视音频的回放进行控制。这样的模块可以用于所有需要对视音频回放进行控制的情况下。它在应用程序中的位置是由应用环境、功能和操作需求决定。但通常我们不可能去定义一个独立的VCR控件模块。例如,如果采用了将VCR控件与播放器相集成的第三方产品,那么它的布局和外观就不能够再更改了。基于组件的设计不仅允许有更好的可配置性,也支持在不同应用程序中模块的可重用性。

模块封装设计的好坏依赖于不同模块在其他应用环境下重用所采用的方法及应用程序配置的灵活程度。此外,不同的模块之间必须产生交互进而形成一个应用程序,例如像信息交换这样的交互。因此,需要在灵活性、可配置性和系统整体性能之间考虑平衡。

近年来脱离功能块或模块来建立系统的思想越来越普遍,大量的技术支持这种所谓的组件式软件的方法。

9.1.2.1内容管理系统应用程序和组件式软件

模块应用设计原理与组件思想密切相关。最初的组件思想是通过将预制的一些组件组合起来提供完整的功能来建立软件系统。在此情形下重要的是组件所具有的功能、它的行为和用来与其他组件交互的接口。组件能够提供一个或多个接口(输出接口)给其他组件,也能够使用其他组件提供的接口(所谓的输入接口)。在系统中组件所具有的不同类型接口之间的接合,定义和规定了组件间的交互和系统的功能。通过在兼容的输入和输出接口之间建立的连接,可建立一个系统(或应用程序)。连接类型通常是静态的,它在开发和整合阶段被确定,在运行期间不会改变。

然而,运用组件和基于组件的方法也不是没有问题。例如,整合过程不总是一帆风顺的,有时要经过复杂的装配工作才能创建一个操作系统。因此,如果组件不能与系统环境很好的结合,在这种情况下创建应用程序是有一定危险性的。我们必须维护庞大的库集合,而且对于集合组件整体系统的一般维护也是一个问题。为了实现组件式方法的灵活性,又避免产生出过于庞大的软件,必须严格控制每一组件的开发进程,按照整体系统的创建计划来执行开发。因此,相对于传统的开发方式,在这些组件的开发过程中,按照用户需求来创建的合适的应用程序所具有的灵活性,或许需要进行更为严格的控制。

许多开发工具和基础设施支持组件式软件的开发方式(比如OCX控件和Java类)。支持模块化应用程序开发的技术有CORBA、ActiveX或JavaBeans。4.5所讨论的那些协议(如SOAP和MOS)也可被用于支持基于组件的应用程序开发。利用Web技术或Web服务来进行可重用模块的创建是一种非常好的方式,如HTML或动态HTML。以这种方式创建的模块集成在应用程序和网页中,无需在客户端进行任何安装。

同类推荐
  • 探索与研究

    探索与研究

    《探索与研究》的编写宗旨,仍然以不同行业、系统的不同来稿,从不同角度、不同层次、不同方面、不同视觉反映了改革与发展的主题。这些来稿大都来自实践第一线,对一些新观念、新思维、新现象、新发展进行了较有力度的探索与研究,注重了改革与发展主旨的积极发挥。作者都在一定的高度上联系实际,观点鲜明,论述充分,见解比较独特,阐述较为独到,明显地提升了论文的课题价值,对当前深化各项改革具有积极的参考与引导作用。
  • 反校园暴力101招

    反校园暴力101招

    本书作者以多年从教的经验,详尽分析校园暴力的定义、性质、起因和行为特点,分别针对受害者、施暴者、家庭和学校,提出了在不同情况下的应对措施。
  • 校园用电安全管理与教育

    校园用电安全管理与教育

    从历年发生的触电死亡事故来看,不懂用电知识,发生的触电死亡事故占二分之一。因此当前安全用电的宣传工作是非常重要的。我们认为安全用电应从学生抓起,因为各家各户都有学生,可以依靠学生宣传安全用电常识。
  • 今天,我们怎样做班主任

    今天,我们怎样做班主任

    本书围绕如何做一名优秀的班主任展开论述,内容包括班主任如何定位自己的角色、从怎么办到怎么做、做学生心灵的捕手、班主任要会开展人格教育。
  • 如何帮助学生适应新环境

    如何帮助学生适应新环境

    本书内容包括:一年级新生的入学适应、初一新生的入学适应、高一新生的入学适应、对家庭环境改变的适应、对学校环境改变的适应。
热门推荐
  • 异世超级村长

    异世超级村长

    离奇穿越,让他进入一个混乱的大陆。命运的捉弄,与死神擦肩而过,杀戮的世界,一个都市青年该如何抉择?看穿越少年如何利用农场,牧场,炼药,炼器,武学,纵横异世,傲世苍穹。
  • 寂寞的你

    寂寞的你

    有一个可爱的女孩叫千末丽,她喜欢上了一个男孩,叫维觅,他们彼此深爱着对方,突然一个转校生出现了。。。
  • 我可不是普通人

    我可不是普通人

    他在风雨大陆上是魔法师,魔武双修,全职全系,神兽绝种,抱歉,她身后的神兽,超神兽,上古神兽以千军万马。灵器稀缺,连她的手下用的都是高级灵器。。。。。。。。。。。。。。。。。。。。
  • 唐诗之美:快意淋漓歌大唐

    唐诗之美:快意淋漓歌大唐

    在泱泱大唐诗歌的花海中,作者简墨撷取30位极具特色诗人,以每 人的一句不常见而又浓缩了诗人性情的诗句为题,以一首诗为窗,轻轻打开《中国文化之美·唐诗之美:快意淋漓歌大唐》,整个大唐朝绚烂的诗意天空映入我们眼帘。这片星野时空交错,那些闪耀着灵性与才情的诗人的一生 或片段如历史剧般一幕幕倾情上演闪烁、归寂,而他们的一吟一唱却闪烁着诗意的光辉,历千百年不落。
  • 正义的杀神

    正义的杀神

    考古界泰斗人物意外穿越异界大陆,将死废体突然能够修炼,变成天体,步步杀戮一步步迈向修炼巅峰。追寻那唯一成仙契机。人送外号急速杀神在这莽荒的世界里有一切你所想不到的天庭?神话?轩辕?蚩尤?一个个踩在脚下
  • 降世修罗

    降世修罗

    大成仙系统降世,贫民叶飞羽在意外得到系统后发生的离奇事,当十万种族临近,妖魔现世,赢弱的人族该何去何从。看一代修罗如何带领地球残余的人族再登十大族群之一。
  • 阔少的圈套

    阔少的圈套

    他们之间的相遇,是他的预谋。他们之间的爱情,本是一场游戏。是她,落入了他设下的圈套。是他,让她平静的生活泛起了涟漪。她说,爱上他,我只有自取灭亡。燃烧过后,只剩灰烬。爱到最后,累了。她离开他,却依然是为了他。最后的最后,她会执起哪一双手,陪她共赏细水长流?
  • EXO之如有来生

    EXO之如有来生

    “哎,好不容易见一面,你好歹看看我啊,想什么呢?这是…”边伯贤伸出手点了点女孩儿的脑袋。“……”“有什么事吗?闷闷不乐的?告诉我,让我听听。”“我在很认真的想问题。”“呵,什么问题,能让你这单细胞生物这么认真?”“没有啦,我在想你这么好我怎么配得上你。万一有一天你被别人抢走了怎么办?”“……”这家伙原来是在想这个事情啊,边伯贤嘴角微扬然后起身卸妆。“现在有没有好一点?”女孩儿看了一眼更加绝望了。“完了完了!卸了妆都还这么帅,我以后可怎么办啊!”边伯贤:“………真是傻媳妇儿”我的心被你吃的死死的了不知道吗?
  • 轮回天饰

    轮回天饰

    我骑着摩托奔驰在异界大陆上,这里没有科技,只有源力,不过我穿越了,这里就有了。我用土源力铺路,一路驰骋,没有颠簸。我用火源力冲能,气缸爆动,风驰电掣。我用水源力遮阳,乌云漫天,烈阳不照。我用风源力减阻,骑着摩托也能抽烟。我用雷源力传讯,让老婆吩咐御厨做我喜欢的饭。当然我的摩托也是源力做的,所以我也可以把它改造成飞机。可是我为什么穿越?为什么来到这个世上?他们又是谁?六道轮回,究竟是谁的阴谋,谁的黑手!是谁让世界大乱?又是谁让我参与进来?这些我都不想知道,因为我只想自由驰骋……
  • 福妻驾到

    福妻驾到

    现代饭店彪悍老板娘魂穿古代。不分是非的极品婆婆?三年未归生死不明的丈夫?心狠手辣的阴毒亲戚?贪婪而好色的地主老财?吃上顿没下顿的贫困宭境?不怕不怕,神仙相助,一技在手,天下我有!且看现代张悦娘,如何身带福气玩转古代,开面馆、收小弟、左纳财富,右傍美男,共绘幸福生活大好蓝图!!!!快本新书《天媒地聘》已经上架开始销售,只要3.99元即可将整本书抱回家,你还等什么哪,赶紧点击下面的直通车,享受乐乐精心为您准备的美食盛宴吧!)