计模型。
设计模型包含了 Use Case 的实现,可以表现对象是如何相互通信和运作来实现 Use Case 流的。
对于系统的静态结构,可以通过对象类图、对象图、组件图和配置图来描述;对于系统的动态行为,可以通过顺序图、协同图、状态图、活动图描绘。
这些图再加上支持说明文档就构成一个完整的设计模型。
2.2.1 静态结构的分析与设计 数字图书馆拥有大量数字化信息资源,这些资源是多种媒体、多种格式的,而且还是相互关联的。
其数据量大,信息长度不定,非结构化信息与结构化信息并存。
传统的数据库和信息管理系统在数据模型、系统结构、用户接口等方面都难以实现对这些数字化信息资源的管理和操作,这就决定了数字图书馆必须采用面向对象的方法来建立数据模型和管理模型,建立面向对象的数据库,实现面向对象的信息管理系统。
使用 UML 对数字图书馆系统进行基于面向对象的分析和设计,可以从开发的第一步开始,从系统的底层就把握住数字图书馆信息资源的特征,为下一步的具体实现打好基础。
在为数字图书馆系统建立模型时要涉及到处理大量的模型元素,如对象类、接口、组件、节点、图等,可以将语义上相近的模型元素组织在一起,这就是 UML 的包,包从较高的层次来组织管理数字图书馆的系统模型。
图 3 数字图书馆系统包图 在详细设计阶段可以对包图中的所有类、对象从实现角度再进一步进行细化,绘制具体的对象类图、对象图等。
图 3 是数字图书馆系统的包图,虚箭线说明包之间的依赖关系,如“流通”包依赖于“数据库”包,要使用“数据库”包中的类及数据。
带空心箭头的实箭线说明包之间的泛化关系,这里是一般与特殊的关系,如“编目”包与“本馆编目”包、 “联合编目”包之间存在泛化关系。
2.2.2 动态结构的分析与设计 数字图书馆提供的各种服务都是建立在分布、开放的信息结构之上,依托高速、可靠的网络环境来完成。
每项服务都可以看成一个事件流,由若干相关的对象交互合作来完成。
对于这种系统内部的协作关系和过程行为,可以通过绘制顺序图和协同图来帮助观察和理解。
顺序图和协同图适合描述多个对象的协同行为,而状态图适合描述一个对象穿越多个 Use Case 的行为。
状态图与活动图的区别是,状态图描述的是对象类响应事件的外部行为,活动图描述的是响应内部处理的对象类的行为。
图 4 数字图书馆电子书刊流通服务顺序图 图 4 是一个电子书刊流通服务的顺序图例子,用以说明数字图书馆电子书刊基本流通服务。
用户向流通子系统的用户接口登录,经用户合法性验证后,向流通子系统的电子书刊流通模块提交服务请求,电子书刊需要经过版权和复本的验证,以保证电子书刊的每一个复本在同一时间只允许一个用户借阅或阅读。
建立在分布、网络环境下的数字图书馆其事件流和控制流是十分复杂的,需要从层顶到底层进行一步步的分解,用多幅能反映动态结构的图来分析与说明。
2.3 数字图书馆的实现、测试和系统配置 经过系统分析与设计后,就可以根据设计模型在具体的环境中实现系统,生成系统的源代码、可执行程序和相应的软件文档,建立一个可执行的系统。
然后需要对系统进行测试和排错,保证系统符合预定的要求,获得一个无错的系统实现。
测试的结果将确认所完成的系统可以真正使用。
最后系统配置的任务是在真实的使用运行环境中配置、调试系统,解决系统正式使用前可能存在的任何问题。
3 小结 数字图书馆的发展方兴未艾,目前正处于传统图书馆向数字图书馆过渡的阶段,转变过程中需要应用和集成最新的信息技术,以达到对网络信息资源最有效的利用和共享。
传统的系统分析设计的方法难以保证效率和质量,将 UML 应用于数字图书馆建设,可以加速开发进程,提高代码质量,支持动态的业务需求, 并方便地集成已有的传统图书馆信息资源。
这是 UML一个有着很好前景的应用方向。
参考文献1 张龙详 . UML 与系统分析设计 . 人民邮电出版社,20012 郑巧英,杨宗英 . 图书馆自动化新论:信息管理自动化 . 上海交通大学出版社,19983 郑巧英 . 数字图书馆的一种模式——网络图书馆 . 现代图书情报技术,2000(2)4 陈英 . UML 多视点建模机制应用研究 . 北京理工大学学报,2001(2)
上一篇:
2009齐鲁软件设计大赛题目
下一篇:
非常好用的串口跟踪程序c++语言实验已通过