Logo



图书馆系统类图uml源码(图书馆管理系统uml各种图)

本文目录一览:

uml统一建模语言关于图书管理活动图怎么画

图书馆系统类图uml源码你到trufun.net网站上下载图书馆系统类图uml源码,有现成的图书管理系统UML分析设计模型图书馆系统类图uml源码,包括活动图图书馆系统类图uml源码,用例图图书馆系统类图uml源码,类图等

图书馆管理系统

不知道是不是 你先看看

1.需求分析

1.1可行性分析

因近几年学校对大学生的扩招,相应专业种类的增加,学校对相关于专业方面的图书需求量增大。图书馆对图书的库存量也相应增多。由老式的由图书管理员进行人工对图书入库,借出等操作,工作量相当大,就目前情况来看,图书管理员几乎不可能及时完成工作。所以学校决定开发一个图书信息管理系统,协同图书管理员的工作,这样管理员不必花太多时间用于整理图书,而可以集中精力做其他更重要的图书管理工作。减少管理员的工作负担。

学校要求本系统具体能实现的功能要求如下:

图书信息的录入、查询、修改、删除、排序、输出。图书信息可写入文件,也可从文件中读取。

1.2 模块分析

结合本校的实际情况并经认真分析,为此我将其分成两个模块,由两个类实现:

1.2.1 book类。主要封装了图书信息。

Book类的数据成员有:

bookID(string,图书编号),

bookName(string,图书名),

publish(Publish,出版社),

author(string,图书作者),

version(int,图书版本),

count(int,图书册数)。

1.2.2 Publish类。主要封装了出版社信息。

Publish类的数据成员:

pTime(string(yyyy-mm-rr),出版时间),

address(string,出版社地址),

pName(string,出版社名称)

1.3输入,输出分析:

数据存储方式:数组

输入:用户根据自己的需要,选择序号进行操作

输出:经系统内部的一系列处理,将最终结果显示给用户 。

1.4流程分析

本系统的具体流程图如下:

2详细设计与实现

2.1 UML类图实现

本系统主要抽象乘两个类Book 与 Publish。他们之间的关系如下:

2.2 编程思想

该应用共有五个文件,两个头文件,三个源文件:

————对Book的具体实现

————主函数

————对Publish的具体实现

————对Book类的声明

————对Publish类的声明

2.3代码实现

2.3.1 Book.h 源程序如下

#includeiostream

#includestring

#include"publish.h"

using namespace std;

#ifndef BOOK_H

#define BOOK_H

class Book

private:

string bookID;//书的编号,不同的书不同的编号

string bookName;//书的名称

string author;//书的作者

string bookType;//书的类型

Publish *publish;//声明一个指针类

int version;//书的版本号

int count ;//该书的册数

public:

Book();//无参构造函数

void set_bookID(string id);//设置书的编号

string get_bookID();//获取书的编号

void set_bookName(string name);//设置书名

string get_bookName();//获取书名

void set_author(string author);//设置书作者

string get_author();//获取书的作者

void set_bookType(string type);//设置书的类型

string get_bookType();//获取书的类型

void set_publish(Publish publish);//设置出版社信息

Publish get_publish();//获取出版社信息

void set_version(int version);//设置书的版本

int get_version();//获取书的版本号

void set_count(int count);//设置书的册数

int get_count();//获取书的册数

void addInfo();//录入相关图书信息

bool searchInfo(string id);//查找相关图书信息

void modifyInfo(string id);//修改相关图书信息

friend void sortInfo(Book book[],int n);//对相关图书排序

void display();//输出图书信息

Book operator =(Book temp);

static int bookCount;

friend bool isContinue();//声明友原函数,判断是否继续操作

#endif

2.3.1 Publish.h 源程序如下

#includestring

using namespace std;

#ifndef PUBLISH_H

#define PUBLISH_H

class Publish

private:

string pTime;

string address;

