一个文献管理软件(Dosee)的创意设计
1 引言
如今各种应用软件层出不穷,就拿文献管理类软件来说,用Google或Baidu等搜索引擎搜索,出来的结果不下百余个,下载一些口碑较好的软件如“利和”进行试用,却经常发现存在这样那样的问题,我曾开发过文献管理软件,对文献管理有自己独特的认识,我认为,一个软件要想真正的推广应用,除了功能完备以外,易操作性和友好的用户接口至关重要。以下我从信息设计、界面和易用性的角度谈谈我对文献管理软件的设计创意,并结合此创意开发一个Dosee文档管理系统。
2我的软件开发思路
传统的开发过程主要从软件开发人员的观点出发,忽略了最终用户的观点。我认为这是导致现有软件存在大量问题的主要原因。因此,如何从用户的角度出发设计和开发软件是软件开发人员必须认真思考问题。
就前期开发来说,需求是非常重要的一个环节。需求是一项工程,需要认真的实施,这样才能为下一步的软件开发奠定良好稳固的基础。需求工程是详细描述用户需求的过程,并作为在系统开发过程中采用的分析组件。该描述指导软件设计、实施和测试。如果不及早检测出需求文档中的错误,则会增加开发的开销。需求工程的目标之一是确定建造系统的可行性和开销。原型和仿真不仅能帮助开发人员设计初级产品,还能使他们更好地理解用户的需求。特别是当用户的计算机知识有限而专业知识很强时,原型不仅能有效地决定用户接口,还能决定产品的特性。
完成需求之后,就可以按照软件开发模型进行详细设计和原型开发,这是一个反复改进的过程,并不是一蹴而就的。就设计方法来说,我采用现代软件开发方法开发Dosee,即面向对象(OOP)的设计,采用松散耦合和高内聚组件设计系统,设计了不同的软件模型,并结合需求设计各个功能模块。
完成系统开发之后,就是系统测试了,普通的测试方法,各种软件工程的书中都有详细介绍,这里我想从另外一个角度即评价标准的角度去测试系统、评价系统,以达到改进系统的目的。
我认为应用软件必须能适应平台、环境以及用户需求的不断变更。一个好的软件除了满足用户需求之外,还应该考虑以下评价标准:
1)可扩展性:软件必须是可快速更新和扩展的,以适应新的环境和需求。
2)可靠性:软件的运行必须是安全、可靠、稳定的。
3)易操作性:软件对用户应该是易操作和易使用的。
4)界面友好:在用户接口上,软件的界面应该设计得美观、友好。
在软件开发上,考虑到开发的效率和质量,我选择了Powerbuiler9.0,底层数据库选择了SQL Server 2000,在图像处理上选择了Firework MX和Photoshop7.0。
对于文献管理软件,在进行充分的需求分析后,我们发现,主要的功能是完成文献的管理和用户权限的管理。同时,考虑到软件评价标准,为了增加可维护性,我设计了基于数据库的智能升级模块;基于易操作性,我设计了一键搜索和高级搜索功能;基于界面友好,我设计了浮动条状窗口,摒弃了普通的windows大窗口。
以下,我分别从数据库结构、系统功能结构和用户接口部分论述我的具体设计创意。
3 数据库结构设计
在数据库的设计上,应用PB的数据窗口思想,设计三层数据结构,即底部数据库层、数据对象层和数据窗口层,如图1所示。其中底部数据库层分为四个子数据库:用户权限库、文档数据库、文档索引库、智能升级库,各为不同功能服务,其中文档索引数据库比较复杂,负责控制文档各个属性的统一索引。

图1 三层数据结构
4系统功能结构设计
在系统的功能上,根据需求和可扩展性主要考虑以下方面:文献管理、文献搜索、文献索引管理、用户权限管理和智能升级。
4.1文献管理
这个部分主要是针对用户的需求出发的,对文献进行管理操作,其主要功能包括文献添加、文献修改、文献删除。基本的添加、修改和删除操作都利用PB的 Datawindow来完成,实现起来并不困难,但要充分考虑不同需求,如文献的各种属性、对修改和删除的权限控制和日志记录等,如图2所示。

