软件工程导论实验报告.docx

上传人:b****4 文档编号:1410603 上传时间:2022-10-22 格式:DOCX 页数:29 大小:1.12MB
下载 相关 举报
软件工程导论实验报告.docx_第1页
第1页 / 共29页
软件工程导论实验报告.docx_第2页
第2页 / 共29页
软件工程导论实验报告.docx_第3页
第3页 / 共29页
软件工程导论实验报告.docx_第4页
第4页 / 共29页
软件工程导论实验报告.docx_第5页
第5页 / 共29页
点击查看更多>>
下载资源
资源描述

软件工程导论实验报告.docx

《软件工程导论实验报告.docx》由会员分享,可在线阅读,更多相关《软件工程导论实验报告.docx(29页珍藏版)》请在冰豆网上搜索。

软件工程导论实验报告.docx

软件工程导论实验报告

软件工程导论实验报告

 

一、实验题目:

 学生成绩管理系统、图书借阅管理系统、工资管理系统、网络订餐系统、招聘考试成绩管理系统

二、实验目标

 通过独立完成项目开发,加深对软件开发分析过程的流程和方法的理解,建立软件工程的思想,同时,明确软件开发的成本和时间管理的相关概念。

 

实验一

 实验要求:

 ①.在实验题目列出的几个系统中选择一个作为自己要开发的软件系统,要求该系统有明确的功能需求,并建立系统的分析模型。

②.对系统进行需求分析,掌握ER图、DFD、DD的设计与编写

③.熟悉Visio环境和基本操作,制作一个简单的系统流程图和数据流图、主要数

据项的数据字典描述及主要加工的逻辑说明(自己选择结构语言、判定树、判定表等)。

 

④.撰写需求分析规格说明书

用户需求分析

作为图书管理系统,其主要的需求人员是借阅者,借阅者对其的要求可

以大体概括如下:

1)能按各种方式,比如书名、编号、作者等查询图书馆的藏书情况;

2)能熟悉使用图书管理系统;

3)能方便地借阅图书、续借图书、归还图书;

4)能查询自己的基本资料、借阅图书情况;

5)能方便图书管理员对图书的录入登记、注销;

6)能方便对新生的登记或注销已经毕业学生的信息; 

7)能及时发布一些学院学生借阅图书超期情况、馆藏书情况等。

 

功能说明

1)、读者管理系统

(1)未注册者可以进入注册系统进行注册;

(2)已注册借阅者可按姓名、编号或身份证号登陆进入借阅者检索系统查询借阅者情况;      

(3)、已注册借阅者可按书名、出版社或作者对图书信息进行检索查询或

提出预约请求;

2)、图书管理员管理系统

(1)图书管理员通过图书管理员身份认证进入图书管理员管理系统;

(2)读者可借阅在库图书;

(3)在规定期限借阅者归还借阅图书;

(4)读者在不违规情况下可继续借阅已借阅图书; 

(5)读者可以预约图书。

3)、系统管理员管理系统    

(1)系统管理员通过系统管理员身份认证进入系统管理员管理系统;  

(2)系统管理员可以对图书进行图书管理(如:

查询、删除、修改图书资料或图书分类查询修改、删除管理);    

(3)系统管理员可以对借阅者进行学生管理(如:

查询、删除、修改借阅者信息或借阅者类别修改、删除管理,查询浏览借阅者详细资料,包括借阅次数,登陆次数,最后登陆时间);

4)、罚款管理系统    

(1)罚款管理员通过罚款管理员身份认证进入罚款管理系统;

(2)罚款处理可以读取借阅信息表再生成超时罚款信息表,通过超时罚款信息表可以生成罚款单给罚款管理员;

(3)图书管理员告知罚款系统图书超时未还,

经罚款管理员鉴定后,对图书进行注销处理且罚款管理员对借阅者进行罚款处理。

DFD顶层流程图

ER模型图

程序流程图

数据字典

图书管理系统数据流图中,数据信息和处理过程需要通过数据字典才能描述清楚。

