迈克尔比伯(Michael Bieber)
新泽西理工学院
纽瓦克大学高地分校,NJ 07102 USA
摘要
我们采用两阶段方法为万维网设计应用程序。 首先,软件工程师执行 关系 – 导航分析 ,具体分析现有或新应用程序的内部和内部关系。 这使他或她更好地理解应用程序的复杂性和丰富性,以及更好地提供用户所需的访问和元知识。 二,动态超媒体引擎(DHymE), 在运行时自动生成每个关系和元知识项的链接,以及在这些链接之上的Web上不常见的复杂导航技术(例如,导游,概述,结构查询)。 链接和导航以及注释功能补充了应用程序的主要功能。
动机
随着万维网及其编程工具的成熟,我们越来越多地发现具有Web界面的分析应用程序和其他具有生成内容而非手工创建内容的网站。 这包括组织急于转换为Web界面的大型遗产系统[Be95]。 本文涉及所有此类系统的应用程序设计。 它还解决了这样一个危险,即开发人员将赋予这些系统很少的链接,而不是用Web可以支持的丰富的链接和导航层来修饰它们[BV97]。
此外,这些分析应用程序的开发人员经常需要以用户能够最好地理解的方式呈现复杂的信息。开发人员通常会依赖于富有洞察力的可视化技术和良好的用户界面设计。这些方法并不简单,对于某些应用程序来说,不能简单地为所有用户传递足够的信息,尤其是学生、新手和那些不熟悉应用程序域的低级细节的人(例如必须根据开发人员的工作做出决策的非技术经理)。即使对于具有直接信息显示的应用程序,用户可能仍然对特定项目的含义或确定方式有疑问。从逻辑上讲,Web应用程序中的每个元素都可能被视为信息探索的潜在起点。更详细地探索一条信息的能力可以帮助用户解决对该项目以及它所属的分析或显示的疑虑,或者简单地更好地理解这两个项目。用户可能希望更深入地挖掘他们所看到的数据值和符号、图形或用户输入表单上的标签、弹出列表中的选项、用户作为输入输入输入的信息(在实际提交之前),甚至是他们可以调用的菜单命令和其他控件。
为了使开发人员的工作复杂化,用户对应用程序(及其基础域)的心理模型通常与开发人员(应用分析人员或软件工程师)不同。即使开发人员与用户密切合作,最终结果可能对所有用户都不是同样直观,或者对每个用户的单个任务也不是同样好。用户可能希望访问与手头任务直接相关的特定显示、功能或信息,但系统无法从当前屏幕或附近直接访问到。
提供代表应用程序关系的链接,让用户能够访问想要的内容,这是超媒体的主要目的之一。 我们采用两阶段方法来为万维网设计应用程序。 首先,开发人员执行 关系 – 导航分析 ,具体分析现有或新应用程序的内部和内部关系。 这使开发人员更好地理解应用程序的复杂性和丰富性,以及更好地提供用户所需的访问和元知识。 二,动态超媒体引擎(DHymE), 在运行时自动生成每个关系和元知识项的链接,以及在这些链接之上的Web上不常见的复杂导航技术(例如,导游,概述,结构查询)。 链接和导航以及注释功能补充了应用程序的主要功能[BK95,Bi98]。
关系 – 导航分析
关系 – 导航分析(RNA)技术有5个步骤:
(1)利益相关者分析
(2)元素分析
(3)关系和元知识分析
(4)导航分析
(5)关系和元知识实施分析
RNA有两个主要目的。 关系分析本身可以帮助开发人员更深入地理解应用程序。 这主要发生在步骤1-4中。 然后,开发人员必须决定实际实现这些关系中的哪一个。 有些人可能只提供边际利益。 其他可能非常耗资源或难以实施。 这些决定发生在最后一步。
虽然目前的形式非常有用,但我们打算进一步开发RNA技术,为每个步骤制定具体的指导方针,并减少开发人员在分析的第2步和第3步中必须考虑的选项范围。 这些改进应该使分析更系统,更容易进行,同时允许它必然是开放式的。
第1步:利益相关者分析
利益相关者分析的目的是确定应用程序的受众。 了解谁对应用程序感兴趣可以帮助开发人员广泛地确定所有重要元素和关系,然后专注于这些。 尤其是那些具有公共Web访问的应用程序,其涉众范围比许多人想象的要广泛得多。事实上,许多开发人员发现这是RNA中最有启发性的部分。开发人员还应该识别和理解每种类型的用户在应用程序中要执行的任务。 这些将有助于开发人员在随后的RNA步骤中关注特定领域。
第2步:元素分析
在这里,开发人员列出了应用程序中所有可能感兴趣的潜在元素。 在一个层面上,包括在任何在线显示(信息屏幕,表格,文档和任何其他类型的显示)中显示的所有类型的项目,以及屏幕,表格和文档本身。 最简单的开始方法是检查每个屏幕(或模型)并识别它包含的每个值和标签。 请注意,开发人员应识别元素的种类或类别,而不是单个实例。 我们在步骤3中讨论的关系类型都是针对特定类型的元素。 例如,在决策分析领域,这些包括“模型”和“数据值”,而不是特定的模型或数据值。
第3步:关系分析
关系分析涉及相互关系,内部关系和元知识。 对于每组利益相关者,开发人员应根据以下每种一般关系类型考虑前一步骤中确定的每个感兴趣元素。 某些关系仅对某些利益相关者有用,超媒体引擎将过滤这些关系。 关系可以导致应用程序内外的信息。 开发人员不应受到实际可用性或实施成本和工作因素的限制。 在这一步中,他们应尽可能充分发挥自己的创造力。 只有在步骤5中,他们才应考虑如何实现所发现的关系和元知识。
RNA目前帮助开发人员识别应用程序中的以下类型的关系和元知识:模式,流程,操作,结构,描述,参数,统计,协作和排序关系。 [Bi98]提供了更多细节。 Bieber和Vitali [BV97]展示了一些通用关系类型如何支持在线销售发票。 [Bi98]展示了它们如何支持数学建模决策支持系统。
第4步:导航分析
一旦我们确定了关系,我们就可以考虑用户如何访问它们。 最直接的实现将使每个关系成为链接,然后提供简单的遍历(用户选择锚点和链接,以及显示链接目标的系统)。 但某些关系类型有助于更复杂的导航。 超媒体的概念包括许多基于关系或链接的其他导航功能。 这些包括导游和小径,概述和结构查询[BVA97,Ni95]。 在RNA的这一步骤中,开发人员应确定哪些导航功能可以最好地满足利益相关者的需求。
第5步:关系和导航实施分析
显然,第3步可以产生很多关系,第4步可以产生很多可能的导航机会。 在此步骤中,开发人员必须决定实际实现哪个。 这一步不是实际的实现,只是逻辑决定实现哪些关系。 设计师应该考虑实施和展示每种产品的成本和效益(实际和边际)。 我们将这一步骤与步骤3和步骤4分开,这样设计师就可以在不受现实世界考虑的限制下,在那里锻炼他或她的所有创造才能。 然后,设计者为要实现的每个关系编写映射规则(使用我们指定的格式)。映射规则指定用于查找每个关系的端点的命令或算法。
DHymE(动态超媒体引擎)
DHymE超媒体引擎与目标应用程序分开执行。 我们为每个应用程序编写一个包装器程序,以将其集成到我们的引擎架构中。然后,应用程序或其包装器通过Web代理服务器连接到DHymE。DHymE拦截在应用程序和用户界面之间传递的所有消息,并使用上面指定的映射规则将消息的每个适当元素映射到超媒体节点或锚定。我们的Web浏览器包装器将这些锚点集成到正在显示的文档中,并通过代理服务器传递给用户的Web浏览器。当用户选择一个锚点时,浏览器包装器将它传递给DHymE,后者返回一个可能的链接列表(一个由映射规则确定的每个适当的关系)。如果用户选择正常的应用程序命令(映射到操作链接),则DHymE将命令传递给应用程序进行处理。如果用户选择超媒体引擎链接(例如,创建注释),则DHymE完全处理它。如果用户选择补充模式,过程,操作,结构,描述,信息或发生关系,则DHymE推断出适当的应用程序命令,元应用程序操作(例如,在操作系统级别或模式级别)或超媒体引擎操作。产生所需的信息。如果用户选择用户创建的注释,DHymE将检索它。因此,DHymE自动为应用程序提供所有超媒体链接(以及导航),这些应用程序仍然是超媒体不知道的,实际上通常完全没有变化。我们目前正在将多个应用程序与DHymE集成,自动为每个应用程序提供Web界面或补充其现有Web界面:人员申请跟踪系统,关系数据库管理系统,数学模型管理系统,运输电子表格分析系统和多标准决策支持分析工具。[Bi98]更详细地描述了这些想法和更古老的非网络原型DHymE。[Bi97,CB97]也提供了引擎的一些背景知识。
结论
我们希望我们最持久的贡献是成功说服Web应用程序(无论是新的还是从其他计算机环境移植过来的)的开发人员充分利用其应用程序中的链接。 设计师一次又一次地告诉我们,RNA已经在他们自己的应用程序中展示了他们从未想象过的链接。 确定这些是实施的必要的第一步。 经过深思熟虑的实施,Web的链接和导航设施可以大大降低用户应用程序的复杂性。RNA为开发人员提供了一种工具,用于识别应用程序中补充链接的机会。DHymE超媒体引擎自动生成这些链接,对应用程序几乎没有变化。
致谢
我们非常感谢NASA JOVE教师奖学金项目,新泽西州多媒体研究中心,新泽西理工学院(NJIT)国家交通和工业生产力中心,新泽西州新泽西州由新泽西州科学技术委员会运输,以及斯隆基金会和AT&T基金会以及新泽西理工学院SBR计划的资助。
参考
[Be95] BENNETT,K., 传统系统:应对成功。 IEEE软件,1995年1月,19-23。
[Bi97] BIEBER,M.,超文本引擎:对计算应用的支持,技术说明,1997年。
[Bi98] BIEBER,M.,用超媒体补充申请,提交中,1998年。
[BK95] BIEBER,M. 和KACMAR,C. 为计算应用程序设计超文本支持。 ACM 通信38(8),1995,99-107的通讯。
[BV97] BIEBER,M. 和VITALI,F.(1997)。 在万维网上支持超媒体。 IEEE 计算机 30(1),1997,62-70。
[ BVA97 ] BIEBER,M.,VITALI,F.,ASHMAN,H.,BALASUBRAMANIAN V.,和OINAS-KUKKONEN,H. 第四代超媒体:万维网的一些缺失链接。 《国际人类计算机研究杂志》47,1997,31-65。
[CB97] CHIU,C. 和BIEBER,M.,《开放超文本系统支持分析应用的通用动态映射包装》,《超文本97汇编》,ACM出版社,纽约,1997年4月,218-219。
[Ni95] NIELSEN,J. 多媒体和超文本:互联网及其他。 AP专业版,1995。
原文链接:https://web.njit.edu/~bieber/web-engineering.html