ConfrontOnline总体概念设计.docx

上传人:b****5 文档编号:7539619 上传时间:2023-01-24 格式:DOCX 页数:23 大小:266.87KB
下载 相关 举报
ConfrontOnline总体概念设计.docx_第1页
第1页 / 共23页
ConfrontOnline总体概念设计.docx_第2页
第2页 / 共23页
ConfrontOnline总体概念设计.docx_第3页
第3页 / 共23页
ConfrontOnline总体概念设计.docx_第4页
第4页 / 共23页
ConfrontOnline总体概念设计.docx_第5页
第5页 / 共23页
点击查看更多>>
下载资源
资源描述

ConfrontOnline总体概念设计.docx

《ConfrontOnline总体概念设计.docx》由会员分享,可在线阅读,更多相关《ConfrontOnline总体概念设计.docx(23页珍藏版)》请在冰豆网上搜索。

ConfrontOnline总体概念设计.docx

ConfrontOnline总体概念设计

 

软件工程课程设计

 

题目:

ConfrontOnline网络游戏

 

学院工商学院

学科门类工科

专业软件工程

学号2007480181

姓名_施杨

指导教师王思乐

2009年12月25日

总版本

ConfrontOnline1.0

编号

ConfrontOnline-TDR-00

版本

1.0

 

项目名称

ConfrontOnline网络游戏(WebGame)

项目代码

ConfrontOnline

分项名称

概要设计报告(Totaldesignreport)

分项代码

TDR

分项序号

00

 

组长

施杨

负责人

施杨

参与人

施杨,安云飞,陈磊,李征益,范永坤,杨建佳,刘姗姗

指导教师

王思乐

日期

2009-12-25

开发单位

2007级软件工程第一组

河北大学学年论文(课程设计)任务书

(指导教师用表)

学生姓名

施杨

指导教师

王思乐

论文(设计)题目

ConfrontOnline网络游戏—概要设计报告

主要研究

(设计)内容

对ConfrontOnline网络游戏的模块进行设计,细化软件结构,描述模块接口及其功能。

进一步评价系统模型应用数据流分析方法导出软件模块结构。

细化软件结构,描述模块接口及其功能。

评价及优化实现方案,细化实现计划,资源分配。

研究方法

根据软件工程导论课上学习的软件工程思想,参照《软件工程导论》在《可行性研究报告》《需求分析》《数据库设计》的基础上,实现对ConfrontOnline网络游戏的结构和功能设计。

主要任务

及目标

对ConfrontOnline网络游戏模块的设计包括细化各个软件模块,并对各个软件模块的功能进行描述,并且描述出各个模块的接口。

其中软件的模块包括游戏用户和管理员俩大主要的模块,各开发成员参照此文档,为下一步详细设计提供参考。

主要参

考文献

《实用软件工程》郑人杰殷人昆陶永雷清华大学出版社

《软件工程导论》张海潘清华大学出版社

《实践者的研究方法》RogerS.Pressman机械工业出版社

《计算机软件产品开发文件编制文档格式》

《项目开发计划大纲》

《可行性研究报告大纲》

进度安排

论文(设计)各阶段名称

日期

问题定义

第10周

需求分析

第11周-第13周

设计

第14周-第15周

实现

第16周-第18周

指导教师签字:

系主任签字:

主管教学院长签字:

河北大学学年论文(课程设计)成绩评定表

学院:

工商学院

学生姓名

施杨

专业年级

软件工程2007级

论文(设计)题目

ConfrontOnline网络游戏—概要设计报告

论文(设计)内容提要

对ConfrontOnline网络游戏模块的设计包括细化各个软件模块,并对各个软件模块的功能进行描述,并且描述出各个模块的接口。

其中软件的模块包括游戏用户和管理员俩大主要的模块,各开发成员参照此文档,为下一步详细设计提供参考。