string name;

public:

Publish();//无参构造函数

Publish(string time,string add,string name);//带参构造函数

void set_pTime(string time);//设置出版时间

string get_pTime();//获取出版时间

void set_address(string add);//设置出版社地址

string get_address();//获取出版社地址

void set_name(string name);//设置出版社名称

string get_name();//获取出版社名称

#endif

2.3.3 Book.cpp 的源程序如下

#includeiostream

#includefstream

#includestring

#include"publish.h"

#include"book.h"

using namespace std;

int Book::bookCount=0;//书的总类数,不同编号的书代表一类

Book::Book()

bookID="1";

bookName="C++编程技术";

author="郑立";

bookType="IT类";

publish=new Publish();//动态分配,后面一定要用delete,否则容易产生内存泄露

version=1;

count=1;

void Book::set_bookID(string id)

bookID=id;

string Book::get_bookID()

return bookID;

void Book::set_bookName(string name)

bookName=name;

string Book::get_bookName()

return bookName;

void Book::set_author(string auth)

author=auth;

string Book::get_author()

return author;

void Book::set_bookType(string type)

bookType=type;

string Book::get_bookType()

return bookType;

void Book::set_publish(Publish pub)

publish-set_pTime(pub.get_pTime());

publish-set_name(pub.get_name());

publish-set_address(pub.get_address());

Publish Book::get_publish()

return *publish;

void Book::set_version(int ver)

version=ver;

int Book::get_version()

return version;

void Book::set_count(int coun)

count=coun;

int Book::get_count()

return count;

void Book::display()

cout"图书编号:"bookID" ""图书姓名:"bookName" ""图书作者:";

coutauthor" ""图书类型:"bookType" ""出版时间:"publish-get_pTime();

cout" ""出版社地址:"publish-get_address()" ""出版社名称:";

coutpublish-get_name()" ""版本号:"version" ""册数:"countendl;

void Book::addInfo()

char choice;

cout"输入数据按Y,退出按N"endl;

cinchoice;

if(choice=='Y')

string id;

string name;

string author;

string type;

string ptime;

string pname;

string address;

Publish publish;

int version;

int count;

cout"请输入图书编号:"endl;

cinid;

set_bookID(id);

cout"请输入图书名称:"endl;

cinname;

set_bookName(name);

cout"请输入图书作者:"endl;

cinauthor;

set_author(author);

cout"请输入图书类型:"endl;

cintype;

set_bookType(type);

cout"请输入出版时间:"endl;

cinptime;

publish.set_pTime(ptime);

cout"请输入出版社地址:"endl;

cinaddress;

publish.set_address(address);

cout"请输入出版社名称:"endl;

cinpname;

publish.set_name(pname);

cout"请输入版本号:"endl;

cinversion;

set_version(version);

cout"请输入册数:"endl;

cincount;

set_count(count);

coutendl;

bookCount++;//总数加1

writeFile();

readFile();

void Book::readFile()

ifstream ifile("library.txt",ios_base::in);

char line[9][101];

for(int i=0;i9;i++)

ifile.getline(line[i],100);

coutendl;

coutline[i];

string n=line[0];

coutn;

ifile.close();

void Book::writeFile()

//创建一个文件输出流对象,采用追加方式

ofstream ofile("library.txt",ios_base::app);

ofile"图书编号:"get_bookID()endl;

ofile"图书名称:"get_bookName()endl;

ofile"图书作者:"get_author()endl;

ofile"图书类型:"get_bookType()endl;

ofile"出版时间:"publish-get_pTime()endl;

ofile"出版地址:"publish-get_address()endl;

ofile"出版社名称:"publish-get_name()endl;

ofile"版本号:"get_version()endl;

ofile"图书册数:"get_count()endl;//注意后面的endl,用于对写完一个book后换行,其他位置不行

ofile.close();}

bool Book::searchInfo(string id)