图2 文献管理基本界面
在文献管理的基础上,为了增加用户使用的易用性,我增加了文献路径处理的功能,这样用户在增添文档的时候,系统就可以自动登记文献的名称、格式和路径,大大提高文献的录入的速度,另外,使用 ,用户可直接在局域网的不同计算机上打开和使用文献。
4.2文献搜索
在文献搜索方面,我设计了两种不同的搜索方式,“一键通”和“高级搜索”,使用一键通搜索时,可以选择搜索项,也可以不选,此时系统默认为搜索所有项,如图 3所示。使用高级搜索时,可以使用不同的操作符,如“=”、“like”等,还可以使用不同的连接符如“and”,“or”,进行多条件的综合查询,如图 4所示。

图3一键通搜索

图4 高级搜索
4.3文献索引管理
对统一索引的管理十分重要,只有合理的定义和使用索引,才能使整个文献数据库以一种统一的方式存取和管理数据。索引管理主要分为文献属性索引维护和文献分类索引维护,其中属性索引维护包含了文献的各个属性维护,如格式、出版时间等,分类索引则根据内容分类进行索引维护,如图5所示。

图5 文献分类索引
4.4用户权限管理
考虑到不同用户对文献有着不同的操作需求,需要对操作权限进行合理分配。如当前用户不能删除不是自己提交的文献等,因此在实际的应用中需要实时判断用户的权限域和当前需要权限的值域。为了更易于应用,我设计了两级验证:第一次在系统登录时验证用户身份,获取用户权限,以确定用户操作范围,如图6是登录界面;在用户登录后,系统存储其权限于一个变量,在用户进行某个操作时,取该操作的权限和这个变量进行比较,进行二次权限验证,以判断用户是否具有当前操作权限,但不需要用户主动参与,系统只根据情况返回给用户不同的提示信息。

图6 用户登录
4.5智能升级
C/S结构相对于B/S结构有客户端维护困难的缺点,考虑到系统的可维护性和可扩展性, 我设计了智能升级的功能。
智能升级是基于数据库和局域网的升级,并不需要专门的网站。其基本思想是:升级时先取本地软件版本信息,比较数据库中的最新版本信息,以确定是否需要升级,如果发现有新版本,则启动升级程序,升级程序通过比较两个版本之间的差别来从数据库读取需要更新的文件列表,然后按更新列表寻找文件并下载到本地目录,进行程序更新,如图7。需要指出的是,我把升级程序做成一个单独的可执行文件,它和整个系统有执行关联,可以动态打开和关闭系统以更新文件。

图7 基于数据库的软件升级向导
5用户接口部分创意设计
我的创意是设计一个浮动条状窗口,它总是在各种应用程序的最前面,使用户可以随时使用,如图8所示。

图8 总在最前的条状浮动窗口
考虑到用户使用的方便性,我设计了两个易用属性:1)最小化至任务栏。当用户不需要使用系统时,可以最小化至任务栏。2)条状窗口自动隐藏。此窗口可以自动隐藏成一个微型滚动条,如图9所示,它是一个动态的红色滚动条,告诉用户软件所处的位置和状态,一旦用户需要使用,鼠标移动其上面,便会自动显示条状窗口。

图9 自动隐藏的微型滚动条
在用户界面的设计上,我的思路是统一软件的风格,设计友好美观的应用程序界面,一方面可以提高软件的易用程度,另一方面对软件的商品化很有利。
在系统的启动界面上,界面小巧却非常美观,而且是自动透明消失的,这样很有动感,如图10所示。系统说明等窗口也采用统一的窗体风格,系统的主窗口与之统一风格并具有简洁大方等特点,如图11。

图10 透明消失的启动界面

图11 系统的主界面
6总结
随着各种各样软件充斥在市场上,人们对软件的要求也越来越高,不仅要求有完备的功能,同时也要满足各类用户的多方面需求,软件是不再仅仅是一个工具,它也是一件艺术品。得不到用户认可,功能再强也难有出路。我在当前的应用软件使用过程中,经常会发现这样那样的问题,一些软件没有友好的界面,不方便用户操作,我结合自己的软件开发经验,充分考虑到用户的需求,从易操作性、扩展性和用户接口设计的角度提出了一个文献管理软件的设计思路和设计框架,希望能给软件开发同行们一些启发。

浙公网安备 33010602011771号