1)需求分析
电子投票系统为民主选举的平台,一次电子投票可能涉及一个或多个职位的竞选,每个职位的竞选涉及多个候选人。在一个具体职位的竞选时,投票人能看到该职位的名称以及相应的候选人(每个职位的候选人不超过5个)。
投票机由一名监督员启动,为了将电子信息加载到投票机上,监督员必须输入验证码。电子信息是以文件的形式存储在服务器上的,该文件包含这次电子投票的标题以及每个职位的竞选信息。当信息加载到投票机上时,监督员审核这些信息,如果信息有误,监督员将终止该程序并重新加载数据;如果信息正确,监督员将再次输入验证码进行确认,此时投票可以开始。投票结束后,监督员审查结果并关闭机器。
投票者只能为该职位选中一个候选人,每个职位的竞选作为一屏独立的信息提交给投票者。每个投票者在投票前必须输入自己的身份证号码,以避免多次投票给同一候选人。投票者可以查看每个职位的竞选信息并投票,也可以翻屏方式返回先前的屏幕修改投票决定。投票结束时,投票者将看到自己给每个职位的投票结果(职位的名称和每个候选人的得票数),结果以独立的一屏信息显示。
2)确定系统边界
只进行身份验证与竞选信息的载入及统计,不进行票务的修改处理等。
3)确定行为者与用例
与系统核心功能相关的行为者有两种:监督员与投票者。监督员负责审核职位竞选信息、重载数据与启动投票,投票者参与投票并可以查看职位竞选信息与投票结果。
4)建立用例图并描述用例(包含用例的层次与关系)
根据对整个电子投票系统的参与者及用例的分析,构造顶层用例图,如图4-21所示。
图4-21 电子投票系统的顶层用例图
下面细化电子投票系统用例图的用例。
(1)监督员
①确认监督员身份。
②加载电子信息。
③审核电子信息。
④终止程序并重载数据。
⑤审核投票结果。
(2)投票者
①投票。
②确认投票者身份。
③查看竞选信息。
④查看投票结果。
⑤修改投票。
构造细化用例图,如图4-22所示。
图4-22 电子投票系统的细化用例图
在此选择几个重要用例进行描述,作为样式参考。
(1)用例1
用例名称:加载电子信息。
用例简述:监督员登录电子投票系统后,加载电子信息并审核电子信息以启动投票。(www.xing528.com)
行为者:监督员。
前置条件:监督员以管理员身份登录系统,审核信息完毕后再次成功验证身份。
后置条件:成功启动投票。
基本事件流:
①输入验证码确认监督员身份。
②审核竞选信息。
③再次输入验证码。
④启动投票。
备选事件流:
①输入验证码错误,提示重新输入。
②审核信息发现有误,监督员向系统提出“重载数据”请求,重载数据。
③输入验证码错误,提示重新输入。
异常事件流:检测到无法识别的标识符或系统故障,操作失败,允许监督员重新输入或登录。
(2)用例2
用例名称:投票。
用例简述:为投票者提供投票功能。
行为者:投票者。
前置条件:投票者成功登录系统。
后置条件:投票者将看到自己给每个职位的投票结果以一屏信息显示。
基本事件流:
①投票者登录系统,发出“投票”请求,用例开始。
②投票者输入身份证号进行身份验证。
③投票者进行投票。
④投票结束。
备选事件流:
①身份验证时,输入的身份证号不符合,提示重新输入。
②身份验证时,身份证号已投过票,提示已投过票。
③投票结束后,投票者向投票系统发出“查看投票结果”请求,系统显示投票结果。
④投票结束后,投票者向投票系统发出“查看竞选信息”请求,系统显示职业竞选信息。
⑤投票结束后,投票者向投票系统发出“修改投票”请求,投票者以翻屏方式返回先前屏幕,修改投票决定。
异常事件流:检测出无法识别的标识符或系统故障,操作失败,允许投票者重新输入或登录。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。