软件工程设计实验报告.docx

上传人:b****7 文档编号:10722216 上传时间:2023-02-22 格式:DOCX 页数:28 大小:146.52KB
下载 相关 举报
软件工程设计实验报告.docx_第1页
第1页 / 共28页
软件工程设计实验报告.docx_第2页
第2页 / 共28页
软件工程设计实验报告.docx_第3页
第3页 / 共28页
软件工程设计实验报告.docx_第4页
第4页 / 共28页
软件工程设计实验报告.docx_第5页
第5页 / 共28页
点击查看更多>>
下载资源
资源描述

软件工程设计实验报告.docx

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

软件工程设计实验报告.docx

软件工程设计实验报告

 

课程设计报告

(2013 -- 2013 年度第 二 学期)

 

名称:

软件工程课程设计

题目:

火车站售票系统

院系:

计算机系

班级:

学号:

学生姓名:

指导教师:

宋雨,陈晴,王德文

设计周数:

2 周

 

成绩:

 

日期:

2013 年 6 月 21日

序号

设计(实验)内容

完成时间

备注

1

软件计划、软件需求分析、软件设计,

制定出软件测试计划,软件测试用例

第 1 周

要求上机前做好充

分的文档准备

2

各模块录入、编码、编译及单元测试

第 2 周的第 1、2

3

联调及整体测试,

第 2 周的第 3、4

4

验收,学生讲解、演示、回答问题

第 2 周的第 5 天

《软件工程》课程设计

 

任务书

一、 目的、要求

通过该课程设计要使学生树立起强烈的工程化意识,用工程化思想和方法开发软件。

切实体会出用软件工程的方法开发系统与一般程序设计方法的不同之处,学生在对所开发

的系统进行软件计划、需求分析、设计的基础上,实现并测试实际开发的系统。

通过一系

列规范化软件文档的编写和系统实现,使学生具备实际软件项目分析、设计、实现和测试

的基本能力。

二、 主要内容

要求学生掌握软件工程的基本概念、基本方法和基本原理,为将来从事软件的研发和

管理奠定基础。

每个学生选择一个小型软件项目(内容参照《计算机综合实践指导》,宋

雨等编著,清华大学出版社出版),按照软件工程的生命周期,完成软件计划、需求分析、

软件设计、编码实现、软件测试及软件维护等软件工程工作,并按要求编写出相应的文档。

具体的方法可以选用传统的软件工程方法或者面向对象的方法,开发环境和工具不限。

三、  进度计划

四、  设计成果要求

1.至少提交 4 个文档,包括软件计划、软件需求规格说明书、软件设计说明书、软件

测试计划,要求文档格式规范、逻辑性强(可参考《计算机综合实践指导》中给出的要求

及格式)、图表规范;

2.独自实现了系统的某些功能,基本达到了要求的性能,经过了测试,基本能运行。

五、 考核方式

(1)提交的文档规范,工作量大,文档逻辑性强、正确,按《计算机综合实践指导》

标准考核(附《软件工程课程设计》实验报告评分表)占 60%

(2)系统验收、讲解、答辩占 25%

(3)考勤占 15%

学生姓名:

指导教师:

姓名

专业班级

学号

题目

标准

分数

得分(√

标准

分数

得分(√

标准

分数

得分(√)

20

17

11

10

16

9

8

19

15

7

6

14

5

4

18

13

3

2

12

1

0

20

17

14

19

16

13

18

15

12

20

16

12

11

19

15

10

9

18

14

8

7

17

13

6

5

《软件工程课程设计》实验报告评分表

2013 年 6 月 16 日

实验报告成绩评分教师签字

 

一、 课程设计的目的与要求

1. 课程设计目的

软件工程课程设计是学习软件工程课程后所进行的实践环节,目的是培养学生用工程

化的思想和标准文档化的思想进行软件开发。

本次课程设计通过开发一个小型实用的软件

系统,亲身体验软件生命周期中的各个环节,以加深对软件工程课程的深入理解、锻炼独

立分析、解决问题的能力。

2. 课程设计要求

2.1 课程设计准备

1)复习软件工程课程的主要内容,熟练掌握软件生命周期的理论以及各阶段的基本概

念。

2)明确可行性分析、需求分析、设计、测试等阶段的基本任务和基本方法。

3)熟练运用规范化的描述方法和文档,描述软件开发的各个阶段。

4)熟悉开发环境和开发工具。

2.2 内容要求