ConfrontOnline网络游戏模块包括管理员权限管理、用户管理、房间管理、建筑类型管理、地图管理、怪兽类型管理、消息管理、道具类型管理、积分管理等模块。

玩家或管理员可以根据自己的需要进行各种不同的操作。

管理员模块包括管理员登陆注销,用户权限管理,管理用户信息,管理房间,管理建筑类型,管理游戏地图,管理怪兽类型,管理用户消息,管理道具类型,管理用户积分等模块。

游戏管理人员根据要进行的操作选择特定的功能进行操作。

指导教师评语

 

成绩:

指导教师(签名):

年月日

 

1引言

1.1目的

ConfrontOnline是一个网络塔防游戏,面向人群是18-30岁的上班族,这个游戏可以在他们闲暇的时候,提供一种娱乐的方式。

免安装,只要有一个联网的电脑就可以玩,通过互联网方便了游戏的推广。

1.2背景

●这个网络塔防游戏我们叫他ConfrontOnline。

●这个项目是由开发小组共同提出的并参与设计的,用户是18-30岁的上班族。

1.3定义、缩写词、略语

ConfrontOnline:

名知其意,也就是网上对战!

塔防:

塔防是近年来发展最快的新游戏类型,即时战略游戏的一个独立分类,包括作战单元的制造和控制,通过建造“塔”来“防”御敌兵的进攻。

考验玩家布置“塔”的能力——“塔”的摆放位置和先后顺序决定生死。

敌人:

地面魔兽,空中怪物,水中大怪。

防御:

防御方建造自己的建筑设备来抵御敌人的进攻。

建筑设备:

塔、落穴、铁炮、重机枪、激光炮、混乱塔。

1.4参考资料

本项目的其他文档和资料分别是:

《ConfrontOnline系统需求说明书》

《ConfrontOnline系统详细设计》

《ConfrontOnline系统测试文档》

《ConfrontOnline用户使用手册》

《ConfrontOnline数据库设计文档》

2总体设计

2.1需求规定

参见软件需求说明书。

2.2运行环境

本系统是基于web的网络系统,所以对硬件的要求很低,只要装有浏览器和flash插件且能够上网的电脑就可以,对操作系统没有要求。

2.3基本设计概念和处理流程

本系统的设计概念就是借助于互联网的优势,开发的一款WEB版大型在线互动塔防类3Dflash游戏。

使用技术3Dflash+EJB+Hibernate+JPA+Ajax,3Dflash做客户端,EJB+JPA做服务器端。

Ajax负责部分数据异步交互。

流程和功能模块如图:

2.4结构

系统接口

功能描述

从属关系

所属层次

publicBooleanaddUser(Useru)

添加用户,注册用户,传入用户实体,返回保存结果

用户模块

数据层

publicBooleaneditUser(Useru)

修改用户个人信息,传入用户实体,返回修改结果。

用户模块

数据层

publicBooleandelUser(intuserId)

删除用户,传入用户主键,返回删除结果。

用户模块

数据层

publicListlistUser(Pagepage)

查看用户列表,传入分页对象,返回用户列表。

用户模块

数据层

publicUserfindUserById(intuserId)

获得用户信息,传入用户主键,获得用户实体

用户模块

数据层

publicScoregetScoreByUserId(intuserId)

获得用户积分,传入用户主键,返回用户积分

积分模块

EJB层

PublicHousegetHouseByUserId(intuserId)

获得用户房间,传入用户主键,返回用户所在房间。

房间模块

EJB层

PublicListgetFriendList(Pagepage,intuserId)

获得好友列表,传入分页对象,返回用户列表。

用户模块

EJB层

PublicBooleanuserLogin(Useru)

用户登陆,传入用户实体(仅有用户名,密码两个字段有值),返回验证结果。

用户模块

EJB层

PublicBooleanuserLogout()

用户退出,清除用户在session中保存的数据。

用户模块

EJB层

PublicListgetMessages(Pagepage,intuserId)

获得短消息,传入分页对象,用户主键,获得短信息列表。

