3课程设计报告软件工程模板正文副本.docx

上传人:b****5 文档编号:8635579 上传时间:2023-02-01 格式:DOCX 页数:16 大小:458.22KB
下载 相关 举报
3课程设计报告软件工程模板正文副本.docx_第1页
第1页 / 共16页
3课程设计报告软件工程模板正文副本.docx_第2页
第2页 / 共16页
3课程设计报告软件工程模板正文副本.docx_第3页
第3页 / 共16页
3课程设计报告软件工程模板正文副本.docx_第4页
第4页 / 共16页
3课程设计报告软件工程模板正文副本.docx_第5页
第5页 / 共16页
点击查看更多>>
下载资源
资源描述

3课程设计报告软件工程模板正文副本.docx

《3课程设计报告软件工程模板正文副本.docx》由会员分享,可在线阅读,更多相关《3课程设计报告软件工程模板正文副本.docx(16页珍藏版)》请在冰豆网上搜索。

3课程设计报告软件工程模板正文副本.docx

3课程设计报告软件工程模板正文副本

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

1.课程设计目的

软件工程课程设计是学习软件工程课程后所进行的实践环节,目的是培养学生用工程化的思想和标准文档化的思想进行软件开发。

本次课程设计通过开发一个小型实用的软件系统,亲身体验软件生命周期中的各个环节,以加深对软件工程课程的深入理解、锻炼独立分析、解决问题的能力。

2.课程设计要求

2.1课程设计准备

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

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

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

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

2.2内容要求

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

对系统进行需求分析,可以选择传统的分析方法或者面向对象的分析方法,提交软件需求规格说明书(SRS);

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

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

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

 

二、设计正文

1.可行性分析报告

1.1.引言

编写目的

随着生活节奏的加快,人们的压力渐渐变大。

闲暇之余,大家喜欢玩一些小游戏来放松放松心情。

现在网络上面的游戏多得让人眼花缭乱,什么样的游戏能够更加的吸引人便成为了开发者所要思考的内容。

我们小组经过探讨之后一致决定写一个五子棋的游戏。

五子棋这款游戏休闲又益智,操作又不复杂,自然成为了大众所欢迎的游戏之一。

我们现在要开发的这款五子棋游戏是模仿qq游戏大厅中五子棋,玩起来很有乐趣。

项目背景

软件工程课程设计这门课程要求我们自由选择一个课题去完成,经过商量,我们决定写这个五子棋的游戏。

参照qq游戏中的五子棋,推出拥有我们自己特色的产品。

1.2.可行性研究的前提

1.2.1.要求

功能:

1)用户注册和登陆模块:

此模块包括新用户的注册,已注册的用户登录,用户需要登录游戏平台后才能进行游戏,否则不允许进入游戏。

如果不是该游戏的老用户,需要注册。

2)前端程序段

a、实现功能游戏大厅

b、实现选择对手

c、添加对手

d、实现评定输赢

e、实现简单的界面设计

3)后台功能

a、实现Inputqueue

b、实现output广播队列

c、将用户名和密码胜率分析添加mysql中

d、超时检测

性能:

程序快速稳定,操作简单容易上手,界面简洁通俗易懂;

安全与保密要求:

操作系统、数据库(备份与恢复)、应用软件(开发软件、密码、加密算法、权限设置)

1.3.目标

●人力与设备费用的节省

●处理速度的提高

●控制精度或生产力的提高

●管理信息服务的改进

●决策系统的改进

●人员工作效率的提高

1.3.1.条件、假定和限制

●运行的最短寿命:

程序能够稳定、持续的运行。

●经费来源:

自费

●法律和政策方面的限制:

不存在侵权行为。

●所选系统:

Windows7系统。

●可利用的信息和资源:

了解用户需求,获取相关信息。

●开发完成,经过严格测试,用户试用后正式投入使用。

1.3.2.可行性研究方法

过分析qq游戏大厅中的五子棋程序来确定总体结构,利用MySql作为后台数据库,以最简洁最容易的方法,使用visualStudio环境,c#语言开发,简单易懂,易操作,功能完备的五子棋游戏。

由于是游戏,青年人玩的可能性比较高,所以我们的主体用户应该面向青年人,以用户为中心,比较符合实际需求,所以系统成功率高,容易被用户接受。

1.4.现有系统分析

1.4.1.处理流程和数据流程

图1-1:

处理流程

图1-2数据流程

用户信息包括:

用户的注册信息,用户个人信息,包括账号,密码,个人战绩等,个人战绩中又包括赢,输,平局的局数。

1.5.对现有系统的其他分析

1.完成系统后先由用户试用,试用通过后正式投入使用,并随时接收用户的反馈信息,及时修正bug,维护系统的正常运行。

2.该系统只能运行在windows系统下。

而且游戏前必须先安装客户端

1.6.经济可行性分析

该系统不需要用户花费下载费等,用户可以免费下载游戏,成本低,用户可以接受。

