[Python+Django]Web图书管理系统毕业设计之系统需求分析和设计篇

本系列博文献给即将毕业的程序猿们,系列文章共三篇,在编写的过程中可以说几乎是参照毕业设计目录样式来进行的.

相关图表和截图也都几乎按照毕业设计论文的要求来编制,完整阅读消化此系列博文套上一个毕业论文的目录和格式几乎就是一篇计算机毕业设计论文了.

本文是Python Web图书管理系统毕业设计第二篇,另外两篇如下:

本文所需软件及系统环境请参见:[Python+Django]Web图书管理系统毕业设计之开发工具和技术篇

本文数据库及系统的实现请参见:[Python+Django]Web图书管理系统毕业设计之数据库及系统实现源码篇

本篇我们介绍图书管理系统需求分析和系统设计:

本系统最终实现系统功能结构如下:

各模块功能页面:

出版社管理:

列表显示:

 新增出版社:

编辑出版社:

作者管理:

列表显示:

新增作者:

修改作者:

登录页面:

注册页面:

以下为本篇需求分析和系统设计详细内容:

目录

系统分析:

背景和意义

可行性分析

需求分析

1.功能需求

2.性能需求

3.软件质量要求

4.灵活性

系统设计

系统总体设计

系统数据库设计

数据库概述

系统实体E-R图​

系统数据表设计


 

系统分析:

背景和意义

根据各图书销售门店的调查可知,随着销售规模的不断壮大,经营的图书品种、数量也逐渐增多。在图书销售不断发展的同时,其常年采用的传统的人工方式管理暴露了一些问题。

例如,查找读者借阅的某本图书的具体详细信息需要靠人工记忆在书海中苦苦查找,由于图书储存量大,很难准确定位图书的具体位置,因此每天都要浪费大量宝贵的时间资源。

为提高工作效率,同时摆脱图书管理人员在工作中出现的种种弊端,现委托某单位开发一个图书管理系统。

可行性分析

通过计算机对图书进行管理,不仅为图书的管理注入了新的生机,而且在运营过程中节省了大量的人力、物力、财力和时间,可以提高图书管理的效率。随着计算机技术的发展,以及计算机在各个企事业单位中应用的普及,计算机强大的功能已为人们深刻认识。它在当今高速发展的信息时代占据着不可缺少的地位,作为计算机应用软件的一部分,使用计算机对图书馆进行综合管理已经远远超过手工管理的效率。因此开发这样-一个管理系统成为一件很必要的事情。

需求分析

图书管理系统是为了实现图书高效管理而设计的.它完全取代了人工处理的工作方式,并且避免了由于管理员的疏忽以及管理质量问题所导致的各种错误。为及时、准确、高效地完成图书管理工作提供了强有力的工具。

1.功能需求

本系统主要是管理员对图书信息和出版社进行管理。本系统需要有出版社管理、图书管理、作者管理、统计等功能,能将相关信息从数据库中添加修改删除并且利用查询将相关信息显示出来。数据要求有自动更新功能,能显示最新的结果。

根据学校图书馆管理系统的特点,可以将其分为图书信息管理,出版社管理,作者管理,系统管理等4个部分,其中各个部分及其包括的具体功能模块如图所示。
 

[Python+Django]Web图书管理系统毕业设计之系统需求分析和设计篇_第1张图片

通过对一些大型图书管理系统的实际考察、分析,并结合实际要求以及实际的市场调查,要求本系统具有以下功能:

  • 窗体界面要求美观大方、个性化、功能全面、操作简单。
  • 要求实现基础信息的管理平台。
  • 要求对所有图书进行管理。
  • 提供快速的图书信息检索功能,保证数据查询的灵活性。
  • 实现综合条件查询,如图书名称、图书作者等。
  • 提供灵活、方便的权限设置功能,使整个系统的管理分工明确。
  • 具有易维护性和易操作性。

2.性能需求

因为系统要代替人工管理图书信息,所以要求系统响应速度快,稳定性强,操作简单,准确性高。

根据前面所作的需求分析及功能的需求可以得出,学校图书馆管理系统实施后,应达到以下系统性能标准:

  • 窗体界面要求美观大方、功能全面、操作简单。
  • 程序整体结构和操作流程合理顺畅,实现人性化设计。
  • 规范、完善的基础信息设置。
  • 对操作员设置不同的操作权限,为管理员提供修改权限功能。
  • 对图书信息进行集中管理。
     

3.软件质量要求

对软件运营者而言,要保证有效性.最好易于扩展,有较好的可移植性。对客户而言,要做到操作简单.界面友好,帮助文档充分。

4.灵活性

当用户需求,如操作方式.运行环境、结果精度、数据结构与其他软件发生变化时,设计的软件要随时做适当的调整。因此,灵活性非常大。

系统设计

系统总体设计