用户模块

EJB层

PublicBooleanupgradeBuilder(intbuilderId)

升级建筑,传入建筑主键,返回升级结果。

建筑模块

EJB层

PublicBooleanupgradeMonster(intmonsterId)

升级怪兽,传入怪兽主键,返回升级结果。

怪兽模块

EJB层

PublicRecordgetRecord(intuserId)

获得战绩,传入用户主键,返回用户战绩。

用户模块

EJB层

PublicBooleansendMessage(Messagem,intuserId,inttypeId;)

游戏会话,传入短消息内容,用户主键和消息类型,返回发送结果,成功或者失败。

用户模块

EJB层

PublicBooleanbuyBuilder(inttypeId,intuserId)

购买建筑,传入建筑类型主键,用户主键,返回购买结果。

建筑模块

EJB层

PublicBooleanbuyMonster(inttypeId,intuserId)

购买怪兽,传入怪兽类型,用户主键,返回购买结果,成功或失败。

怪兽模块

EJB层

PublicBooleanbuyGameUtil(inttypeId,intuserId)

购买道具,传入道具类型主键,用户主键,返回购买结果,成功或者失败。

道具模块

EJB层

PublicListgetUtils(intuserId)

获得道具列表,传入用户主键,返回该用户购买的游戏道具。

道具模块

EJB层

PublicGameMapselectGameMap(intmapId)

选择地图,传入地图主键,返回地图实体。

用户模块

EJB层

PublicHouseselectHouse(inthouseId)

选择房间,传入房间主键,返回游戏房间

房间模块

EJB层

PublicBooleanaddFriend(intuserId,intfriendId)

添加好友,传入用户主键与好友用户主键,返回添加结果,成功或失败

用户模块

EJB层

publicBuildergetBuilderDetails(

intbuilderId)

获得建筑信息,传入建筑主键,返回建筑信息

建筑模块

EJB层

PublicMonstergetMonsterDetails(intmonsterId)

获得怪兽信息,传入怪兽主键,返回怪兽信息

怪兽模块

EJB层

publicListgetUsersByHouseId(inthouseId)

获得房间中的用户列表,传入房间主键,返回用户列表。

房间模块

EJB层

publicGameUtilgetGameUtilDetails(intutilId)

获得道具信息,传入道具主键,返回道具信息。

道具模块

EJB层

PublicList

getMessageListOfSystem(intuserId)

获得系统消息列表,传入用户主键,获得系统消息列表。

消息模块

EJB层

PublicBooleanjoinChatRoom(intchatId,intuserId)

加入聊天室,传入聊天室主键和用户主键,返回是否加入成功。

消息模块

EJB层

PublicListgetUsersByChatRoomId(introomId)

获得聊天室里的用户列表。

消息模块

EJB层

PublicintcreateChatRoom(intuserId)

创建聊天室,传入用户主键,返回聊天室主键

消息模块

EJB层

PubilcBooleandelChatRoom(introomed)

删除聊天室,返回删除结果成功或失败。

消息模块

EJB层

其他模块的增删改查操作与用户模块类似所以不做具体描述

名词解释:

Boolean返回类型为true(正确)或false(错误)。

User:

用户;Page:

分页处理对象;Score:

用户积分;House:

游戏房间;Friend:

好友;

Message:

短消息;Builder:

防御建筑;Monster:

怪兽;Record:

战绩;

GameUtil:

游戏道具;GameMap:

游戏地图;Login:

登陆;

Logout:

退出;List:

列表;add××:

添加;edit××:

修改;del××:

删除;

get××:

获得对象;select××:

选择;create××:

创建;join××:

加入;

buy××:

购买;upgrade××:

升级;find××:

查询;send××:

发送;

out××:

退出;

2.5功能需求与程序的关系

程序模块

对应实现需求

管理员模块

管理员登陆注销,用户权限管理,管理用户信息,管理房间,管理建筑类型,管理游戏地图,管理怪兽类型,管理用户消息,

