抽奖系统需求分析知识交流Word文件下载.docx
《抽奖系统需求分析知识交流Word文件下载.docx》由会员分享,可在线阅读,更多相关《抽奖系统需求分析知识交流Word文件下载.docx(12页珍藏版)》请在冰豆网上搜索。
1.3抽奖规则
活动前,制定抽奖规则,准备奖票,准备奖品,发放奖票给所有的参与者,一般一人一票。
活动进行时由主持人自己或者邀请一位代表抽出一个中奖号码。
公证人进行公证,确认抽奖有效。
记录员纪录中奖信息。
如果中奖人员足够,抽奖完成,否则,继续抽出下一组中奖号码。
抽奖规则具体内容如下:
共设几个中奖等级,每个等级中奖人数,奖品。
以今年的安排为例,一般设为五个等级:
特等奖,一等奖,二等奖,三等奖,鼓励奖。
每个等级获奖人数:
特等奖2名、一等奖20名、二等奖50名、三等奖100名,剩下的是鼓励奖。
1.4参考资料
一些书面现有的资料:
软件工程与UML课本·
上课课件·
网上资料
实际的实践:
通过市场调查和一些有关人员的谈论
2任务概述
2.1目标
通过抽奖程序的介绍了解抽奖这个游戏,以更好的进行抽奖。
而且要能通过测试来让这个需求规划更好的体现,完成它能够做到的关于这个游戏的一切。
2.2用户的特点
现在市面上出现的一些奖票:
每个用户都可以参与抽奖,机会均等,并且这些用户能重复的来抽奖,没有限制一直到这个游戏的结束。
特定场所一次性的奖票:
如果这个游戏是一些学校或公司在庆祝一些活动的有奖趣味的抽奖,那就不能重复的抽取,要一次性的,在编程的时候就要在里面设置不能重复的抽取。
2.3分析属性
在设计的时候要用到一些类和属性:
Ticket类只有一个属性,即票号(Number)。
Records类是Ticket类的继承类,增加一个属性,即中奖等级(Lever);
还有中奖记录的方法(AddRecord),打印中奖记录的方法(Printing),中奖情况的方法(Searching),删除(Checking)。
3总体分析
3.1系统功能划分
3.1.1抽奖程序的UML图
下面两幅图是基本用例图和细化图:
描述了大体的基本的流程.
抽奖程序细化的用例图
抽奖程序细化的类图
抽奖程序的三个活动图
三个活动的泳道图
抽奖程序的包图
3.1.2抽奖程序的流程图
抽奖程序的系统的顶层DFD(概图)
抽奖程序系统0层DFD(概图)
3.2系统的数据构件。
需求分析阶段已得到系统中有一个存放中奖信息的数据文件,取名为LuckyRecord.txt,之所以选择文本文件来存放中奖信息,是因为这个程序本身很简单,没有必要使用数据库。
LuckyRecord.txt=Records.Number+Records.Lever
Records.Number:
1~10000的整数
Records.Lever:
1~15的整数
3.3系统的软件构件
Choose():
利用随即函数,产生一个介于最大奖票号码和最小奖票号码范围内的一个随机数据,作为预备中奖号码,查询中奖情况,如果该号码重复中奖,显示重复号码处理对话框由主持人现场决定该号码有效或无效。
如选择有效,则增加一条记录;
如选择无效,则返回等待中奖号码产生界面。
AddRecord():
打开LuckyRecord.txt文件,在文件最末尾增加一条中奖纪录(中奖号码,中奖等级),关闭LuckyRecord.txt.
Printing():
打开LuckyRecord.txt文件,在屏幕上逐条显示中奖纪录,等待用户单击“打印中奖信息”按钮后逐条打印中奖信息,关闭LuckyRecord.txt。
Searching():
打开LuckyRecord.txt文件,逐条读出LuckyRecord.txt文件的中奖纪录,比较中奖纪录中的奖票号与查询奖票号,如果奖票号在LuckyRecord.txt中,则显示“中奖号码,中奖等级”,否则显示“没有中奖”,关闭LuckyRecord.txt。
这个程序非常简单,用自然语言也可以清楚地描述方法的实现步骤.如果是一个大型的系统,应该用活动图或活动图+状态图来描绘方法的实现步骤.
3.4界面设计
系统显然要包括一组用户界面,在需求分析中初步确定的界面包是可行的,现对它进行细化和微小的调整,得到下面所示的界面设计图.
界面间转换流程图如下:
”
(A)
(B)
抽奖程序界面流
4.设计测试用例
设计测试用例是按照需求所确定的用例模型,设计一组输入数据,一组预期的输出数据,供测试阶段程序的功能是否满足用户需求.
测试用例1:
MaxNumber=5,MinNumber=1,抽出10个号码,分别选定允许重复、不允许重复、测试打印中奖信息、测试查询中奖情况.
测试用例2:
MaxNumber=1000,MinNumber=1,五个中奖等级,特等奖1名,一等奖3名,二等奖8名,三等奖8名,没有其他的奖,不允许重复.抽出20个中奖人数,测试抽奖情况与实际是否相符,测试打印功能,测试查询功能.
系统的分析与设计工作,不再获得更进一步的信息,这时可暂时停止这个工作.从这个简单的分析与设计实例中可以看出,在统一软件开发过程中,需求捕获、分析与设计三个核心工作流相互的联系是无缝的.从处始阶段到细化阶段,系统分析人员和设计人员对待开发系统的了解越来越深入,需求捕获、分析与设计等工作流也经过了多次迭代.