VC++开放实验报告.docx
- 文档编号:23069149
- 上传时间:2023-04-30
- 格式:DOCX
- 页数:20
- 大小:28.31KB
VC++开放实验报告.docx
《VC++开放实验报告.docx》由会员分享,可在线阅读,更多相关《VC++开放实验报告.docx(20页珍藏版)》请在冰豆网上搜索。
VC++开放实验报告
VC++开放实验报告
项目名称:
潜艇大战
班级:
电气36
姓名:
李波03041157
黄海波03041155
杨成颉
完成时间:
2004年5月30日星期日
指导教师:
杨琦
日期:
04年5月30日
一、需求分析
开发背景……………………………………..
项目目标………………………………………
运行环境………………………………………
项目任务书……………………………………
二、技术路线
2.1总体方案………………………………………
2.2详细设计……………………………………….
2.3工程进度………………………………………
2.4测试报告………………………………………
2.5个人小结………………………………………
三、设计说明书………………………………………
四、程序维护手册………………………………………
五、用户手册………………………………………
六、创新亮点………………………………………
七、个人心得………………………………………
一、潜艇战程序需求分析
一、引言
1.1编写目的
本需求的编写目的在于研究该程序的开发途径和应用方法,本需求的语气读者是与潜艇游戏开发有联系的人。
1.2背景及范围
a.本程序的名称为潜艇战游戏程序
b.本程序的用户为所有对本游戏感兴趣的客户
c.本程序的应用:
可实现单机双人与电脑对战
1.3参考资料
a.visualc++与面向对象程序设计教程------吕军编著
b.vc++编程精选集锦--------电脑编程与维护杂志社编
二、项目概述
潜艇战程序是一个能在计算机平台上实现人机对战的游戏程序,不支持人人对战。
1.开发意图
a.丰富用户的业余生活
b.开发人员能够得到充分的合作和锻炼
2.产品描述
本程与使用vc++6.0编写,其运行环境为windows98,windows2000,windowsxp
3.功能
单机双人与电脑对战,可判断输赢
4.功能示意图
功能键向左向右向左发弹向右发弹正中发弹
玩家1.adop回车键
玩家2.Leftrightbn空格键
5.硬件需求
Cpu133,内存超过16M即可
6.程序需求
需配置编译工具Micosoftvisualstudio—MicrsoftVisualC++6.0
三、附录
由于时间仓促且开发人员水平有限,因此不作变更日记(工作量太大,望老师见谅)!
二、技术路线
一.总体方案
1.本项目的总体方案是利用已编订成型的MicrosoftVc++.net中的程序进行重新编译,添加新的声音文件和背景文件,并使之运行在MicrosoftVC++6.0中.
2.具体方案:
1确定编程思路,并添加代码到原程序中.
2调用三个背景文件,并将其添加到原程序中.
二.工程进度
1.第一阶段:
进行原文件的分析研究.
2.第二阶段:
整理思路准备添加代码
3.第三阶段:
添加文件于原文件中.
4.第四阶段:
调试编译并完成.
三.测试分析
结合程序思路,先对程序说明如下:
MICROSOFTFOUNDATIONCLASSLIBRARY:
ShipDemo
=============================
AppWizardhascreatedthisShipDemoapplicationforyou.ThisapplicationnotonlydemonstratesthebasicsofusingtheMicrosoftFoundationclassesbutisalsoastartingpointforwritingyourapplication.
ThisfilecontainsasummaryofwhatyouwillfindineachofthefilesthatmakeupyourShipDemoapplication.
ShipDemo.dsp
Thisfile(theprojectfile)containsinformationattheprojectlevelandisusedtobuildasingleprojectorsubproject.Otheruserscansharetheproject(.dsp)file,buttheyshouldexportthemakefileslocally.
ShipDemo.h
Thisisthemainheaderfilefortheapplication.Itincludesotherprojectspecificheaders(includingResource.h)anddeclarestheCShipDemoAppapplicationclass.
ShipDemo.cpp
ThisisthemainapplicationsourcefilethatcontainstheapplicationclassCShipDemoApp.
ShipDemo.rc
ThisisalistingofalloftheMicrosoftWindowsresourcesthattheprogramuses.Itincludestheicons,bitmaps,andcursorsthatarestoredintheRESsubdirectory.ThisfilecanbedirectlyeditedinMicrosoftVisualC++.
ShipDemo.clw
ThisfilecontainsinformationusedbyClassWizardtoeditexistingclassesoraddnewclasses.ClassWizardalsousesthisfiletostoreinformationneededtocreateandeditmessagemapsanddialogdatamapsandtocreateprototypememberfunctions.
res\ShipDemo.ico
Thisisaniconfile,whichisusedastheapplication'sicon.ThisiconisincludedbythemainresourcefileShipDemo.rc.
res\ShipDemo.rc2
ThisfilecontainsresourcesthatarenoteditedbyMicrosoftVisualC++.Youshouldplaceallresourcesnoteditablebytheresourceeditorinthisfile.
/////////////////////////////////////////////////////////////////////////////
Forthemainframewindow:
MainFrm.h,MainFrm.cpp
ThesefilescontaintheframeclassCMainFrame,whichisderivedfromCFrameWndandcontrolsallSDIframefeatures.
res\Toolbar.bmp
Thisbitmapfileisusedtocreatetiledimagesforthetoolbar.TheinitialtoolbarandstatusbarareconstructedintheCMainFrameclass.Editthistoolbarbitmapusingtheresourceeditor,andupdatetheIDR_MAINFRAMETOOLBARarrayinShipDemo.rctoaddtoolbarbuttons.
/////////////////////////////////////////////////////////////////////////////
AppWizardcreatesonedocumenttypeandoneview:
ShipDemoDoc.h,ShipDemoDoc.cpp-thedocument
ThesefilescontainyourCShipDemoDocclass.Editthesefilestoaddyourspecialdocumentdataandtoimplementfilesavingandloading
(viaCShipDemoDoc:
:
Serialize).
ChildView.h,ChildView.cpp-theviewofthedocument
ThesefilescontainyourCChildViewclass.
CChildViewobjectsareusedtoviewCShipDemoDocobjects.
/////////////////////////////////////////////////////////////////////////////
Otherstandardfiles:
StdAfx.h,StdAfx.cpp
Thesefilesareusedtobuildaprecompiledheader(PCH)filenamedShipDemo.pchandaprecompiledtypesfilenamedStdAfx.obj.
Resource.h
Thisisthestandardheaderfile,whichdefinesnewresourceIDs.
MicrosoftVisualC++readsandupdatesthisfile.
/////////////////////////////////////////////////////////////////////////////
Othernotes:
AppWizarduses"TODO:
"toindicatepartsofthesourcecodeyoushouldaddtoorcustomize.IfyourapplicationusesMFCinasharedDLL,andyourapplicationisinalanguageotherthantheoperatingsystem'scurrentlanguage,youwillneedtocopythecorrespondinglocalizedresourcesMFC42XXX.DLLfromtheMicrosoftVisualC++CD-ROMontothesystemorsystem32directory,andrenameittobeMFCLOC.DLL.("XXX"standsforthelanguageabbreviation.
Forexample,MFC42DEU.DLLcontainsresourcestranslatedtoGerman.)Ifyoudon'tdothis,someoftheUIelementsofyourapplicationwillremaininthe
languageoftheoperatingsystem.
四.个人小结
在调试中会遇到一些不默认的情况,最后发现是没有在头文件上修改.总之,通过这次大作业,我掌握了使用VC++来作一些比较简单的程序,提高了自身的认识,收获很大。
三、设计说明书
1引言
1.1编写目的
编写此手册的目的是使用户了解如何使用本程序,从而引导用户正确使用本程序。
a.手册将达到的目标
使用户通过阅读本操作手册从而对程序的使用更加熟练。
b.指出预期的读者
本项目的预期读者为项目开发者、用户以及参与实施本项目的工作者
1.2背景
说明:
a.待开发程序系统的名称为:
潜艇战游戏程序
b.本项目的开发者:
李波黄海波杨成颉
本项目的用户:
游戏爱好者及各类人群
1.3定义
列出本文件中用到专门术语的定义和外文首字母组词的原词组
1.4参考资料
(1)程序工程导论————张海藩编著清华大学出版社
(2)visualc++与面向对象程序设计————西安交通大学计教中心编著
(3)vc++编程精选集锦--------电脑编程与维护杂志社编
列出有关的参考资料,如:
a.本项目的经核准的计划任务书或合同、上级机关的批文;
b.属于本项目的其他已发表的文件;
c.本文件中各处引用到的文件资料,包括所要用到的程序开发标准。
列出这些文件的标题、文件编号、发表日期和出版单位,说明能够取得这些文件的来源。
2.程序设计说明
2.1程序描述
实际开发该程序是供游戏爱好者及广大学习工作者娱乐休闲之用。
本程序界面设计简洁,操作方便。
2.2功能
该程序可通过屏幕提示及键盘操作实现潜艇战两人对战,并判断输赢。
2.3性能
2.3.1时间特性:
本程序运行时间较快。
2.3.2灵活性
本程序应在MicrsoftVisualC++6.0的各种版本的运行环境下使用。
2.3.3有效性
本程序在正常操作及运行状态下具有较高的有效性。
2.4输入,输出项
在屏幕提示下,对战双方采用个人不同的控制键移动光标调整舰艇位置并发弹。
屏幕上,应有相应的输出,每击毁一艘潜艇,显示+10分。
且屏幕上有当前屏幕上潜艇数量提示。
.当游戏结束时计算机自动显示gameover.
2.6流程逻辑
2.7注释设计
开发者对于本程序做了细致的注释说明.对于宏定义的每一项及各个定义函数原型均做注释.在各个自定义函数中也做了大纲式说明.各语句功能一目了然,调试方便.
2.9尚未解决的问题
2.9.1设想可以实现人人对战并可以选择计算机对手的等级(专家水平,普通水平,初学者水平).
2.9.4对战结束后可以自动结束程序.
测试分析报告
一、引言
1.编写目的
以下测试分析报告的编写是为了对测试结果作出全面检查,发现源程序代码中的错误,进而检测出来游戏程序中各项功能的实现情况,也就是比较实际运行结果与原来预想结果之间的差异,分析造成此差异的原因,并改进程序使之达到预期的目的。
通过测试也可以发现然程序中存在的缺陷和限制,为程序的进一步提高提供了基础。
本测试分析报告的预期读者范围使程序设计组中的其他成员,使大家进一步了解程序的不足。
2背景
说明:
c.待开发程序系统的名称为:
潜艇战游戏程序
d.本项目的开发者:
李波
e.本项目的用户:
游戏爱好者及各类人群
3参考资料
实用程序测试方法与应用
程序测试实例
C/C++/C#程序员实用大全
二、测试结果及发现
a阶段性测试
测试1(时间:
11,1—11,5)第一阶段使测试界面,即能否正确显示本游戏的初始化界面,这是本程序能否正常使用的基础。
(1)经过多次测试运行,主要采用了观察法,结果屏幕能正常显示游戏所需的屏幕,所命源程序中有关画屏幕的一部分使正确的。
(2)同上所述,测试中在显示屏幕的同时屏幕左上方能正常显示用户信息,屏幕下方能正常显示结束提示信息,同原输出要求基本一致,同样证明了源程序的正确性。
至此,程序第一阶段的测试,即界面功能的测试结果。
测试2(时间:
11,10—11,20)第二阶段主要是看能否正常使用各项命令的功能,这一部分是本程序的核心内容,是检验此程序功能的关键,我们用“1”和“2”分别代表两方玩家,用键盘上字母a,d和四个方向健分别控制舰艇的行进方向,用空格和回车健代表两方的发弹。
(1)首先检测两方玩家各自能否正常发弹。
我们用直接检验的方法即分别在键盘上按下空格和回车键来看此功能的实现,经多次试验证明两方都能正常发弹。
。
但是在此项功能的检测过程中发现了一个程序上的缺陷,即计算机经常混淆“1”、“2”的命令
(2)检测两方玩家能否在各自方向键的控制下把各自的军舰移到屏幕上的任一位置,以实现正常的行进功能。
我们还是上面直接实验的方法分别检验了4个方向键,结果没有发现错误,即两方都能准确的把军舰移到各自需要的位置,基本上与预期的结果相符。
至此,程序第二阶段的测试即行进功能的测试告一段落,基本上没有发现大的问题。
测试3(时间:
11,21——11,25)第三阶段是判断游戏输赢功能的测试,若赢棋后屏幕上能否正确显示“gameover”的提示信息,这是程序的结束部分,也是组成程序的重要内容。
潜艇战游戏的规则是玩家的军舰被击毁,不管是在任何方向上,则判断为gameover。
我们仍然采用了上述测试方法,让某一方玩家的军舰在任意位置上被击毁,此时屏幕上出现了该gameover的提示信息,经多次检测后证明此阶段程序基本没有错误。
测试4(时间:
11,26——12,1)第四个阶段是判断游戏的一些附加功能的实现情况,比如发弹时的声音,结束时提示信息的闪烁和声音。
经多次测试又发现了一个小问题,即显示赢棋信息时不能正常发出声音,经全体组员的讨论和交流,鉴于知识上的因素,放弃了这一项功能
B总体性测试
(时间:
12,1——12,2)此阶段测试是对整个程序的功能加以综合,看是否全部实现了预期目标。
经过多次总体性测试,证明程序已经基本上没有什么错误,在运行环境中可以实现此游戏的全部功能。
三、分析摘要
1、能力分析
本程序经过多次对各项功能的单元测试和最后统一的集成测试,发现并改进了程序中存在的错误,在此游戏程序中实现了以下功能:
正确显示游戏界面,现实用户信息,显示提示信息,正常发弹,判断输赢,真正实现了本游戏设计的目的,使两玩家能够在电脑上进行此潜艇战的游戏。
2、缺陷和限制
虽然经多次测试和改进实现了本程序的预期功能,但在测试过程中仍然发现了一些设计上的缺陷,给程序的总体性能带来了影响,限制了程序中一些功能的实现。
比如说可以通过改进程序使得显示画面更加美观,使用户更易于接受;还可以在屏幕中加入快捷键,这样可以更加方便用户的操作和使用……这些缺陷和限制是多方面原因造成的,主要是程序设计者们能力有限,经验不足,考虑不够周到,今后可以在这些方面改进。
3、建议
(1)对于屏幕显示中出现的错误虽不是致命的,但会给人一种美中不足的感觉,而且屏幕显示是用户首先看到的,所以需要首先改进这一方面,可以通过组员互相交流,查阅参考书,请教有经验的程序员等方法来改进,此改进预计工量不大,可以有主程序员负责,其他组员辅助来完成。
(2)赢棋处理中的声音问题也不是太大问题,可以指定某一个组员通过查阅参考书,不断试验来改进。
(3)画面和快捷键等问题只是游戏中的一些辅助功能,是为了让游戏更加完美,不用着急在短期内完成,可以在今后的学习和开发中通过全体组员的共同努力找出解决办法。
4、评价
该程序项目虽存在一定缺陷和限制,但已基本通过测试,实现了游戏的各项功能,可以交付使用。
5、测试资源消耗
测试工作是在全体成员的共同努力下完成的,总共耗时大概一个月,机时消耗大概20个小时。
四、程序维护手册
1引言
1.1编写目的
给使用本游戏程序的客户修改,增添功能,维护提供技术上的依据;读者对象:
已使用该程序的用户
1.2项目背景
1.2.1项目提供者李波
1.2.2开发人员李波
1.3.1.2.3用户潜艇战游戏爱好者及各类人群
2系统说明
1.1系统功能
1.1.1可实现双人与电脑对站
2.1.2两人可在键盘上直接操作
2.1.3操作键在游戏操作界面上应该又显示
2.2程序说明
MICROSOFTFOUNDATIONCLASSLIBRARY:
ShipDemo
=============================
AppWizardhascreatedthisShipDemoapplicationforyou.ThisapplicationnotonlydemonstratesthebasicsofusingtheMicrosoftFoundationclassesbutisalsoastartingpointforwritingyourapplication.
ThisfilecontainsasummaryofwhatyouwillfindineachofthefilesthatmakeupyourShipDemoapplication.
ShipDemo.dsp
Thisfile(theprojectfile)containsinformationattheprojectlevelandisusedtobuildasingleprojectorsubproject.Otheruserscansharetheproject(.dsp)file,buttheyshouldexportthemakefileslocally.
ShipDemo.h
Thisisthemainheaderfilefortheapplication.Itincludesotherprojectspecificheaders(includingResource.h)anddeclarestheCShipDemoAppapplicationclass.
ShipDemo.cpp
ThisisthemainapplicationsourcefilethatcontainstheapplicationclassCShipDemoApp.
ShipDemo.rc
ThisisalistingofalloftheMicrosoftWindowsresourcesthattheprogramuses.Itincludestheicons,bitmaps,andcursorsthatarestoredintheRESsubdirectory.ThisfilecanbedirectlyeditedinMicrosoftVisualC
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- VC 开放 实验 报告