管理道具类型,管理用户积分。

用户模块

用户登陆注册注销,管理个人好友,查看和使用个人积分,管理个人消息。

查询等级和道具,查询战绩。

房间模块

查询和选择房间,获得房间里的用户信息

建筑模块

查询和购买建筑,显示建筑信息,建筑升级

地图模块

查看和选择地图,获得地图中的玩家信息

怪兽模块

查询和购买怪兽,显示怪兽信息,怪兽升级

消息模块

消息提示,查看与管理消息,聊天室,游戏会话

道具模块

查看和使用道具

积分模块

查看和使用积分

2.6人工处理过程

需要人工进行硬件维护,和用户注册人工审核,游戏内部管理(GM),人工客服。

2.7尚未解决的问题

1.高并发访问问题。

2.高负载问题。

3.分布式数据库事务处理问题。

3接口设计

3.1用户接口

本系统不提供用户API。

3.2外部接口

本系统建立在JVM之上,所以不需要直接操作硬件,也不需要给硬件提供接口。

但是本系统采用服务器端分布式应用架构所以一切客户端与服务器端的数据交互都需要调用EJB远程接口,服务器端EJB层与JPA层之间也需要有数据库操作接口。

3.3内部接口

系统间的接口分两类,一类就是服务接口,由EJB提供,负责传送数据,一类是数据层接口,是抽象出来的一层负责管理JPA数据库操作。

4运行设计

4.1运行模块组合

本系统基于网页,所以所有运行模块是一个整体,不存在运行方式问题。

通常的游戏运行首先需要通过flash接收用户输入,然后部分直接调用EJB远程接口,还有部分通过Ajax异步传输数据,传输介质是XML与JSON。

服务端接收输入后,做相应的业务处理和数据操作,调用JPA操作数据库。

4.2运行控制

运行控制只有一种就是基于网页的控制,操作步骤也很简单,只需要按照游戏帮助在网页中操作即可。

4.3运行时间

运行周期以一周为一个时间段,每天24小时运转,每周三定时做系统维护。

每种运行模块组合都需要不间断的占用硬件资源。

5系统数据结构设计

5.1逻辑与物理结构设计要点

以下数据存入数据库,存取单位为对象实例,访问方法为调用接口:

权限模块:

管理员admin

字段名

类型

备注

id

Integer(索引)

自增主键

name

varchar(50)

用户名

passwd

varchar(128)(加密)

密码

管理权限:

adminPriority

字段名

类型

备注

id

integer(索引)

自增主键

aid

integer(索引)

与管理员表id关联

priorityId

integer(索引)

权限主键

管理权限关联:

adminPriorityInfo

字段名

类型

备注

Id

integer(索引)

自增主键

priority

varchar(8)

权限,从右面起第一位为1代表有管理道具权限,第2位为管理积分3.房间,4.地图,5.怪兽,6.建筑,7.管理用户,8.管理用户权限,若某位为0则代表没有相应权限,存01字符串

用户与积分模块:

用户表user

字段名

类型

备注

Id

integer(索引)

自增主键

Userid

integer(索引)

与couserreginfor中userid关联

Name

varchar(50)(索引)

与couserreginfor中name关联

passwd

varchar(64)(加密)

密码

nickname

varchar(50)

昵称

sex

bit

0男/1女

email

varchar(64)

邮箱

photo

Varchar(128)

头像照片路径

info

text

用户签名

IsVip

Boolean

True:

是会员

False:

不是会员

VipLevel

Integter

1:

普通会员

2:

黄金会员

3:

白金会员

4:

钻石会员

用户积分:

Score

字段名

类型

备注

id

integer(索引)

自增主键

usetid

integer(索引)

与couserreginfor中userid关联

level

Integer

用户等级

point

long

用户积分

战绩Record

字段名

类型

备注

id

integer(索引)

自增主键

usetid

integer(索引)

与couserreginfor中userid关联