bool flag=true;

if(get_bookID()==id)

flag=true;

else

flag=false;

return flag;

void Book::modifyInfo(string id)

int choice;//所做的选择

string name,author,type,time,pname,address;

int version,count;

cout"请按序号输入你想修改的项目:"endl;

cout"1:图书姓名 2:图书作者 3:图书类型 4:图书版本 "endl;

cout"5:图书册数 6:出版日期 7:出版社名称 8:出版社地址 "endl;

cinchoice;

if(choice!=0)//当choice=0时表示退出操作

if(choice==1)

cout"请输入新的名称:"endl;

cinname;

set_bookName(name);

else if(choice==2)

cout"请输入新的作者名:"endl;

cinauthor;

set_author(author);

else if(choice==3)

cout"请输入新的图书类型:"endl;

cintype;

set_bookType(type);

else if(choice==4)

cout"请输入新的版本号:"endl;

cinversion;

set_version(version);

else if(choice==5)

cout"请输入新的册数"endl;

cincount;

set_count(count);

else if(choice==6)

cout"请输入新的出版时间:"endl;

cintime;

publish-set_pTime(time);

else if(choice==7)

cout"请输入新的出版名称:"endl;

cinpname;

publish-set_name(pname);

else

{ cout"请输入新的出版社地址:"endl;

cinaddress;

publish-set_address(address);

void sortInfo(Book book[],int n)

{ int flag;

Book temp;//临时变量

for(int i=0;in-1;i++)

//如果前一种书的编号比后一种书的编号大,则flag返回正数

flag =book[i].get_bookID().compare(book[i+1].get_bookID());

if(flag)//如果flag为正数,就交换这两种书的位置

temp=book[i];

book[i]=book[i+1];

book[i+1]=temp;

Book Book::operator =(Book temp)//重载=运算符,进行深拷贝

set_bookID(temp.get_bookID());

set_bookName(temp.get_bookName());

set_bookType(temp.get_bookType());

set_author(temp.get_author());

set_version(temp.get_version());

set_count(temp.get_count());

set_publish(temp.get_publish());

return *this;

bool isContinue()

char choice;

cout"是否继续操作(Y/N)?"endl;

cinchoice;

if(choice=='Y')

return true;

else

return false;

2.3.4 Publish.cpp的源程序

#includeiostream

#includestring

#include"publish.h"

using namespace std;

Publish::Publish()

pTime="2008-12-27";

address="北京";

name="清华大学出版社";

Publish::Publish(string time,string add,string name)

pTime=time;

address=add;

name=name;

void Publish::set_pTime(string time)

pTime=time;

string Publish::get_pTime()

return pTime;

void Publish::set_address(string add)

address=add;

string Publish::get_address()

return address;

void Publish::set_name(string nam)

name=nam;

string Publish::get_name()

return name;

2.3.5 主函数源程序

#includeiostream

#includestring

#include"book.h"

#include"publish.h"

using namespace std;

void main()

int choice;

int i;

int n;

Book *book;//动态创建对象数组

cout" 欢迎进入图书信息系统! "endl;

cout"请输入你想加入的书的总类数:";

cinn;

coutendl;

cout"================================================="endl;

cout"请根据序号选择相关操作"endl;

cout"========================================================="endl;

coutendl;

cout" 1:录入图书信息!"endl;

cout" 2:查询图书信息!"endl;

cout" 3:修改图书信息!"endl;

cout" 4:对图书排序!"endl;

cout" 5:删除图书信息!"endl;

cout" 6:输出图书信息!"endl;

cout" 7:退出系统!"endl;

cout"========================================================="endl;

book=new Book[n];

cinchoice;

coutendl;

while(choice!=0)

if(choice==1)

for(i=0;in;i++)

cout"第"i"种书:"endl;

book[i].addInfo();

else if(choice==2)

string id;

cout"请输入你想查找的图书编号:";

cinid;

for(i=0;in;i++)

if(book[i].searchInfo(id))

book[i].display();

else if(choice==3)

string id;

cout"请输入你想修改的图书编号:";

cinid;

for(i=0;in;i++)

if(book[i].get_bookID()==id)

book[i].modifyInfo(id);

else if(choice==4)

sortInfo(book,n);

else if(choice==5)

string id;

cout"请输入你想删除的图书编号:";

cinid;

for(i=0;in;i++)

if(book[i].get_bookID()==id)

int temp;

temp=i;

for(int j=i+1;jn;j++)

book[temp]=book[j];

temp=j;

n--;//删除了一种数,就减少了一种。

else if(choice==6)

for(i=0;in;i++)

book[i].display();

else

exit(1);

break;

if(isContinue())//选择是否继续操作

cout"请根据序号选择操作:";

cinchoice;

else break;//否则退出系统

return ;

3.调试与运行

3.1主页面

运行结果:

3.2录入图书信息

写入文件如下:

在文件夹中多了一个library.txt文件:

从文件中读出:

3.3查询图书信息

3.4修改图书信息

当然你可以继续修改,这里就不演示了。

3.5对图书排序

3.6删除图书

3.7输出所有图书信息

分析:

我们可以看到,第一个图书编号没有,因为我在前面把它删除了,所有的值设置为空,

而编号3,与编号1的图书的位置已经变了,因为我在前面对它们排了序。如果编号2没有删除,应该排在最前面。

3.8退出系统

图书管理系统 uml图

【原文出处】现代图书情报技术

【原刊地名】京

【原刊期号】200206

【原刊页号】4~6

【分 类 号】G9

【分 类 名】图书馆学、信息科学、资料工作

【复印期号】200301

【 标 题】基于UML的高校图书馆管理系统

【英文标题】The Application of UML in Digital Library

Jin Yi Yang Zongying

(Institute of Information Science and Technology,Shanghai Jiaotong University, Shanghai 200030,China)

【 作 者】金毅/杨宗英

【作者简介】金毅,杨宗英,上海交通大学情报科学技术研究所 上海 200030

【内容提要】数字图书馆的研究方兴未艾,目前正处于传统图书馆向数字图书馆过渡的阶段,转变过程中需要应用和集成最新的信息技术,以达到对网络信息资源最有效的利用和共享。传统的系统分析设计的方法难以保证开发的效率和质量,将UML应用于数字图书馆建设,可以加速开发进程,提高代码质量,支持动态的业务需求,并方便地集成已有的传统图书馆信息资源。这是UML一个有着很好前景的应用方向。

【摘 要 题】实践研究

【英文摘要】The study of digital library is booming. Now traditional library is converting to digital library,this needs the application and integration of the latest information technologies for the maximum usage and shareof network information resources. Traditional system analysis and design methods can't guarantee the efficiencyand quality. Using UML in developing digital library can quicken the process, improve the code quality, supportthe dynamic needs and easily integrate the traditional resources. This is a hopeful application field for UML.

【关 键 词】UML/数字图书馆

UML/Digital library

【 正 文】

【分类号】G250.76

1 引言

在信息技术迅猛发展及基于Internet网络应用日益普及的今天,传统图书馆正在向自动化、网络化、电子化的数字化方向发展,这是目前网络信息资源开发和研究的热点。数字图书馆的建设涉及到信息资源数字化、多媒体数据库、分布式网络、信息管理系统结构等多方面的问题,需要有效地集成和应用最新的信息技术。如何在宏观上有效地把握和组织,并运用到数字图书馆的开发建设上,是数字图书馆研究的重点。UML(The Unified Modeling Language,即统一建模语言)是一种编制系统蓝图的标准化语言,可以对复杂的系统建立可视化的系统模型,目前已经被工业标准化组织OMG(Object Management Group)接受,一经推出便得到许多著名的计算机厂商如Microsoft、HP、IBM、Oracle等的支持,在国际上的应用日益广泛。数字图书馆的开发建设是一个复杂的软件工程,需要集成不同的操作系统、数据库和应用软件,有众多不同级别的用户、管理员,满足图书馆从书目查询、普通和电子书刊借阅到提供网上信息服务、资源共享等各种需求。用传统的系统开发和集成的分析设计方法难以保证效率和质量,UML的特点及数字图书馆的要求,决定UML在数字图书馆中应该有很好的应用前景。

1.1 数字图书馆的基本特征和模式

数字图书馆组织了一系列与平台无关、面向对象、分布式的数字化信息资源并且提供相关的服务,它应该具有以下一些特征〔2〕〔4〕:

(1)数字图书馆拥有海量的数字化资源, 其信息度量单位不再是KB、MB,而是GB、TB甚至PB。数字化的资源又是多种媒体(如文字、图像、音频、视频、虚拟空间等)的,具有多种存储和压缩格式。

(2)数字化资源并不是孤立的,而是相互关联的动态的。 数字图书馆是数字化资源的统一,可以通过一定的相关关系,由特定的协议和存取方法来查找和访问这些数字化资源。

(3)数字图书馆必须为用户提供统一的访问手段, 能够让用户透明方便地获取所需的信息而不必关心这些信息的具体位置。对数字资源的检索应该是智能化、交互式的,对全文、多媒体信息、多语言信息的检索都可以达到很好的查全率和查准率。

(4)数字图书馆建立在异构平台上,具有分布、 开放的信息结构,高速、可靠的网络环境是其运行的基础。它突破了时间、空间的限制,让用户可以在任何地方、任何时间获取自己所需的信息。在此基础上提供的导航式和个性化的服务,使服务内容更多样、服务模式更广泛,这是对传统图书馆服务功能的突破。

数字图书馆的模式,可以用图1简单说明, 用户通过网络和通信系统,连接到数字图书馆的咨询系统,通过这个统一的访问界面,用户可以透明地获取各种信息资源。

附图

图1 数字图书馆模式

1.2 UML概述及特点

UML是一种编制系统蓝图的标准化语言, 可以对大型复杂的系统的各种成分可视化、说明并构造系统模型,以及建立各种所需的文档。UML通过三类图形建立系统模型:Use Case图、静态结构图(对象类图、对象图、组件图、配置图)和动态行为图(顺序图、协同图、状态图、活动图),这些图可以从不同的抽象角度使系统可视化。UML 具有以下特点〔1〕:

(1)面向对象。UML支持面向对象技术的主要概念,提供了一批基本的模型元素的表示图形和方法,能简洁明了地表达面向对象的各种概念。

(2)可视化,表示能力强。通过UML的模型图能清晰地表示系统的逻辑模型和实现模型,可用于各种复杂系统的建模。

(3)独立与过程。UML是系统建模语言,独立与开发过程。

(4)独立于程序设计语言。用UML建立的软件系统模型可以用Java、VC++、Smalltalk等任何一种面向对象的程序设计来实现。

(5)易于掌握使用。UML图形结构清晰,建模简洁明了,容易掌握使用。

使用UML进行系统的分析和设计,可以加速开发的进程,提高代码的质量,支持动态的业务需求。UML适用于各种规模的系统开发,能促进软件复用,方便地集成已有的系统并有效处理开发中的各种风险。

2 UML在数字图书馆中的应用

UML是一种建模语言,是系统开发的一个组成部分,本身并没有关于开发过程概念的定义和表示符号。UML的创始者Booch、Jacobson和Rumbaugh在Rational公司的支持下综合了多种系统开发过程的长处,提出新的面向对象的开发过程,称为Rational 统一过程(RationalUnified Process, RUP)。RUP过程的核心工作流包括:业务建模、需求分析、系统分析与设计、实现、测试和系统配置。下面通过UML来分析并构造数字图书馆模型,并结合Rational统一过程加以描述,图形用Rational Rose工具软件绘制。

2.1 数字图书馆的业务建模和需求分析

业务建模和需求分析的目的是对数字图书馆进行评估,采集和分析系统的需求,理解系统要解决的问题,重点是充分考虑系统的实用性。结果可以用一个Use Case模型表达(图2), 模型中的活动者代表外部与系统交互的单元,包括用户、图书馆工作人员和外部信息源;UseCase是对系统需求的描述,表达了系统的功能和所提供的服务,包括采购子系统、编目子系统和流通子系统。对于数字图书馆而言,流通子系统还应该考虑到普通书刊流通和电子书刊流通的区别。电子书刊是指内容为数字格式、发行为电子方式、用计算机阅读和存储的电子读物,可以实现普通书刊所没有的全文检索、页面批注、摘要、字体缩放等功能。用户无论何时何地,都可以在线借还,这是数字图书馆服务功能的一个重要组成部分,也是对传统图书馆服务功能的延伸和拓展,其中的关键是流通子系统在实现时必须能对电子书刊的版权、以及可以同时借阅的用户数进行保护和控制。

附图

图2 数字图书馆Use Case模型

图2中模型元素之间的实线表示二者存在关联关系, 带空心箭头的实箭线说明存在泛化关系,这里有两种情况,一种是一般与特殊的关系,如“流通子系统”与“普通书刊流通”、“电子书刊流通”的关系;另一种是使用关联,表示一个模型元素需要使用另一个模型元素,在箭线上标有<<Use>>, 如“流通子系统”需要使用“编目子系统”生成的书目数据,图2是数字图书馆系统层的Use Case模型, 只包含了最基本的Use Case模型,是系统的高层抽象。在开发过程中,随着对系统的认识不断加深,Use Case模型可以从顶向下不断精化,演化出更为详细的Use Case模型。

2.2 数字图书馆系统分析与设计

系统分析与设计是研究欲采用的实现环境和系统结构,结果是产生一个对象模型,即设计模型,设计模型包含了Use Case的实现,可以表现对象是如何相互通信和运作来实现Use Case流的。对于系统的静态结构,可以通过对象类图、对象图、组件图和配置图来描述;对于系统的动态行为,可以通过顺序图、协同图、状态图、活动图描绘。这些图再加上支持说明文档就构成一个完整的设计模型。

(1)静态结构的分析与设计

数字图书馆拥有大量数字化信息资源,这些资源是多种媒体、多种格式的,而且还是相互关联的。其数据量大,信息长度不定,非结构化信息与结构化信息并存。传统的数据库和信息管理系统在数据模型、系统结构、用户接口等方面都难以实现对这些数字化信息资源的管理和操作,这就决定了数字图书馆必须采用面向对象的方法来建立数据模型和管理模型,建立面向对象的数据库,实现面向对象的信息管理系统。使用UML 对数字图书馆系统进行基于面向对象的分析和设计,可以从开发的第一步开始,从系统的底层就把握住数字图书馆信息资源的特征,为下一步的具体实现打好基础。在为数字图书馆系统建立模型时要涉及到处理大量的模型元素,如对象类、接口、组件、节点、图等,可以将语义上相近的模型元素组织在一起,这就是UML的包, 包从较高的层次来组织管理数字图书馆的系统模型。

在详细设计阶段可以对包图中的所有类、对象从实现角度再进一步进行细化,绘制具体的对象类图、对象图等。图3 是数字图书馆系统的包图,虚箭线说明包之间的依赖关系,如“流通”包依赖于“数据库”包,要使用“数据库”包中的类及数据。带空心箭头的实箭线说明包之间的泛化关系,这里是一般与特殊的关系,如“编目”包与“本馆编目”包、“联合编目”包之间存在泛化关系。

附图

图3 数字图书馆系统包图

(2)动态结构的分析与设计

数字图书馆提供的各种服务都是建立在分布、开放的信息结构之上,依托高速、可靠的网络环境来完成。每项服务都可以看成一个事件流,由若干相关的对象交互合作来完成。对于这种系统内部的协作关系和过程行为,可以通过绘制顺序图和协同图来帮助观察和理解。

一个对象在其生存期间所经历的状态序列,对于把握对象的行为和状态的迁移变化是非常重要的,可以通过状态图来了解一个对象的历史,引起一个状态向另一个状态转移的事件,以及由于状态的转移而引发的动作。

此外,描述工作流和并发处理行为还可以用活动图,表达从一个活动到另一个活动的控制流。

顺序图和协同图适合描述多个对象的协同行为,而状态图适合描述一个对象穿越多个Use Case的行为。状态图与活动图的区别是,状态图描述的是对象类响应事件的外部行为,活动图描述的是响应内部处理的对象类的行为。

附图

图4 数字图书馆电子书刊流通服务顺序图

图4是一个电子书刊流通服务的顺序图例子, 用以说明数字图书馆电子书刊基本流通服务。用户向流通子系统的用户接口登录,经用户合法性验证后,向流通子系统的电子书刊流通模块提交服务请求,电子书刊需要经过版权和复本的验证,以保证电子书刊的每一个复本在同一时间只允许一个用户借阅或阅读。比如购买了一本电子书的五个复本,那么就可以有五个用户同时借阅或阅读这本书,而且必须能够控制用户对电子书刊的任意复制和打印,以保护电子书刊出版者的合法权益。然后就可以完成电子书刊的借、还、预约、续借等流通服务,最后退出。

通过顺序图可以清晰地看出用户、流通子系统的用户接口和电子书刊流通模块之间按时间顺序的消息交换,这对于把握系统的控制流、顺序行为和交互行为是非常有益的。建立在分布、网络环境下的数字图书馆其事件流和控制流是十分复杂的,需要从层顶到底层进行一步步的分解,用多幅能反映动态结构的图来分析与说明。

2.3 数字图书馆的实现、测试和系统配置

经过系统分析与设计后,就可以根据设计模型在具体的环境中实现系统,生成系统的源代码、可执行程序和相应的软件文档,建立一个可执行的系统。然后需要对系统进行测试和排错,保证系统符合预定的要求,获得一个无错的系统实现。测试的结果将确认所完成的系统可以真正使用。最后系统配置的任务是在真实的使用运行环境中配置、调试系统、解决系统正式使用前可能存在的任何问题。

3 小结

数字图书馆的发展方兴未艾,目前正处于传统图书馆向数字图书馆过渡的阶段,转变过程中需要应用和集成最新的信息技术,以达到对网络信息资源最有效的利用和共享。传统的系统分析设计的方法难以保证效率和质量,将UML应用于数字图书馆建设,可以加速开发进程, 提高代码质量,支持动态的业务需求,并方便地集成已有的传统图书馆信息资源。这是UML一个有着很好前景的应用方向。

【参考文献】

〔1〕张龙详.UML与系统分析设计.人民邮电出版社,2001

〔2〕郑巧英.杨宗英.图书馆自动化新论:信息管理自动化.上海交通大学出版社,1998

〔3〕郑巧英.数字图书馆的一种模式——网络图书馆. 现代图书情报技术,2000,(2)

〔4〕陈英.UML多视点建模机制应用研究.北京理工大学学报.2001,(2)

〔5〕于升峰.数字图书馆的关键技术研究.情报学报,1999,(12)

uml数据建模图书馆系统需求性分析报告,设计报告怎么写?

在网上下载一个trufun plato专业版建模工具,把你的模型导进去,然后用它们的导出文档,就可以生成你模型的需求分析报告和分析设计报告。。

  图书馆系统类图uml源码 


评论


最新评论