抽奖程序需求分析抽奖程序功能描述抽奖程序在联欢会由抽奖2

上传人:cn****1 文档编号:428433000 上传时间:2022-10-23 格式:DOC 页数:19 大小:387.50KB
返回 下载 相关 举报
抽奖程序需求分析抽奖程序功能描述抽奖程序在联欢会由抽奖2_第1页
第1页 / 共19页
抽奖程序需求分析抽奖程序功能描述抽奖程序在联欢会由抽奖2_第2页
第2页 / 共19页
抽奖程序需求分析抽奖程序功能描述抽奖程序在联欢会由抽奖2_第3页
第3页 / 共19页
抽奖程序需求分析抽奖程序功能描述抽奖程序在联欢会由抽奖2_第4页
第4页 / 共19页
抽奖程序需求分析抽奖程序功能描述抽奖程序在联欢会由抽奖2_第5页
第5页 / 共19页
点击查看更多>>
资源描述

《抽奖程序需求分析抽奖程序功能描述抽奖程序在联欢会由抽奖2》由会员分享,可在线阅读,更多相关《抽奖程序需求分析抽奖程序功能描述抽奖程序在联欢会由抽奖2(19页珍藏版)》请在金锄头文库上搜索。

1、需求分析31抽奖程序功能描述抽奖程序在联欢会由抽奖活动主持人输入奖票号码范围,并指定获奖等级后,在给定号码范围内产生一个随机号码,作为该获奖等级一个中奖号码。如果产生中奖号码与已产生中奖号码重复,则给出明确提示,放弃这个号码。可随时显示或查询抽奖结果。程序功能:抽奖工作人员可以输入不同抽奖号范围,选择不同中奖等级。本抽奖程序为随机抽取中奖号,如果产生了重复中奖号将丢弃。产生中奖号和对应中奖等级记录在一个数据库文件中。可随时显示中奖记录。输入一个有效奖票号码,能查询该奖票是否中奖。32抽奖程序用例模型抽奖程序用例模型33抽奖程序静态模型和动态模型331静态模型抽奖程序初步类图如图所示,各类功能说

2、明如下。GUI(图形用户界面):识别用户命令,接收用户输入,显示程序结果。Recorder(记录员):记录中奖信息。Chooser(抽奖者):抽出中奖号码。Printing(显示对象):显示中奖信息。Searching(查询对象):为奖票持有者查询中奖情况。Checking(公证人):验证奖票有效性。还有Ticket(奖票)、Records(中奖信息)等。系统构件:程序只有一个模块,无须构件图。抽奖程序中有一个模块,安装在一台个人电脑上,没有必要专画一张部署图。抽奖程序初步类图332动态模型抽奖程序初步活动图及其泳道图分别如图如图所示a.抽出中奖号码活动 b.显示中奖信息活动 c.查询中奖情况

3、活动抽奖程序初步活动图抽出中奖号码活动泳道图显示中奖信息活动泳道图查询中奖情况活动泳道图34运行环境和用户设备需求:电脑(PIII CPU ,256MB内存)。操作系统:Windows XP。无须其他支撑软件。用户界面:Windows 风格界面。使用者可以是抽奖操作人员、兑奖人员或奖票持有者。35条件与限制程序中奖号码逐个产生,产生顺序由操作者人工控制,这是用户需求。抽奖时间、地点与兑奖时间、地点不同,所以要将抽奖结果保存在硬盘中。本程序中限于内部使用,所以对数据库操作比较简单。35功能需求351能够输入抽奖号码352能随机产生中奖号码353能显示中奖信息354能查询中奖者信息36性能需求36

4、1时间要求用户单击开始抽奖后,程序1秒内调出“正在产生中奖号码界面”,显示翻滚随机奖票号码。用户单击“选定中奖号码”到获取中奖号码响应时间为1秒。显示抽奖记录,查询中奖记录,弹出时间在2秒之内。362数据精度要求本程序全部为整数。中奖等级有4 等级。最小奖票号为1,最大奖票号为37属性需求371正确性:本程序要求不会产生最小和最大号码之外数字。372可靠性:一般条件下,不会死机。373效率:各个操作在120秒之内完成。374完整性:如果出现意外情况(如掉电)要求数据能够保存下来。375易使用性:界面符合Windows风格,能对照画面提示直接操作。376可维护性:如果有错误时,能快速修复。377

5、可测试性:设计时尽可能减少测试各项功能工作量。378复用性:尽量选用已有类来节省编写时间,设计尽量模块化,方便以后复用。379安全保密性;因为本程序主要是在娱乐活动中用,没有特别安全性要求。3710可理理解性:要求程序中按钮、提示信息直观,一看就懂。3711可移植性:要求能在PC机,手提电脑上通用。3712互联性:没有互联要求。38数据需求381静态数据最大奖票号、最小奖票号、奖票。382动态数据中奖记录、中奖奖票号、中奖等级。383数据文件描述中奖记录;用数据库来保存中奖记录中奖奖票号和中奖记录。384数据字典奖票=1数字5中奖等级=1数字2最大奖票号=1数字5最小奖票号=1数字5中奖奖票号

