大工20春《软件工程》大作业题目及要求.docx
- 文档编号:18595284
- 上传时间:2023-08-20
- 格式:DOCX
- 页数:16
- 大小:305.11KB
大工20春《软件工程》大作业题目及要求.docx
《大工20春《软件工程》大作业题目及要求.docx》由会员分享,可在线阅读,更多相关《大工20春《软件工程》大作业题目及要求.docx(16页珍藏版)》请在冰点文库上搜索。
大工20春《软件工程》大作业题目及要求
网络教育学院
《软件工程》课程大作业
题目:
图书管理系统
姓名:
罗超
报名编号:
C0551701101411903000012
学习中心:
江苏淮安奥鹏学习中心
层次:
专升本
专业:
计算机科学与技术
第一大题:
谈谈你对本课程学习过程中的心得体会。
图书馆管理系统流通模块的设计与实现是一个比较复杂的问题工作中,在设计和实施过程中难免会出现一些不足,这些问题只有在实际中该过程的操作将被发现,系统的完善和维护是一个长期的过程,但我相信本系统流通模块将给图书馆管理工作带来很大的方便,今后系统的开发要做到以下几方面
①目前,图书馆管理系统主要通过计算机来访问,只有通过计算机进入线路连接可以连接到手机端的学习,下一步应该是加大这方面的努力,为了得到计算机终端和手机终端的结合,从而实现多元化、多层次的开发系统。
②系统流通模块中可添加智能系统模块,图书馆的读者借阅也实现智能化、快速化,如逾期提醒、预约提醒、借书证过期提醒等。
确保更好的服务体系读者。
③现有的系统流通模块部分操作仍要进行人工输入管理,后一部分可添加扫描功能,从而大大方便图书馆管理员。
例如,管理员只需扫描二维码就可以完成相关操作。
本系统目前的已经能够满足图书馆图书管理系统的需求,但本系统在易用性方面还需要加强,还需要提供更多的接口给省图书馆等外部应用系统,这些都需
要在以后的工作中逐步完善。
当前移动终端技术发展很快,很多应用系统都开发了能基于移动终端访问的移动应用,而本系统目前只实现了只实现了基于Web端的图书管理功能,相对于现在多终端接入的其它系统而言,目前支持的终端类型还比较单一,期望在以后的工作过程中逐渐的加入移动终端接入方式。
特别是针对电子书管理这一块希望以后可以加入支持平板电脑等手持设备的在线浏览功能。
第二大题:
完成下面一项课程设计。
2020春《软件工程》课程大作业
题目三:
图书管理系统
总则:
不限制编程语言,可以选用VB/C#等,不限数据库,可选用SQL/MYSQL/ACCESS等设计一个图书管理系统。
(具体工具平台及语言可以自己根据自己的习惯选用,不必完全按照上述技术要求)
要求:
(1)撰写一份word文档,里面包括(需求分析规格书、详细设计说明书、测试报告书)章节。
(2)需求分析规格书,包含功能需求分析、数据需求分析。
功能需求分析介绍该系统具体包含何种功能。
(3)详细设计说明书包含数据表,核心程序,模块相关截图。
数据表为数据库所建立的数据表,至少包含用户信息表、图书信息表表等。
核心程序需列出系统的核心程序。
(4)测试报告书要求简单介绍测试的方法与测试的示例,举出一组示例即可。
(5)整个word文件名为[姓名奥鹏卡号学习中心](如戴卫东101410013979浙江台州奥鹏学习中心[1]VIP)
一绪论
(一)研究背景
图书馆具有处理信息和提供信息的功能,这在人们知识的传播和累积过程中起到了积极的促进作用。
在信息化迅速发展的今天,传统的图书管理模式已经不能满足发展的需求,电子信息化慢慢替代了传统的管理手法,图书馆信息化管理系统成为有效提高工作效率,科学管理图书书籍的手段。
图书管理系统相较于传统的手工管理模式具有检索方便快捷、检索速度快、检索结果准确、存储数据量大、成本低、节省资源、且具有良好的人机交互界面等功能。
图书管理系统作为图书馆的信息管理系统,它需要具备二个基本特点:
第一需要具备方便快捷的图书检索功能,能够快速准确的检索出图书的相关信息,从而帮助读者借阅到需要的图书;第二,由于图书和用户借阅资料繁多,管理者应当可以及时、准确、有效的查询和修改图书信息。
(二)研究的现状
目前各高校基本上都建立了图书管理系统,大多集中在对图书馆书籍类目、存储位置及存储量的管理上,方便在校的广大教职工和学生进行图书借阅。
目前国内的图书管理系统尚处在逐步规范并高速发展的过程中,随着硬件技术的发展,传统的图书管理系统已经采用软硬件结合的方式来完善图书馆管理操作。
较为成熟的技术是运用射频技术,建立集书籍定位、自动借阅与归还的智能化图书管理系统。
图书电子化的进程也在少数图书馆运用起来,图书电子化技术是将纸质的图书通过扫描与录入等技术,将纸质图书的内容电子化,保存为子电子图书,再通过图书管理系统,通过用户登录系统提供图书的在线检索与浏览等功能。
目前的图书馆管理系统操作灵活:
数据录入可以手工录入,也可以是直接导入(支持EXCEL、MARC等多种格式);软件有数据库连接管理,不仅可以连接本地数据库,也可以连接网络数据库,从而实现联机操作;软件既可以根据图书的标准分类法实现资料的自动分类,也可以根据自己自定义的分类方法对资料进行分类;软件具备条形码打印功能,其作用跟专业的条码打印机相当;软件本身可以配合会员卡和扫描枪等相关硬件使用,操作更方便。
系统提供了备份管理功能,所以不管是因为计算机病毒或者硬件原因导致的系统崩溃,都可以在片刻间把所有的数据通过备份管理恢复过来;并且相关的用户权限设定也很自由,避免了未授权的普通用户对图书或相关信息的非法修改;并且本系统有屏幕保护的作用,可以在用户离开后有效的防止别人在未授权的情况下修改您的数据。
(三)研究的内容及目标
伴随着图书馆的数量在不断的增多,图书馆的图书藏量也在持续的增加,对应的图书的信息量也在飞速的上涨。
面对巨大的信息量,为了满足管理者和借阅者的需求,本课题着手着手开发研究与设计一个高效、规范、适用的图书馆管理信息系统,对图书馆信息进行统一的管理,这样将会大大的提高管理效能、便利和安全性。
所谓面向对象就是根据物理世界中不同类型的事物的功能与作用,将其抽象为逻辑世界中的对象,根据物理世界不同类型之间的关系构成逻辑世界对象之间的联系。
通过面向对象分析技术,可以帮助系统开发人员更好的理解客户需求,并且为系统设计提供参考。
面向对象分析不涉及具体的设计细节,也不涉及具体的实现,因此不依赖于固定的程序语言。
面向对象分析相当于将现实世界的事物进行了基于对象的逻辑空间的映射,属于分析模型。
面向对象设计致力于解决传统结构化软件开发过程所产生的系统开发周期长、系统模块重用度低、系统修改难度大以及设计出的系统不能满足用户需求等方面的弊端。
面向对象设计是一个中间过程,它的设计主要是“对象”的设计,它主要解决系统类的角色、职责、协作方式等方面的问题,以及与其它类之间的组织关系。
Web是一种基于互联网的信息访问技术,它主要通过超文本传输技术将超文本以及超媒体等信息媒体链接成一种全局的信息结构,从而形成一个庞大的信息网。
经过最近几十年的发展,Web技术正进行着日新月异的发展,已经从初期的简单文本发展为支持多媒体、多介质内容相结合的技术体系。
用户在浏览器的地址栏里输入待访问的网站的地址信息,浏览器通过Internet解析该地址并定位到该地址所指定的服务器上,服务器通过相关Web站点的配置信息通过数据库查询相关的数据信息并反馈到浏览器并呈现出来。
1.jQuery介绍
jQuery框架可以实现与HTML代码分离,从而分离UI设计人员与前端代码人员的职责,以便同时开发。
jQuery还由于体积小巧、扩展方便以及可以跨浏览器等特性而被广泛使用。
2.ADO.NET简介
ADO.NET是微软公司推出的一种数据访问模型,它的名称来源ADO
(ActiveXDataObject),ADO.NET提供了平台通用性与易用性的数据访问,是微软.NET平台中优先选用的数据访问接口。
ADO.NET架构由二部分组成:
.NETFrameworkDataProvider以及Dataset。
.NETFrameworkDataProvider由Connection、Command、DataReader、DataAdapter等组件组成。
Connection组件提供数据源链接地址信息;Command组件提供数据读取命令;DataReader组件提供高效的数据读取方式;DataAdapter组
件提供Dataset与数据源的数据桥接适配方式。
DataSet是一种数据集合,它存留在应用程序客户端电脑的内存中,它可以独立存在,并且可以与不同的数据源进行搭配使用。
1.SQL语言简介
SQL(StructuredQueryLanguage)语言的中文语言是结构化查询语言简称,它是一种特殊目的的编程语言,也是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统;同时也是数据库脚本文件的扩展名。
结构化查询语言是高级的非过程化编程语言,允许用户在高层数据结构上工作。
它不要求用户指定对数据的存放方法,也不需要用户了解具体的数据存放方式,所以具有完全不同底层结构的不同数据库系统,可以使用相同的结构化查询语言作为数据输入与管理的接口。
结构化查询语言语句可以嵌套,这使它具有极大的灵活性和强大的功能。
结构化查询语言SQL(STRUCTUREDQUERYLANGUAGE)是最重要的关系数据库操作语言,并且它的影响已经超出数据库领域,得到其他领域的重视和采用,如人工智能领域的数据检索,第四代软件开发工具中嵌入SQL的语言等。
结构化查询语言包含6个部分:
(1)数据查询语言(DQL:
DataQueryLanguage):
其语句也称为“数据检索语句”,用以从表中获得数据,确定数据怎样在应用程序给出。
保留字SELECT是DQL(也是所有SQL)用得最多的动词,其他DQL常用的保留字有WHERE,ORDERBY,GROUPBY和HAVING。
这些DQL保留字常与其他类型的SQL语句一起使用。
(2)数据操作语言(DML:
DataManipulationLanguage):
其语句包括动词INSERT,UPDATE和DELETE。
它们分别用于添加,修改和删除表中的行。
也称为动作查询语言。
(3)事务处理语言(TPL):
它的语句能确保被DML语句影响的表的所有行及时得以更新。
TPL语句包括BEGINTRANSACTION,COMMIT和ROLLBACK。
(3)数据控制语言(DCL):
它的语句通过GRANT或REVOKE获得许可,确定单个用户和用户组对数据库对象的访问。
某些RDBMS可用GRANT或REVOKE控制对表单个列的访问。
(5)数据定义语言(DDL):
其语句包括动词CREATE和DROP。
在数据库中创建新表或删除表(CREATTABLE或DROPTABLE);为表加入索引等。
DDL包括许多与人数据库目录中获得数据有关的保留字。
它也是动作查询的一部分。
(6)指针控制语言(CCL):
它的语句,像DECLARECURSOR,FETCHINTO和UPDATEWHERECURRENT用于对一个或多个表单独行的操作。
1.业务需求分析
流通模块的业务需求分析是要罗列所有用户需求,考虑流通模块各个模块的实际功能,将两者完美对接,提高馆员工作的准确性,减少图书馆不必要的经费支出、提高读者使用系统时的利用效率。
主要是从流通模块的馆藏信息的查询,流通模块系统的设置,读者的管理,流通环节的管理,图书超期的管理,系统统计的管理等多个方面入手。
2.功能需求分析
(1)信息查询
信息查询是为了方便大连图书馆读者进行馆藏检索查询,依据馆藏文献题名、著者以及关键词搜索查询,馆藏信息查询的用例图如图1所示。
图1信息查询用例图
(2)读者管理
维护、整理读者的信息,对读者借阅记录进行统计、对读者办证情况及读者证的使用情况进行管理等,读者管理使用情况的管理用例如图2所示。
图2读者管理用例图
(3)流通管理
管理员通过流通模块对图书进行借阅管理、归还管理,以及读者可以通过管理系统进行图书续借、预约等等这一系列的管理,其管理的依据主要主要是读者证条形码号,馆藏文献条形码号等。
流通管理流程的具体使用示例图如图3所示:
图3流通管理使用示例图
(4)图书超期管理
若是读者超过一定期限没有归还图书,管理者可以根据借阅人的证件信息查到图书超期信息,包括读者的姓名、证件号、借阅日期、应归还日期以及超期使用费及其他相关信息,超期管理具体使用示例如图4所示。
图4超期管理示例图
1.使用方面的可行性
分析图书馆读者的各项实际和具体需求,保障系统运行的稳定性的前提下进行可行性分析,图书馆系统流通模块是为图书馆读者借阅、归还、查询馆藏而服务,由图书馆系统管理员、图书馆馆员来进行管理。
由于图书馆读者要求相对简单,并不需要很强的专业性,故而设计的系统界面友好,操作简单、使用方便,应该可以满足绝大多数读者的实际需求,同时他们使用系统的时候也会更加的便捷。
2.技术可行性
本系统依据软件工程以及面向对象语言的基本思绪、利用UML(UnifiedModellingLanguage)建模的应用。
利用统一的标准化言语和方法的界说,从而完成面向对象的描绘和建模,能够最大化缩减通信障碍。
UML的面向对象技术,描绘了在不同发展阶段的任何范例的系统或利用(从需求描述、系统的测试与修复实现后)的图书馆服务过程当中的信息管理系统要完成相应的建模需求分析。
可以使用UML模型图实现系统开发的不同阶段的不同目标。
本文中的系统以Web平台为依托,运用互联网技术为载体,使用ASP程序语言编写代码来实现整个系统,技术上切实可行,在后期的管理和维护上有一定的可延展性,依据正规的开发周期各个阶段开发、设计,来完成整个系统。
1.软件设计原则
(1)分层体现原则。
软件开发最典型的架构分层是三层,大多数为表现层、逻辑层和数据层。
编程里有了分层思想,整个过程就会变得简单、合理、清晰,程序员就可以很好的把程序分层对应的类进行编译,可以同时进行分工编程,同时为日后的维护和二次开发提供了方便。
(2)开放新增内容,关闭要修改的功能,简称开闭原则。
任何更改都要做到不用修改原来模块的代码,增加独立的模块完成新功能。
禁止删除模块中的源代码,这样对系统的维护和兼容性提供方便,开闭原则就是保证系统升级时的向下兼容性。
系统软件和硬件主要依靠系统配置图来显示,系统的应用服务器负责保存整个WEB应用程序,数据则依靠数据库管理。
由于图书馆图书管理系统的面向对象是图书馆的广大师生,并发用户访问量较大,在系统部署时需要考虑高并发性的情况。
由于该系统对系统稳定性及性能要求较高,多层结构下逻辑结构分布清晰,系统整体运行效率高。
根据这些要求,设计出图书馆图书管理系统基于SOA的架构方式,采用分布式、负载均衡、隔离内外网的部署方式。
图书馆图书管理系统采用基于服务架构(SOA)模型进行系统部署的。
系统中数据库主要负责进行数据的存储以及数据检索功能,它为各个模块提供数据存取与查询服务;系统管理员模块为系统提供运行的基础数据,包括图书信息管理,用户信息管理等,是系统的基础数据处理模块;图书借阅处理模块是系统的业务数据模块,提供用户借阅与归还图书信息的相关功能。
系统管理包含系统登录、系统备份等类,图书信息管理包中有添加图书、修改图书、检索图书的界面类和控制类以及图书实体类。
读者信息管理包中有读者信息的添加、修改、检索读者信息的界面类、控制类和读者实体类。
出版社信息管理包中含有出版社信息的添加、修改和检索的界面类、控制类。
以及出版社信息实体类。
图书借阅信息管理包中有图书借阅、图书归还的界面类和控制类等。
1.概念结构设计
数据库需要表述的信息有以下几种:
(1)图书信息;
(2)学生信息;(3)管理员信息;(4)学生借阅归还图书信息。
通过分析整理可得图书管理系统E-R图如图5所示。
图5系统E-R图
由系统E-R图可知系统数据的主要处理过程为:
(1)读者管理
处理过程:
输入:
读者编号;输出:
读者的注册信息
处理操作:
对所有注册的读者信息建表,用学号作为读者统一、唯一编号。
(2)职工管理
处理过程:
输入:
职工编号号;输出:
职工的基本信息
处理操作:
对所有职工编号,建立职工信息表,职工编号具有唯一性,
(3)图书管理
处理过程:
输入:
流水号;输出:
图书的基本信息
处理操作:
对所有进馆的图书编号,建立图书信息表,图书编号具有唯一性,
(4)图书查询
处理过程:
输入:
流水号;输出:
所查询图书的相关信息
处理操作:
用户登录后可以查询图书信息,按图书编号可以查询到某本书的详细情况,也可以通过书名,作者,出版社进行模糊查询
(5)图书借出
处理过程:
输入:
流水号,学号;输出:
图书借阅信息
处理操作:
添加图书借阅记录,建立图书借阅信息表。
(6)图书归还
处理过程:
输入:
流水号;输出:
图书归还信息
处理操作:
添加图书归还记录,建立图书归还信息表。
2.逻辑结构设计
通过E-R模型到关系模型的转化,可以得到如下关系模式:
图书(流水号,分类号,索取号,书名,作者,价格,出版社,出版日期,是否借出)。
读者(学号,姓名,性别,所属系,电子邮件,备注)。
职工(职工编号,密码,姓名,性别,联系电话,所属部门)。
部门(部门号,部门名称)
借阅图书(流水号,学号,借书日期,书名,应还日期,归还标记)。
归还图书(流水号,学号,还书日期,书名)。
每个关系模式的主键码都用下划线标出。
(1)流水号是图书的键码,每本书有唯一的流水号。
一个读者可以同时借阅多本书,一个管理员可以处理多个读者的借阅事宜。
(2)同一本书可以借给不同的同学,同一个读者可以再次借同一本书。
于是借书关系的键码为流水号,学号和借书日期的组合。
(3)要知道图书当前的状态,是在图书馆存放还是被借阅。
需要在图书的模式中增加对应项用以表示图书当前的状态,现在增加‘是否借出’项,并且约定取值和状态的对应关系如下:
0:
在图书馆中没有被借阅;
1:
已经被借出。
3.数据库安全性设计
图书馆图书管理系统由于是涉及大量的图书信息的系统,因此相关数据的安
全就特别重要。
因此本论文特别对该系统的数据安全进行了如下设计:
(1)根据数据库角色进行数据访问角色的划分,并在SQLSERVER
管理平台中对数据访问角色的相应数据访问权限进行精确的划分。
将数据库访问角色定义为BookWriter,并赋予读写权限,并将该用户限制在图书管理子系统中,并且该用户只能读写图书信息记录表等相关表数据;对图书借阅报表信息的数据库访问角色定义为BookReporter,并赋予只读权限,并且只能访问借阅报表相关的数据表。
(2)对系统中的敏感信息进行加密存放。
对系统中用户的登录信息采用MD5加密算法将用户的登录密码进行加密存放,在进行系统登录过程中将用户输入的密码进行MD5加密然后与数据库存放的数据进行对比,一致则允许登录进入系统;对用户等敏感信息采用DES对称加密,在进行授权访问的系统页面需要时,则采用正确的密钥进行解密显示。
(3)对系统中的数据库连接串采用加密方式进行连接,并将数据库的连接方式配置为只允许内部网络连接,并将数据库的连接端口配置为非默认的1433端口,而是采用1477等非常规端口。
1.信息添加界面的实现
图书信息时,凡录入框里填入待添加的图书的相关信息,若不填写则在保存到数据库时为空,填入的数据可根据提示进行填写或修改。
添加完图书信息后如
果需要重新填写图书信息就点击“重置”,否则点击“添加按钮”将图书信息保存到数据库中。
protectedActionResultAddBook()
{
bookb=newbook();
b.BanCI=txtBanCi.Text;
b.BookName=txtBookName.Text;
b.ISBN=txtISBN.Text;
b.Number=int.Parse(txtNumber.Text);
b.Press=txtPress.Text;
b.PressDate=Convert.ToDateTime(txtPressDate.Text);
b.price=decimal.Parse(txtPrice.Text);
b.Writer=txtWriter.Text;
if(BookBLL.Add(b))
{
returnContent(""");
}
else
{
returnContent(""");
}
}
3.信息展示列表界面的实现
图书信息添加到系统后,系统将会将系统系里的所有图书信息分页显示出来,列表中默认显示20条图书信息。
当管理员在某条图书信息点击后,该条图书的明细信息就将显示出来。
在进行图书列表展示的实现过程中,系统首先将数据库中的图书信息按分页
技术获取当页显示的数据,在Controller层将图书信息转换为BookModel的数据列表传输到View层,系统通过jQuery的jqGrid组件将图书信息绑定后进行显示。
图书信息的Models代码如下所示:
publicclassBookModel:
IBaseModel
{
//图书编号
publicGuidBookId{get;set;}
//图书标题
publicGuidBookTitle{get;set;}
//图书作者
publicstringAuthor{get;set;}
//图书出版时间
publicstringPublishTime{get;set;}
//图书出版时间
publicstringPublishTime{get;set;}
//图书内容
publicintBookContent{get;set;}
//图书内容
publicintBookRecordor{get;set;}
…………
}
用户要通过该系统进行图书信息查询、借阅、续借以及归还等手续,管理者可以通过该系统给读者办证,超期付费处理等工作。
下面以查询借阅信息实现为例编写了一段代码。
///查询图书借阅信息实现代码
publicPagedResults
{
if(!
string.IsNullOrEmpty(param.Value))
{
param.Value=param.Value.Trim();
}
ObjectQuery
varquery=(frombinbaseCode
where(param.Id==null||b.Id==param.Id)
&&(param.Name==null||b.Name==param.Name)
&&(param.Code==null||b.Code==param.Code)
&&(param.IsFreeze||b.IsFreeze==param.IsFreeze)&&(string.IsNullOrEmpty(p
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件工程 大工 20 作业 题目 要求