开发需要人工劳动力,时间等。

1.7.社会因素可行性分析

1)法律因素

  ●合同责任

  ●侵犯专利权

  ●侵犯版权

2)用户使用可行性

  ●用户单位的行政管理

  ●工作制度

  ●人员素质等能否满足要求

1.8.其他可供选择的方案

1).QQ游戏大厅中的五子棋游戏,虽然界面丰富,但是有很多人民币玩家,游戏的公平性得不到保证,而且需要联网。

我们的系统可以在局域网内运行,比较方便。

2)手机游戏中也有五子棋,但多数只能和系统交战,玩家玩的次数多了以后便没有了新鲜感。

我们的系统支持玩家对战,百玩不腻。

而且我们是免费软件哦。

 

2.需求说明书

2.1.软件需求

1)系统应该有登陆功能,不同的用户通过不同的用户名和密码登陆。

2)系统应该有个游戏大厅。

在大厅中用户可以选择自己的对手,而且在大厅中用户也可以通过点击用户头像来查看用户的战绩,选择是否与其对战。

3)游戏界面应该友好,而且在界面上应该显示对手和自己的战绩。

2.2.运行环境

该软件可以在WIN7及其以上系统中运行,兼容性能良好.采用MYSQL数据库,.net4.5平台.可以通过Internet对该系统进行访问.

(对将系统设计成为可以通过Internet访问必要的补充说明:

游戏如果只能单机玩,时间长了未免无趣。

所以提供联网功能可以让用户面对更加丰富的对手,提高游戏的趣味性。

对于安全问题,可以通过杀毒软件和防火墙进行保护)

设置Server和Client,Server由专人负责管理,按用户实际情况安装Client.

2.3.功能需求

建立ER图如下:

图2-1系统E-R

2.4.性能需求

2.4.1.数据精确度

系统的数据传输只要是在当用户输入用户名和密码时,消息服务器通过侦听登陆系统,把收到的数据传送给数据库。

数据库通过对比用户名和密码,返回给消息服务器一个回应:

该用户信息是否正确。

消息服务器收到后向登陆系统发送允许登陆或者不允许登陆。

这个阶段对数据的传送的精确性要求比较高。

当用户登陆后,系统要能够显示用户的战绩等,这也要求严格的数据表示。

还有更重要的棋子在棋盘上面的坐标等,这个位置必须能够唯一,严格的确定,否则系统将不能正确的运行。

所以对数据精确度的要求很高。

2.4.2.时间特性

登陆系统所需的时间应该在正常人可以接受的时间范围内,登陆时间不得超过5秒。

寻找到对手后,系统开始对战的时间不得超过10秒,否则用户会感到等待得不耐烦。

当一局游戏结束,战绩应该及时的更新,这是方便用户实时的了解对手和自己的水平。

2.4.3.适应性

满足个人使用的需求,对前面提到的运行环境要求不应存在困难。

 

2.5.运行需求

2.5.1.用户界面

2.5.2.硬件接口

2.5.3.软件接口

本产品的用户一般需要通过终端进行操作,进入主界面后点击相应的窗口,分别进入相对应的界面(如:

登陆界面、注册界面)。

用户对程序的维护,最好要有备份。

2.5.4.故障处理

在代码编写时出现的故障,我们通过开发工具自带的调试工具来进行调试改错。

当程序完成后出现故障,我们一个一个模块分开找错。

最终软件成品投入使用后,我们通过用户的使用后反馈回来的信息来更新补丁,争取让软件能够圆满的运行下去。

2.6.需求分析总结

根据所收集的资料以及一切所进行过的分析基础,并且结合实际情况,我进行了以上的需求分析。

在整个过程当中,我从整体上觉得整个软件系统无论是在技术上还是在经济上都是完全可行的,有很好的开发价值。

 

3.软件设计说明书

3.1.概要说明书

3.1.1.平台选择

操作系统选择,消息服务器以及数据库服务器布置在Win7以上,

支持软件:

DBMS选用Mysql5.5,VS2012作为开发工具。

CASE平台:

采用VisualParadigm作为软件的Case支持工具。

数据库设计平台:

EMSSQLManager

3.1.2.结构设计

Server端包图:

图2-1server端包图

网络连接包:

包括主要的连接类(Connector,send,recieve)

数据连接包:

包括用来连接数据库的MysqlConnec还有SQLService

InterFace包:

简单的控制图形接口,用来监视连接服务器的报文。

五子棋控制包:

包括线程操作(Maincontrol)和收发操作。

Client端包图:

图2-2client端包图

Client控制包:

控制InterFace的交互操作时序。

网络信息包:

包括连接消息服务器的Connector类和报文收发Sendreceive和报文的解析。

InterFace:

包括登陆注册界面(LonginForm)和GameHall与Gaming操作。

3.1.3.活动图描述

1)总体活动图描述

图2-3总体活动图

图3-1总体活动图

2)登录活动图

图2-3登陆活动图

