课程设计案例JME手机游戏Word文档下载推荐.docx
- 文档编号:13680950
- 上传时间:2022-10-12
- 格式:DOCX
- 页数:38
- 大小:573.72KB
课程设计案例JME手机游戏Word文档下载推荐.docx
《课程设计案例JME手机游戏Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《课程设计案例JME手机游戏Word文档下载推荐.docx(38页珍藏版)》请在冰豆网上搜索。
1.软件项目计划-------------------------------------------2
2.软件需求规约-------------------------------------------5
3.软件设计规约-------------------------------------------15
4.测试规约--------------------------------------------------24
5.附录(程序源代码)--------------------------------32
注意:
此案例仅为举例,同学们做的时候,应包含以下的内容:
1、详细的成员分工说明,比如:
赵燕(组员):
负责系统分析中的用例建模及其文档描述等;
2、结合OOSAD,谈一下做此项目的目的与意义,所要使用的技术工具,如Rose、Visual等;
3、项目的计划和管理,关键路径的制定,可行性的分析等;
4、需求分析,需求获取、用例(典型用例的详细书面描述)、概念数据模型、顺序图、类图(注意从分析类到设计类的转换过程)、其他的动态模型,如活动图、状态图等;
5、设计建模(用例实现),包括设计元素、UI设计、数据库建模等;
6、实现阶段,代码实现、系统整体部署与测试(可选);
7、结论,指出在分析与设计中遇到的问题,和下一步的完善方向;
软件项目计划
Ⅰ.引言
A.游戏名称
CatchEgg
B.计划的目的
1.通过实际编程,提高代码的效率,规范性,以及可读性。
2.了解J2ME游戏在手机里的实际应用。
3.熟悉软件工程分析设计工程
C.游戏介绍
游戏最终画面如下图片所示:
说明:
游戏由5个对象组成,分别是背景(bkground),小鸟(bird),母鸡(hen),以及下落的蛋(egg)和盆(pen)。
屏幕左上方会随机飞出小鸟,在小鸟飞往右边的消失的时候会随机丢下1到2个蛋,通过控制模拟器上的左右键盘移动母鸡走动,让蛋能够落在母鸡的盆里。
下方显示的是接到的蛋的数量,以及显示剩余时间。
D:
开发环境
JDK+J2MEWirelessToolkit
Ⅱ.项目估算
A.A.
估算技术
采用基于LOC估算技术
功能
LOC估算
主生命周期控制
50
画布
200
母鸡控制
150
小鸟控制
蛋控制
100
总计数值
700
B.工作量、成本和持续时间的估算
每个劳动力的成本为100元/人天
平均生产率约为100LOC/人天
实际状况下:
参与人数为2人,有1条通讯路径,每条降低生产率50LOC/人天
实际生产率为200–50=150LOC/天
每个LOC的成本约为150/400=2.67元
实际工作量估算约为5人天
Ⅲ.进度
A.项目工作细分结构
(1)软件项目计划
(2)需求分析
(3)概要设计
(4)程序编码
(5)软件测试
B.任务网络
C.时间表(甘特图)
工作任务
第1日
第2日-第4日
第5日-第6日
第7日-第9日
第10日
需求分析
概要设计
程序编码
软件测试
--表示里程碑。
Ⅳ.人员组织
A.管理报告
项目由2006年1月10开始至1月20日结束,人员分工安排如下:
(1)1月10日由项目经理吴一心进行软件项目计划,写出软件项目计划书。
(2)1月11日至1月13日由陆兆迪,吴元清进行需求分析,写出需求分析书。
(3)1月14日至1月15日由翁建飞进行概要设计,写出软件设计规约书。
(4)1月16日至1月18日由吴一心,陆兆迪按照软件设计规约进行程序编码。
(5)1月19日吴一心设计测试规约,并由吴一心按照规约进行软件测试。
软件需求规约
A.系统参考文献
《java程序设计教程》中国电力出版社肖晏著
《j2me无线平台应用开发》清华大学出版社张小玮著
《j2me应动设备程序设计》清华大学出版社胡虚怀著
《java2游戏设计》荣钦科技编著
B.整体描述
完成一个J2ME手机游戏.游戏由5个对象组成,分别是背景(bkground),小鸟(bird),母鸡(hen),以及下落的蛋(egg)和盆(pen)。
Ⅱ.UML视图
1.用例图
2.类图
3.顺序图
4.活动图
Ⅲ.程序实现
A.子程序划分
(1)主流程。
(2)母鸡移动。
(3)鸟的生成。
(4)蛋的随机生成。
(5)接蛋判断。
(6)数据统计。
B.子程序描述
(1)主流程
用一个线程来使3个对象能够在屏幕上动起来,每变一次,线程sleep(100)
(2)母鸡移动
调用keypressed()和keyrepeated()函数,使的每按一次左右健或者按住左右健,母鸡的坐标变量都能够改变,实现移动
(3)鸟的生成
用一个随机函数,来判断当前是不是要新生成一只鸟(bird),并给它初始化坐标.
(4)蛋的随机生成
与鸟的生成类似,只不过它的初始化坐标与鸟的当前坐标有关.
(5)接蛋判断
用来判断是否接到落下的蛋
(6)数据统计
负责统计接到蛋的数量以及时间的统计
软件设计规约
I.过程设计
(1)游戏主线程模块
A.处理说明
游戏的主线程,每次启动游戏,都是用这个模块开始的.
B.代码描述
import;
publicclassCatchEggGameMIDletextendsMIDlet{
/**储存CatchEggCanvas对象的变量*/
privateCatchEggGameCanvascatchEggGameCanvas;
/**构造函数*/
publicCatchEggGameMIDlet(){
catchEggGameCanvas=newCatchEggGameCanvas();
Display.getDisplay(this).setCurrent(catchEggGameCanvas);
}
/**MIDlet开始时所调用的方法*/
protectedvoidstartApp()throwsMIDletStateChangeException{}
/**MIDlet暂停时所调用的方法*/
protectedvoidpauseApp(){}
/**MIDlet结束时所调用的方法*/
protectedvoiddestroyApp(booleanunconditional)
throwsMIDletStateChangeException{}
}
(2)母鸡移动
处理母鸡坐标的移动
protectedsynchronizedvoidkeyPressed(intkeyCode){
intgameCode=getGameAction(keyCode);
switch(gameCode){
caseLEFT:
//按下向左按键时
leftPressed=true;
getZhuPenXY();
break;
caseRIGHT:
//按下向右按键时
rightPressed=true;
break;
default:
}
protectedvoidkeyReleased(intkeyCode){
intaction=getGameAction(keyCode);
switch(action){
caseLEFT:
leftPressed=false;
henImgInx=3;
break;
caseRIGHT:
rightPressed=false;
henImgInx=0;
}
(3)鸟的生成
让屏幕右上方随机产生鸟
voidcreateBird(){
if(birdCount<
bird.length){
inttmpInt=random.nextInt()%15;
//修改数字能改变bird出现的概率
for(inti=0;
i<
bird.length;
i++){
if(tmpInt==0&
&
!
bird[i].isVisable()){
bird[i].setVisable(true);
bird[i].setX(bird[i].getWidth()*(-1));
birdCount++;
frontTime=System.currentTimeMillis();
break;
//保证一次产生一只
}
}
(4)蛋的随机生成
A.处理说明
让飞过的鸟不断的落下蛋,当游戏结束的时候停止
booleanisDropEgg(){
inttmpInt=random.nextInt()%20;
if(tmpInt==0&
eggDropCount<
2){
eggDropCount++;
returntrue;
else
ret
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 课程设计 案例 JME 手机 游戏
![提示](https://static.bdocx.com/images/bang_tan.gif)