根据系统分析的结果,在综合分析的基础上,进行了系统总体设计,把系统分为了5个功能模块:登录模块、出版社管理、图书管理、作者管理和系统用户管理模块。系统模块结构图如图所示。

[Python+Django]Web图书管理系统毕业设计之系统需求分析和设计篇_第2张图片

 

 

 

图书信息管理模块:主要包括图书信息管理的功能,具体包括查询图书、修改图书、增加图书、删除图书基本资料等基本操作(普通用户只有查询功能)。

出版社管理模块:主要是对出版社进行管理,可以查询出版社、修改出版社、增加出版社、删除出版社等功能。

作者管理模块:主要是对作者进行管理,可以查询作者、修改作者、增加作者、删除作者等功能。

登录管理模块:主要是实现用户登录的功能,用户只有登录系统,才能在自己的权限范围内进行合法的操作,否则,将不能进行任何操作。

注册管理模块:主要实现用户注册功能.

系统数据库设计

MySQL具有很强的完整性与可伸缩性,具有较低的价格比与性能比,考虑到本系统的稳定性与可靠性以及开发程序与用户需求,笔者决定在设计该系统时选择SQLMySQL数据库来满足系统的需求。

在设计图书馆管理系统之前,有必要说明数据库的基本概念和本设计所应用的数据表。

数据库概述

计算机信息系统以数据库为核心,在数据库管理系统的支持下,进行信息的收集、整理、存储、检索、更新、加工、统计和传播等操作。

对于数据库应用开发人员来说,为使现实世界的信息流计算机化,并对计算机化的信息进行各种操作,就是如何利用数据管理系统、系统软件和相关硬件系统,将用户的要求转换成有效的数据结构,并使数据结构易于实现用户新的要求的过程。

确切地说,数据库设计是指对于一个给定的应用环境,提供一个确定最优数据模型与处理模式的逻辑设计,以及一个确定数据库存储结构与存取方法的物理设计,建立起既能反映现实世界信息和信息联系,满足用户数据要求和加工要求,又能被某个数据库管理系统所接受,同时能实现系统目标,并有效存取数据的数据库。

所谓数据库是指以一定的组织方式存储在-起的,能为多个用户所共享的,与应用程序彼此独立的相关联的数据集合。

而数据库系统是指实现有组织地、动态地存储大量关联数据,支持多用户访问的计算机软硬件资源与数据库管理员组成的系统。

个人系统是按用户的需求进行数据库定义、存取、运行、建立和维护功能。系统的数据库定义模型如图所示。

系统实体E-R图

根据实际调查对系统所做的需求分析、系统设计,规划出本系统中使用的数据库实体分别为图书档案实体、出版社档案实体、作者档案实体、用户档案实体。下面将介绍几个关键实体的E-R图。

1.出版社档案实体

出版社档案实体包括:出版社编号,出版社地址,出版社名称

[Python+Django]Web图书管理系统毕业设计之系统需求分析和设计篇_第3张图片

2.图书档案实体

出版社档案实体包括:序号,图书名称,图书编号,译者,出版日期,出版社
 

[Python+Django]Web图书管理系统毕业设计之系统需求分析和设计篇_第4张图片

3.作者档案实体

出版社档案实体包括:序号,姓名,性别,年龄,联系方式

[Python+Django]Web图书管理系统毕业设计之系统需求分析和设计篇_第5张图片

4.用户档案实体

出版社档案实体包括:序号,用户名,密码,邮箱,手机

[Python+Django]Web图书管理系统毕业设计之系统需求分析和设计篇_第6张图片

系统数据表设计

结合实际情况及对用户需求的分析,图书管理系统bms数据库主要包含如下表所示的4个数据表。

1.出版社信息表

publisher出版社信息表
字段名 数据类型 是否主键 说明
id int 出版社编号
name int 出版社名称
addr varchar(40) 出版社地址

 


 

 

 

 

2.图书信息表

book图书信息表
字段名 数据类型 是否主键 说明
id int 序号
name varchar(64) 图书名称
ISBN varchar(64) 图书编号
translator varchar(64) 译者
date date 出版日期
publisher_id int 出版社

 

 

 

 

 

 

 

 

 

3.作者信息表

author作者信息表
字段名 数据类型 是否主键 说明
id int 序号
name varchar(64) 姓名
sex varchar(4) 性别
age int 年龄
tel varchar(64) 联系方式

 

 

 

 

 

 

 

 

4.用户信息表

lmsuser用户信息表
字段名 数据类型 是否主键 说明
id int 序号
username varchar(32) 用户名
password  varchar(32) 密码
email varchar(32) 邮箱
mobile int 手机

 

 

 

 

 

 

 

 

结语

至此,我们的系统分析和数据库及架构设计已经完成,下篇将介绍系统数据库的创建及系统功能实现.

 

 

 

 

你可能感兴趣的:(Python,Web毕业设计,Python,Web,Django全栈开发,python,mysql,数据库,毕业设计,django)