用户登录活动:

如果一个用户登录且用户名与密码匹配则可以选择对手,如果不符合则需要重新输入,若不是注册用户,则需要这侧。

当注册完成后,可以选择输入密码登录游戏,也可以选择退出游戏。

3)游戏活动图

图2-4游戏活动图

游戏活动图说明:

游戏中,如果一方移动棋子则要等待另一方移动棋子,知道游戏结束;如果中途连接超时,则需要重新连接,如果超时的话,则需要断开连接,结束游戏。

4)登录游戏大厅

 

图2-5登陆游戏大厅图

登录游戏大厅:

等待匹配时,如果成功则匹配对手,如果失败则继续等待。

当等待时间过长时,用户可以选择退出登录。

3.1.4.顺序图描述

1)正常登录:

图2-6正常登录图

用户登录:

登录后,首先要向消息服务器发送消息,消息服务器查询数据库,然后根据返回的值,判定是否是允许登录,如果允许,则在登录大厅匹配对手。

2)密码错误

图2-7密码错误顺序图

3.2.详细设计说明书

包括Client端与Server端的类图描述,两个端口通过

ActiveMQ消息服务器的消息机制连接起来,提高软件的并发性与效率。

3.2.1.类图描述

a)Client类图描述

网络连接包:

Connector网络连接的最基本操作方法。

LoginConnetor是Connector的子类,负责LoginForm中的报文解析与连接。

GamingHallConnector是Connector的子类,负责GameHall的报文解析与连接。

Send和recieve负责添加一般的报文头和解析报文。

GameSendGameRecieveGameHallSendGameHallReieve分别是Send和Receive的子类。

nterFace:

Point类,包括X,Y,Color,GameHallGamingLoginForm分别是游戏大厅、游戏中和登陆界面的界面。

它们的父类均是GameInterFace

Client控制端:

GameHallGamingLoninForm中的UI变换操作。

 

图2-8client端类图

b)Server端类图描述

图2-9server端类图

说明如下:

MainControl是一个主控程序。

网络连接包:

Connector可以作为Send和Receive的子类,

五子棋控制包:

Chess判定输赢,Piont是一个属性类,这个类聚集到Chess中。

InterFace:

基本的软件界面在InterFace中实现,这个类可以与GameInterFace进行继承操作。

数据库操作包:

MysqlConnec是一个数据操作基类,而SQLService则为MainControl提供更加丰富update操作以及原子化属性。

其中MysqlConnec聚合成SQLService.

3.2.2.部署图:

说明如下:

ActiveMQ作为一个独立消息服务器,可以部署在Linux服务器操作系统或者Windows操作系统中。

DBServer可以部署在独立服务其中,也可以与MessageServer共享一个服务器。

ContorlServer部署在Win7及以上系统。

负责收发消息以及控制客户端连接等。

User:

部署在Win7及以上系统中,供户使用。

 

 

图2-10系统部署图

3.2.3.数据库建模

 

图2-11数据库模式图

说明如下:

Game表属性:

user用户名作为主键,password是用户密码不能为空,

Winlosedraw是用户所取得的成绩,三者默认值为0且不能为负数,但是可以为空。

 

1.软件测试报告

1.1测试范围

简要说明测试的目的、预期的结果及测试的步骤

1.2测试计划

(给出测试工作的总安排)

1.2.1测试阶段

(概括说明测试各阶段的顺序,和方法)

1)如:

第n个测试阶段的说明:

对该测试阶段测试目的(如单元测试中的XXXXXXXXXX模块的测试,主要是对其XX功能的测试。

2)第2阶段。

1.2.2测试进度:

(列出测试的全部进度、顺序和依赖关系,安排各模块的测试日程)

1.3测试项目说明

按顺序逐个对测试项目做出说明

1.3.1第1个测试阶段的名称

1)测试目的:

(测试模块的正确性/测试界面的正确性/测试数据和文件的访问/测试时间/测试设计的约束规定)

2)测试方法和测试软件:

采用什么方法测试

3)测试用例

测试用例1

测试用例2

1.3.2第2个测试项目名称

测试用例1

测试用例2

测试用例格式参照教材,包括(输入,预期的输出数据,步骤及操作)

1.4测试分析

(这部分可以用如下方式表述,也可以用表格形式描述)

1.4.1第1个阶段的测试分析

1)实测结果数据

2)与预期结果数据的偏差

3)该项测试表明的事实

4)该项测试发现的问题

1.4.2第2个阶段的测试分析

……

注意!

重点在:

测试项目说明,即测试用例的设计上,和测试分析上面。

三、

课程设计总结或结论

正文为宋体,五号字

四、参考文献

[1]第1作者名,第2作者名.文章名.期刊名(或者书名).出版地:

出版社,出版日期

要求至少列5篇参考文献

例如:

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

人民邮电出版社,2005

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

(1).

附录(程序、表格、数据等相关资料)

 

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

当前位置:首页 > 初中教育

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

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