1)对所设计和实现的系统进行可行性分析,提交可行性分析报告;

2)对系统进行需求分析,可以选择传统的分析方法或者面向对象的分析方法,提交软

件需求规格说明书(SRS);

3)在 SRS 的基础上进行软件的概要设计和详细设计,提交软件设计文档;

4)遵循上述文档的要求,实现软件;

5)对所实现系统进行软件测试,完成软件测试报告。

 

二、 设计正文

1. 可行性分析报告

1.1 项目简介

1.1.1 项目目标

随着社会的发展、网络的普及,生活中有许许多多的事情可以通过网络解决。

比如在网

上查询火车票以及预订火车票等等。

然而网上预订火车票预订系统诞生了,开发火车票预

订系统主要是帮助人们 能够及时购买火车票,查询火车出发时间,节约人们的时间和精力。

1.1.2 系统的简要描述,主要功能

用户可以在本系统查询票价、余票,然后通过注册登录进行预订车票,若没有登录则不

能预订车票和查看我的订单。

一般的用户可以通过本网站选择出发地点和到达地点来查询

车票,然后进行车票预订,用户还可以通过我的订单来进行对预订的车票进行退票和查询

自己预订的车票详细信息。

1.2 对现有系统的分析

1.2.1 处理流程和数据流程(系统流程图)

 

有账号

 

登陆注册

 

余票查询

车次查询

车票预订

 

车票退订预订成功

 

订单查询

1.2.2 对现有系统的其他说明

本软件在开发过程中,分为技术实现与使用软件说明书两大部分,这两部分都有它的

重要之处,若技术支持出现故障或疑难问题无法解决、程序开发出现偏差,程序严重错误

而不解的,会影响开发软件的进度和该软件不能按期完成。

若软件说明书陈述出现问题,

那出现部分描述含糊不清,则会影响该软件的完整性与可继承性。

1.3 技术可行性分析

开发工具:

Microsoft Visual Studio 2008

数据库环境:

MySQL

系统环境:

Win7。

系统实现依靠相对比较熟悉的 C++语言和 MySQL 数据库系统,其基本操作实质还是

对数据库进行添加、删除、查找等操作。

1.4 经济可行性分析

本系统所用到的应用软件、硬件系统都易于获得。

因此,开发成本较低。

而引进使用本

系统后,与传统方式相比,具有高效率、低成本、高质量的特点,可以节省不少人力、物

力及财力。

所以,从经济的角度来看,该系统可行。

1.5 社会因素可行性分析

1.5.1 法律因素

因为此系统不仅为人们提供了快捷的服务,更重要的是可以在足不出户的情况下就能

够解决购买火车票的问题,它使得中国的订票系统更加理性化也更加人性化,且该项目为

独立开发,在技术上没有使用任何现有的软件与方法。

所以在法律上具有可行性。

1.5.2 用户使用可行性

中国旅客多,而选择铁路的更是多数,故应需求而言,符合基本要求;网络订购系统

比窗口排队等票方便快捷,为大众节约时间精力,符合人情;网络已成为现代的代步工具,

足不出户即可定多事,符合实际;订购系统为免费注册账户,经济实惠。

具有可行性。

1.6 可供选择的方案

我曾想过 B/S(Browser/Server)结构即浏览器和服务器结构,采用.net 实现。

在这种

结构下,用户工作界面是通过 WWW 浏览器来实现,极少部分事务逻辑在前端

(Browser)实现,但是主要事务逻辑在服务器端(Server)实现,形成所谓三层 3-tier 结

构。

但由于不熟悉 SSH(Stucts+Spring+Hibernate)框架,也没找到合适的合作同伴,所以放

弃了。

我选择现用方案是由于效率,安全,技术方面的原因。

2. 软件需求规格说明书(SRS)

2.1 需求概述

1) 给出软件需求的摘要和简单描述

一般的用户可以通过本网站选择出发地点和到达地点来查询车票,然后进行车票预订,

用户还可以通过我的订单来进行对预订的车票进行退票和查询自己预订的车票详细信息。

用户可实现的功能有:

登陆、注册、车票的预订、车票的余票查询、实现车票的票价查

询、订单的查询和退订

2) 运行环境

Windows7 操作系统、MySQL、Microsoft Visual Studio 2008

2.2 功能需求

1.用例图

价 价 价 价

 

价 价 价 价

 

价 价 价 价

价 价

 

价 价 价 价

 

