已阅读5页,还剩17页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
计算机学院基于Java的软件开发投票系统项目总报告小 组 序 号:09组 员 姓 名:年 级 班 级:提交日期:2014年 6 月 12 日目录1. 导论11.1 系统目标11.2 参考文献11.3 概述12. 项目方案12.1硬件环境12.2软件环境13. 需求分析23.1 概述23.2 功能需求23.3 非功能需求23.4 系统模型33.4.1 用例模型33.4.2 对象模型53.4.3 动态模型84. 系统设计104.1 概述104.2 全局软件控制114.3 子系统分解144.4 数据库的设计155. 系统实现165.1投票模块主要代码165.2管理员模块主要代码186. 项目总结207. 项目组成员分工和组内评分20I1. 导论1.1 系统目标 投票系统可以为用户提供相应主题的投票、投票结果数据分析和结论,使用方便快捷、界面简洁明了,系统稳定、安全、维护周期长且维护简单。1.2 参考文献1 耿祥义,张跃平Java面向对象程序设计北京:清华大学出版社,2010.12 刘瑞新,张兵义SQL Server数据库技术及应用教程电子工业出版社2012.83 郑人杰,马素霞软件工程概论机械工业出版社2009.111.3 概述本次基于Java的软件开发项目为投票管理系统,这是我们小组第一次经手做一个较为完整、有计划、条理清晰地项目。本投票系统是基于Java语言、SQL Server数据库开发的,使用了面向对象的设计方法、可以在大多数操作系统和较低硬件条件下就能使用的、界面友好和方便使用的软件系统。系统功能主要包括两个方面。第一:管理员部分。管理员是系统的维护者,可以对用户和投票主题等进行操作,包括:添加用户、查看用户信息、修改用户信息、修改投票主题、查看投票主题等等。第二:用户部分。用户需要先注册,然后可以进行投票活动,其他功能还有:修改密码、返回投票结果、查看投票结果、查看投票主题等等。2. 项目方案2.1硬件环境l CPU:酷睿i3及以上。l 内存:32MB或更高。l 硬盘空间:1GB。2.2软件环境l 操作系统:Windows XPWindows 7Windows 8。l 数据库:SQL Server。l 开发语言:Java。3. 需求分析3.1 概述 本着软件工程需求获取“深入浅出”和“以流程为主线”的原则,我们站在用户(包括管理员和普通用户)的角度进行了需求分析,并且编写了软件需求规格说明书。3.2 功能需求l 标识系统的功能性需求l 普通用户注册并设置密码,系统自动分配用户编号。l 用户进行投票,其中包括单项投票和多项投票。l 用户查看投票结果。l 用户查看投票主题。l 用户修改密码。l 用户修改个人信息。l 管理员添加新用户。l 管理员修改自己的密码。l 管理员修改自己的信息。l 管理员添加投票主题。l 管理员修改投票主题。l 管理员取消某个投票。l 管理员查看投票结果。l 管理员修改用户信息。3.3 非功能需求l 标识系统的非功能性需求l 异常出现概率小。l 系统稳定几乎不会发生崩溃现象。l 维护周期长且维护方便。l 界面简洁,易于操作。l 用户操作技能没有特殊要求,易于上手。l 用户使用需要先行注册。3.4 系统模型3.4.1 用例模型参与者:1) 用户:系统的主要使用对象,主要进行投票活动,具有个别属性和其他操作;2) 管理员:系统的管理者,主要进行投票的管理和用户信息的管理,具有个别属性和其他操作。 表1用例描述编号用例名相关描述01用户登录用户要使用本系统需先登录02修改个人信息用户对个人信息进行修改03修改密码用户修改个人密码04查看投票主题用户查看发布的投票主题05查看投票结果用户查看投票的最终结果06投票普通用户进行投票07添加新用户管理员添加新用户08添加管理员管理员添加新管理员09增加投票主题管理员增加投票主题10修改投票主题管理员修改投票主题11删除投票主题管理员删除投票主题图1系统用例图3.4.2 对象模型表2 用户类类名称User分类实体类描述用户进行投票使用到的其他类投票信息VoteList,投票结果ShowVoteResult属性描述姓名,账号,密码方法描述单选、多选投票;修改登陆密码;修改个人信息;表3 管理员类类名称Administrator分类实体类描述管理投票信息和用户使用到的其他类投票信息VoteList,投票结果ShowVoteResult属性描述姓名,账号,密码方法描述添加、删除、修改、查看投票;修改登陆密码图2 普通用户类图图3 管理员类图3.4.3 动态模型图4管理员顺序图图5用户顺序图图6投票状态图4. 系统设计4.1 概述 整个投票系统大致可分为用户和管理员两个子系统,加上数据库存储相关信息,每个子系统又有多个小模块,如用户登录模块等等;各个模块相互辅助,共同构成完整的投票系统。 4.2 全局软件控制图7登录模块流程图图8用户模块流程图图9管理员模块流程图4.3 子系统分解图10普通用户模块关系图图11管理员模块关系图4.4 数据库的设计表4Table_User信息表字段名称数据类型字段大小是否主键字段说明numberint11否编号IDvarchar50否IDpasswordvarchar50否密码namevarchar50否姓名sexvarchar50否性别agevarchar50否年龄表5Table_Administration信息表字段名称数据类型字段大小是否主键字段说明numberint11否编号IDvarchar50否IDpasswordvarchar50否密码namevarchar50否姓名sexvarchar50否性别agevarchar50否年龄表6Table_Vote信息表字段名称数据类型字段大小是否主键字段说明Numberint11否编号Singleint11否是否单选voteThemevarchar50否投票主题option1varchar50否选项1option2varchar50否选项2option3varchar50否选项3option4varchar50否选项4option5varchar50否选项5optionNumber1int11否被选次数optionNumber2int11否被选次数optionNumber3int11否被选次数optionNumber4int11否被选次数optionNumber5int11否被选次数optionNumbersint11否总次数5. 系统实现5.1投票模块主要代码public UserVoteUI1() throws SQLException for(int i = 0; i number; i+)textArea.append(投票+votei.number+);textArea.append(投票主题:+votei.voteTheme);if(votei.single = 1)textArea.append(单选);elsetextArea.append(多选);if(!votei.voteOption1.equalsIgnoreCase()textArea.append(n);textArea.append(选项1:+votei.voteOption1+投票数:+votei.voteOptionNumber1+比列:+df.format(float)votei.voteOptionNumber1/(float)votei.voteOptionNumbers)*100)+%);if(!votei.voteOption2.equalsIgnoreCase()textArea.append(n);textArea.append(选项2:+votei.voteOption2+投票数:+votei.voteOptionNumber2+比列:+df.format(float)votei.voteOptionNumber2/(float)votei.voteOptionNumbers)*100)+%);if(!votei.voteOption3.equalsIgnoreCase()textArea.append(n);textArea.append(选项3:+votei.voteOption3+投票数:+votei.voteOptionNumber3+比列:+df.format(float)votei.voteOptionNumber3/(float)votei.voteOptionNumbers)*100)+%);if(!votei.voteOption4.equalsIgnoreCase()textArea.append(n);textArea.append(选项4:+votei.voteOption4+投票数:+votei.voteOptionNumber4+比列:+df.format(float)votei.voteOptionNumber4/(float)votei.voteOptionNumbers)*100)+%);if(!votei.voteOption5.equalsIgnoreCase()textArea.append(n);textArea.append(选项5:+votei.voteOption5+投票数:+votei.voteOptionNumber5+比列:+df.format(float)votei.voteOptionNumber5/(float)votei.voteOptionNumbers)*100)+%);textArea.append(n);textArea.append(总投票数 + votei.voteOptionNumbers);textArea.append(n);public void read() throws SQLExceptionfor(int i = 0; i number)number = Integer.parseInt(sql.getRs().getString(number); catch (NumberFormatException e2) / TODO 自动生成的 catch 块e2.printStackTrace(); catch (SQLException e2) / TODO 自动生成的 catch 块e2.printStackTrace();name = textField.getText();sex = textField_1.getText();age = textField_2.getText();if(name.equalsIgnoreCase() | sex.equalsIgnoreCase() | age.equalsIgnoreCase()JOptionPane.showMessageDialog(frame, 请将信息填满);elsenumber+;person.ID = 000 + number;person.password = person.ID; = name;person.sex= sex;person.age = age;s = insert into Table_administrator values(+number+,+person.ID+, +person.password+, ++, +person.sex+, +person.age+);try sql.update(s); catch (ClassNotFoundException e1) / TODO 自动生成的 catch 块e1.printStackTrace();JOptionPane.showMessageDialog(frame, 添加管理员++成功,ID和初始密码为:+person.ID);close(););6. 项目总结该投票系统主要实现了基本的用户投票、个人信息修改、查看投票结果和投票主题,以及管理员的个人信息和用户信息管理、关于投票主题的各种相关操作。由于第一次做这样综合性和实用性较强的系统,难免有些摸不着头脑,系统中有些错误和纰漏也是再说难免的。难能可贵的是,经过我们小组的日夜奋战、攻坚克难,我们最终还是比较圆满地完成了这个项目。回想当初,第一个令我们头疼的就是关于数据库SQL Server的安装了。我们下了好多个版本,装了又卸,卸了又装,真的有些惨啊,期间有想过要放弃了,做个控制台程序或者就像以前一样用文件保存数据什么的,但是反过来想想,每次都那么做也没啥意思,索性给自己一点挑战,就这样,我们连续装了好几天终于成功了。其次,就是逻辑算法的设计和界面与逻辑层的链接,然后就是数据库的知识了。由于我们尚未上过数据库这门课,所以上手有些吃力,刚开始根本不知道怎么去做,后来多亏老师给我们补充了一些数据库的基本知识,但是老师只是给一些提示和引导,这些是远远不够的,我们查阅了相当多的书籍和网页,因为但是经过我们的再三努力和同学的帮助,我们
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024房屋装修合同书
- 旧机器买卖合同样例
- 2024年物品保管协议书范本解析
- 代管仓库租赁协议
- 软件著作权许可合同样式
- 员工劳动合同范本经典版
- 工程施工劳务承包合同范本大全
- 工厂土地租赁协议书样本
- 二手车辆买卖合同样本
- 6.1 正视发展挑战(导学案) 2024-2025学年统编版道德与法治九年级上册
- 高中英语 必修一知识点(北师大版)课件
- 沟通技巧(直接可以授课用)
- 证据材料目录证据清单范本
- (新版)供电可靠性(初级)理论普考题库及答案汇总-下(判断题)
- 各类茶的冲泡方法课件
- 高血压病例分析培训课件
- 提高患者胃肠减压期间舒适度(ppt)
- simotion功能系统中的im174接口模块
- 急诊科质控指标统计分析表
- 延长真空泵机封使用寿命培训课件
- 三峡库区三期地质灾害防治工程勘察技术要求
评论
0/150
提交评论