wins

Integer

losts

Integer

用户注册信息:

userreginfor

字段名

类型

备注

id

integer(索引)

自增主键

question

varchar(64)

安全提问

answer

varchar(64)

安全回答

safeemail

varchar(32)

安全邮箱

好友关联表:

friend

字段名

类型

备注

id

integer(索引)

自增主键

userid

integer(索引)

与couserreginfor中userid关联

fid

integer(索引)

与couserreginfor中好友的userid关联

用户拥有道具:

userGameUtil

字段名

类型

备注

id

integer(索引)

自增主键

userid

interger(索引)

用户关联主键

gameUtilid

integer(索引)

道具关联主键

number

integer

该道具数量

用户道具效果与到期时间:

userGameUtiilTime

字段名

类型

备注

id

integer(索引)

自增主键

uid

integer(索引)

用户uid

Effect

integer

关联道具模块,道具属性索引的effect

deadTime

data

效果到期时间

短消息:

message:

字段名

类型

备注

id

integer(索引)

自增主键

Uid

Integer(索引)

收信人

messageid

integer(索引)

信息关联主键

messagekind

integer(索引)

消息类型:

0代表系统消息

1代表管理员消息

2代表用户消息

sid

integer(索引)

发消息人

isRead

Boolean

True:

已读;

False:

未读

message

text

信息内容

建筑模块:

建筑种类:

Builder:

字段名

类型

备注

id

integer(索引)

自增主键

builderid

integer(索引)

建筑种类编号

Effects

integer

攻击效果

isVipUse

Boolean

True:

会员专属建筑

False:

普通建筑

建筑等级:

BuilderUpgrade

字段名

类型

备注

id

integer(索引)

自增主键

builderid

integer(索引)

建筑种类编号

blevel

integer

建筑等级值

cost

integer

当前等级升级花费

attack

integer

当前等级攻击力

atkspeed

integer

当前等级攻击速度

atklong

integer

当前等级攻击距离

atkRadius

integer

当前等级攻击半径

用户购买建筑等级:

userBuilder

字段名

类型

备注

id

integer(索引)

自增主键

builderid

integer(索引)

建筑种类编号

level

integer

用户要使用该建筑的最低等级

怪兽模块:

怪兽种类:

monster:

字段名

类型

备注

id

integer(索引)

自增主键

monsterid

integer(索引)

怪兽种类编号

Kind

Integer

1地面怪物,2,水怪,3.空中怪物

describe

txt

怪兽说明

isVipUse

Boolean

True:

会员专属怪兽

False:

普通怪兽

怪兽等级:

MonsterUpgrade

字段名

类型

备注

id

integer(索引)

自增主键

monsterid

integer(索引)

怪兽种类编号

mlevel

integer

怪兽等级值

cost

integer

当前等级升级花费

hp

integer

当前等级血量

defense

integer

当前等级防御力

speed

integer

当前等级移动速度

用户购买怪兽等级:

userMonster

字段名

类型

备注

Id

integer(索引)

自增主键

monsterid

Integer(索引)

怪兽种类

level

integer

用户要使用该怪兽的最低等级

房间模块:

房间:

house

字段名

类型

备注

id

integer(索引)

自增主键

householder

Integer(索引)

房主的id

mapid

Integer(索引)

所选地图

maxatk

integer

关联gamemap中mapid对应行的atknum

maxdfe

integer

关联gamemap中mapid对应行的dfenum

房间内用户关联houseuser

字段名

类型

备注

id

integer(索引)

自增主键

houseid

integer(索引)

关联gamehouse的id

uid

integer(索引)

在该房间的用户的uid

def

boolean

False进攻方,true防守方

道具模块:

道具:

GameUtil

字段名

类型

备注

id

integer(索引)

自增主键

cost

integer

道具花费

name

Varchar(64)

道具名称

discribe

txt

道具描述

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

当前位置:首页 > 高等教育 > 理学

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

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