2.功能表述图

 

数据存储、数据查询、

数据修改、数据删除

Microsoft

Visual

Studio

2008MySQL 数据库

 

数据存储、数据查询、

数据修改、数据删除

2.3 数据描述

E-R 图

 

2.4 性能需求

1) 数据精确度

在进行向数据库提取数据时,需要据记录定位准确;在往数据库中添加数据时,需

要输入的数据准确。

2) 时间特性

在进行向数据库提取数据时,需要据记录定位准确;在往数据库中添加数据时,需

要输入的数据准确

3) 适应性

当需求发生某变化时,系统软件操作方式、数据结构、运行环境基本不会发生变化,

变化只是将对应的数据库内的记录改变,或将过滤条件改变即可。

2.5 运行需求

1) 用户界面

Windows7 界面本软件产品通过 PC 机浏览器进行访问操作,界面简单明了,功能导

航菜单统一。

2) 硬件接口

不必是专门的网络硬件环境,一般只要有操作系统和浏览器就行了。

本工程产品需要

高性能的服务器硬件接口进行支持。

3) 软件接口

本工程产品的软件接口由 Windows7 中文操作系统、MySQL 数据库以及软件的词典和

数据结构组成。

4)故障处理

对出现的问题无法采用可行的解决手段,会影响开发模块之间的互动,从而影响开发

软件的开展,导致软件无法按期完工。

所以要个相应的部门的协力才能工作,才能很好

的完成这个软件系统。

2.6 其它需求

包括提炼,分析和仔细审查已收集到的需求,以确保所有的风险承担者都明其含义并

找出其中的错误、遗憾或者其它不足的地方。

3. 软件设计说明书

3.1 软件模块结构图

1.系统结构图

系统模块

 

用户模块

 

 

3.功能模块图

最初界面截图

表名称

用户信息

字段名称

表字段

字段类型

长度

是否为主键

允许空

默认值

用户列表

AdmId

int

密码

AdmPwd

Varchar

20

姓名

AdmName

Varchar

20

联系电话

Admpemai

l

Varchar

20

身份证号

IDCard

Varchar

50

表的用途

记录用户的基本信息的

表名称

城市表

字段名

表字段

字段类型

长度

是否为主键

允许空

自动编号

TCityId

int

城市

TCity

Varchar

50

表的用途

记录城市名称

表名称

试题信息表

字段名

表字段

字段类型

长度

是否为主键

允许为空

表名:

  用户信息(Adm)

表名:

城市表(TCity)

表名:

车票信息表(Ticket)

3.2 文件结构和全局数据

1) 逻辑结构设计要点:

本系统内软件所使用的每个数据结构的名称、标识符以及它们之中每个数据项、记录、

文卷和系的标识、定义、长度及它们之间的层次的或表格的相互关系。

1.车次信息包括:

车号、出发地、目的地、发车日期、座位等级、剩余座位数。

2.订票记录包括:

订单号、身份证号、车号、订购日期、订购票数。

3.用户信息包括:

用户名、身份证号、性别、电话、地址。

2) 全局数据 :

模块 1---登录系统模块

输入:

登录账号和密码

模块 2---车票查询模块

输入:

客户信息、车次信息输出:

分析结果

模块 3---订购模块

输入:

分析结果输出:

订购成功/失败通知

模块 4---退票模块

输入:

退票信息输出:

有效退票/无效退票的确认

模块 5—新用户注册模块

输入—用户信息输出—注册成功确认

 

自动编号

TId

int

10

车次

Tno

Varchar

10

出发城市

Startcity

Varchar

20

到达城市

Endcity

Varchar

20

出发时间

Starttime

datetime

软卧余票

SoftTicks

Int

硬卧余票

TouristTicket

Int

硬座余票

HardTickts

Int

站票

StandTicks

Varchar

10

表的用途

记录车票信息的

表名称

车票预订信息

字段名称

表字段

类型

长度

主键

允许空

默认

自动编号

BId

int

车次编号

TId

Int

车票类型

Type

Varchar

20

表的用途

记录车票预订

表名:

车票预订信息(Bicket)

3.3 模块描述

3.3.1 登录系统模块描述

1)功能:

登录系统在欢迎界面选择,进入登录窗口

2)处理:

模块的流程处理,如图 3-1 所示

开始

用户登录

用户名和密码

点击登录

登录成功

结束

图 3-1截图如上:

3.3.2 车票查询模块描述

1)功能:

查询所需车票的余票、用户通过出发时间、地点查询。

2)处理:

模块的流程处理,如图 3-2 所示

开始

余票查询

输入时间、地点

点击查询

查询成功

结束

截图如下图 3-2

3.3.3 车票预订模块描述

1)功能:

车票预订,用户通过出发时间、地点查询。

2)接口:

会调用车票查询模块

3)处理:

模块的截图处理,如图 3-3 所示

图 3-3

 

3.3.4 车票退订模块描述

1)功能:

车票预订后的查询订单并退订车票,用户通过出发时间查询订单并退订。

2)接口:

会调用用户登陆及查票查询模块

3)处理:

模块的流程处理,如图 3-4 所示

开始

订单查询

输入时间

查询成功

车票退订

退订成功

结束

图 3-4截图:

 

3.3.5 新用户注册模块描述

1)功能:

没有账号的用户注册。

2)处理:

模块的流程处理,如图 3-5 所示

 

开始

用户注册

输入信息

进行注册

 

注册成功

结束

 

图 3-5截图如上:

项目名称

火车票订票系统

用例编号

LH001

说明

网站首页能顺利显示并能显示首页信息.

模块

登录主界面模块

优先级

1

测试目的

验证:

登陆功能能正确响应鼠标单击事件

初始条件

运行系统,显示网站登录首页

步骤

1.新用户则点击注册进行注册账户

2.输入账号和密码以及验证码

3.单击“登录”按钮

期望输出

打开用户成功登陆后的主界面

实际输出

测试活动

计划开始日期

实际开始日期

结束日期

制定测试计划

2013-06-04

2013-06-04

2013-06-04

设计测试

2013-06-05

2013-06-05

2013-06-05

集成测试

2013-06-06

2013-06-06

2013-06-06

系统测试

2013-06-07

2013-06-07

2013-06-07

性能测试

2013-06-08

2013-06-08

2013-06-08

安装测试

2013-06-10

2013-06-10

2013-06-10

用户验收测试

2013-06-11

2013-06-11

2013-06-11

对测试进行评估

2013-06-12

2013-06-12

2013-06-12

产品发布

2013-06-13

2013-06-12

2013-06-13

登录界面测试用例  LH001

4. 软件测试报告

4.1 测试范围

这一部分要列出所有要测试的功能项。

凡是没有出现在这个清单里的功能项都排除在

测试的范围之外。

具体要点有接口测试、集成测试、功能的测试、业务周期测试、用户页

面测试、性能测试整体考虑这部分测试需求要考虑到数据流从软件中的一个模块流到另一

个模块的过程中的正确性。

4.2 测试计划

4.2.1 测试阶段

1. 尽早地和不断地进行软件测试

2. 测试用例应由测试输入数据和与之对应的预期输出结果两部分组成

3. 程序员应避免检查自己的程序

4. 在设计测试用例时,应当包括合理的输入条件和不合理的输入条件

5. 充分注意测试中的群集现象

6. 严格执行测试计划,排除测试的随意性

7. 应当对每一个测试结果做全面检查

8. 妥善保存测试计划、测试用例、出错统计和最终分析报告,为维护提供方便

4.2.2  测试进度:

4.3 测试项目说明

1. 登录模块功能:

项目名称

火车票订票系统

用例编号

LH004

版本号

1.0

说明

用户成功登陆进行购票操作

模块

网上购票功能模块

优先级

1

测试目的

验证:

判断身份验证信息正确,数据库票存正确。

初始条件

成功登陆,进入购票界面

步骤

1.输入始发站和终点站或输入车次

2.选择车次

3.点击购票

4.输入身份凭证信息

期望输出

如果尚有余票则允许点击购票,否则提示没有,直至购票成功

实际输出

测试状态

编制人

胡柏吉

备注

其他窗口界面中各组建对鼠标相应测试参照本测试用例

项目名称

火车票订票系统

用例编号

LH002

版本号

1.0

说明

测试新用户能否顺利注册,并且测试能否注册已存在用户或非法字符。

模块

注册功能模块

优先级

1

测试目的

验证:

能成功正确注册用户信息,并写入系统数据库

初始条件

运行系统,显示网站首页

步骤

1.点击注册

2.输入正确信息进行注册提交

3.输入非法字符信息进行注册提交

4.输入已存在用户进行注册提交

期望输出

注册信息正确则注册成功,错误时则注册失败并返回错误信息

实际输出