6、=1数字5中奖记录=1中奖奖票号 中奖等级n四系统分析与设计41根据前面需求分析,开发初步类图先从谈话中筛选名词,去掉重复或者应该作为属性名词,得到如下可能成为系统中类名词:图形用户界面(GUI),记录员(Recorder),抽奖者(Chooser),奖票(Ticket),中奖信息(Records),公正人(Checking),查询员(Searching),显示信息(Printing),抽奖规则(Rule)。抽奖程序初步类图如图所示42分析类层次,填充类信息421分析出类属性,方法以及类继承关系,找出哪些类要自己开发,哪些类可以继承或购买,并决定从何处继承。422GUI类可以由JAVA产生。T

7、icket类只有一个属性,即票号(Number)。Records类是 Ticket类继承类,增加一个属性,即中奖等级(Lever);按照数据与操作封装在一起原则,给 Records类增加一个写入中奖记录方法(AddRecord)和一个打印中奖记录方法(Printing),以及一个查询中奖情况方法(Searching)。抽奖程序细化类图如下43分析系统用例,得到系统构件431抽奖程序用例模型增加到4个用例,抽出中奖号码用例包含查询中奖信息用例,显示中奖记录用例包含显示中奖记录。下面对各个用例进行深入分析,得到各个用例顺序图。 抽出一个中奖号码用例顺序图查询中奖情况用例顺序列图打印中奖记录用例顺序

8、列图432系统数据构件。需求分析阶段已得到系统中有一个存放中奖信息数据库文件。 433系统软件构件。因为这个程序很简单,不用经过复杂架构设计。系统中所有构件都驻留在同一个目录下,可直接给出构件及主要算法。前面顺序图已经清楚地表明系统中各个对象间交互,下面具体设计每个类方法。利用随机函数,产生一个介于最大奖票号码和最小奖票号码范围内一个随机数据,作为预备中奖号码,查询中奖情况,如果该号码重复中奖,显示重复号码处理对话框有主持人现场决定该号码有效或无效。如选择有效,则增加一条记录;如选择无效,则返回等待中奖号码产生界面。434界面设计。系统显然要包括一组用户界面,在需求分析中初步确定界面包是可行,

9、现对它进行细化和微小调整,得到如图所示界面设计图。 抽奖程序界面流(a)抽奖程序界面流(b)44设计测试用例设计测试用例是按照需求所确定用例模型,设计一组输入数据,一组预期输出数据,供测试阶段测试程序功能是否满足拥护需求。测试用例1:MaxNumber=5,Minnumber=1,抽出10个号码,不允许重复、测试显示中奖信息、测试查询中奖情况。测试用例2:MaxNumber=1000,Minnumber=1,五个中奖等级,特等奖、一等奖、二等奖、,三等奖、没有其他奖,不许重复。抽出20个中奖人数,测试抽奖情况与实际是否相符,测试显示功能,测试查询功能。系统分析与设计工作,不再获得更进一步信息,

10、这时可暂时停止这个工作。从这个简单分析与设计实例中可以看出,在统一软件开发过程中,需求捕获、分析与设计三个核心工作流相互间联系是无缝。从初级阶段到细化阶段,系统分析人员和设计人员对待开发系统了解越来越深入,需求捕获、分析与设计等工作流也经过了多次迭代。 五系统实现51用户界面实现抽奖程序是实现对用户应用一个简单程序,在此程序中将有5个主要Java文件分别创建程序界面。52主类界面:Chou521.此界面中可以选择抽奖等级及要输入抽奖范围,若最小奖票号小于最大奖票号则会提示你重新输入,若有非法数字输入也会弹出警告对话框。522主方法中包含产生随机数方法( Math.random() )并且能产生

11、不断滚动数字。此界面还有查询、显示全部信息功能。53选定号码类:Xuan此类主要是选定一个号码,并且选中号码与数据库已存在数据进行比较。若有已经抽过奖号码,则弹出一个对话框,放弃这个数字。54中奖界面类:Zhong若选中号码在数据库中不存在,则会在此界面中显出中奖号码与中奖等级。此界面还有选择下一次抽等级功能。55查询界面类:ChaXong此类主要是为用户查询中奖信息提供方便,通过连接数据库完成此功能。56显示界面类:Xian此类负责显示数据库中全部信息,并且有返回主界面功能。57主类部分代码:public void actionPerformed(ActionEvent e) t1.setT

12、ext(ch.getSelectedItem(); deng=t1.getText(); if(e.getSource().equals(name5) try flags1=true; min=Integer.parseInt(t2.getText(); max=Integer.parseInt(t3.getText(); catch(NumberFormatException e1) /输入非数字时异常处理 String title=警告; String msg=输入非法字符或没有字符; new Cuo(ob1,title,msg); if(flags1=true) if(e.getSour

13、ce().equals(name5) if(max=min) /最大奖票号小于最小奖票号时处理 String title=警告; String msg=范围有误; new Fan(ob1,title,msg); elsethis.dispose(); new Xuan(幸运等你拿); if(e.getSource().equals(name6) this.dispose(); new Xian(幸运等你拿); deng=t1.getText(); tryXuan.t1.setText(deng); catch(Exception e2) if(e.getSource().equals(name7) this.dispose(); new ChaXong(查询结果); public static void main(String

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号