扫雷游戏WBS1.功能:游戏功能描述(1)开始游戏:玩家点击.java文件,就可以打开游戏.(2)进行扫雷游戏:玩家只要把鼠标移到M*N网格的任意格子,就可以对格子进行操作.操作后如果有雷就结束游戏.如果没雷,则将显示出周围有的雷数.(3)重玩游戏:如果点击该游戏功能区的图像就会重新开始一场新游戏.(4)计时功能:在该游戏的功能区有个计时器,从玩家点击第一个格子开始计时,直至游戏结束.(5)选择网格中雷的个数:网格中的雷的个数可以自己选择,但不能超过网格M*N的个数.(6)退出游戏:在游戏的任何时候,玩家都可以点击右上角的差号就可以退出游戏.2.性能:(1).布局简洁美观(2).游戏难度分为三个等级(3).游戏可暂停,可重玩,可重新布雷(4).该扫雷小游戏源于windows平台下最初以训练鼠标操作为目的扫雷游戏,该游戏的的用户主要是一些网上及喜欢玩小游戏的用户,用于他们休闲娱乐.设计出一套稳定,实用的扫雷游戏.3.设计.开始游戏等待网格中的格子被按下第一次被按下布置地雷启动计时器按下格子不是雷按下格子是否为雷显示分数结束游戏3.2:界面设计模型3.3:工作安排如下表3.4:系统结构1.游戏功能描述(1)开始游戏:玩家点击.java文件,就可以打开游戏.(2)进行扫雷游戏:玩家只要把鼠标移到M*N网格的任意格子,就可以对格子进行操作.操作后如果有雷就结束游戏.如果没雷,则将显示出周围有的雷数.(3)重玩游戏:如果点击该游戏功能区的图像就会重新开始一场新游戏.(4)计时功能:在该游戏的功能区有个计时器,从玩家点击第一个格子开始计时,直至游戏结束.扫雷游戏主界面重玩游戏开始游戏帮助选择级别退出计时器关于扫雷(5)选择网格中雷的个数:网格中的雷的个数可以自己选择,但不能超过网格M*N的个数.(6)退出游戏:在游戏的任何时候,玩家都可以点击右上角的差号就可以退出游戏.2.算法分析(1)随机布雷在网格中随机的布雷,布的雷的个数可以通过选择来决定而且还有本身雷的个数限制不超过网格个数.其中网格中的格子分为两类,有雷或者无雷.游戏的目标是找出网格中所有雷区,而不踩到雷,踩到雷则gameover.JAVA提供了实现随机算法的类Math,通过Math类中的random方法,可以实现随机布雷的功能.(2)计算网格周围雷数点击网格中的格子如果不是雷的话,被点击的格子上就会显示周围有的雷数.首先把游戏区看成一个二维数组,通过一个类Bomb的isBomb属性来判断某格子是否有雷,诺无雷则在该格子上显示周围雷的个数.4:相关背景以及人员工程产品名称:扫雷游戏工程的组织者:西安科技大学计算机学院软件工程系产品用户:广大娱乐休闲者产品的生产者:西安科技大学计算机学院软件工程1203班宋晓波、赵琦;产品设计者:西安科技大学计算机学院软件工程1203班宋小波(负责算法实现,界面布局等)、赵琦,(负责代码实现,调试等);5.扫雷游戏开发成本估算方法一:代码行估算发扫雷游戏是简单的小游戏开发,所用成本较小,开发风险低。下面从代码行的角度进行成本估计:扫雷游戏的代码行数为20000行左右,即LOC=20000,本组来发人员的单位效率为200行每小时。经过推算得生产效率=20000/200=20LOC/hour方法二:功能点估算法:经过分析得到软件的功能计数项如下表1-1:计算UFC的结果如下表1-2:假设该软件项目的所有技术复杂度因子的值都为1,即技术复杂影响程度都为平均程度,则TCF=0.65+0.01*(14*1)=0.79功能点FP=UFC*TCF,即FP=55*0.79=43方法三:类比估算法类比估算法:根据以往完成类似项目所消耗的总成本,来推断本次项目所需要的总成本.6.软件质量计划1.导言本项目是一个扫雷游戏,为保证项目质量,必须做出一个质量计划.2.项目组织因为该项目是个小游戏,所需的人员有两个.没有复杂的质量保证组织.二人同时对项目过程中各环节进行质量把关,控制和保证.3.质量目标结合本项目特点,制定项目的总体质量目标:1)基于需求的测试覆盖率为100%.2)每个阶段发现的问题都已经解决或得到适当处理.3)产品完成时不存在严重及以上的缺陷.4.质量策略为保证产品的高质量,实施过程中采取的质量保证措施包括:1)将质量贯彻到日常的项目进展过程中.5.质量保证活动质量保证的主要活动包括过程审计和产品审计.过程审计和产品审计的母的是为了确保在项目进展过程的各个阶段和各个方面采取各项措施来保证和提高提交给用户的产品质量..6.质量控制活动质量控制活动包括代码走查,单元测试,集成测试,环境测试等.7.记录的收集,维护和保存将项目执行过程中形成的各类文档,各种记录,保留.对于项目中为题的处理也需要形成记录保存.人力资源计划1)扫雷游戏项目的组织结构项目的组织结构2)项目的责任矩阵7.沟通计划为了保证项目开发过程的顺利进行和信息的有效沟通,该项目的沟通计划如下.1)项目进行中,项目开发人员需要及时了解项目管理中的各种技术信息,以及相关的管理信息.2)项目信息实时查询:通过给定的权限实时查询配置管理的项目信息,由配置管理员进行项目资料的实施更新和发布.3)项目成员之间的及时沟通,便于有问题及时交流沟通.及时提交问题报告,以便共同解决.二.项目管理工具1、类别:设计型2、实验目的:掌握使用MicrosoftProject工具进行项目管理。项目管理软件开发质量保证配置管理设计实施质量控制3、实验内容:在熟悉MicrosoftProject的基础上,针对作业中的具体项目,创建项目任务、里程碑建立、任务分解、安排任务工期、任务的链接、资源分配等项目管理;在MSProject中进行挣值分析。4、要求:完成实验后,整理实验结果,分析总结,写出报告。5、仪器设备:计算机一台。6、说明:根据具体情况可以选择其它项目管理软件工具。1.1建立项目1管理文件1、新建项目选择[程序]-〉MicrosoftOffice〉MicrosoftOfficeProject进入Project2003。选择[文件]-〉[新建]菜单命令,打开Project的“新建项目”向导,如图1,单击“空白项目”将出现“任务”导向,如图2。2、定义项目项目创建完成之后,需要定义项目。单击图2中的“定义项目”,将显示“定义项目”导向,利用向导可以很容易完成定义项目的操作。分三步:1)输入项目的开始时间,如图3,将日期调整为项目的预计开始日期;2)输入项目工作组选项,如图4,询问是否使用ProjectServer和ProjectWebAccess,本项目比较小,不需要ProjectServer的协调,选择“否”;3)保存文件,将文件保存为SchoolWebside.mpp。3、设置环境信息项目的环境信息包括工期、项目的日历等。选择[工具]-〉[选项],弹出“选项”对话框,选择“选项”对话框中的“日历”选项卡可以输入、查看或者修改日期、时间等设置,如图6。选择“日程”选项卡可以输入、查看和修改排定任务日程的首选项。如图7。图3:定义项目-a项:图6:“日历”选项卡项:1.2创建项目任务创建一个新的项目文件后,接下来需要进行任务的创建,任务是构成项目的基本单元,所有的任务完成了,项目才可以完成。实验步骤如下:1、任务建立打开项目文件SchoolWebside.mpp;选择[视图]-〉[甘特图]菜单命令切换到“甘特图”视图,默认的视图就是甘特图;在“任务名称”域中输入项目的任务名称,例如“需求分析”、“校园网设计”、“编码”、“测试”、“提交”等;输入所有的任务直到最后,如图8。2、里程碑建立可以将编码完成后的任务设置为里程碑任务,双击“编码”任务,弹出如图9的对话框,选择“高级”选项卡,在左下角选中“标记为里程碑”复选框。图8:创建任务3、增加任务,建立大纲结构前面建立的任务基本上是摘要任务,为此需要增加任务,为了很好的组织和管理任务,最好是采用大纲结构,即通过创建摘要任务和子任务来组织项目结构,摘要任务是由子任务组成并对子任务进行汇总的任务。1)在“任务名称”域中选择“编码”任务,选择[插入]-〉[新任务],建立新任务“界面设计”,同样插入其他任务“结构设计”、“数据设计”等2)重复上步,直到加入所有的任务3)在“任务名称”域中选择“界面设计”,“结构设计”、“数据设计”,单击[项目]-〉[大纲]-〉[降级]命令,进行降级,如图10。4)同理,完成其他任务的升级或者降级。图9:设置里程碑:图10:建立大纲结构设置好项目任务的分级结构以后,可以很容易看清楚任务之间的顺序。4、任务的移动、复制和显示当对任务和资源进行复制或者移动,将重新建立任务链接关系,通常还包括与任务相关的子任务、备注信息和链接或者嵌入对象。1.3任务分解将创建好的任务,可以进一步分解,完成WBS。在MSProject中可以为每项任务建立WBS。实验步骤如下:1、在SchoolWebside.mpp项目中,切换到“甘特图”视图2、单击“任务名称”域的列标题3、选择[插入]-〉[列]命令,启动“列定义对话框”,如图114、在“域名称”列表框中选择WBS选项5、在“对齐数据”列表框中选择“居中”选项6、单击“最佳匹配”按钮,生成图12所示的具有WBS的甘特图1.4安排任务工期任务创建和分解后,需要为所有的任务安排工期,以便确定项目的完成时间,首先确定任务的类型,包括固定单位任务、固定工期任务和固定工时任务。实验步骤如下:1、安排任务的进度可以采用三种方法为任务制定工期:1)在甘特图表中的“工期”域直接输入工期。2)用鼠标左键拖动甘特图的任务条形图,通过改变其长度来改变其工期3)使用“任务信息”对话框设置工期。图11:列定义对话框图12:创建WBS双击甘特图中“任务名称”域中“需求讨论”子任务,出现图13对话框,设置子任务的工期,摘要任务是其子任务的时间总和。单击“工期”微调框中的箭头可以修改工期单击[确定]按钮,甘特图的长度反映了任务工期的长度。如图142、周期性任务在项目的任务中插入周期性任务,例如每周五的周例会,如图151.5任务的链接任务的链接是将任务与其他任务的时间安排联系在一起,通过任务的链接而得到任务的开始或者完成时间,特点是任务之间始终被这种特定的关系约束着。实验步骤如下:1、建立链接在“任务名称”域选择“需求讨论”、“编写需求规格”、“需求评审”三个任务”单击“常见”工具栏中的[链接任务]按钮,即可以完成设置三个任务的“结束-开始”的关系。如图16。图14:调整任务的工期,项目甘特图图15:设置周期任务2、删除链接选择要取消链接的任务“需求讨论”、“编写需求规格”,单击“常用”工具栏取消任务链接按钮或者[编辑]-〉[取消任务链接]命令1.6资源分配为了完成任务必须为项目中的任务分配资源,在MicrosoftProject中可以建立资源库,然后将资源库中的资源与项目的任务联系起来,也就是说分配具体的人员、设备等来完成工作。实验步骤如下:1、建立资源库选择[视图]-〉[资源工作表]命令,切换到“资源工作表”视图在视图表中输入项目所有的资源信息名称,i.输入资源“张三”,设置其标准费率为100元/小时,加班费120元/小时;ii.输入资源“李四”,设置其标准费率为90元/小时,加班费120元/小时;iii.输入资源“王五”,设置其标准费率为110元/小时,加班费120元/小时;双击资源名称“张三”,设置其资源日历,在资源信息对话框中的“工作时间”选项卡设置资源日历,将“2008-05-10”周六改为工作时间。如图17图16:建立任务的链接2、为任务分配资源合理地向任务分配资源才能有效地完成项目任务:1)切换到“甘特图”视图2)选择第一个任务“需求讨论”,选择[工具]-〉[分配资源]菜单命令3)在“分配资源”对话框,选择分配该任务的资源:张三、李四4)单击[分配]按钮,完成该任务的分配工作5)依次选中其他的任务,重复2-)到4)直到所有的任务都分配了资源,见图181.7项目管理建立一个项目后需要对项目进行管理,查看项