在定义的图书管理系统数据字典中,主要对数据流图中的数据项、数据流、数据存储和处理过程进行说明。

 

(1)数据项描述

1)数据项名称:

借书证号

含义说明:

惟一标识一个借书证

类型:

字符型

长度:

50

逻辑关系:

不允许为空

2)数据项名称:

用户名

含义说明:

读者的名称

类型:

字符型

长度:

20

逻辑关系:

不允许为空

3)数据项名称:

密码

含义说明:

对用户名和操作员管理员进行加密

类型:

字符型

长度:

10

逻辑关系:

允许为空

4)数据项名称:

性别

类型:

字符型

长度:

10

逻辑关系:

允许为空

5)数据项名称:

所在系别

类型:

字符型

长度:

10

逻辑关系:

允许为空

6)数据项名称:

所在班级

类型:

字符型

长度:

10

逻辑关系:

允许为空

7)数据项名称:

操作员名称

类型:

字符型 

长度:

30

逻辑关系:

不允许为空

8)数据项名称:

操作员简称  

含义说明:

惟一标识一个操作员

类型:

字符型

长度:

10 

逻辑关系:

不允许为空

9)数据项名称:

操作员级别

含义说明:

对操作员和管理员进行区分

类型:

字符型

长度:

10 

逻辑关系:

不允许为空

10)数据项名称:

图书编号

含义说明:

惟一标识一个图书

类型:

字符型

长度:

10 

逻辑关系:

不允许为空

11)数据项名称:

图书名称

类型:

字符型

长度:

50 

逻辑关系:

不允许为空

12)数据项名称:

作者

类型:

字符型

长度:

50 

逻辑关系:

不允许为空

13)数据项名称:

作者

类型:

字符型

长度:

50 

逻辑关系:

不允许为空

14)数据项名称:

作者

类型:

字符型

长度:

50 

逻辑关系:

不允许为空

15)数据项名称:

出版社

类型:

字符型

长度:

50 

逻辑关系:

不允许为空

16)数据项名称:

出版时间

类型:

日期时间型

长度:

8         

逻辑关系:

不允许为空

17)数据项名称:

价格

类型:

整型

长度:

逻辑关系:

不允许为空

18)数据项名称:

备注

类型:

字符型

长度:

200 

逻辑关系:

允许为空

19)数据项名称:

借书日期

类型:

日期时间

 长度:

逻辑关系:

不允许为空

20)数据项名称:

还书日期

类型:

日期时间

长度:

逻辑关系:

不允许为空

(2)数据结构描述

1)数据流名称:

用户情况

含义说明:

定义了一个读者的有关信息

组成结构:

用户情况=用户名+借书证号+密码+性别+所在系别+所在班级

2)数据流名称:

操作员情况含义说明:

定义了一个操作员的有关信息

组成结构:

操作员情况=操作员名称+操作员简称+操作员级别+操作员密码

3)数据流名称:

图书情况

含义说明:

定义了一个图书的有关信息

组成结构:

图书情况=图书编号+图书名称+作者+出版社+出版时间+价格+备注

(3)数据流(非数据项)说明

1)数据流名称:

借书单

含义:

读者借书时要填写的单据

来源:

读者

去向:

审核借书

数据流量:

250份/天 

组成:

借书单=借书证号+图书编号+借书日期

2)数据流名称:

还书单

含义:

读者还书时要填写的单据

来源:

读者

去向:

审核还书

数据流量:

250份/天

组成:

还书单=图书编号+还书日期

(4)数据存储说明

1)数据存储名称:

图书数据表

 含义说明:

存放图书的有关信息

组成结构:

图书编号+图书名称+作者+出版社+出版时间+价格+备注

说明:

书号具有惟一性和非空性

2)数据存储名称:

用户信息表

含义说明:

存放读者的注册信息

组成结构:

用户名+借书证号+密码+性别+所在系别+所在班级

说明:

证号具有惟一性和非空性,性别只能是男和女

3)数据存储名称:

借书记录

含义说明:

存放读者的借书,还书信息

组成结构:

借书证号+图书编号+借书日期+还书日期

说明:

要求能够立即查询

(5)处理过程说明

1)处理过程名称:

图书管理

输入:

图书情况,

输出:

图书记录

处理说明:

对馆所有图书按图书编号进行管理,将图书数据数据化,存储图书数据表中。

2)处理过程名称:

读者管理

输入:

读者情况,

输出:

读者记录

处理说明:

建立读者信息表,对读者进行统一编号,实现读者记录

表的增删改维护功能。

3)处理过程名称:

查看数目

输入:

借书请求,读者,,

输出:

借书记录,图书信息        

处理说明:

实现根据图书编号等查询图书。

 4)处理过程名称:

借书处理

输入:

图书情况,读者,借书记录

输出:

借书记录

处理说明:

确认读者符合借书条件,办理借书手续。

5)处理过程名称:

还书处理

输入:

图书情况,

输出:

借书记录

处理说明:

对照相应的图书编号可办理还书手续。

6)处理过程名称:

安全管理

输入:

操作员情况,用户情况

输出:

操作员级别,操作员记录,用户记录

处理说明:

通过用户名和口令,确认用户身份,保证系统的安全型。

 

实验二  

实验容:

  

采用面向数据流的设计方法设计系统软件结构,使用Visio画出软件层次图。

(2学时) 

实验要求:

  

① 学习总体设计的基本方法; 

② 掌握面向数据流的设计方法;  

③ 通过对实验

(一)中DFD图的分析,使用Visio画出软件层次图 。

 

④编写出初步的系统设计报告 

实验结果:

顶层数据流图:

第0层图:

第一层图:

(1):

登入子系统

(2):

管理子系统

(3):

查询子系统

第二层图:

(1):

处理新书购入

(2)处理学生借书

(3):

处理学生还书

(4):

处理图书注销

(5)处理学生信息查询

(6)处理图书信息查询

实验三

完成实验

(二)中的两到三个主要功能模块的详细设计;编写部分代码(2学时)

要求:

1学习详细设计的基本方法;

2掌握详细设计图形工具的使用方法;

3给出主要功能模块的算法

4选择程序设计语言编写主要功能模块代码

图书基本信息录入模块

首先输入图书录入的编号(不为0)判断是否有重复的编号,若有,则提示用户该书已存在,若无则继续录入书名、作者、出版社、单价。

voidputin()/*定义录入函数*/

{

inty=1;

system("cls");

while(y)

{

printf("\t请输入您的书籍的书号:

");

scanf("%s",library.book[library.count].number);

printf("\t请输入书名:

");

scanf("%s",library.book[library.count].name);

printf("\t请输入作者名:

");

scanf("%s",library.book[library.count].author);

printf("\t请输入出版社:

");

scanf("%s",library.book[library.count].publish);

printf("\t请输入出版时间:

");

scanf("%s",library.book[library.count].time);

printf("\t请输入该书的价格:

");

fflush(stdin);

scanf("%f",&library.book[library.count].price);

library.count++;

printf("\n是否继续录入(1.继续;0,退出录入):

");

fflush(stdin);

scanf("%d",&y);

if(y!

=1)

{

y=0;

break;

}

}

save();

}

图书基本信息查询模块

用户先选择图书查询方式(按书名查找或按书号查找)输入图书书名或书号后,查找出该图书是否存在,若存在,则显示该图书信息,若不存在则提示用户无此图书信息。

voidsearch_by_author()/*定义按作者名查询*/

{

chars3[20];

intflag=1;

printf("请输入要查询的书的作者:

");

fflush(stdin);

scanf("%s",s3);

printf("图书号\t图书名\t作者名\t出版社\t出版日期\t图书价格\n");

for(inti=0;i

if(strcmp(s3,library.book[i].author)==0)

{

flag=0;

printf("%s\t%s\t%s\t%s\t%s\t%6.2f\n",library.book[i].number,library.book[i].nam

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 小学教育 > 语文

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1