图书管理信息系统——课程设计报告
Doc图书馆管理信息系统课程设计报告书
学号:课程设计题目管理信息系统课程设计教学院机电工程学院专业交通运输班级姓名指导教师2011 年 6 月17 日2010~2011学年第二学期课程设计任务书设计名称:管理信息系统课程设计班级:地点:一、课程设计目的《管理信息系统》课程的学习,不仅需要理论上的深入探讨,而且需要通过实践上机,自己开发一个管理信息系统,才能真正理解书本知识,牢固掌握课堂教学内容。
因此,本课程设计的目的就是要通过一个实际的管理信息系统的分析设计和开发,提高学生应用所学知识分析问题,解决问题和实际动手的能力,更加熟练地掌握管理信息系统开发的基本方法和工作步骤,对管理信息系统开发实践有进一步体会。
要求:(1) 严格按照课程设计规定时间上机,不得无故缺席和调换;(2) 独立完成课程设计的所有工作,保质保量做完任务书规定的分析、设计任务;(3) 课程设计期间,在规定的上机时间外必须广泛查阅参考书籍,编写好各种程序,以充分利用有限的上机时间。
二、课程设计内容(含技术指标)课题一:库房信息管理系统的设计。
库房管理既是日常处理业务,也是物资管理的基础工作。
因此,做好库房信息管理工作意义重大。
要求完成如下功能:(1)能输入入库单、出库单,在输入过程中,能自动显示其名称、规格、单价,并自动计算金额,有出错提示。
(2)屏幕可显示物品明细台帐。
(3)能输出物品的超储或欠储报警。
(4)能显示目前的库存情况。
课题二:学校选课系统设计随着学校的学生越来越多、开设的课程越来越丰富和多元化的情况下,考虑建立一个方便、快速、公平和符合学分制管理制度的选课平台和应用系统就显得至关重要了。
学生选课管理系统,在学生选课的规范管理、科学统计和快速查询方面具有较大的实用意义。
它提高了信息的开放性,大大地改善了学生、教师对其最新信息查询的准确性。
要求完成如下功能:(1)学生可以选修规定范围内的课程,查看已修学分总数,还可以修改个人信息。
(2)教师可以根据统计的人数挑选一定数量的学生,也可以直接在网上公布成绩,让学生直接在网上查询成绩。
图书管理信息系统——课程设计报告.docx
.目录第一章概述 ............................................................................................................................................................................................................... 错误!未定义书签。
第二章系统需求与设计..................................................................................................................................................................................... 错误!未定义书签。
2.1系统目标与需求.................................................................................................................................................................................. 错误!未定义书签。
2.2系统业务分析........................................................................................................................................................................................ 错误!未定义书签。
图书管理系统设计报告
图书管理系统设计报告第一篇:图书管理系统设计报告图书管理系统设计报告一系统开发的目标与意义1.1设计题目此次VFP课程设计是综合应用所学过的数据库理论知识,自行设计并实现一个较为完整的应用系统。
结合一个实际信息系统开发,初步掌握数据库管理信息系统的方案设计、论证和分析方法。
正确运用所学课程的基本理论和知识,了解在Windows环境下,使用Visual FoxPro 6.0开发管理信息系统所需的计算机软、硬件环境。
进一步深刻理解Visual FoxPro 6.0,合理设计并建立数据库,建立数据库中表与表之间的关系。
在理论教学的基础上,进一步理解可视化编程的基本概念,熟练掌握可视化编程的方法和步骤。
通过编程和上机调试,提高计算机应用与开发水平,特别是VFP平台的开发水平和能力,提高解决实际问题的能力。
从软件工程的角度,初步树立正确的程序设计思想,从系统分析、系统设计、系统实现、系统评价出发。
培养分析问题、解决问题的能力。
提高收集、查阅资料和撰写项目文档的能力。
1.2开发意义针对图书馆特点,图书管理系统实现后,能够使界面友好美观操作简单易行。
全面自动化信息管理,可随时掌握图书的进存、借阅等信息,查询灵活方便,数据存储安全可靠。
进而提高工作效率。
改善后的图书管理系统将功能全面,实用性强。
1.3系统开发过程1.3.1 分析阶段本阶段主要工作是信息的收集,正所谓好的开度等于成功的一半。
通过信息的收集工作来确定系统的目标、软件的总体思路以及所需要的时间。
1.3.2设计阶段在本阶段认真设计可以体会到什么叫事半功倍。
详细的规划具体需要完成的任务、输入输出的程序以及采用的数据结构,最好通过一定的算法描述工具详细描述算法。
1.3.3实施阶段本阶段要运用(1)系统论思想,把所做的大系统分解成几个小系统,但要保证小系统即个功能模块受高一级系统控制。
(2)“自上而下”的设计思想。
每一给小程序都可独立、精确运行,但严格受制与高一级程序。
图书管理系统课程设计报告
大学课程设题目图书管理系统姓名南星学号专业年级计算机科学与技术指导教师马传香00056 1401第1章图书管理信息系统概述.......................................... -1 -1.1图书管理信息系统简介 (1)1.2图书管理信息系统功能描述 ..................................... -1 - 第2章需求分析.................................................... -3 -2.1 系统目标.................................................. -3 -2.2业务流程 .................................................. -3 -2.3数据流程 .................................................. -7 -2.4数据字典 .................................................. -9 -2.4.1 数据元素定义......................................... -9 -2.4.2 外部项 .............................................. -10 - 第3章系统设计...................................................... -3 -3.1系统功能 .................................................... -3 -3.2系统结构 .................................................. -3 -第4章数据库设计................................................... -13 -4.1 E-R 图 .................................................... -13 -4.2数据库详细设计 ............................................ -13 - 第5章主页设计..................................................... -17 -5.1主页设计 ................................................... -17 -5.1.1实现过程............................................. -17 -5.2功能导航栏设计 ............................................ -18 -第6章程序设计与编码......................................... -19 -6.1系统登陆页面的设计......................................... -19 -6.2 借书窗体的设计............................................ -20 -6.3还书窗体的设计............................................. -21 -第7章系统测试.................................................... -22 -7.1 程序设计的原则............................................ -22 -7.2数据库调试与试运行.......................................... -22 -7.2.1 系统测试目的....................................... -22 -7.3 系统维护................................................. -23 -7.3.1 系统故障的类型..................................... -23 -7.3.2 故障防止措施....................................... -23 - 第8章心得总结.................................................... -23 -参考文献......................................................... -24 -附录1 .................................................................................................... -25 -附录2 ..................................................................................................... -26 -第1章图书管理信息系统概述1.1图书管理信息系统简介图书馆作为一种信息资源的集散地,图书和用户借阅资料繁多,包含很多的信息数据的管理。
图书管理系统课程设计报告
管理信息系统课程设计设计内容:学生班级:学生姓名:学号:班内序号:设计日期:一、课设目的通过对图书管理信息系统的系统分析、系统设计、编码和调试等工作的实践,了解管理信息系统的一般设计方法和实现思路,深入了解数据库设计的基本理论及方法。
二、系统功能框图该系统主要由四大功能模块组成:用户登录、图书管理、用户管理和借阅查询。
各大功能模块又由一些子功能模块构成,其功能框图如下。
三、数据库结构1、读者类别表(ReaderType)2、读者信息表(Reader)3、图书信息表(Book)4、借阅信息表(Borrow)四、功能模块图书管理用户管理借阅查询五、界面设计1、登入窗口2、图书管理窗口3、用户管理窗口4、系统管理窗口5、借阅信息窗口6、图书借阅窗口7、还书窗口8、个人信息修改窗口六、实现代码1、登入代码int right=1;QSqlDatabase db=QSqlDatabase::addDatabase("QODBC");QString strDatabaseName=QString("DRIVER={SQLServer};SERVER=TERRY;Database=book;uid=tt;pwd=123");db.setDatabaseName(strDatabaseName);db.setPort(1433);bool ok=db.open();if(ok){QSqlQuery query;query.exec(tr("select 用户编号,用户姓名,用户密码,用户类别 from users"));if (!query.isActive()){QMessageBox tempMsgBox(QMessageBox::Warning,tr("查找用户失败!"),stError().text(),QMessageBox::Ok);tempMsgBox.exec();}else{while(query.next()){this->rid=query.value(0).toString();QString name=query.value(1).toString();QString passward=query.value(2).toString();this->type=query.value(3).toString();if(this->lineEdit0->text()==name&&this->lineEdit1->text()==passw ard){right=0;if(type=="1"){managesystem *w1=new managesystem;w1->rid=this->rid;w1->type=this->type;w1->show();this->close();}else if(type=="2"){manageusers *w2=new manageusers;w2->rid=this->rid;w2->type=this->type;w2->show();this->close();}else if(type=="3"){managebooks *w3=new managebooks;w3->rid=this->rid;w3->type=this->type;w3->show();this->close();}else{reader *w4=new reader;w4->rid=this->rid;w4->type=this->type;w4->show();this->close();}}}if(right){QMessageBox tempMsgBox(QMessageBox::Warning,tr("消息"),tr("用户名或密码错误,请重新输入!"),QMessageBox::Ok);tempMsgBox.exec();}else{QMessageBoxtempMsgBox(QMessageBox::Information,tr("消息"),tr("欢迎进入图书管理系统!"),QMessageBox::Ok); tempMsgBox.exec();}}}else{QMessageBox tempMsgBox(QMessageBox::Warning,tr("消息"),tr("数据库连接错误,请重新连接!"),QMessageBox::Ok); tempMsgBox.exec();}2、添加图书代码//构造sql添加语句QString sqlString(tr("insert into books(图书编号,书名,作者,出版社,出版日期,分类名,语言,页数,价格,入馆日期,内容简介,是否在馆)"));sqlString.append(QString("values('")+this->lineEdit0->text()+ QString("',"));sqlString.append(QString("'")+this->lineEdit1->text()+QString ("',"));sqlString.append(QString("'")+this->lineEdit2->text()+QString ("',"));sqlString.append(QString("'")+this->lineEdit3->text()+QString ("',"));sqlString.append(QString("'")+this->lineEdit4->text()+QString ("',"));sqlString.append(QString("'")+this->lineEdit5->text()+QString ("',"));sqlString.append(QString("'")+this->lineEdit6->text()+QString ("',"));sqlString.append(QString("'")+this->lineEdit7->text()+QString ("',"));sqlString.append(QString("'")+this->lineEdit8->text()+QString ("',"));sqlString.append(QString("'")+this->lineEdit9->text()+QString ("',"));sqlString.append(QString("'")+this->lineEdit10->text()+QStrin g("',"))sqlString.append(QString("'")+this->lineEdit11->text()+QStrin g("')"))//执行添加QSqlQuery query;query.exec(sqlString);//显示QSqlTableModel *model=new QSqlTableModel;model->setTable("books");model->select();this->tableView->setModel(model);//判断添加是否成功if (!query.isActive()){QMessageBox tempMsgBox(QMessageBox::Warning,tr("添加失败"),stError().text(),QMessageBox::Ok);tempMsgBox.exec();}else{QMessageBox tempMsgBox(QMessageBox::Information,tr("消息"),tr("添加成功!"),QMessageBox::Ok);tempMsgBox.exec();}3、删除图书代码//构造sql删除语句QString sqlString(tr("delete from books where 图书编号='")); sqlString.append(this->lineEdit0->text()+QString("'"));QSqlQuery query;query.exec(sqlString);//显示QSqlTableModel *model=new QSqlTableModel;model->setTable("books");model->select();this->tableView->setModel(model);//判断删除是否成功if(!query.isActive()){QMessageBox tempMsgBox(QMessageBox::Warning,tr("删除失败!"),stError().text(),QMessageBox::Ok);tempMsgBox.exec();}else{QMessageBox tempMsgBox(QMessageBox::Information,tr("消息"),tr("删除成功!"),QMessageBox::Ok);tempMsgBox.exec();}4、查询图书代码//构造sql查询语句QString sqlString(tr("select 书名,作者,出版社,出版日期,分类名,语言,页数,价格,入馆日期,内容简介,是否在馆 from books where 图书编号='"));sqlString.append(this->lineEdit0->text()+QString("'"));QSqlQuery query;query.exec(sqlString);if (!query.isActive()){QMessageBox tempMsgBox(QMessageBox::Warning,tr("查找图书失败!"),stError().text(),QMessageBox::Ok);tempMsgBox.exec();}else{while(query.next()){this->lineEdit1->setText(query.value(0).toString()); this->lineEdit2->setText(query.value(1).toString()); this->lineEdit3->setText(query.value(2).toString()); this->lineEdit4->setText(query.value(3).toString()); this->lineEdit5->setText(query.value(4).toString()); this->lineEdit6->setText(query.value(5).toString()); this->lineEdit7->setText(query.value(6).toString()); this->lineEdit8->setText(query.value(7).toString()); this->lineEdit9->setText(query.value(8).toString()); this->lineEdit10->setText(query.value(9).toString());this->lineEdit11->setText(query.value(10).toString()); }}5、修改图书代码//构造sql更新语句QString sqlString(tr("update books"));sqlString.append(QString(tr(" set 书名 ='"))+this->lineEdit1->text()+QString("',"));sqlString.append(QString(tr("作者 ='"))+this->lineEdit2->text()+QString("',"));sqlString.append(QString(tr("出版社 ='"))+this->lineEdit3->text()+QString("',"));sqlString.append(QString(tr("出版日期 ='"))+this->lineEdit4->text()+QString("',"));sqlString.append(QString(tr("分类名 ='"))+this->lineEdit5->text()+QString("',"));sqlString.append(QString(tr("语言 ='"))+this->lineEdit6->text()+QString("',"));sqlString.append(QString(tr("页数 ='"))+this->lineEdit7->text()+QString("',"));sqlString.append(QString(tr("价格 ='"))+this->lineEdit8->text()+QString("',"));sqlString.append(QString(tr("入馆日期 ='"))+this->lineEdit9->text()+QString("',"));sqlString.append(QString(tr("内容简介 ='"))+this->lineEdit10->text()+QString("',"));sqlString.append(QString(tr("是否在馆 ='"))+this->lineEdit11->text()+QString("' "));sqlString.append(QString(tr("where 图书编号 ="))+this->lineEdit0->text()+QString(";"));//执行更新QSqlQuery query;query.exec(sqlString);//显示QSqlTableModel *model=new QSqlTableModel;model->setTable("books");model->select();this->tableView->setModel(model);//判断更新是否成功if (!query.isActive()){QMessageBox tempMsgBox(QMessageBox::Warning,tr("更新失败!"),stError().text(),QMessageBox::Ok);tempMsgBox.exec();}else{QMessageBox tempMsgBox(QMessageBox::Information,tr("消息"),tr("更新成功!"),QMessageBox::Ok);tempMsgBox.exec();}6、借阅图书代码int right,isin,haveborrownum,canborrownum,canborrowdays;right=1;//构造sql查询语句QString sqlString(tr("select 是否在馆 from books where 图书编号 ='"));sqlString.append(this->lineEdit0->text()+QString("'"));QSqlQuery query;query.exec(sqlString);if(!query.isActive()){right=0;QMessageBox tempMsgBox(QMessageBox::Warning,tr("数据库连接失败!"),stError().text(),QMessageBox::Ok);tempMsgBox.exec();}else{while(query.next())isin=query.value(0).toInt();}//构造sql查询语句1QString sqlString1(tr("select 已借书数量 from users where 用户编号 ='"));sqlString1.append(rid+QString("'"));QSqlQuery query1;query1.exec(sqlString1);if(!query1.isActive()){right=0;QMessageBox tempMsgBox(QMessageBox::Warning,tr("数据库连接失败!"),stError().text(),QMessageBox::Ok); tempMsgBox.exec();}else{while(query1.next())haveborrownum=query1.value(0).toInt(); }//构造sql查询语句2QString sqlString2(tr("select 可借书数量,可借书天数 from usertype where 用户类别 ='"));sqlString2.append(type+QString("'"));QSqlQuery query2;query2.exec(sqlString2);if(!query2.isActive()){right=0;QMessageBox tempMsgBox(QMessageBox::Warning,tr("数据库连接失败!"),stError().text(),QMessageBox::Ok);tempMsgBox.exec();}else{while(query2.next()){canborrownum=query2.value(0).toInt();canborrowdays=query2.value(1).toInt();}}if(isin==0){right=0;QMessageBox tempMsgBox(QMessageBox::Information,tr("消息"),tr("本图书已经借出,请借阅其他书籍!"),QMessageBox::Ok);tempMsgBox.exec();}if(haveborrownum>=canborrownum){right=0;QMessageBox tempMsgBox(QMessageBox::Information,tr("消息"),tr("您图书已经借满,请还书后再借!"),QMessageBox::Ok); tempMsgBox.exec();}if(right){QDateTime dateTime = QDateTime::currentDateTime();QDateTime dateTime1;dateTime1=dateTime.addDays(canborrowdays);QString strtime=dateTime1.time().toString();int y=dateTime.date().year();int m=dateTime.date().month();int d=dateTime.date().day();int y1=dateTime1.date().year();int m1=dateTime1.date().month();int d1=dateTime1.date().day();QStringdate1(QString::number(y)+"-"+QString::number(m)+"-"+QString::number(d)+" "+strtime);QStringdate2(QString::number(y1)+"-"+QString::number(m1)+"-"+QString::number(d1)+" "+strtime);//this->lineEdit1->setText(date1);//构造sql添加语句3QString sqlString3(tr("insert into borrow(图书编号,用户编号,续借次数,借书日期,应还日期,超期天数,超期金额)"));sqlString3.append(QString("values('")+this->lineEdit0->text()+QString("',"));sqlString3.append(QString("'")+rid+QString("','0',"));sqlString3.append(QString("'")+QString(date1)+QString("',"));sqlString3.append(QString("'")+QString(date2)+QString("','0','0')"));sqlString3.append(QString("'")+date2+QString("','0','0')"));//执行添加QSqlQuery query3;query3.exec(sqlString3);//判断添加是否成功if (!query3.isActive()){QMessageBox tempMsgBox(QMessageBox::Warning,tr("借阅失败!"),stError().text(),QMessageBox::Ok);tempMsgBox.exec();}else{QMessageBox tempMsgBox(QMessageBox::Information,tr("消息"),tr("借阅成功!"),QMessageBox::Ok);tempMsgBox.exec();isin=0;haveborrownum+=1;//构造sql更新语句QString sqlString(tr("update books"));sqlString.append(QString(tr(" set 是否在馆 ='"))+QString::number(isin)+QString("'"));sqlString.append(QString(tr("where 图书编号 ="))+this->lineEdit0->text()+QString(";"));//执行更新QSqlQuery query;query.exec(sqlString);//显示this->lineEdit11->setText("0");QSqlTableModel *model=new QSqlTableModel;model->setTable("books");model->select();this->tableView->setModel(model);//判断更新是否成功if (!query.isActive()){QMessageBox tempMsgBox(QMessageBox::Warning,tr("更新图书失败!"),stError().text(),QMessageBox::Ok); tempMsgBox.exec();}else{//构造sql更新语句QString sqlString(tr("update users"));sqlString.append(QString(tr(" set 已借书数量 ='"))+QString::number(haveborrownum)+QString("'"));sqlString.append(QString(tr("where 用户编号 ="))+rid+QString(";"));//执行更新QSqlQuery query;query.exec(sqlString);//判断更新是否成功if (!query.isActive()){QMessageBoxtempMsgBox(QMessageBox::Warning,tr("更新用户失败!"),stError().text(),QMessageBox::Ok);tempMsgBox.exec();}}}}7、续借图书代码int right=1;int borrowtimes,canborrowtimes,canborrowdays;QString shouldreturndays;//构造sql查询语句QString sqlString(tr("select 续借次数,可续借的次数,可借书天数,应还日期 from borrowagainview where 图书编号 ="));sqlString.append(this->lineEdit0->text()+QString(" "));QSqlQuery query;query.exec(sqlString);if (!query.isActive()){right=0;QMessageBox tempMsgBox(QMessageBox::Warning,tr("续借失败!"),stError().text(),QMessageBox::Ok);tempMsgBox.exec();}else{while(query.next()){borrowtimes=query.value(0).toInt();canborrowtimes=query.value(1).toInt();canborrowdays=query.value(2).toInt();shouldreturndays=query.value(3).toString();}}if(borrowtimes>=canborrowtimes){right=0;QMessageBox tempMsgBox(QMessageBox::Information,tr("续借失败"),tr("续借次数已满,不能续借!"),QMessageBox::Ok);tempMsgBox.exec();}if(right){QDateTime dateTime = QDateTime::currentDateTime();QDateTime dateTime1;dateTime1=dateTime.addDays(canborrowdays);QString strtime=dateTime1.time().toString();int y1=dateTime1.date().year();int m1=dateTime1.date().month();int d1=dateTime1.date().day();QStringdate2(QString::number(y1)+"-"+QString::number(m1)+"-"+QString::number(d1)+" "+strtime);borrowtimes+=1;//构造sql更新语句QString sqlString(tr("update borrowagainview"));sqlString.append(QString(tr(" set 续借次数 ='"))+QString::number(borrowtimes)+QString("',"));sqlString.append(QString(tr(" 应还日期 ='"))+QString(date2)+QString("'"));sqlString.append(QString(tr("where 图书编号 ='"))+this->lineEdit0->text()+QString("'"));//执行更新QSqlQuery query;query.exec(sqlString);//显示QSqlTableModel *model=new QSqlTableModel;model->setTable("borrowedview");model->select();this->tableView->setModel(model);//判断更新是否成功if (!query.isActive()){QMessageBox tempMsgBox(QMessageBox::Warning,tr("续借失败!"),stError().text(),QMessageBox::Ok);tempMsgBox.exec();}else{QMessageBoxtempMsgBox(QMessageBox::Information,tr("消息"),tr("续借成功!"),QMessageBox::Ok);tempMsgBox.exec();}}}8、还书代码int haveborrownum;//构造sql查询语句QString sqlString1(tr("select 已借书数量 from borrowagainview where 图书编号 = '"));sqlString1.append(this->lineEdit0->text()+QString("'"));QSqlQuery query1;query1.exec(sqlString1);if (!query1.isActive()){QMessageBox tempMsgBox(QMessageBox::Warning,tr("查询失败!"),stError().text(),QMessageBox::Ok);tempMsgBox.exec();}else{while(query1.next())haveborrownum=query1.value(0).toInt(); }haveborrownum-=1;//构造sql更新语句QString sqlString(tr("update books"));sqlString.append(QString(tr(" set 是否在馆 ='"))+"1"+QString("'"));sqlString.append(QString(tr("where 图书编号 ="))+this->lineEdit0->text()+QString(";"));//执行更新QSqlQuery query;query.exec(sqlString);//判断更新是否成功if (!query.isActive()){QMessageBox tempMsgBox(QMessageBox::Warning,tr("更新图书失败!"),stError().text(),QMessageBox::Ok);tempMsgBox.exec();}else{//构造sql更新语句QString sqlString(tr("update users"));sqlString.append(QString(tr(" set 已借书数量 ='"))+QString::number(haveborrownum)+QString("'"));sqlString.append(QString(tr("where 用户编号 ="))+rid+QString(";"));//执行更新QSqlQuery query;query.exec(sqlString);//判断更新是否成功if (!query.isActive()){QMessageBox tempMsgBox(QMessageBox::Warning,tr("更新用户失败!"),stError().text(),QMessageBox::Ok);tempMsgBox.exec();}else{//构造sql删除语句QString sqlString(tr("delete from borrow where 图书编号 = '"));sqlString.append(this->lineEdit0->text()+QString("'"));QSqlQuery query;query.exec(sqlString);//显示this->display();//判断删除是否成功if(!query.isActive()){QMessageBox tempMsgBox(QMessageBox::Warning,tr("删除借阅表失败!"),stError().text(),QMessageBox::Ok);tempMsgBox.exec();}else{QMessageBoxtempMsgBox(QMessageBox::Information,tr("消息"),tr("还书成功!"),QMessageBox::Ok);tempMsgBox.exec();}}七、总结其实在这次课设的过程中我发现了自己的很多不足,很多的知识不是没有掌握,是根本就不理解也不去研究,在做课设的过程中有好多的知识都是现学现用,还有好多是在网络上面找到的,通过同学的帮助,与老师的指导在最后才做出来一个半成品,有点觉得自己没有用,但是在课设的过程我也学会了很多的东西。
管理信息系统课程设计报告(图书馆)
《管理信息系统》课程设计报告班级:0916101组员:黄杏、张园园、熊娟、李琼、汪智鹏、刘军、徐兆安、熊远东指导教师:莫爱华、罗放华、朱伟华设计时间:2012年下学期第十周到第十一周管理信息系统课程设计————图书馆管理信息系统一、建立图书馆管理系统的必要性与目标1.必要性由于我国图书馆管理信息系统的建立起步晚,开发较迟,导致了我国图书馆在这方面与美国,西欧等的差距,随着入世,我国图书馆管理信息系统所呈现出来的状况,迫使我国图书馆必须加紧建立与完善现代图书馆管理信息系统。
多年来的实践证明,图书馆管理信息系统有必要进行完善与重新建立。
毫无疑问,做到这一点,将对图书馆的各项管理工作起到十分重要的作用。
对于图书馆界来说,包括高校图书馆在内,实现图书馆现代化管理信息系统的并没有多少。
因此,其管理的深度与广度并不尽如人意,尤其是对馆内人力资源管理,信息资源管理的建设方面并没有多大的起色,由此而导致图书馆的办馆特色,人员结构,继续学习,规章制度,计算机管理等各方面的落后与停滞。
此外,由于图书馆部门结构和人员结构的不同特点以及复杂性,要求图书馆必须建立与完善图书馆管理系统。
这样做,有利于了解各部门的工作环节,有利于对人力资源的优化配置,有利于图书馆邻导对整个图书馆工作的现代化管理。
2.目标图书管理系统主要致力于为图书借阅人提供方便快捷的服务,以及为图书管理人员提供准确可靠的信息。
具体目标如下:●提高图书管理的效率,节约相关管理成本。
●增强图书管理的安全性。
●为学校提供系统、规范的图书管理手段。
●满足借阅人、图书管理人员和学校领导的不同层次和不同方面的需求。
●为学校的整体信息化建设提供必要的支持二、业务流程分析通过对图书馆管理信息系统的调查分析,弄清图书馆管理工作的业务流程和管理功能,系统的业务流程图如下所示。
从上面的业务流程图可以看出图书馆管理信息系统主要有以下几项管理功能:(1)信息查询信息查询包括读者信息查询、借阅信息查询、图书信息查询。
图书馆管理信息系统课程设计报告.
数据库课程设计报告-------图书馆管理信息系统软件学院-软件工程专业-xx级-x班姓名:xxx 学号:xxxxxxxxxx目录一、系统开发平台 .......................................... - 3 -二、数据库规划 ............................................ - 4 -2.1 任务陈述 ........................................ - 4 -2.2 任务目标 ........................................... - 4 -三、系统定义 ............................................. - 5 -3.1 系统边界 ........................................... - 5 -3.2 用户视图 ........................................... - 5 -四、需求分析 ............................................. - 6 -4.1 用户需求说明........................... 错误!未定义书签。
4.1.1 数据需求.......................... 错误!未定义书签。
4.1.2 事务需求.......................... 错误!未定义书签。
4.2 系统需求说明........................... 错误!未定义书签。
4.2.1 初始数据库大小.................... 错误!未定义书签。
4.2.2 网络和共享需求.................... 错误!未定义书签。
4.2.3 性能 ............................. 错误!未定义书签。
图书馆信息管理系统——设计报告
管理工程实验中心
学生实验报告
实验课程名称管理信息系统
开课实验室企业管理信息化综合实验室
系(部)08年级城建营销专业班①
学生姓名马明成学号08290090148开课时间2010 至2011 学年第一学期
前言
一、实验目的
根据管理信息系统课程教学要求,要求学生掌握运用科学的方法和工具去开发管理信息系统的思路。
二、实验原理
要求学生运用课堂所学知识,进行系统的开发试验。
即根据实际的业务流程,进过系统分析、系统设计到系统实施。
学会撰写系统分析报告、系统设计说明书;初步设计几面的实现框架,已使学生管理信息系统及其开发过程有一个循序渐进的、从感性到理性再到实践的掌握过程。
三、实验内容
1、系统演示:(4课时)
2、系统分析:(8课时)
1)业务流程调查
2)数据流程调查(处理逻辑的描述)
3)数据字典
3系统设计:(8课时)
1)数据库设计:E-R图、代码设计、关系模型的建立
2)输入输出设计:界面设计
4、系统实施:(选做)
程序设计和调试。
图书馆信息管理系统课程设计报告
图书馆信息管理系统课程设计报告上海应用技术学院课程设计报告课程名称信息系统综合课程设计设计题目图书馆管理系统姓名张苏专业班级11104113 学号1110411333指导教师周兰风日期2014-6-23 ~ 2013-7-11 成绩一、设计目的及要求通过三周的课程设计,要求学生加深对信息系统和数据库技术相关理论的理解,增强动手能力,掌握使用现行较为流行的数据库理论和数据库开发工具进行管理信息系统设计(如前台界面和后台对数据库中数据进行查询,更改等操作)的方法;具体应用方面,要求学生对SQL语言要有较深入的了解和掌握,对数据库的管理要有一定程度的了解二、课程设计内容说明1.需求分析需求分析简单的说就是分析用户的要求。
需求分析是涉及数据库的起点,需求分析的结果是否准确地反映了用户的实际要求,将直接影响到后面各个阶段的设计,并影响到设计的结果是否合理和实用。
1.1需求分析阶段的目标(1) 了解图书馆管理的基本内容;(2) 综合理解图书馆管理员和借书者的不同需求;(3) 了解图书馆管理的基本业务流程;(4) 了解图书馆人工管理模式与信息系统的工作概况,以及它们之间的区别与联系;(5) 通过自身的体验和与主管图书馆的老师的交流,了解用户图书馆管理系统的业务要求,完整性和安全性要求。
1.2需求分析阶段的任务图书馆管理系统包括系统管理、读者管理、编目、图书流通、统计、查询等功能。
能够在一个界面下实现图书、音像、期刊的管理。
设置假期、设置暂离锁(提高安全性)、暂停某些读者的借阅权,导入导出读者,交换MARC 数据、升级辅助编目库等。
此外随着internet 应用的发展,一个完善的系统还应提供无缝接入internet的功能,通过IE浏览器让读者使用借阅资料查询、更换密码、预约、资料检索等功能。
系统还提供读者自助服务、可以开放一些客户机让读者自行管理密码、查询自己的借阅史、预约资料、检索资料等。
下面我们介绍图书管理系统所必备的功能,如图1.1所示,其中每个功能都是由若干相关联的子功能组成。
《管理信息系统》课程设计实验报告
管理信息系统》课程设计实验报告课程名称:管理信息系统指导老师:* 院系:商学院专业班**姓名:**学号:**实验日实验地点:一机房《管理信息系统》课程设计任务书一.课程设计目的及意义:《管理信息系统》课程设计是在完成《管理信息系统》课程学习之后的一次实践性教学,是本课程理论知识的一次综合运用。
通过本课程设计,能够进一步加深对信息、信息系统、管理信息系统等基础理论知识的理解,能初步掌握结构化的生命周期法、面向对象法等系统工程方法,进一步加强熟练应用管理信息系统的操作技能,并能够借助于管理信息系统解决实际问题。
二.课程设计要求:1.本课程设计时间为一周。
2.本课程设计以教学班为单位进行上机操作及实验。
3.按照任务要求完成课程设计内容。
三.课程设计任务要求:1.任务内容:进入山东轻工业学院主页,在“网络资源”区域进入“网络教学平台”,输入各自的用户名和密码(学生学号及密码),进入本网络教学平台系统,在充分熟悉本系统的前提下,完成下列任务要求。
2.任务要求:①按照课程讲解的系统分析步骤和理论对本系统进行系统分析。
②绘制不少于3 个的主要业务流程图。
③描述上述主要业务流程图的逻辑处理功能。
④分析本系统的优缺点,提出改进意见,并描述改进的逻辑处理功能,绘制业务流程图。
四.课程设计评分标准:按照《管理信息系统课程设计大纲》的要求,本课程 1 学分,采用百分制计分,其中任务要求②占30分,任务要求③占30分,任务要求④占30分,考勤及实践表现占10分。
五.本课程设计自2011 年6 月27 日至2011 年7 月1 日。
实验项目名称:对教学管理系统进行系统分析一•课程设计目的及意义:《管理信息系统》课程设计是在完成《管理信息系统》课程学习之后的一次实践性教学,是本课程理论知识的一次综合运用。
通过本课程设计,能够进一步加深对信息、信息系统、管理信息系统等基础理论知识的理解,能初步掌握结构化的生命周期法、面向对象法等系统工程方法,进一步加强熟练应用管理信息系统的操作技能,并能够借助于管理信息系统解决实际问题。
管理信息系统课程设计-图书馆信息管理系统
管理信息系统课程设计-图书馆信息管理系统管理信息系统课程设计图书馆信息管理系统一、引言在当今数字化时代,图书馆作为知识的宝库和文化的传播中心,面临着越来越多的信息管理挑战。
为了提高图书馆的服务质量和管理效率,开发一个功能强大、易于使用的图书馆信息管理系统至关重要。
本课程设计旨在探讨如何构建一个满足图书馆日常运营需求的信息管理系统。
二、系统需求分析(一)用户需求图书馆的用户主要包括读者和管理员。
读者希望能够方便地查询图书信息、借阅图书、续借图书、查看借阅记录等。
管理员则需要管理图书的采购、编目、入库、借阅、归还、读者信息管理等操作。
(二)功能需求1、图书管理功能包括图书的添加、删除、修改、查询、分类管理等。
2、读者管理功能实现读者信息的登记、修改、删除、查询,以及读者借阅权限的设置。
3、借阅管理功能处理图书的借阅、归还、续借操作,记录借阅历史。
4、查询统计功能提供图书和读者的查询服务,以及借阅情况的统计分析。
(三)性能需求系统应具备快速响应能力,保证在高并发情况下的稳定性和可靠性。
同时,数据的准确性和完整性也是至关重要的。
三、系统设计(一)总体架构设计采用 B/S(浏览器/服务器)架构,用户通过浏览器访问系统,服务器端负责数据处理和业务逻辑。
(二)数据库设计1、设计合理的数据库表结构,包括图书表、读者表、借阅表等。
2、确定表之间的关联关系,以保证数据的一致性和完整性。
(三)界面设计1、设计简洁、美观、易用的用户界面,方便读者和管理员操作。
2、遵循人机交互原则,提高用户体验。
四、系统实现(一)开发技术选择选择合适的编程语言和开发框架,如 Python + Django 或 Java +Spring Boot。
(二)功能模块实现1、图书管理模块实现图书信息的增删改查,以及图书分类的管理。
2、读者管理模块完成读者信息的登记、修改、删除和查询功能。
3、借阅管理模块处理图书的借阅、归还和续借业务,记录相关操作的时间和人员。
图书管理系统-(软件工程课程设计报告)
一、可行性研究报告1.引言1.1编写目的可行性研究的目的是为了对问题进行研究,以最小的代价在最短的时间内确定问题是否可解经过对此项目进行详细调查研究,初拟系统实现报告,对软件开发中将要面临的问题及其解决方案进行初步设计及合理安排。
明确开发风险及其所带来的经济效益。
本报告经审核后,交软件经理审查。
1。
2项目背景开发软件名称:图书管理系统项目任务提出者:老师项目开发者关:石家庄学院09信计开发小组。
用户:学校实现软件单位:学校项目与其他软件,系统的关系:本项目采用客户机/服务器原理,客户端的程序是建立在Windows NT 系统上以Microsoft Visual C++为开发软件的应用程序,服务器端采用Linux 为操作系统的工作站,是采用Or acle8 的为开发软件的数据库服务程序。
1.3定义图书管理系统对于现代图书馆而言,是能否发挥其教学科研的作用的至关重要技术平台。
对于读者和图书管理员来说,是能否方便快速获取信息的关键。
所以,图书管理系统应该能够为用户提供充足的信息和快捷方便的操作手段.1。
4参考资料《软件工程导论》,张海藩,清华大学出版社。
《实用软件工程》,郑人杰等,清华大学出版社。
2.可行性研究的前提2。
1要求①主要功能:A、读者管理:管理员要为每个读者建立借阅账户,并給读者发放不同类别的借阅卡(借阅卡可提供卡号、读者姓名)。
B、借阅管理:持有借阅卡的读者可以通过管理员(作为读者的代理人与系统交互)借阅、归还图书。
C、读者查询:可通过互联网或图书馆内查询终端查询图书信息和个人借阅情况,以及续借图书(系统审核符合续借条件)。
D、图书管理:图书管理员定期或不定期对图书信息进行入库、修改、删除等图书信息管理以及注销(不外借),包括图书类别和出版社管理。
②主要性能:可以方便快捷有效地完成借阅、查询等的各项操作,录入数据合法性校验程序高,查询速度快(不超5秒)。
保证信息的正确和及时更新,并降低信息访问的成本.技术先进且高可靠性。
图书信息管理系统课程设计报告
目录一.课程设计的内容**************************************************3二.需求分析**********************************************************3三.概要设计**********************************************************3 3.1软件运行开发平台*******************************************************3 3.2 数据结构**************************************************************4 3.3系统结构图*************************************************************5四.详细设计***********************************************************5 4.1头文件,变量定义,函数**************************************************5 4.2 管理员登录,新用户注册模块**********************************************6 4.3菜单模块设计************************************************************9 4.4输入模块设计************************************************************9 4.5浏览模块设计***********************************************************10 4.6查询模块设计***********************************************************11 4.7删除模块设计***********************************************************12 4.8修改模块设计***********************************************************13五.测试,结果分析**************************************************15 5.1数据分析***************************************************************15 5.2测试截图***************************************************************16六.总结****************************************************************22七.参考文献***********************************************************22八.附源程序***********************************************************22一、课程设计的内容图书信息包括:登录号、书名、作者名、分类号、出版单位、出版时间、价格等。
书籍管理系统课程设计报告
书籍管理系统课程设计报告一、引言本次课程设计旨在开发一款实用的书籍管理系统,以方便图书馆或书店等机构对书籍进行高效管理。
通过该系统,管理员可以轻松地添加、查询、修改和删除书籍信息,提高工作效率,减少人工操作错误。
二、系统需求分析1. 用户管理:系统应支持管理员和普通用户两种角色,管理员具有所有权限,普通用户只能进行查询和浏览操作。
2. 书籍信息管理:管理员可以添加、修改和删除书籍信息,包括书名、作者、出版社、ISBN号、价格、库存等。
3. 查询功能:普通用户可以通过书名、作者或ISBN号查询书籍信息。
4. 报表生成:系统应支持生成各类报表,如销售报表、库存报表等。
5. 系统安全性:系统应保证数据的安全性,防止数据泄露和非法访问。
三、系统设计1. 数据库设计:采用关系型数据库管理系统,设计合理的表结构和字段名称,以满足系统需求。
2. 系统架构:采用B/S架构,客户端通过浏览器访问系统,服务器端处理请求并返回数据。
3. 界面设计:界面简洁明了,易于操作,支持多语言显示。
4. 模块划分:将系统划分为用户管理模块、书籍信息管理模块、查询模块、报表生成模块和系统管理模块。
四、系统实现1. 开发环境:采用Java语言开发,使用Spring框架进行MVC模式开发。
2. 数据库连接:使用JDBC连接数据库,实现数据的增删改查操作。
3. 界面实现:使用HTML、CSS和JavaScript实现界面交互功能。
4. 功能实现:通过编写Java代码实现各模块功能,包括用户管理、书籍信息管理、查询、报表生成和系统管理等。
5. 安全性实现:采用加密技术保证数据传输安全,使用权限控制保证系统安全性。
五、系统测试1. 功能测试:对系统的各个功能进行测试,确保功能正常实现。
2. 性能测试:测试系统的响应速度和并发处理能力。
3. 安全性测试:测试系统的安全性,包括数据传输安全和权限控制等。
4. 用户手册编写:编写用户手册,提供系统的使用说明和操作指南。
图书管理系统实验报告(共10篇)
图书管理系统实验报告(共10篇)图书馆管理系统课程设计报告书图书馆管理系统班级:软件0801班小组成员:刘静蒋玲李辉姚华真日期:2011年1月10日第一章系统概述1.1系统背景当今时代是飞速发展的信息时代。
在各行各业中离不开信息处理,这正是计算机网被广泛应用于管理信息系统的外部环境。
计算机的最大好处在于利用它能够进行信息管理。
使用计算机进行信息处理,不仅提高了工作效率,而且大大的提高了其安全性。
尤其对于复杂的信息管理,计算机能够充分发挥它的优越性。
计算机进行信息管理与管理信息系统的开发密切相关,系统的开发是系统管理的前提。
本系统就是为了管理好图书馆信息而设计的。
图书馆作为一种信息资源的集聚地,图书和用户借阅资料繁多,包含很多的信息数据的管理。
本案例的问题定义是:为了减轻新生入学(或新员工入公司)、不断增加、修改图书给图书馆带来的不便而设计的。
图书馆管理系统是办公自动化不可缺少的一部分,是适应现代管理制度要求、推动学生学籍管理走向科学化、规范化的必要条件。
该软件最终的使用者是学校,公司,图书馆管理者,并提供以下的功能: 1. 默认页提供关于图书馆的基本信息;2. 图书馆管理者可以根据读者信息创建读者的帐户;3. 如果读者输入的电子邮件ID 在数据库中已存在,系统将显示错误页;4. 图书馆管理者必须先登录才能在了解图书馆的详细信息和自己的基本信息,并可以对图书进行添加、查找、修改、注销等的操作,还可对读者进行管理与归类;5. 读者必须先登录才能对图书进行借阅、归还、续借等操作。
1.2 可行性研究1.2.1 [技术条件方面的可能性]技术上的可行性分析主要分析现有技术条件能否顺利完成开发工作,硬件、软件配置能否满足开发者的需要,各类技术人员的数量,水平,来源等。
图书馆管理系统的工作主要是在读者和图书馆之间架起一座桥梁,能相互沟通信息和处理信息。
所使用的语言是C#和SQL之间连接,这是大家还比较熟悉的内容,可行性绝对可行。
图书信息管理系统设计实验报告(完整版)
图书信息管理系统实验报告目录1实验1—实验环境搭建 (4)1.1实验环境概述 (4)1.2ORACLE 10G安装 (4)1.3表空间创建 (5)1.4数据库用户创建 (5)1.5系统实体表结构 (6)2实验2-基表操作 (9)2.1基表关系图 (9)2.2实体表数据操作 (10)2.2.1使用SQL*LOADER插入原始数据 (10)2.2.2使用SQL*PLUS插入原始数据 (11)2.2.3数据查询 (11)2.2.4数据修改和删除 (12)3实验3-SQL PLUS学习 (13)3.1执行SQL脚本文件 (13)3.1.1显示错误信息 (13)3.1.2显示表结构 (13)3.1.3改变缺省的列标题 (14)3.1.4改变列的显示长度 (14)3.1.5设置每页行数 (14)3.1.6显示每个SQL语句花费的执行时间 (15)3.1.7显示SQL buffer中的SQL语句 (15)3.1.8编辑执行SQL buffer中的SQL语句 (16)4实验4-创建基表 (17)4.1基表创建脚本 (17)4.1.1图书信息表BOOK_INFO(实体表) (17)4.1.2作者信息表AUTHOR_INFO(实体表) (17)4.1.3图书作者关系表BOOK_AUTHOR (18)4.1.4出版社信息表PUBLISHER_INFO (18)4.1.5图书出版社关系表BOOK_PUBLISHER (19)4.1.6出版社分类参数信息表PUBLISHER_CLASS_INFO(实体表) (20)4.1.7出版社分类关系表PUBLISHER_CLASS (20)4.1.8图书分类参数信息表BOOK_CLASS_INFO(实体表) (21)4.1.9图书分类关系表BOOK_CLASS (22)4.1.10角色信息表ROLE_INFO (22)4.1.11用户信息表USER_INFO(实体表,依赖角色表) (23)4.1.12用户借书关系表USER_BOOK (24)4.1.13预定关系表USER_RESERVE (24)4.1.14书本评论表BOOK_COMMENT (25)5实验5-PL/SQL基础 (27)5.1按出版社查询购书金额的平均值 (27)5.2按出版社查询购书金额的最高及最低购书金额 (28)5.3查询出版社购书金额超过平均值的出版社数 (28)5.4查询购书金额高于1万元的出版社数 (30)5.5查询本月借出书的数量 (30)6实验6—基表数据操作 (32)6.1在TOAD中插入记录 (32)6.2SQL PLUS在基表中插入记录 (33)6.3一年内无借阅记录的图书在备注栏中注明 (34)6.4删除图书借阅信息中超过两年且已归还的记录 (34)7实验7—索引和完整性 (35)7.1建立出版社名称不能重名的索引 (35)7.2建立图书借阅信息中书号加借阅日期加借书卡号的索引 (35)7.3完善域完整性、实体完整性和参照完整性 (36)8实验8—数据库的查询和视图 (37)8.1建立查询数据视图 (37)8.2实现对各基表及多表的数据查询 (37)9实验9—PL/SQL编程 (39)9.1统计本月图书借出总数量、总金额 (39)9.2使用循环结构求和 (40)9.3使用CASE语句查图书的所属种类 (41)9.4使用游标统计当前未归还图书的总金额 (42)10实验10—存储过程与触发器 (43)10.1存储过程 (43)10.2触发器 (45)10.2.1BOOK_INFO删除操作审计 (45)10.2.2自动更新出版社购书数量触发器 (45)11实验11—函数与包 (48)11.1函数 (48)11.1.1借出图书数 (48)11.1.2归还图书数 (49)11.2包 (50)12实验12—用户、角色和概要文件 (54)12.1用户 (54)12.2角色 (55)12.3概要文件 (56)13实验13—系统数据维护 (58)13.1逻辑备份 (59)13.2逻辑导出 (59)13.3逻辑导入 (60)1实验1—实验环境搭建1.1 实验环境概述操作系统:Windows XP SP2数据库:Oracle 10g 10.1.0.2 企业版数据库管理工具:Toad for Oracle Version 9.0.1数据库客户端:Oracle 10g Client1.2 ORACLE 10G安装Oracle 10g对软硬件环境要求:内存最小需要:512MB系统交换区SWAP最小需要:1GB 或2倍内存容量的空间,如果内存大于等于2GB那么SWAP在1倍或2倍内存容量之间。
图书信息管理系统——C语言课程设计报告(1)
图书信息管理系统——C语言课程设计报告(1)课程设计报告课程名称C语言程序设计课题名称图书信息管理系统专业电子技术班级学号姓名指导教师2015年12月31 日湖南工程学院课程设计任务书课程名称C语言程序设计课题图书信息管理系统专业班级电子技术学生姓名学号201501040120指导老师审批任务书下达日期2015 年12月31日任务完成日期2016 年元月10日目录一.系统的主要思路 (1)二、系统的主要功能 (2)1、显示功能 (2)2、追加功能 (2)3、修改模块 (2)4、删除模块 (2)5、查询模块 (2)6、统计模块 (2)7、排序模块 (2)8、退出模块 (2)三.系统功能模块的划分 (3)1.总体模块功能框图 (3)四.总流程图 (3)1.总流程图 (3)2.八大模块的流程图 (5)五.程序调试 (13)1.显示模块 (14)2 . 追加模块 (15)3. 修改模块 (17)4. 删除模块 (19)5. 查询模块 (22)6. 统计模块 (24)7.排序模块 (26)8. 退出模块 (28)六.心得与体会 (28)七.参考文献:........................................ 错误!未定义书签。
八.附件: (29)一.系统的主要思路此系统事用C语言实现一个图书馆信息管理系统;利用结构体数组实现图书馆信息的数据结构;例如,删除图书信息、追加图书信息、修改图书信息、图书信息的统计等等;系统的各个功能调用各个函数的形式实现;并提供一个界面来调用,各个功能的操作。
首先我们要对系统操作就必须先创建一个数据库,用来存放各图书的信息,如:图书编号、分类号、书名、作者名、出版单位、出版时间、入库时间、单价等。
并用读函数fscanf读取数据,然后才能进入主控程序。
然后,运行该程序显示的为主菜单界面,并且主菜单界面显示调用各个功能函数的功能键;通过提示用户,调用各个功能操作。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
目录第一章概述................................................................................................................................................ 错误!未定义书签。
第二章系统需求与设计 ........................................................................................................................... 错误!未定义书签。
2.1 系统目标与需求.......................................................................................................................... 错误!未定义书签。
2.2 系统业务分析............................................................................................................................... 错误!未定义书签。
2.3 系统流程分析............................................................................................................................... 错误!未定义书签。
第三章系统设计......................................................................................................................................... 错误!未定义书签。
3.1 系统功能结构设计 ..................................................................................................................... 错误!未定义书签。
3.2 软件结构与实现技术 (5)3.3 数据库结构设计 (7)第四章系统实现效果 (10)4.1 系统用户管理子系统 (10)4.2 读者信息管理子系统 (11)4.3 图书信息管理子系统 (12)4.4 其他模块 (13)第五章系统运行与使用 (15)5.1 系统运行网络建议 .................................................................................................................. 1错误!未定义书签。
5.2 系统软硬件配置建议 (16)5.3 系统安装与部署 (16)第六章结束语 (16)附录开发平台简介 (17)第一章概述图书馆作为一种信息资源的集散地,图书和用户借阅资料繁多,包含很多的信息数据的管理,现今总的来说,缺乏系统,规范的信息管理手段。
尽管有的图书馆有计算机,但是尚未用于信息管理,没有发挥效力,资源闲置比较突出,这就是管理信息系统的开发的基本环境。
数据处理手工操作,工作量大,出错率高,出错后不易更改。
图书馆采取手工方式对图书借阅情况进行人工管理,由于信息比较多,图书借阅信息的管理工作混乱而又复杂;一般借阅情况是记录在借书证上,图书的数目和内容记录在文件中,图书馆的工作人员和管理员也只是当时对图书信息比较清楚,时间一长,如再要进行查询,就得在众多的资料中翻阅、查找了,造成查询费时、费力;如要对很长时间以前的图书进行查找或更改就更加困难了。
随着信息和网络技术的蓬勃发展,图书信息管理成为计算机应用的一个分支,她有着手工管理所无法比拟的优点,如:检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。
这些优点能够极大地提高图书资料管理的效率。
因此,基于以上问题,开发一套能够为用户提供充足的信息和快捷的查询手段的图书资料管理系统,将是非常必要的,也是十分及时的。
图书管理系统是一个集图书借阅管理、信息发布及管理决策为一体的Windows环境下集成化的管理系统。
由系统用户管理系统、读者信息管理系统、图书征订管理系统、图书编目管理系统、图书典藏管理系统等子系统构成,功能模块覆盖整个图书管理业务。
要做到功能齐全、自动化程度高、用户界面友好,可以在网络环境下运行,也可以单机运行,能适应不同用户的要求。
应提供标准交换格式数据的处理功能,能进行数据格式的交换,并且内部数据采用定长格式,以提高系统的运行效率,适用图书情报单位图书馆自动化管理。
运行采用全Windows 界面,有很好的容错能力。
本系统采用结构化的设计方法进行设计,采用快速开发平台Delphi 6进行开发。
图书管理信息系统分为图书信息管理子系统、系统用户管理子系统和读者信息管理子系统,下面是各个子系统的功能描述:①图书信息管理子系统:包括图书征订、图书编目、图书典藏和图书流通。
图书征订包括图书征订数据的录入、修改、删除等功能;图书编目包括图书编目信息的录入、修改等功能;图书典藏包括新书分配、库室调配等功能;图书流通包括图书借阅、续借,图书返还,图书书目查询等功能。
②系统用户管理自系统:包括系统用户数据的录入、修改、删除等功能。
③读者信息管理自系统:包括读者类别管理,读者个人数据的录入、修改、删除等功能。
各章简述:第二章从总体上分析了建立图书管理信息系统的系统目标、系统的业务流程以及系统的性能需求。
为以后的系统设计提出了指导思想。
第三章根据上一章的系统目标和业务需求设计了系统的功能结构,从软件设计和数据库设计两方面系详细地分析设计了图书管理信息系统。
第四章从各个子系统的运行界面检验了本图书管理信息系统实现的效果并给出了说明,最后给出了其他模块的运行效果第五章介绍了本图书管理信息系统运行的网络配置和软硬件方面的配置需求。
第六章从本图书管理信息系统的结构及其功能优点做出了简要介绍,对开发本系统做出了简要总结。
最后附录简介了本图书管理信息系统的开发平台和数据库系统。
第二章系统需求与设计2.1 系统目标与需求2.1.1系统目标本系统的总体目标是为图书借阅人提供方便快捷的服务,以及为图书管理人员提供准确可靠的信息。
将微机技术与管理工作有机地结合起来,以实现从手工操作到微机管理的顺利过渡。
利用计算机对图书资料进行有效的管理,提高工作效率,提高图书的利用率,充分发挥图书的作用。
同时通过网络让读者及时方便地查到所需的图书,管理人员还可以利用强大的管理统计功能,通过统计图书的总量、各种图书的借阅率等及时了解库存、图书馆发展的规模以及读者对各类图书的需求,掌握今后图书的订购计划及取舍方向。
2.1.2系统功能需求图书管理涉及图书信息、系统用户信息、读者信息、图书借阅信息等多种数据管理。
从管理的角度出发可将图书管理分为三类:图书信息管理、读者数据管理和系统用户管理。
图书信息管理:完成图书征订、编目、典藏、借还和查询操作等方面的管理。
读者数据管理:完成读者类别管理和读者个人数据的录入、修改、删除等方面的管理。
系统用户管理:完成系统管理员用户数据的管理。
2.2 系统业务分析图书管理系统需要满足图书借阅者、图书馆工作人员和图书管理人员等三方面的需求。
图书借阅者的需求是查询图书馆所存的图书、个人借阅况及个人信息的修改;图书馆工作人员对图书借阅者的借阅及还书要求进行操作;图书管理人员的功能最复杂,包括对工作人员、图书借阅者、图书进行管理和维护。
整个图书管理流程以图书信息、借书证信息和借阅信息为主体,由借阅规则进行约束限制。
每当有新书进库时,先按照图书分类规则对新图书进行分类,然后由管理员录入新图书信息,信息入库后管理员仍然可以对该信息进行修改和删除。
当有新借书证登记时,先按照读者的职业姓名进行分类,然后由管理员录入新借书证信息,信息录入后管理员仍然可以对该信息进行修改和删除。
有了图书信息和借书证信息之后便可以进行借阅操作,成功借书操作的条件是:(1)图书信息数据库中必须有该读者要的图书;(2)读者信息表中必须有该读者借书证的信息;(3)不违背特殊规则限制。
只有同时满足这三个条件后才可以成功进行借书操作。
当以后再有读者借书时,就可以根据已有的借阅信息进行比对:(1)读者所借的图书是否在库;(2)该借书证是否有未还图书等条件进行判断,以决定该借阅操作的成功与否。
2.3 系统流程分析根据系统业务分析与调查画出系统的数据流图,如图2-1所示:图2-1 系统数据流图第三章系统设计3.1 系统功能结构设计根据系统功能分析和图书管理系统的特点,经过模块化的分析画出系统功能的模块结构图,如图3-1所示:图3-1 系统功能的模块结构图系统各结构模块的功能:①数据模块窗体的设置:在编写数据库应用程序时,经常要遇到这样的情况,即好多组件、窗体同时访问相同的数据源,如果为每一个组件或者窗体都设置一个数据源将是十分耗时的工作,而且要保证这些数据源的确是相同的也需花一番功夫。
数据模块(D a t aModule)是解决这个问题最好的答案。
简单说来,数据模块是用来集中管理数据源的一个窗体,该窗体可在被需要的地方随时引入。
②系统用户密码认证窗体的实现:本窗体是为了让工作人员或图书馆管理人员按照用户名和密码进行登录,并且根据用户名检查“权限”字段,以分辨进入图书馆管理人员模块还是进入工作人员模块。
③图书查询功能的实现:在本系统中,任何人都有权限使用查询功能,不做任何限制。
由于实现的查询功能有多种,如按图书编号、图书名称等字段进行“完全体配查找”和“部分体配的模糊查找”,还有按多个条件进行“逻辑与”或是“逻辑或”的多条件查找。
④读者登录功能的实现:这个功能的实现与工作人员和管理人员登录功能实现的方法大致一样,是从用户表中查到借阅证号与密码,看与用户输入的是否一致。
如果一致,那么用户就可查看自己的借阅情况并维护自己的部分信息。
⑤读者借阅情况功能的实现:当借阅者正确登录到系统后,此功能将被激活,使用户能查看到自身的借阅情况。
在此系统中,信息的显示一般用“List View”来实现。
在这里根据读者的不同要求实现借阅情况的查询,如检查所有的借阅情况、某本书的借阅情况,还可以根据已借阅的天数来查询。