测试状态

编制人

胡柏吉

备注

其他窗口界面中各组建对鼠标相应测试参照本测试用例

2.车票预定模块

车票预订测试用例 LH004

4.用户注册模块

注册测试用例  LH002

5.查询模块

项目名称

火车票订票系统

用例编号

LH005

说明

成功登录后点击进入我的订单页面

模块

火车票退票改签模块

优先级

1

测试目的

验证:

条件符合,能进行改签和退票操作

初始条件

成功登陆,进入我的订单页面

步骤

1.选择改签或退票

2.输入订单号

3.点击提交

4.成功

期望输出

依据规则判断能否有权改签或退票,改签或退票成功。

实际输出

测试状态

编制人

胡柏吉

备注

其他窗口界面中各组建对鼠标相应测试参照本测试用例

项目名称

火车票订票系统

用例编号

LH003

版本号

1.0

说明

用户成功登陆后进入查询余票界面

模块

查询余票功能模块

优先级

1

测试目的

验证:

输入查询条件后,能正确显示余票、车次、时间。

初始条件

成功登陆,进入查询界面

步骤

1.输入始发站和终点站

2.输入查询车次和时间

3.点击查询

期望输出

显示按条件筛选后的余票、车次、时间、票价以及备注信息

实际输出

测试状态

编制人

胡柏吉

备注

其他窗口界面中各组建对鼠标相应测试参照本测试用例

退票测试用例  LH005

查询测试用例 LH003

6.退票模块

4.4 测试分析

4.4.1 第 1 个阶段登录模块的测试分析

1.实测结果数据:

100%

2.与预期结果数据的偏差:

0

3.该项测试表明的事实:

配置文件和数据库文件无损坏,有足够内存可供使用

4. 该项测试发现的问题:

4.4.2 第 2 个阶段车票预订模块的测试分析

1.实测结果数据:

100%

2.与预期结果数据的偏差:

0

3.该项测试表明的事实:

若数据库文件或配置文件不能正常操作或全局数据已经不一致,

设置后备数据库,以防之需

4. 该项测试发现的问题:

后备数据库、配置文件的重载会加大系统的运转,空间扩大。

4.4.3 第 3 个阶段注册测试模块的测试分析

1.实测结果数据:

100%

2.与预期结果数据的偏差:

0

3.该项测试表明的事实:

正常

4. 该项测试发现的问题:

4.4.4 第 4 个阶段查询测试模块的测试分析

1.实测结果数据:

100%

2.与预期结果数据的偏差:

0

3.该项测试表明的事实:

采集了最常出现的查询方式进行查询

4.该项测试发现的问题:

查询的例子还不是很全面

4.4.5 第 5 个阶段退票测试的测试分析

1.实测结果数据:

100%

2.与预期结果数据的偏差:

0

3.该项测试表明的事实:

数据库里全面的采集正确有效的信息

4.该项测试发现的问题:

无效信息的范围很广,缩小需要时间

 

三、 课程设计总结或结论

通过这次完成的课程设计项目实践让我又学到了许多新的技术,也明白了实践的重要

性,知道有的东西不自己做是无法掌握的。

并且让我知道了需求分析是什么。

也了解到写

需求分析文档的重要性。

知道开发一个软件不仅要会写代码还必须要会写项目的需求分析

文档。

因为项目的需求分析文档是给别人看的,所以在一定程度上项目的需求分析文档比

软件本身更重要。

而且,在我们在写这个项目的需求分析文档之前,我们要去了解这个项

目的流程和一些相关的知识。

这对于我们在开发这个软件的过程中将带来很大的便利,他

能让我们的思路更加清晰,不易出错。

最后,通过这次完成的课程设计实践提高了我的逻辑思维能力和动手能力,也让我累

计的一些宝贵的开发经验让我在以后的学习中能更加得心应手。

四、 参考文献

[1] 王珊、萨诗煊. 数据库系统概论. 高等教育出版.2006.05

[2] 柳永坡,刘雪梅,赵长海.JSP 应用开发技术. 北京:

人民邮电出版社,2005

[3] 蒋本珊,黄敏.基于数据库和 ASP 的网上自我测试系统.计算机系统应用,2002

(1).

[4] 宋雨,赵文清编著.软件工程.北京:

中国电力出版社,2007

[5] 刘利民、田保军. 《软件工程综合设计指导书》. 2011

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

当前位置:首页 > 工程科技 > 能源化工

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

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