软件工程大作业
项目名称
姓 名
团队成员
专 业
班 级
指导教师
学生学籍信息管理系统
计算机学院
2016 年 5 月 31 日
目 录
一、项目开发计划.................................................... 6
1引言 .............................................................. 6
1.1编写目的..................................................... 6
1.2 背景 ........................................................ 6
1.3定义......................................................... 6
1.4参考资料..................................................... 6
2项目概述 .......................................................... 7
2.1工作内容..................................................... 7
2.2主要参加人员................................................. 7
2.3产品......................................................... 7
2.3.1程序 ................................................... 7
2.3.2文件 ................................................... 7
2.3.3服务 ................................................... 7
2.3.4非移交的产品 ........................................... 8
2.4验收标准..................................................... 8
2.5完成项目的最迟期限........................................... 8
2.6本计划的批准者和批准日期..................................... 8
3实施计划 .......................................................... 8
3.1工作任务的分解与人员分工..................................... 8
3.2接口人员..................................................... 8
3.3进度......................................................... 9
3.4预算......................................................... 9
3.5关键问题..................................................... 9
4支持条件 .......................................................... 9
4.1计算机系统支持.............................................. 10
4.2需由用户承担的工作.......................................... 10
4.3由外单位提供的条件.......................................... 10
5专题计划要点 ..................................................... 10
二、可行性研究..................................................... 11
1引言 ............................................................. 11
1.1编写目的.................................................... 11
1.2背景........................................................ 11
1.3定义........................................................ 11
1.4参考资料.................................................... 11
2可行性研究的前提 ................................................. 12
3对现有系统的分析 ................................................. 13
4所建议的系统 ..................................................... 15
4.1 影响 ....................................................... 15
4.1.1对设备的影响.............................................. 15
4.1.2对软件的影响.............................................. 15
4.1.3对用户单位机构的影响...................................... 16
4.1.4对开发的影响.............................................. 16
4.1.5对经费开支的影响.......................................... 16
5技术条件方面的可行性 ............................................. 16
6经济可行性分析 ................................................... 16
6.1投资成本.................................................... 16
6.2收益........................................................ 17
6.3成本/收益分析:............................................. 18
7社会因素可行性分析 ............................................... 18
7.1法律方面的可行性............................................ 18
7.2用户使用可行性.............................................. 18
8结论 ............................................................. 18
三、需求分析....................................................... 19
1引言 ............................................................. 19
1.1编写目的.................................................... 19
1.2背景........................................................ 19
1.3参考资料.................................................... 19
2任务概述 ......................................................... 19
2.1目标........................................................ 19
2.2用户的特点.................................................. 20
3需求规定 ......................................................... 20
3.1对功能的规定................................................ 20
3.2对性能的规定................................................ 21
3.2.1精度 .................................................. 21
3.2.2时间特性要求 .......................................... 21
3.3数据存储.................................................... 22
3.4安全性...................................................... 22
3.5保密性...................................................... 22
3.6故障处理要求................................................ 23
4运行环境规定 ..................................................... 23
4.1设备........................................................ 23
4.2支持软件.................................................... 23
4.3接口........................................................ 24
4.4控制........................................................ 24
四、概要设计....................................................... 24
1引言 ............................................................. 24
1.1编写目的.................................................... 24
1.2背景........................................................ 25
1.3定义........................................................ 25
1.4参考资料.................................................... 25
2总体设计 ......................................................... 25
2.1需求规定.................................................... 25
2.2运行环境.................................................... 26
2.3基本设计概念和处理流程...................................... 26
2.4结构........................................................ 27
2.5人工处理过程................................................ 28
2.6尚未解决的问题.............................................. 28
3接口设计 ......................................................... 28
3.1用户接口.................................................... 28
3.2外部接口.................................................... 28
3.3内部接口.................................................... 28
4运行设计 ......................................................... 28
4.1运行模块组合................................................ 28
4.2运行控制.................................................... 29
4.3运行时间.................................................... 29
5系统数据结构设计 ................................................. 29
5.1逻辑结构设计要点............................................ 29
5.2物理结构设计要点............................................ 30
5.3数据结构与程序的关系........................................ 30
6系统出错处理设计 ................................................. 30
6.1出错信息及补救措施.......................................... 30
6.2系统维护设计................................................ 32
五、详细设计....................................................... 33
1引言 ............................................................. 33
1.1编写目的.................................................... 33
1.2背景........................................................ 33
1.3定义........................................................ 33
1.4参考资料.................................................... 33
2程序系统的结构 ................................................... 34
3程序1(标识符)设计说明.......................................... 34
3.1程序描述.................................................... 34
3.2功能........................................................ 36
3.3性能........................................................ 36
3.4输人项...................................................... 36
3.5输出项...................................................... 36
3.6算法........................................................ 36
3.7接口........................................................ 37
3.9存储分配.................................................... 37
3.10注释设计................................................... 37
3.11限制条件................................................... 37
3.12测试计划................................................... 37
3.13尚未解决的问题............................................. 37
六、项目总结....................................................... 38
1引言 ............................................................. 38
1.1编写目的.................................................... 38
1.2背景........................................................ 38
1.3定义........................................................ 39
1.4参考资料.................................................... 39
2实际开发结果 ..................................................... 39
2.1产品 ........................................................... 39
各种文件........................................................... 39
2.2主要功能和性能.............................................. 40
2.3基本流程.................................................... 41
2.4进度........................................................ 41
2.5费用........................................................ 41
3开发工作评价 ..................................................... 42
3.1对生产效率的评价............................................ 42
3.2对产品质量的评价............................................ 42
3.3对技术方法的评价............................................ 42
3.4出错原因的分析.............................................. 43
4经验与教训 ....................................................... 43
一、项目开发计划
1引言
1.1编写目的
明确的说明信息化管理系统的各种需求,界定系统实现功能的范围,指导系统设计以及编码,使用户了解软件产品。
本说明书的预期读者为:本软件的客户。
1.2 背景
开发软件名称:学生学籍信息管理系统。
项目开发者:湖北理工学院计算机科学系“学生学籍信息管理系统”开发小组。
组长:,其他成员:,,,。
用户单位:湖北理工学院计算机学院
1.3定义
1.4参考资料
(1) 钱乐秋,《软件工程》,清华大学出版社;
(2) 张海藩,《软件工程导论》(第四版),清华大学出版社;
(3) 王珊,《数据库原理及设计》,清华大学出版社;
(4) 赵池龙,《软件工程实践教程》,电子工业出版社;
(5) 耿祥义,张跃平.Java大学实用教程(第2版).电子工业出版社;
(6) 李兴华.JAVA开发实战经典.清华大学出版社,2009.8: 89-234
(7) 孙鑫. Java Web开发详解[M].电子工业出版社,2008: 59-199
2项目概述
2.1工作内容
在本项目中,首先召集小组所有成员和系统客户,共同商定系统功能,再由小组成员分工进行需求分析,分配工程流程,然后分配每个人的工作,例如,分配人员进行文档的编写,和代码的编辑,最后分配一个人进行综合。
2.2主要参加人员
2.3产品
2.3.1程序
提交程序的名称为“学生学籍信息管理系统”,本程序使用的是java语言,采用了SQLServer进行数据存储 。
2.3.2文件
只给名为“学生学籍信息管理系统”的成品,直接部署到服务器,安全方便。源代码等文件不交付。
除此之外,文档方面:项目开发计划,需求说明书,概要设计说明书,详细设计说明书等参考性文件会提供给客户。
2.3.3服务
培训安装:交货日起,为您提供最为贴心的培训安装服务,让您在日后该软件的使用上更为得心应手,行云流水,易如反掌,服务期限为3年。
维护: 交货日起,如若该产品出现问题,引起了您无法解决的问题,请随时与我们联系,我们会派遣出最权威的专家技术支持团队,第一时间解决问题,还你轻松好心情,服务期限为2年。
运行支持:交货日起,如若产品无法运行,请与我们联系,我们会极力解决。服务期1年。
2.3.4非移交的产品
源代码及中间过程文件,由行业惯例,不能交出,请谅解。
2.4验收标准
完成和客户商定的系统功能,达到用户合同需求的基本功能,使客户满意。
2.5完成项目的最迟期限
自该项目开工日起1个月。
2.6本计划的批准者和批准日期
本计划的批准者:
批准日期:2016年5月31日
3实施计划
3.1工作任务的分解与人员分工
:编码主力。:编码主力2号。:界面组织,多语言支持。,:文档编写+测试+帮助文档。
需求分析,设计:。
实现:全员。
测试,维护:,,,。
文件编制、审批、打印、分发工作:,,,。
用户培训工作:,,,。
软件安装工作:,,。
3.2接口人员
a. 负责本项目同用户的接口人员:客户。
b. 负责本项目同本单位各管理机构:湖北理工计算机学院相关人员。
c. 负责本项目同个份合同负责单位的接口人员:湖北理工计算机学院相关
人员。
3.3进度
实际计划进度与原定进度相比明显延迟,实际操作中充满了未知,开发过程中遇到的问题也不可能事先预知,有时会因为一些问题而耽误进程,这些都是开发时会出现的问题,因此实际进度会比计划进度慢。
3.4预算
人员5人。
时间半个月。
机时电费未知。
3.5关键问题
使用B/S形式的两层结构,由于现在的软件应用系统正在向分布式的Web应用发展,Web可以进行相关的业务处理,应用分不同的模块共享逻辑组件;这也就是目前应用系统的发展方向。
信息处理方法:
1、Tomcat主窗体登录功能
该功能主要实现系统的注册和登录,对系统的数据起到管理作用,主要涉及一些基本的页面跳转知识应用。
2、学生信息及成绩查询功能
该功能主要实现学生信息的查询和学生成绩的查询,在系统中起到对数据的检索,主要涉及一些基本的数据库查询操作。
3、班级信息管理功能
该功能主要实现班级的创建,删除和修改,在系统中起到对数据的实际操作,主要涉及一些基本的数据库添加,删除,修改等操作。
4、学生信息管理功能
该功能主要实现对应班级中学生的创建,删除和修改,在系统中起到对数据的实际操作,主要涉及一些基本的数据库添加,删除,修改等操作。
5、系统维护功能
该功能主要是用户退出登录的实现,该功能采用简单的页面跳转回登录界面的思想实现。
4支持条件
一人一台装了SQLServer,tomcat,eclipse的电脑即可。
4.1计算机系统支持
计算机,Windows操作系统,浏览器。
4.2需由用户承担的工作
用户需详细列举需求,并与我们签订合同,然后坐等完工,合同签订后不许随意修改。
4.3由外单位提供的条件
计算机学院提供机房、空调等设施。
5专题计划要点
分合同计划:谈好后不许随便修改。
开发人员培训计划:开发人员都已具备优良的技术水平,不需要额外培
训。
测试计划:每完成一个功能模块,就要由专属测试人员来测试程序健壮
性。
安全保密计划:源代码等不许外传。
质量保证计划:用户如发现产品问题,及时反馈,我们会及时解决。 系统安装计划:派遣最精锐的专家团队前往指导安装。
二、可行性研究
1引言
1.1编写目的
编写本报告的目的是研究本系统的总体需求、实现方案,并分析开发系统的可行性,为决策者提供是否开发该系统的依据和建议。
1.2背景
开发软件名称:学生学籍信息管理系统。
项目开发者:湖北理工学院计算机科学系“学生学籍信息管理系统”开发小组:
组长:,其他成员:,,,。
用户单位:湖北理工学院计算机学院
1.3定义
学生学籍信息管理系统能够提供方便完整的一系列对教室进行管理、合理分配资源等操作手段。对于庞大的教室资源如果人工进行管理过于复杂并且容易出错,但用学生学籍信息管理系统则方便了教室管理者对资源的合理分配利用,为该校提供全面的学生学籍管理的解决方案,解决传统人工管理方式效率低、保密性差,不利于查找、更新和维护的问题,极大地提高学生学籍管理的效率,节约教育经费,以适应学校信息化建设的发展趋势。
1.4参考资料
(1)
(2)
(3)
(4)
(5)
(6)
(7) 钱乐秋,《软件工程》,清华大学出版社; 张海藩,《软件工程导论》(第四版),清华大学出版社; 王珊,《数据库原理及设计》,清华大学出版社; 赵池龙,《软件工程实践教程》,电子工业出版社; 耿祥义,张跃平.Java大学实用教程(第2版).电子工业出版社; 李兴华.JAVA开发实战经典.清华大学出版社,2009.8: 89-234 孙鑫. Java Web开发详解[M].电子工业出版社,2008: 59-199
2可行性研究的前提
随着计算机应用的日益普及和深化,网上办公已经成为一种趋势。通过学生学籍管理系统的设计与开发,使学生学籍管理工作更加科学化、规范化、程序化,促使提高信息处理的速度和正确性,使学校的信息流程和流向更加清晰化、合理化,能够在第一时间内把握学生信息,以提高整体教学水平。
2.1要求
A、主要功能
1)、Tomcat主窗体登录功能
该功能主要实现系统的注册和登录,对系统的数据起到管理作用,主要涉及一些基本的页面跳转知识应用。
2)、学生信息及成绩查询功能
该功能主要实现学生信息的查询和学生成绩的查询,在系统中起到对数据的检索,主要涉及一些基本的数据库查询操作。
3)、班级信息管理功能
该功能主要实现班级的创建,删除和修改,在系统中起到对数据的实际操作,主要涉及一些基本的数据库添加,删除,修改等操作。
4)、学生信息管理功能
该功能主要实现对应班级中学生的创建,删除和修改,在系统中起到对数据的实际操作,主要涉及一些基本的数据库添加,删除,修改等操作。
5)、系统维护功能
该功能主要是用户退出登录的实现,该功能采用简单的页面跳转回登录界面的思想实现。
B、主要性能
提高学生学籍管理的效率,节约管理成本,增强学生管理的安全性。满足学校领导、教育管理单位、学生管理人员、教师和学生的不同层次和不同方面的需要。为学校将来的整体信息化建设提供必要的支持。
C、可扩展性
能够适应应用要求的变化和修改,具有灵活的可扩充性。
D、安全性
具有较高的安全性。系统对不同的用户提供不同的功能模块,只有具有一定权限的管理员用户才能允许修改教室的使用情况,只有具有高级权限的部门管理者或维护人员用户才能对用户进行管理,一般的用户只能查看教室的使用情况。
还应具有一定的保护机制,防止系统被恶意攻击,信息被恶意修改和窃取。有完善的备份机制,如果系统被破坏应该能快速恢复。
E、完成期限
2016年5月15日至2016年5月31日,共半个月。
2.2目标
所建议系统的开发目标包括:
减少人力与管理费用;
提高信息准确度;
改进管理和服务;
建立高效的信息传输和服务平台,提高信息处理速度和利用率。
2.3条件、假定和限制
建议软件寿命:10年。
进行系统方案选择比较的时间:为10天。
经济来源:湖北理工学院。
硬件条件:PC机6台,服务器3台,局域网,INTERNET。
软件条件:WINDOWS 2005Server和XP操作系统,OFFICE软件,浏览
器等。
2.4决定可行性的主要因素
本次可行性分析是按照软件工程的规范步骤进行的,即按复查项目目标和规模,研究目前正使用的系统,导出新系统的高层逻辑模型,重新定义问题这一循环反复的过程进行。然后提出系统的实现方案,推荐最佳方案,对所推荐的方案进行经济、技术、用户操作和法律的可行性分析,最后给出系统是否值得开发的结论。以上分析结果写城本文档。
成本/效益分析结果:效益>成本;
技术可行:现有技术可完成开发任务;
操作可行:系统能被现有的工作人员快速掌握并使用;
法律可行:所使用工具和技术及数据信息不违反法律。
3对现有系统的分析
3.1处理流程和数据流程
图3-1系统功能模块图
图3-2系统操作流程图
3.2工作负荷
随着数据量越来越大,现有的系统已明显不能适应目前的庞大数据量,系统工作负荷过大。
3.3人员
组长:
成员: ,,,
3.4局限性
经过严谨的分析,可知原有的系统存在很大的局限性,比如技术的过于陈旧,工作面向范围过于狭小,针对于个体。
4所建议的系统
所建议系统是B/S模式。用户使用该系统开始必须进行身份验证,当身份验证成功后才可以使用该系统。其实用户使用的只有有查询自己的相关信息,而老师则可以查询所有班级相关信息,管理员则能访问所有信息。
4.1 影响
4.1.1对设备的影响
由于所建议系统是基于浏览器和服务器的,并基于window平台,所以需要配备足够符合以上列出的各种软硬件条件的计算机和通信线路。系统失效后,服务器端需要利用备份的数据库恢复数据信息,要求要有足够的数据备份空间。
4.1.2对软件的影响
需要落实是否有符合本报告所列出的正版的软件环境,如果没有则需要购买。
4.1.3对用户单位机构的影响
投入使用前还需改进现有的管理模式。
4.1.4对开发的影响
开发过程需要用户进行密切的配合,准确阐明需求。
4.1.5对经费开支的影响
除了需要支付开发单位的有关费用外,每年还需要一定的运行维护费用(见经济可行性分析)。
5技术条件方面的可行性
当今,全国计算机越来越普及,几乎每个学校都配有计算机,为这套软件提供了硬件环境。以计算机为基础的管理系统使教师和管理者摆脱了那种繁杂、易错的记录及管理方式,通过计算机以及配套的软件,用户可以采用全新的方式从不同的地方存取各种信息。从客户/服务器方式上发展起来的框架结构为我们提供了开发本系统的基础。采用MySQL数据库以及使用MyEclipse和Tomcat作为系统开发的开发软件,采用Java,xml以及html等语言和jsp技术,为其提供完善的指令控制语句、类与对象的支持及丰富的数据类型,给开发高性能系统提供了有效保障,为开发满足客户要求的系统保证了代码的模块化,而代码模块化的提高,非常有利于以后对新系统的扩展与修改。同时SQL Server 2005是一套较为成熟的关系数据库管理系统,海量数据、企业管理器平台使得维护数据更简便,无论是性能还是管理上的性价比都是比较高的。MyEclipsel0是一款专门针对JSP开发的高效IDE环境,用户量大,开发效率高。Tomcat 5作为Web服务器的首选,配置简单,而且是免费的。JSP(JavaServer Pages)是一种动态网页技术标准,JSP在业界的口碑是安全和跨平台。JSP可以作为创建动态网页网站的一种可选技术,而且是创建商用网站的主要选择技术之一。
综上所述,本系统的设计与开发在技术上和硬件设备上的条件都是满足的,因此,它在技术上是可行的。
6经济可行性分析
6.1投资成本
一次性支出
(1)系统开发、建立费用共14万元。其中:
本系统开发期为3个月,需开发人员5人(不一定都是参加满3个月)。
根据软件系统的规模估算,开发工作量约为10人月,每人月的人工费
按4000元计算,开发费用为12万元。
书籍、读者等基础信息建立需要5人2个月即10人月,每人月的人工
费用按2000元计算,需2万元。
(2)硬件设备费共7万元,其中:微机4台约2万元;服务器2台及网络等设备费5万元。
(3)外购开发工具、软件环境费用共3万元。
(4)其他费费用共2万元。
一次性支出总费用:26万元。
经常性费用
主要是系统运行费用,假设本系统运行期10年,每年的运行费用(包括系统维护、设备维护等)5万元,按年利率5%计算如下表。
6.2收益
假设投入本系统,效率可以提高50%,以现有的工作人员20人计算,可减少10人,每人每月平均工资按2500元计算,每年节约人员工资10×12×0.25=30万元/年。按年利率5%计算,效益计算如下表。
系统收益总额为:231.6437万元。
6.3成本/收益分析:
在10年期内,系统总成本64.6082万元,系统总收益231.6437万元。 投资回收期:2+(64.6082-55.7823)/ 25.9151=2.34年;
纯收益:231.6437-64.6082=167.0355万元
从经济上考虑,开发本系统完全可行的。
7社会因素可行性分析
7.1法律方面的可行性
所有软件都用正版,技术资料都由提出方保管,数据信息均可保证合法来源。所以,在法律方面是可行的。
7.2用户使用可行性
使用本系统的人员均有一定计算机应用基础,系统维护员由计算机的专业人员担任,所有人员都要经过本系统的使用培训。经过简单培训人员就会熟练使用本软件。
8结论
本项目具有方便快捷等优势,投资回报利益大,使得教室管理实现电子化,符合社会信息化发展的需要,技术、经济、操作、法律方面都是可行的,可以开发本系统。
三、需求分析
1引言
1.1编写目的
学生学籍管理系统要实现的目标是为该校提供全面的学生学籍管理的解决方案,以解决传统人工管理方式效率低、保密性差,不利于查找、更新和维护的问题,极大地提高学生学籍管理的效率,节约教育经费,以适应学校信息化建设的发展趋势。
1.2背景
开发软件名称:学生学籍信息管理系统。
项目开发者:湖北理工学院计算机科学系“学生学籍信息管理系统”开发小组:
组长:,其他成员:,,,。
用户单位:湖北理工学院计算机学院
1.3参考资料
(1)
(2)
(3)
(4)
(5)
(6)
(7) 钱乐秋,《软件工程》,清华大学出版社; 张海藩,《软件工程导论》(第四版),清华大学出版社; 王珊,《数据库原理及设计》,清华大学出版社; 赵池龙,《软件工程实践教程》,电子工业出版社; 耿祥义,张跃平.Java大学实用教程(第2版).电子工业出版社; 李兴华.JAVA开发实战经典.清华大学出版社,2009.8: 89-234 孙鑫. Java Web开发详解[M].电子工业出版社,2008: 59-199 2任务概述
2.1目标
本系统通过强大的计算机技术给学籍管理人员和用户查询学籍信息情况带来便利。目标包括:
减少人力与管理费用;
提高信息准确度;
改进管理和服务;
建立高效的信息传输和服务平台,提高信息处理速度和利用率;
系统设计优良,界面设计精美、友好、快捷,人性化设计,后台管理功
能强大、效率高;
管理学生信息,同时管理学生的成绩以及课程情况。
2.2用户的特点
本软件的最终用户是面向软件管理员、老师和同学等,他们都具有一定
的计算机应用基础,可以比较熟练操作计算机。
系统维护人员为计算机专业人员,熟悉数据库、操作系统、网络维护工
作。维护人员为间隔性用户。
3需求规定
3.1对功能的规定
学生学籍信息管理系统能够提供方便完整的一系列对学籍进行管理等操作手段。对于庞大的学生信息如果人工进行管理过于复杂并且容易出错,但用学生学籍信息管理系统则方便了管理者对信息的维护。
(1)用户登录系统功能:为用户数据设置安全保障功能,只有通过注册并登录验证的用户,才能成为系统管理员用户。系统管理员能查询、修改、删除所有信息。
(2)用户录入数据功能:系统为系统管理员提供对所有信息的录入功能。
(3)用户查询数据功能:系统为合法用户提供查询的功能,可以对数据库的信息进行查询。
(4)用户维护数据功能:为合法用户提供查询及相应的修改功能和对所有信息的修改删除功能。
(5)用户退出系统功能:结束并关闭系统。
3.2对性能的规定 3.2.1精度
时间
精确到日 数量
要求精确到个人信息
3.2.2时间特性要求
由于系统的数据量比较大,故其响应时间、更新处理时间、转换时间及运行时间均较慢,应特别注意程序响应速度(数据传输时间不要太长,均在用户可接受的时间范围之内)。 登录连接
包括环境的初始化,时间不超过3s 数据录入
平均录入一个词条不超过2s 敏感过滤时间每次不超过0.1s 数据添加
响应时间不超过2s 数据修改
响应时间不超过2s 数据删除
响应时间不超过2s 数据读出
响应时间不超过2s 数据查询
10000条记录以下响应时间不超过10s
10000-100000响应时间不超过20s 100000-1000000响应时间不超过35s 1000000以上响应时间不超过50s 数据统计
10000条记录以下响应时间不超过15s 10000-100000响应时间不超过25s 100000-1000000响应时间不超过40s 1000000以上响应时间不超过60s
3.3数据存储
保证数据的安全性,减少出现数据灾难的可能性,比如数据在传输过程
中丢失或发生错误
增加出现数据灾难或故障时进行数据修复的能力
3.4安全性
数据一致性
保存到数据库中的数据与用户录入数据一致 数据库中各相关数据必须保持一致性和平衡性 保证查询统计的数据正确性和一致性数据存储
保证数据的安全性,减少出现数据灾难的可能性,比如数据在传输过程中丢失或发生错误
增加出现数据灾难或故障时进行数据修复的能力 数据安全性
数据修改要记录修改日志
对数据的处理要受权限和级别控制
3.5保密性
注意用户数据的保密设计
注意本系统应用程序的保密设计 不同用户的权限不同
3.6故障处理要求
(1)有应用系统出错提示和数据库系统出错提示,提示语言为中文。 (2)使用过程中不能产生死锁现象。
(3)数据耗时过长时,等待时给出提示信息通知用户。
(4)数据库有可靠易用的备份措施,一旦发生故障时,能及时恢复和维护。
4运行环境规定
4.1设备
服务器
(1)处理器(CPU):Pentium 900M (推荐Pentium 4 1.2G) (2)内存容量(RAM):至少256M(推荐 512M) 客户端
(1)处理器(CPU):Pentium 133M 或更高 (2)内存容量(RAM):64M或更高
4.2支持软件
数据库服务器端
(1) 操作系统:Microsoft Windows 2000
(2) 数据库管理系统:SQL SERVER,配置TCP/IP协议 Web服务器端
(1) 操作系统:Microsoft Windows 2000 (2)Tomcat 5.0管理器
(3)MyEclips 8.0,配置TCP/IP协议 客户端
(1) 操作系统:Windows 98/2000/2003/XP
(2) Web浏览器:Internet Explorer 5.0以上或Netscape 4.0以上,
配置TCP/IP协议
4.3接口
硬件接口
考虑到大量数据的备份等要求,需要保持与磁带机和光盘刻录机的接口,这较易实现。 软件接口
这里,主要考虑软件与操作系统、数据库管理系统的接口,以及局域网和互联网软件之间的数据交换。考虑到文档处理时有可能需要较常用的办公软件。例如Microsoft的Office系列,所以应尽量实现它们之间的数据格式的自动转换。
4.4控制
由于本系统采用目前的主流JSP技术,对程序的运行和控制都没有特殊要求。
四、概要设计
1引言
1.1编写目的
主要任务是把需求分析得到的DFD转换为软件结构和数据结构。将本系统按功能进行模块划分、建立模块的层次结构及调用关系、确定模块间的接口及人机界面等。同时还包括数据特征的描述、确定数据的结构特性、以及数据库的设计。即确立本系统的逻辑模型。 概要设计,又称架构设计或高层设计。除了设计、开发人员外,业务架构师 和 测试经理 也需要掌握,但用户单位并不关心架构设计。
1.2背景
开发软件名称:学生学籍信息管理系统。
项目开发者:湖北理工学院计算机科学系“学生学籍信息管理系统”开发小组:
组长:,其他成员:,,,。
用户单位:湖北理工学院计算机学院
1.3定义
1.4参考资料
(1) (2) (3) (4) (5) (6) (7)
钱乐秋,《软件工程》,清华大学出版社; 张海藩,《软件工程导论》(第四版),清华大学出版社; 王珊,《数据库原理及设计》,清华大学出版社; 赵池龙,《软件工程实践教程》,电子工业出版社;
耿祥义,张跃平.Java大学实用教程(第2版).电子工业出版社; 李兴华.JAVA开发实战经典.清华大学出版社,2009.8: 89-234 孙鑫. Java Web开发详解[M].电子工业出版社,2008: 59-199
2总体设计
2.1需求规定
1、用户登录教室信息管理系统后,进入主界面可看到本系统使用说明。 2、如果是一般客户登陆,就只有基本的查询功能,包括根据课程查询、教室查询、老师查询等。
3、如果是系统管理员登陆,则可以进入系统内的数据合法进行增、删、改、查。
4.如果是游客,则需要注册用户,成为合法的用户才可以进入系统。
2.2运行环境
硬件环境:系统运行的硬件环境:CPU为Pentium以上系列,内存215MB,所需硬盘空间约200MB
软件环境:操作系统采用Microsoft Windows平台,从Windows 98、Windows XP、Windows 2003到Windows 7等各种版本都可能存在。前台开发环境采用的Eclipse, 中心数据库采用Microsoft的SQL SERVER 2005。
2.3基本设计概念和处理流程
设计概念:基本实现教室管理的各种操作,能满足基本要求,同时设置不同的权限,方便管理员使用。
处理流程:
E-R图:
2.4结构
用一览表及框图的形式说明本系统的系统元素(各层模块、子程序、公用程序等)的划分,扼要说明每个系统元素的标识符和功能,分层次地给出各元素之间的控制与被控制关系。如图所示:
2.5人工处理过程
当需要进行临时调度,则需要人工进行修改。
2.6尚未解决的问题
本系统理想上希望有三种权限,但由于涉及比较麻烦,同时考虑各种原因,没有设计第三种权限。
3接口设计
3.1用户接口
本系统仅需要提供管理员的用户名和密码,登陆成功,系统提示成功,否则提示失败。由于游客用户可自行注册,所以不需要提供游客的用户名及密码。
3.2外部接口
本系统需要运行在Eclipse平台上,所以需要系统配配置好Apache 服务器,同时打开tomcat服务。
3.3内部接口
本系统内部使用了一些存储过程和触发器,当用户登录时,默认触发后台数据库服务器中的存储过程的执行。所以在程序中需要指出存储过程的名字以及类型。
4运行设计
4.1运行模块组合
本系统仅仅使用的简单的JSP技术实现。当登录时,不仅使用了前台的用户交互界面,同时也会调用后台存储过程的执行,所以把两者模块组合到一起。此组合需要后台代码调用数据库系统的支持。
4.2运行控制
读者用户或管理员在登陆或注册时会产生此组合。
4.3运行时间
由于是内部存储过程的调用,效率比较高。所以消耗的时间比较短,基本忽略不计。
5系统数据结构设计
5.1逻辑结构设计要点
用户信息表:包括的数据项有用户ID、用户名、密码等;如表2-8
所示。
学生信息表:包括的数据项有学生ID、学生姓名、学生性别、学生
年龄、所在班级ID等;如表2-9所示。
成绩信息表:包括的数据项有成绩表ID、科目类型、该科分数、对
应学生ID等;如表2-10所示
班级信息表:包括的数据项有班级ID、班级名称等;如表2-11所示 注:pri表示主键,auto_increment表示对主键id自动增加编号。
5.2物理结构设计要点
给出本系统内所使用的每个数据结构中的每个数据项的存储要求,访问方法、存取单位、存取的物理关系(索引、设备、存储区域)、设计考虑和保密条件。
表中所使用的数据的存储都是基于数据库管理系统所支持的数据类型加上一些用户自定义约束定义的,访问方法基本都是公开的。但有的字段如密码应该进行加密处理的。
5.3数据结构与程序的关系
物理数据结构主要用于各模块之间函数的信息传递。接口传递的信息将是以数据结构封装了的数据,以参数传递或返回值的形式在各模块间传输。出错信息将送入显示模块中,机票结构,帐单结构,送入打印准备模块中准备打印格式。
6系统出错处理设计
6.1出错信息及补救措施
1.在项目执行的过程中,如果优先删除班级,则班级中的学生信息没有被删除,由于班级与学生之间建立了关联,因此在删除班级信息时会由于约束条件而
报错,导致删除失败。
解决办法:通过在项目中添加容错机制,在删除之前对班级信息中关联的学生信息等子项目进行遍历删除,最后再删除班级信息。
相关代码:
public boolean deleteClassByCid(int cid){
/**
* 约束错误处理 */
boolean flag = false; conn = DBConnection.conn(); try {
StudentDAO sdao = new StudentDAO();
list
=
List
sdao.queryByClassStudent(cid);
for (StudentDTO li:list) { }
String sql = "delete from tb_class where cid =?"; ps = conn.prepareStatement(sql); ps.setInt(1, cid); flag = !ps.execute();
int sid = li.getSid(); sdao.deleteStudentBySid(sid);
} catch (SQLException e) { }
return flag;
// TODO Auto-generated catch block e.printStackTrace();
}
2.当计算机重启之后,再次打开项目时,运行程序,提示TCP/IP关闭。 解决办法:打开sql configuration manage,单击sql server 2005网络配置,将TCP/IP设置为启用即可。
如下图所示:
6.2系统维护设计
本系统属于测试版本,在投入运行之前会进行一些测试,完成之后会定期做一次测试,进行出错检测或者是完善系统。
五、详细设计
1引言
1.1编写目的
此说明书目的在于明确说明信息化管理系统的具体功能实现,界定系统实现功能的范围,指导系统设计以及编码。
本说明书的预期读者为:本软件的开发者
1.2背景
开发软件名称:学生学籍信息管理系统。
项目开发者:湖北理工学院计算机科学系“学生学籍信息管理系统”开发小组:
组长:,其他成员:,,,。
用户单位:湖北理工学院计算机学院
1.3定义
1.4参考资料
(1) (2) (3) (4) (5) (6) (7)
钱乐秋,《软件工程》,清华大学出版社; 张海藩,《软件工程导论》(第四版),清华大学出版社; 王珊,《数据库原理及设计》,清华大学出版社; 赵池龙,《软件工程实践教程》,电子工业出版社;
耿祥义,张跃平.Java大学实用教程(第2版).电子工业出版社; 李兴华.JAVA开发实战经典.清华大学出版社,2009.8: 89-234 孙鑫. Java Web开发详解[M].电子工业出版社,2008: 59-199
2程序系统的结构
本系统结构如图2-1所示:
图2-1
3程序1(标识符)设计说明
3.1程序描述
1)本段程序的目的登录模块,判断用户输入的用户名和密码是否是已存在的,如果是则进入系统,否则登录失败。
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException { String name=request.getParameter("username"); String pass=request.getParameter("password"); UserDAO udao=new UserDAO(); //调用方法 把页面上接收的姓名 和密码 存进去 UserDTO user=udao.getUser(name,pass); if(user!=null){ //request.getSession().setAttribute("user", user); if (user.getUpass().equals(pass)) { request.getSession().setAttribute("user", user); UserDTO u = (UserDTO) request.getSession().getAttribute("user");
request.getRequestDispatcher("main.jsp").forward(request, response);
} else { request.setAttribute("msg", "密码错误");//跳转 request.getRequestDispatcher("login.jsp").forward(request, response);
}//跳转 }else{ request.setAttribute("msg", "登录失败"); //跳转
request.getRequestDispatcher("login.jsp").forward(request, response); } }
2)本段程序的目的注册模块,判断用户输入的用户信息是否是已存在的,如果是则注册成功,否则注册失败。
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException { request.setCharacterEncoding("utf-8"); response.setCharacterEncoding("utf-8"); //接收页面上传递过来的值 参数是输入框 name标签的值 String name=request.getParameter("username"); String pass=request.getParameter("password"); System.out.println("页面上接收的值:"+name+pass); //把页面上接收的值 封装成一个对象 UserDTO user=new UserDTO(0, name, pass); //调用注册的方法 UserDAO udao=new UserDAO(); boolean b=udao.addUser(user); if(b){ //键 值
response);
response);
}
request.setAttribute("msg", "注册成功请登录");
request.getRequestDispatcher("login.jsp").forward(request,
}else{ //键 值 request.setAttribute("msg", "注册失败"); request.getRequestDispatcher("Register.jsp").forward(request, }
3.2功能
1)功能是判断用户是否拥有进入系统的权限。如果用户名密码正确,即可进
入系统。
2)功能是判断注册的用户信息是否合法的,合法即可注册成功,否则失败。
3.3性能
说明对该程序的全部性能要求,包括对精度、灵活性和时间特性的要求。 灵活性:程序通过改变一下存储过程的名字即可通用于执行任何一个过程,灵活性较高。
时间特性:由于执行的是数据库中的过程,所以效率较高,所用时间较短。
3.4输人项
本段程序需要用户输入用户名和密码。注册用户信息,需要输入用户的个人信息及用户名密码等。
3.5输出项
登录功能模块的返回值是执行了过程之后产生的结果,如果用户名密码存在于数据库中则登录成功,否则返回登录失败。
注册功能模块的返回值是执行了过程之后产生的结果,如果用户信息存在于数据库中则注册失败,否则返回注册成功
3.6算法
首先建立连接,然后通过之前定义的连接字符串绑定到所建立的连接。通过字符串的比较判断用户输入的是否正确。然后打开连接,执行命令,最后返回结果。
3.7接口
传递参数采用的是建立一个参数数组, 然后通过循环为其赋值。
3.9存储分配
本段程序需要保存一个连接池中的连接,一个命令,同时一个数组长度的参数和最后一个返回值。消耗内存较少。
3.10注释设计
本段程序属于数据库访问代码,需要注释的是模块首部的注释,以及在创建各个连接,命令以及执行命令,指定过程的返回值时需要作出简单的逻辑注释即可。
3.11限制条件
由于存储过程是针对某一个数据库管理系统的,所以所指定的过程函数只能现定于Sqlserver的DBMS并且只用于本段代码。如果需要适用于其他程序,必须修改过程中相应的代码。
3.12测试计划
首先测试的是数据库的连接,如果DB的连接没有建立,是无法执行程序的。然后输入错误的用户名,看返回值是否正确。当输入正确用户名,再输入错误密码,看返回值是否正确。当输入正确的用户名和密码时,看返回值是否正确。
3.13尚未解决的问题
本系统理想上希望有三种权限,但由于涉及比较麻烦,同时考虑各种原因,没有设计第三种权限。
六、项目总结
1引言
1.1编写目的
随着科学技术、管理方法的不断进步,传统的办公方式、方法和手段已经不能适应现代化管理的需要,作为培养高质量合格人才为宗旨的高等学校,总是走在科技的最前沿,学籍管理的计算机化已成为高校管理现代化、决策科学化的一个重要环节,是开创学籍管理工作新局面的必由之路。
学籍管理指学校对学生所获得的学籍资格进行管理。凡经过升学考试或按规定手续被正式录取的学生,入校办理注册手续后即取得该校学籍,它标志着学生取得了参加学习的资格。学籍是组织管理学生的客观依据。但传统的学籍管理模式和管理手段不仅大量地消耗人力、物力,同时,还存在诸多弊端,时常影响教学秩序,阻碍教学改革的深化,难以保证该项工作应具有的严肃性。
近年来高校在社会对人才需求的压力和动力下,新增了不少专业也废弃了不少专业,人才培养模式也随着社会的需求不断更新,同时高校间的竞争也处于白热化的地步,管理领先一步就会令学校领域非常有利的地位,所以管理手段就必须要更新。使用先进高效的网络学籍管理系统会极大地优化高效的教务工作的管理。
当前高校学籍管理的弊端主要表现在两方面:第一,工作安排缺乏系统性、需要的教务管理人员比较多、人工管理的情况下时有错误发生;第二,整个管理体系和局面时常处于失控的境地。每个教务管理人员对学籍管理政策理解的差异导致了工作上的不协调,同时这种分散的管理直接造成了学籍管理工作无法监督的局面,很难保证学籍工作的严肃性和公平原则,往往使置高校学籍管理工作于非常尴尬的地步,也给社会带来了很大的负面影响。《高校学籍管理系统》主要为了解决的一个核心问题是信息共享。学生从入学、不断学习到毕业的几年时间了,在校的学习情况是一组非常复杂的数据;对教师教学业绩的考核和学校教学策略的制定都依赖对学生成绩的分析;用人单位希望得到学生在校学习的真实成绩。所有这些需求都围绕学生的学籍信息不断地进行加工,而且好多数捃都是直接重复的,基于局域网的B/S学籍管理系统可以很好地解决这些问题。
1.2背景
开发软件名称:学生学籍信息管理系统
项目开发者:湖北理工学院计算机科学与技术系“学生学籍信息管理系统”开发小组;
组长:,其他成员:,,,。
用户单位:湖北理工学院计算机学院
主要采用JSP网站开发技术,系统运行在SQLServer 2005之上,应用服务
器为 Windows server 2003之上。
1.3定义
1.4参考资料
(1) (2) (3) (4) (5) (6) (7)
钱乐秋,《软件工程》,清华大学出版社; 张海藩,《软件工程导论》(第四版),清华大学出版社; 王珊,《数据库原理及设计》,清华大学出版社; 赵池龙,《软件工程实践教程》,电子工业出版社;
耿祥义,张跃平.Java大学实用教程(第2版).电子工业出版社; 李兴华.JAVA开发实战经典.清华大学出版社,2009.8: 89-234 孙鑫. Java Web开发详解[M].电子工业出版社,2008: 59-199
2实际开发结果 2.1产品
各种文件
2.2主要功能和性能
1、功能
1、Tomcat主窗体登录功能
该功能主要实现系统的注册和登录,对系统的数据起到管理作用,主要涉及一些基本的页面跳转知识应用。
2、学生信息及成绩查询功能
该功能主要实现学生信息的查询和学生成绩的查询,在系统中起到对数据的检索,主要涉及一些基本的数据库查询操作。
3、班级信息管理功能
该功能主要实现班级的创建,删除和修改,在系统中起到对数据的实际操作,主要涉及一些基本的数据库添加,删除,修改等操作。
4、学生信息管理功能
该功能主要实现对应班级中学生的创建,删除和修改,在系统中起到对数据的实际操作,主要涉及一些基本的数据库添加,删除,修改等操作。
5、系统维护功能
该功能主要是用户退出登录的实现,该功能采用简单的页面跳转回登录界面的思想实现。 2、性能 1)、支持B/S结构; 2)、 兼容主流浏览器;
2.3基本流程
图6-3 基本流程图
2.4进度
实际计划进度与原定进度相比明显延迟,实际操作中充满了未知,开发过程中遇到的问题也不可能事先预知,有时会因为一些问题而耽误进程,这些都是开发时会出现的问题,因此实际进度会比计划进度慢。
2.5费用
开发过程主要花费是个人时间的消耗,计算机使用时间等,因为项目的最后完成和计划内时间相隔不少天,所以话费的时间会比计划的要多。主要原因还是时间仓促,组员的知识匮乏,组员之间的协调工作做的不是很好,中途遇到问题无法解决,讨论也没有很好的结果,导致整体开发效率降低。
3开发工作评价
3.1对生产效率的评价
开发大约花时间每天平均编码三小时。
开发过程中有时编写错误或者某个符号错误导致运行错误,都会耽误时间,浪费资源。
3.2对产品质量的评价
在开发学生学籍信息管理系统的过程中,我们综合考虑了系统的时间效率、空间效率、维护代价和各种用户要求进行了权衡。完全依赖于所选用的RDBMS,而我们采用的是SQL Server 2005,主要从定量估算各种方案的存储空间和维护代价入手,对估算结果进行权衡、比较。我们需要从各个方面来查找问题并解决问题,总体上比较符合要求。
3.3对技术方法的评价
使用B/S形式的两层结构,由于现在的软件应用系统正在向分布式的Web应用发展,Web可以进行相关的业务处理,应用分不同的模块共享逻辑组件;这也就是目前应用系统的发展方向。
信息处理方法:
1、Tomcat主窗体登录功能
该功能主要实现系统的注册和登录,对系统的数据起到管理作用,主要涉及一些基本的页面跳转知识应用。
2、学生信息及成绩查询功能
该功能主要实现学生信息的查询和学生成绩的查询,在系统中起到对数据的检索,主要涉及一些基本的数据库查询操作。
3、班级信息管理功能
该功能主要实现班级的创建,删除和修改,在系统中起到对数据的实际操作,主要涉及一些基本的数据库添加,删除,修改等操作。
4、学生信息管理功能
该功能主要实现对应班级中学生的创建,删除和修改,在系统中起到对数据的实际操作,主要涉及一些基本的数据库添加,删除,修改等操作。
5、系统维护功能
该功能主要是用户退出登录的实现,该功能采用简单的页面跳转回登录界面的思想实现。
3.4出错原因的分析
本次实习旨在对数据库设计过程的培训和熟悉, 进而养成数据库设计的良好方法。 由于 时间有限,并且对真正的业务流程不是十分熟悉,因此难免出现偏差,而只是对具体业务的 简单模拟。 因此存在的问题是与实际的业务处理不太符合, 功能不太完善。 在逻辑设计阶段, 对课程表信息在数据库中的存储方式不太清楚。 因此在以后研究中应该更加详细地熟悉具体业务,进而对系统进行完善和补充。
4经验与教训
通过这次的软件工程的大作业,我们小组进行了很长时间的讨论。通过这次软件工程论文,我拓宽了知识面,锻炼了能力,综合素质得到较大提高。利用课余时间,通过理论与实际的结合、人与人的沟通,进一步提高思想觉悟。尤其是观察、分析和解决问题的实际工作能力,培养了我成为能够主动适应社会主义现代化建设需要的高素质的复合型人才。
作为整个学习体系的有机组成部分,老师虽然给了很长的时间准备,但并不具有绝对独立的意义。它的一个重要功能,在于运用学习成果,检验学习成果。运用学习成果,把课堂上学到的系统化的理论知识,尝试性地应用于实际设计工作,并从理论的高度对设计工作的现代化提出一些有针对性的建议和设想。检验学习成果,看一看课堂学习与实际工作到底有多大距离,并通过综合分析,找出学习中存在的不足,以便为完善学习计划,改变学习内容与方法提供实践依据。对我们计算机专业的学生来说,实际能力的培养至关重要,而这种实际能力的培养单靠课堂教学是远远不够的,必须从课堂走向实践。这也是一次预演和准备毕业设计工作。
通过这个软件工程的课程设计,让我找出了自身状况与实际需要的差距,并在以后的学习期间及时补充相关知识,为求职与正式工作做好充分的知识、能力准备,从而缩短从校园走向社会的心理转型期。
在课余时间里,我们普遍感到不仅实际动手能力有所提高,更重要的是通过对软件开发流程的了解,进一步激发了我们对专业知识的兴趣,并能够结合实际存在的问题在专业领域内进行更深入的学习。
软件工程课程虽已结束,但我对于软件工程的学习才刚刚开始。我体会到项目管理的重要性,随着软件规模、复杂度的不断增加,项目开发中更多的是协作、管理和控制。我学习到很多一般性的方法,例如:需求获取、模块化、计划等等。同时,我也认识到使用计算机解决实际问题的复杂性,人们认识表达的过程不断反复、逐步深化,软件工程方法要提供给程序员们一种更加有效的对客观世界问题域进行形式化的过程方法。
软件工程成绩评定表
软件工程大作业
项目名称
姓 名
团队成员
专 业
班 级
指导教师
学生学籍信息管理系统
计算机学院
2016 年 5 月 31 日
目 录
一、项目开发计划.................................................... 6
1引言 .............................................................. 6
1.1编写目的..................................................... 6
1.2 背景 ........................................................ 6
1.3定义......................................................... 6
1.4参考资料..................................................... 6
2项目概述 .......................................................... 7
2.1工作内容..................................................... 7
2.2主要参加人员................................................. 7
2.3产品......................................................... 7
2.3.1程序 ................................................... 7
2.3.2文件 ................................................... 7
2.3.3服务 ................................................... 7
2.3.4非移交的产品 ........................................... 8
2.4验收标准..................................................... 8
2.5完成项目的最迟期限........................................... 8
2.6本计划的批准者和批准日期..................................... 8
3实施计划 .......................................................... 8
3.1工作任务的分解与人员分工..................................... 8
3.2接口人员..................................................... 8
3.3进度......................................................... 9
3.4预算......................................................... 9
3.5关键问题..................................................... 9
4支持条件 .......................................................... 9
4.1计算机系统支持.............................................. 10
4.2需由用户承担的工作.......................................... 10
4.3由外单位提供的条件.......................................... 10
5专题计划要点 ..................................................... 10
二、可行性研究..................................................... 11
1引言 ............................................................. 11
1.1编写目的.................................................... 11
1.2背景........................................................ 11
1.3定义........................................................ 11
1.4参考资料.................................................... 11
2可行性研究的前提 ................................................. 12
3对现有系统的分析 ................................................. 13
4所建议的系统 ..................................................... 15
4.1 影响 ....................................................... 15
4.1.1对设备的影响.............................................. 15
4.1.2对软件的影响.............................................. 15
4.1.3对用户单位机构的影响...................................... 16
4.1.4对开发的影响.............................................. 16
4.1.5对经费开支的影响.......................................... 16
5技术条件方面的可行性 ............................................. 16
6经济可行性分析 ................................................... 16
6.1投资成本.................................................... 16
6.2收益........................................................ 17
6.3成本/收益分析:............................................. 18
7社会因素可行性分析 ............................................... 18
7.1法律方面的可行性............................................ 18
7.2用户使用可行性.............................................. 18
8结论 ............................................................. 18
三、需求分析....................................................... 19
1引言 ............................................................. 19
1.1编写目的.................................................... 19
1.2背景........................................................ 19
1.3参考资料.................................................... 19
2任务概述 ......................................................... 19
2.1目标........................................................ 19
2.2用户的特点.................................................. 20
3需求规定 ......................................................... 20
3.1对功能的规定................................................ 20
3.2对性能的规定................................................ 21
3.2.1精度 .................................................. 21
3.2.2时间特性要求 .......................................... 21
3.3数据存储.................................................... 22
3.4安全性...................................................... 22
3.5保密性...................................................... 22
3.6故障处理要求................................................ 23
4运行环境规定 ..................................................... 23
4.1设备........................................................ 23
4.2支持软件.................................................... 23
4.3接口........................................................ 24
4.4控制........................................................ 24
四、概要设计....................................................... 24
1引言 ............................................................. 24
1.1编写目的.................................................... 24
1.2背景........................................................ 25
1.3定义........................................................ 25
1.4参考资料.................................................... 25
2总体设计 ......................................................... 25
2.1需求规定.................................................... 25
2.2运行环境.................................................... 26
2.3基本设计概念和处理流程...................................... 26
2.4结构........................................................ 27
2.5人工处理过程................................................ 28
2.6尚未解决的问题.............................................. 28
3接口设计 ......................................................... 28
3.1用户接口.................................................... 28
3.2外部接口.................................................... 28
3.3内部接口.................................................... 28
4运行设计 ......................................................... 28
4.1运行模块组合................................................ 28
4.2运行控制.................................................... 29
4.3运行时间.................................................... 29
5系统数据结构设计 ................................................. 29
5.1逻辑结构设计要点............................................ 29
5.2物理结构设计要点............................................ 30
5.3数据结构与程序的关系........................................ 30
6系统出错处理设计 ................................................. 30
6.1出错信息及补救措施.......................................... 30
6.2系统维护设计................................................ 32
五、详细设计....................................................... 33
1引言 ............................................................. 33
1.1编写目的.................................................... 33
1.2背景........................................................ 33
1.3定义........................................................ 33
1.4参考资料.................................................... 33
2程序系统的结构 ................................................... 34
3程序1(标识符)设计说明.......................................... 34
3.1程序描述.................................................... 34
3.2功能........................................................ 36
3.3性能........................................................ 36
3.4输人项...................................................... 36
3.5输出项...................................................... 36
3.6算法........................................................ 36
3.7接口........................................................ 37
3.9存储分配.................................................... 37
3.10注释设计................................................... 37
3.11限制条件................................................... 37
3.12测试计划................................................... 37
3.13尚未解决的问题............................................. 37
六、项目总结....................................................... 38
1引言 ............................................................. 38
1.1编写目的.................................................... 38
1.2背景........................................................ 38
1.3定义........................................................ 39
1.4参考资料.................................................... 39
2实际开发结果 ..................................................... 39
2.1产品 ........................................................... 39
各种文件........................................................... 39
2.2主要功能和性能.............................................. 40
2.3基本流程.................................................... 41
2.4进度........................................................ 41
2.5费用........................................................ 41
3开发工作评价 ..................................................... 42
3.1对生产效率的评价............................................ 42
3.2对产品质量的评价............................................ 42
3.3对技术方法的评价............................................ 42
3.4出错原因的分析.............................................. 43
4经验与教训 ....................................................... 43
一、项目开发计划
1引言
1.1编写目的
明确的说明信息化管理系统的各种需求,界定系统实现功能的范围,指导系统设计以及编码,使用户了解软件产品。
本说明书的预期读者为:本软件的客户。
1.2 背景
开发软件名称:学生学籍信息管理系统。
项目开发者:湖北理工学院计算机科学系“学生学籍信息管理系统”开发小组。
组长:,其他成员:,,,。
用户单位:湖北理工学院计算机学院
1.3定义
1.4参考资料
(1) 钱乐秋,《软件工程》,清华大学出版社;
(2) 张海藩,《软件工程导论》(第四版),清华大学出版社;
(3) 王珊,《数据库原理及设计》,清华大学出版社;
(4) 赵池龙,《软件工程实践教程》,电子工业出版社;
(5) 耿祥义,张跃平.Java大学实用教程(第2版).电子工业出版社;
(6) 李兴华.JAVA开发实战经典.清华大学出版社,2009.8: 89-234
(7) 孙鑫. Java Web开发详解[M].电子工业出版社,2008: 59-199
2项目概述
2.1工作内容
在本项目中,首先召集小组所有成员和系统客户,共同商定系统功能,再由小组成员分工进行需求分析,分配工程流程,然后分配每个人的工作,例如,分配人员进行文档的编写,和代码的编辑,最后分配一个人进行综合。
2.2主要参加人员
2.3产品
2.3.1程序
提交程序的名称为“学生学籍信息管理系统”,本程序使用的是java语言,采用了SQLServer进行数据存储 。
2.3.2文件
只给名为“学生学籍信息管理系统”的成品,直接部署到服务器,安全方便。源代码等文件不交付。
除此之外,文档方面:项目开发计划,需求说明书,概要设计说明书,详细设计说明书等参考性文件会提供给客户。
2.3.3服务
培训安装:交货日起,为您提供最为贴心的培训安装服务,让您在日后该软件的使用上更为得心应手,行云流水,易如反掌,服务期限为3年。
维护: 交货日起,如若该产品出现问题,引起了您无法解决的问题,请随时与我们联系,我们会派遣出最权威的专家技术支持团队,第一时间解决问题,还你轻松好心情,服务期限为2年。
运行支持:交货日起,如若产品无法运行,请与我们联系,我们会极力解决。服务期1年。
2.3.4非移交的产品
源代码及中间过程文件,由行业惯例,不能交出,请谅解。
2.4验收标准
完成和客户商定的系统功能,达到用户合同需求的基本功能,使客户满意。
2.5完成项目的最迟期限
自该项目开工日起1个月。
2.6本计划的批准者和批准日期
本计划的批准者:
批准日期:2016年5月31日
3实施计划
3.1工作任务的分解与人员分工
:编码主力。:编码主力2号。:界面组织,多语言支持。,:文档编写+测试+帮助文档。
需求分析,设计:。
实现:全员。
测试,维护:,,,。
文件编制、审批、打印、分发工作:,,,。
用户培训工作:,,,。
软件安装工作:,,。
3.2接口人员
a. 负责本项目同用户的接口人员:客户。
b. 负责本项目同本单位各管理机构:湖北理工计算机学院相关人员。
c. 负责本项目同个份合同负责单位的接口人员:湖北理工计算机学院相关
人员。
3.3进度
实际计划进度与原定进度相比明显延迟,实际操作中充满了未知,开发过程中遇到的问题也不可能事先预知,有时会因为一些问题而耽误进程,这些都是开发时会出现的问题,因此实际进度会比计划进度慢。
3.4预算
人员5人。
时间半个月。
机时电费未知。
3.5关键问题
使用B/S形式的两层结构,由于现在的软件应用系统正在向分布式的Web应用发展,Web可以进行相关的业务处理,应用分不同的模块共享逻辑组件;这也就是目前应用系统的发展方向。
信息处理方法:
1、Tomcat主窗体登录功能
该功能主要实现系统的注册和登录,对系统的数据起到管理作用,主要涉及一些基本的页面跳转知识应用。
2、学生信息及成绩查询功能
该功能主要实现学生信息的查询和学生成绩的查询,在系统中起到对数据的检索,主要涉及一些基本的数据库查询操作。
3、班级信息管理功能
该功能主要实现班级的创建,删除和修改,在系统中起到对数据的实际操作,主要涉及一些基本的数据库添加,删除,修改等操作。
4、学生信息管理功能
该功能主要实现对应班级中学生的创建,删除和修改,在系统中起到对数据的实际操作,主要涉及一些基本的数据库添加,删除,修改等操作。
5、系统维护功能
该功能主要是用户退出登录的实现,该功能采用简单的页面跳转回登录界面的思想实现。
4支持条件
一人一台装了SQLServer,tomcat,eclipse的电脑即可。
4.1计算机系统支持
计算机,Windows操作系统,浏览器。
4.2需由用户承担的工作
用户需详细列举需求,并与我们签订合同,然后坐等完工,合同签订后不许随意修改。
4.3由外单位提供的条件
计算机学院提供机房、空调等设施。
5专题计划要点
分合同计划:谈好后不许随便修改。
开发人员培训计划:开发人员都已具备优良的技术水平,不需要额外培
训。
测试计划:每完成一个功能模块,就要由专属测试人员来测试程序健壮
性。
安全保密计划:源代码等不许外传。
质量保证计划:用户如发现产品问题,及时反馈,我们会及时解决。 系统安装计划:派遣最精锐的专家团队前往指导安装。
二、可行性研究
1引言
1.1编写目的
编写本报告的目的是研究本系统的总体需求、实现方案,并分析开发系统的可行性,为决策者提供是否开发该系统的依据和建议。
1.2背景
开发软件名称:学生学籍信息管理系统。
项目开发者:湖北理工学院计算机科学系“学生学籍信息管理系统”开发小组:
组长:,其他成员:,,,。
用户单位:湖北理工学院计算机学院
1.3定义
学生学籍信息管理系统能够提供方便完整的一系列对教室进行管理、合理分配资源等操作手段。对于庞大的教室资源如果人工进行管理过于复杂并且容易出错,但用学生学籍信息管理系统则方便了教室管理者对资源的合理分配利用,为该校提供全面的学生学籍管理的解决方案,解决传统人工管理方式效率低、保密性差,不利于查找、更新和维护的问题,极大地提高学生学籍管理的效率,节约教育经费,以适应学校信息化建设的发展趋势。
1.4参考资料
(1)
(2)
(3)
(4)
(5)
(6)
(7) 钱乐秋,《软件工程》,清华大学出版社; 张海藩,《软件工程导论》(第四版),清华大学出版社; 王珊,《数据库原理及设计》,清华大学出版社; 赵池龙,《软件工程实践教程》,电子工业出版社; 耿祥义,张跃平.Java大学实用教程(第2版).电子工业出版社; 李兴华.JAVA开发实战经典.清华大学出版社,2009.8: 89-234 孙鑫. Java Web开发详解[M].电子工业出版社,2008: 59-199
2可行性研究的前提
随着计算机应用的日益普及和深化,网上办公已经成为一种趋势。通过学生学籍管理系统的设计与开发,使学生学籍管理工作更加科学化、规范化、程序化,促使提高信息处理的速度和正确性,使学校的信息流程和流向更加清晰化、合理化,能够在第一时间内把握学生信息,以提高整体教学水平。
2.1要求
A、主要功能
1)、Tomcat主窗体登录功能
该功能主要实现系统的注册和登录,对系统的数据起到管理作用,主要涉及一些基本的页面跳转知识应用。
2)、学生信息及成绩查询功能
该功能主要实现学生信息的查询和学生成绩的查询,在系统中起到对数据的检索,主要涉及一些基本的数据库查询操作。
3)、班级信息管理功能
该功能主要实现班级的创建,删除和修改,在系统中起到对数据的实际操作,主要涉及一些基本的数据库添加,删除,修改等操作。
4)、学生信息管理功能
该功能主要实现对应班级中学生的创建,删除和修改,在系统中起到对数据的实际操作,主要涉及一些基本的数据库添加,删除,修改等操作。
5)、系统维护功能
该功能主要是用户退出登录的实现,该功能采用简单的页面跳转回登录界面的思想实现。
B、主要性能
提高学生学籍管理的效率,节约管理成本,增强学生管理的安全性。满足学校领导、教育管理单位、学生管理人员、教师和学生的不同层次和不同方面的需要。为学校将来的整体信息化建设提供必要的支持。
C、可扩展性
能够适应应用要求的变化和修改,具有灵活的可扩充性。
D、安全性
具有较高的安全性。系统对不同的用户提供不同的功能模块,只有具有一定权限的管理员用户才能允许修改教室的使用情况,只有具有高级权限的部门管理者或维护人员用户才能对用户进行管理,一般的用户只能查看教室的使用情况。
还应具有一定的保护机制,防止系统被恶意攻击,信息被恶意修改和窃取。有完善的备份机制,如果系统被破坏应该能快速恢复。
E、完成期限
2016年5月15日至2016年5月31日,共半个月。
2.2目标
所建议系统的开发目标包括:
减少人力与管理费用;
提高信息准确度;
改进管理和服务;
建立高效的信息传输和服务平台,提高信息处理速度和利用率。
2.3条件、假定和限制
建议软件寿命:10年。
进行系统方案选择比较的时间:为10天。
经济来源:湖北理工学院。
硬件条件:PC机6台,服务器3台,局域网,INTERNET。
软件条件:WINDOWS 2005Server和XP操作系统,OFFICE软件,浏览
器等。
2.4决定可行性的主要因素
本次可行性分析是按照软件工程的规范步骤进行的,即按复查项目目标和规模,研究目前正使用的系统,导出新系统的高层逻辑模型,重新定义问题这一循环反复的过程进行。然后提出系统的实现方案,推荐最佳方案,对所推荐的方案进行经济、技术、用户操作和法律的可行性分析,最后给出系统是否值得开发的结论。以上分析结果写城本文档。
成本/效益分析结果:效益>成本;
技术可行:现有技术可完成开发任务;
操作可行:系统能被现有的工作人员快速掌握并使用;
法律可行:所使用工具和技术及数据信息不违反法律。
3对现有系统的分析
3.1处理流程和数据流程
图3-1系统功能模块图
图3-2系统操作流程图
3.2工作负荷
随着数据量越来越大,现有的系统已明显不能适应目前的庞大数据量,系统工作负荷过大。
3.3人员
组长:
成员: ,,,
3.4局限性
经过严谨的分析,可知原有的系统存在很大的局限性,比如技术的过于陈旧,工作面向范围过于狭小,针对于个体。
4所建议的系统
所建议系统是B/S模式。用户使用该系统开始必须进行身份验证,当身份验证成功后才可以使用该系统。其实用户使用的只有有查询自己的相关信息,而老师则可以查询所有班级相关信息,管理员则能访问所有信息。
4.1 影响
4.1.1对设备的影响
由于所建议系统是基于浏览器和服务器的,并基于window平台,所以需要配备足够符合以上列出的各种软硬件条件的计算机和通信线路。系统失效后,服务器端需要利用备份的数据库恢复数据信息,要求要有足够的数据备份空间。
4.1.2对软件的影响
需要落实是否有符合本报告所列出的正版的软件环境,如果没有则需要购买。
4.1.3对用户单位机构的影响
投入使用前还需改进现有的管理模式。
4.1.4对开发的影响
开发过程需要用户进行密切的配合,准确阐明需求。
4.1.5对经费开支的影响
除了需要支付开发单位的有关费用外,每年还需要一定的运行维护费用(见经济可行性分析)。
5技术条件方面的可行性
当今,全国计算机越来越普及,几乎每个学校都配有计算机,为这套软件提供了硬件环境。以计算机为基础的管理系统使教师和管理者摆脱了那种繁杂、易错的记录及管理方式,通过计算机以及配套的软件,用户可以采用全新的方式从不同的地方存取各种信息。从客户/服务器方式上发展起来的框架结构为我们提供了开发本系统的基础。采用MySQL数据库以及使用MyEclipse和Tomcat作为系统开发的开发软件,采用Java,xml以及html等语言和jsp技术,为其提供完善的指令控制语句、类与对象的支持及丰富的数据类型,给开发高性能系统提供了有效保障,为开发满足客户要求的系统保证了代码的模块化,而代码模块化的提高,非常有利于以后对新系统的扩展与修改。同时SQL Server 2005是一套较为成熟的关系数据库管理系统,海量数据、企业管理器平台使得维护数据更简便,无论是性能还是管理上的性价比都是比较高的。MyEclipsel0是一款专门针对JSP开发的高效IDE环境,用户量大,开发效率高。Tomcat 5作为Web服务器的首选,配置简单,而且是免费的。JSP(JavaServer Pages)是一种动态网页技术标准,JSP在业界的口碑是安全和跨平台。JSP可以作为创建动态网页网站的一种可选技术,而且是创建商用网站的主要选择技术之一。
综上所述,本系统的设计与开发在技术上和硬件设备上的条件都是满足的,因此,它在技术上是可行的。
6经济可行性分析
6.1投资成本
一次性支出
(1)系统开发、建立费用共14万元。其中:
本系统开发期为3个月,需开发人员5人(不一定都是参加满3个月)。
根据软件系统的规模估算,开发工作量约为10人月,每人月的人工费
按4000元计算,开发费用为12万元。
书籍、读者等基础信息建立需要5人2个月即10人月,每人月的人工
费用按2000元计算,需2万元。
(2)硬件设备费共7万元,其中:微机4台约2万元;服务器2台及网络等设备费5万元。
(3)外购开发工具、软件环境费用共3万元。
(4)其他费费用共2万元。
一次性支出总费用:26万元。
经常性费用
主要是系统运行费用,假设本系统运行期10年,每年的运行费用(包括系统维护、设备维护等)5万元,按年利率5%计算如下表。
6.2收益
假设投入本系统,效率可以提高50%,以现有的工作人员20人计算,可减少10人,每人每月平均工资按2500元计算,每年节约人员工资10×12×0.25=30万元/年。按年利率5%计算,效益计算如下表。
系统收益总额为:231.6437万元。
6.3成本/收益分析:
在10年期内,系统总成本64.6082万元,系统总收益231.6437万元。 投资回收期:2+(64.6082-55.7823)/ 25.9151=2.34年;
纯收益:231.6437-64.6082=167.0355万元
从经济上考虑,开发本系统完全可行的。
7社会因素可行性分析
7.1法律方面的可行性
所有软件都用正版,技术资料都由提出方保管,数据信息均可保证合法来源。所以,在法律方面是可行的。
7.2用户使用可行性
使用本系统的人员均有一定计算机应用基础,系统维护员由计算机的专业人员担任,所有人员都要经过本系统的使用培训。经过简单培训人员就会熟练使用本软件。
8结论
本项目具有方便快捷等优势,投资回报利益大,使得教室管理实现电子化,符合社会信息化发展的需要,技术、经济、操作、法律方面都是可行的,可以开发本系统。
三、需求分析
1引言
1.1编写目的
学生学籍管理系统要实现的目标是为该校提供全面的学生学籍管理的解决方案,以解决传统人工管理方式效率低、保密性差,不利于查找、更新和维护的问题,极大地提高学生学籍管理的效率,节约教育经费,以适应学校信息化建设的发展趋势。
1.2背景
开发软件名称:学生学籍信息管理系统。
项目开发者:湖北理工学院计算机科学系“学生学籍信息管理系统”开发小组:
组长:,其他成员:,,,。
用户单位:湖北理工学院计算机学院
1.3参考资料
(1)
(2)
(3)
(4)
(5)
(6)
(7) 钱乐秋,《软件工程》,清华大学出版社; 张海藩,《软件工程导论》(第四版),清华大学出版社; 王珊,《数据库原理及设计》,清华大学出版社; 赵池龙,《软件工程实践教程》,电子工业出版社; 耿祥义,张跃平.Java大学实用教程(第2版).电子工业出版社; 李兴华.JAVA开发实战经典.清华大学出版社,2009.8: 89-234 孙鑫. Java Web开发详解[M].电子工业出版社,2008: 59-199 2任务概述
2.1目标
本系统通过强大的计算机技术给学籍管理人员和用户查询学籍信息情况带来便利。目标包括:
减少人力与管理费用;
提高信息准确度;
改进管理和服务;
建立高效的信息传输和服务平台,提高信息处理速度和利用率;
系统设计优良,界面设计精美、友好、快捷,人性化设计,后台管理功
能强大、效率高;
管理学生信息,同时管理学生的成绩以及课程情况。
2.2用户的特点
本软件的最终用户是面向软件管理员、老师和同学等,他们都具有一定
的计算机应用基础,可以比较熟练操作计算机。
系统维护人员为计算机专业人员,熟悉数据库、操作系统、网络维护工
作。维护人员为间隔性用户。
3需求规定
3.1对功能的规定
学生学籍信息管理系统能够提供方便完整的一系列对学籍进行管理等操作手段。对于庞大的学生信息如果人工进行管理过于复杂并且容易出错,但用学生学籍信息管理系统则方便了管理者对信息的维护。
(1)用户登录系统功能:为用户数据设置安全保障功能,只有通过注册并登录验证的用户,才能成为系统管理员用户。系统管理员能查询、修改、删除所有信息。
(2)用户录入数据功能:系统为系统管理员提供对所有信息的录入功能。
(3)用户查询数据功能:系统为合法用户提供查询的功能,可以对数据库的信息进行查询。
(4)用户维护数据功能:为合法用户提供查询及相应的修改功能和对所有信息的修改删除功能。
(5)用户退出系统功能:结束并关闭系统。
3.2对性能的规定 3.2.1精度
时间
精确到日 数量
要求精确到个人信息
3.2.2时间特性要求
由于系统的数据量比较大,故其响应时间、更新处理时间、转换时间及运行时间均较慢,应特别注意程序响应速度(数据传输时间不要太长,均在用户可接受的时间范围之内)。 登录连接
包括环境的初始化,时间不超过3s 数据录入
平均录入一个词条不超过2s 敏感过滤时间每次不超过0.1s 数据添加
响应时间不超过2s 数据修改
响应时间不超过2s 数据删除
响应时间不超过2s 数据读出
响应时间不超过2s 数据查询
10000条记录以下响应时间不超过10s
10000-100000响应时间不超过20s 100000-1000000响应时间不超过35s 1000000以上响应时间不超过50s 数据统计
10000条记录以下响应时间不超过15s 10000-100000响应时间不超过25s 100000-1000000响应时间不超过40s 1000000以上响应时间不超过60s
3.3数据存储
保证数据的安全性,减少出现数据灾难的可能性,比如数据在传输过程
中丢失或发生错误
增加出现数据灾难或故障时进行数据修复的能力
3.4安全性
数据一致性
保存到数据库中的数据与用户录入数据一致 数据库中各相关数据必须保持一致性和平衡性 保证查询统计的数据正确性和一致性数据存储
保证数据的安全性,减少出现数据灾难的可能性,比如数据在传输过程中丢失或发生错误
增加出现数据灾难或故障时进行数据修复的能力 数据安全性
数据修改要记录修改日志
对数据的处理要受权限和级别控制
3.5保密性
注意用户数据的保密设计
注意本系统应用程序的保密设计 不同用户的权限不同
3.6故障处理要求
(1)有应用系统出错提示和数据库系统出错提示,提示语言为中文。 (2)使用过程中不能产生死锁现象。
(3)数据耗时过长时,等待时给出提示信息通知用户。
(4)数据库有可靠易用的备份措施,一旦发生故障时,能及时恢复和维护。
4运行环境规定
4.1设备
服务器
(1)处理器(CPU):Pentium 900M (推荐Pentium 4 1.2G) (2)内存容量(RAM):至少256M(推荐 512M) 客户端
(1)处理器(CPU):Pentium 133M 或更高 (2)内存容量(RAM):64M或更高
4.2支持软件
数据库服务器端
(1) 操作系统:Microsoft Windows 2000
(2) 数据库管理系统:SQL SERVER,配置TCP/IP协议 Web服务器端
(1) 操作系统:Microsoft Windows 2000 (2)Tomcat 5.0管理器
(3)MyEclips 8.0,配置TCP/IP协议 客户端
(1) 操作系统:Windows 98/2000/2003/XP
(2) Web浏览器:Internet Explorer 5.0以上或Netscape 4.0以上,
配置TCP/IP协议
4.3接口
硬件接口
考虑到大量数据的备份等要求,需要保持与磁带机和光盘刻录机的接口,这较易实现。 软件接口
这里,主要考虑软件与操作系统、数据库管理系统的接口,以及局域网和互联网软件之间的数据交换。考虑到文档处理时有可能需要较常用的办公软件。例如Microsoft的Office系列,所以应尽量实现它们之间的数据格式的自动转换。
4.4控制
由于本系统采用目前的主流JSP技术,对程序的运行和控制都没有特殊要求。
四、概要设计
1引言
1.1编写目的
主要任务是把需求分析得到的DFD转换为软件结构和数据结构。将本系统按功能进行模块划分、建立模块的层次结构及调用关系、确定模块间的接口及人机界面等。同时还包括数据特征的描述、确定数据的结构特性、以及数据库的设计。即确立本系统的逻辑模型。 概要设计,又称架构设计或高层设计。除了设计、开发人员外,业务架构师 和 测试经理 也需要掌握,但用户单位并不关心架构设计。
1.2背景
开发软件名称:学生学籍信息管理系统。
项目开发者:湖北理工学院计算机科学系“学生学籍信息管理系统”开发小组:
组长:,其他成员:,,,。
用户单位:湖北理工学院计算机学院
1.3定义
1.4参考资料
(1) (2) (3) (4) (5) (6) (7)
钱乐秋,《软件工程》,清华大学出版社; 张海藩,《软件工程导论》(第四版),清华大学出版社; 王珊,《数据库原理及设计》,清华大学出版社; 赵池龙,《软件工程实践教程》,电子工业出版社;
耿祥义,张跃平.Java大学实用教程(第2版).电子工业出版社; 李兴华.JAVA开发实战经典.清华大学出版社,2009.8: 89-234 孙鑫. Java Web开发详解[M].电子工业出版社,2008: 59-199
2总体设计
2.1需求规定
1、用户登录教室信息管理系统后,进入主界面可看到本系统使用说明。 2、如果是一般客户登陆,就只有基本的查询功能,包括根据课程查询、教室查询、老师查询等。
3、如果是系统管理员登陆,则可以进入系统内的数据合法进行增、删、改、查。
4.如果是游客,则需要注册用户,成为合法的用户才可以进入系统。
2.2运行环境
硬件环境:系统运行的硬件环境:CPU为Pentium以上系列,内存215MB,所需硬盘空间约200MB
软件环境:操作系统采用Microsoft Windows平台,从Windows 98、Windows XP、Windows 2003到Windows 7等各种版本都可能存在。前台开发环境采用的Eclipse, 中心数据库采用Microsoft的SQL SERVER 2005。
2.3基本设计概念和处理流程
设计概念:基本实现教室管理的各种操作,能满足基本要求,同时设置不同的权限,方便管理员使用。
处理流程:
E-R图:
2.4结构
用一览表及框图的形式说明本系统的系统元素(各层模块、子程序、公用程序等)的划分,扼要说明每个系统元素的标识符和功能,分层次地给出各元素之间的控制与被控制关系。如图所示:
2.5人工处理过程
当需要进行临时调度,则需要人工进行修改。
2.6尚未解决的问题
本系统理想上希望有三种权限,但由于涉及比较麻烦,同时考虑各种原因,没有设计第三种权限。
3接口设计
3.1用户接口
本系统仅需要提供管理员的用户名和密码,登陆成功,系统提示成功,否则提示失败。由于游客用户可自行注册,所以不需要提供游客的用户名及密码。
3.2外部接口
本系统需要运行在Eclipse平台上,所以需要系统配配置好Apache 服务器,同时打开tomcat服务。
3.3内部接口
本系统内部使用了一些存储过程和触发器,当用户登录时,默认触发后台数据库服务器中的存储过程的执行。所以在程序中需要指出存储过程的名字以及类型。
4运行设计
4.1运行模块组合
本系统仅仅使用的简单的JSP技术实现。当登录时,不仅使用了前台的用户交互界面,同时也会调用后台存储过程的执行,所以把两者模块组合到一起。此组合需要后台代码调用数据库系统的支持。
4.2运行控制
读者用户或管理员在登陆或注册时会产生此组合。
4.3运行时间
由于是内部存储过程的调用,效率比较高。所以消耗的时间比较短,基本忽略不计。
5系统数据结构设计
5.1逻辑结构设计要点
用户信息表:包括的数据项有用户ID、用户名、密码等;如表2-8
所示。
学生信息表:包括的数据项有学生ID、学生姓名、学生性别、学生
年龄、所在班级ID等;如表2-9所示。
成绩信息表:包括的数据项有成绩表ID、科目类型、该科分数、对
应学生ID等;如表2-10所示
班级信息表:包括的数据项有班级ID、班级名称等;如表2-11所示 注:pri表示主键,auto_increment表示对主键id自动增加编号。
5.2物理结构设计要点
给出本系统内所使用的每个数据结构中的每个数据项的存储要求,访问方法、存取单位、存取的物理关系(索引、设备、存储区域)、设计考虑和保密条件。
表中所使用的数据的存储都是基于数据库管理系统所支持的数据类型加上一些用户自定义约束定义的,访问方法基本都是公开的。但有的字段如密码应该进行加密处理的。
5.3数据结构与程序的关系
物理数据结构主要用于各模块之间函数的信息传递。接口传递的信息将是以数据结构封装了的数据,以参数传递或返回值的形式在各模块间传输。出错信息将送入显示模块中,机票结构,帐单结构,送入打印准备模块中准备打印格式。
6系统出错处理设计
6.1出错信息及补救措施
1.在项目执行的过程中,如果优先删除班级,则班级中的学生信息没有被删除,由于班级与学生之间建立了关联,因此在删除班级信息时会由于约束条件而
报错,导致删除失败。
解决办法:通过在项目中添加容错机制,在删除之前对班级信息中关联的学生信息等子项目进行遍历删除,最后再删除班级信息。
相关代码:
public boolean deleteClassByCid(int cid){
/**
* 约束错误处理 */
boolean flag = false; conn = DBConnection.conn(); try {
StudentDAO sdao = new StudentDAO();
list
=
List
sdao.queryByClassStudent(cid);
for (StudentDTO li:list) { }
String sql = "delete from tb_class where cid =?"; ps = conn.prepareStatement(sql); ps.setInt(1, cid); flag = !ps.execute();
int sid = li.getSid(); sdao.deleteStudentBySid(sid);
} catch (SQLException e) { }
return flag;
// TODO Auto-generated catch block e.printStackTrace();
}
2.当计算机重启之后,再次打开项目时,运行程序,提示TCP/IP关闭。 解决办法:打开sql configuration manage,单击sql server 2005网络配置,将TCP/IP设置为启用即可。
如下图所示:
6.2系统维护设计
本系统属于测试版本,在投入运行之前会进行一些测试,完成之后会定期做一次测试,进行出错检测或者是完善系统。
五、详细设计
1引言
1.1编写目的
此说明书目的在于明确说明信息化管理系统的具体功能实现,界定系统实现功能的范围,指导系统设计以及编码。
本说明书的预期读者为:本软件的开发者
1.2背景
开发软件名称:学生学籍信息管理系统。
项目开发者:湖北理工学院计算机科学系“学生学籍信息管理系统”开发小组:
组长:,其他成员:,,,。
用户单位:湖北理工学院计算机学院
1.3定义
1.4参考资料
(1) (2) (3) (4) (5) (6) (7)
钱乐秋,《软件工程》,清华大学出版社; 张海藩,《软件工程导论》(第四版),清华大学出版社; 王珊,《数据库原理及设计》,清华大学出版社; 赵池龙,《软件工程实践教程》,电子工业出版社;
耿祥义,张跃平.Java大学实用教程(第2版).电子工业出版社; 李兴华.JAVA开发实战经典.清华大学出版社,2009.8: 89-234 孙鑫. Java Web开发详解[M].电子工业出版社,2008: 59-199
2程序系统的结构
本系统结构如图2-1所示:
图2-1
3程序1(标识符)设计说明
3.1程序描述
1)本段程序的目的登录模块,判断用户输入的用户名和密码是否是已存在的,如果是则进入系统,否则登录失败。
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException { String name=request.getParameter("username"); String pass=request.getParameter("password"); UserDAO udao=new UserDAO(); //调用方法 把页面上接收的姓名 和密码 存进去 UserDTO user=udao.getUser(name,pass); if(user!=null){ //request.getSession().setAttribute("user", user); if (user.getUpass().equals(pass)) { request.getSession().setAttribute("user", user); UserDTO u = (UserDTO) request.getSession().getAttribute("user");
request.getRequestDispatcher("main.jsp").forward(request, response);
} else { request.setAttribute("msg", "密码错误");//跳转 request.getRequestDispatcher("login.jsp").forward(request, response);
}//跳转 }else{ request.setAttribute("msg", "登录失败"); //跳转
request.getRequestDispatcher("login.jsp").forward(request, response); } }
2)本段程序的目的注册模块,判断用户输入的用户信息是否是已存在的,如果是则注册成功,否则注册失败。
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException { request.setCharacterEncoding("utf-8"); response.setCharacterEncoding("utf-8"); //接收页面上传递过来的值 参数是输入框 name标签的值 String name=request.getParameter("username"); String pass=request.getParameter("password"); System.out.println("页面上接收的值:"+name+pass); //把页面上接收的值 封装成一个对象 UserDTO user=new UserDTO(0, name, pass); //调用注册的方法 UserDAO udao=new UserDAO(); boolean b=udao.addUser(user); if(b){ //键 值
response);
response);
}
request.setAttribute("msg", "注册成功请登录");
request.getRequestDispatcher("login.jsp").forward(request,
}else{ //键 值 request.setAttribute("msg", "注册失败"); request.getRequestDispatcher("Register.jsp").forward(request, }
3.2功能
1)功能是判断用户是否拥有进入系统的权限。如果用户名密码正确,即可进
入系统。
2)功能是判断注册的用户信息是否合法的,合法即可注册成功,否则失败。
3.3性能
说明对该程序的全部性能要求,包括对精度、灵活性和时间特性的要求。 灵活性:程序通过改变一下存储过程的名字即可通用于执行任何一个过程,灵活性较高。
时间特性:由于执行的是数据库中的过程,所以效率较高,所用时间较短。
3.4输人项
本段程序需要用户输入用户名和密码。注册用户信息,需要输入用户的个人信息及用户名密码等。
3.5输出项
登录功能模块的返回值是执行了过程之后产生的结果,如果用户名密码存在于数据库中则登录成功,否则返回登录失败。
注册功能模块的返回值是执行了过程之后产生的结果,如果用户信息存在于数据库中则注册失败,否则返回注册成功
3.6算法
首先建立连接,然后通过之前定义的连接字符串绑定到所建立的连接。通过字符串的比较判断用户输入的是否正确。然后打开连接,执行命令,最后返回结果。
3.7接口
传递参数采用的是建立一个参数数组, 然后通过循环为其赋值。
3.9存储分配
本段程序需要保存一个连接池中的连接,一个命令,同时一个数组长度的参数和最后一个返回值。消耗内存较少。
3.10注释设计
本段程序属于数据库访问代码,需要注释的是模块首部的注释,以及在创建各个连接,命令以及执行命令,指定过程的返回值时需要作出简单的逻辑注释即可。
3.11限制条件
由于存储过程是针对某一个数据库管理系统的,所以所指定的过程函数只能现定于Sqlserver的DBMS并且只用于本段代码。如果需要适用于其他程序,必须修改过程中相应的代码。
3.12测试计划
首先测试的是数据库的连接,如果DB的连接没有建立,是无法执行程序的。然后输入错误的用户名,看返回值是否正确。当输入正确用户名,再输入错误密码,看返回值是否正确。当输入正确的用户名和密码时,看返回值是否正确。
3.13尚未解决的问题
本系统理想上希望有三种权限,但由于涉及比较麻烦,同时考虑各种原因,没有设计第三种权限。
六、项目总结
1引言
1.1编写目的
随着科学技术、管理方法的不断进步,传统的办公方式、方法和手段已经不能适应现代化管理的需要,作为培养高质量合格人才为宗旨的高等学校,总是走在科技的最前沿,学籍管理的计算机化已成为高校管理现代化、决策科学化的一个重要环节,是开创学籍管理工作新局面的必由之路。
学籍管理指学校对学生所获得的学籍资格进行管理。凡经过升学考试或按规定手续被正式录取的学生,入校办理注册手续后即取得该校学籍,它标志着学生取得了参加学习的资格。学籍是组织管理学生的客观依据。但传统的学籍管理模式和管理手段不仅大量地消耗人力、物力,同时,还存在诸多弊端,时常影响教学秩序,阻碍教学改革的深化,难以保证该项工作应具有的严肃性。
近年来高校在社会对人才需求的压力和动力下,新增了不少专业也废弃了不少专业,人才培养模式也随着社会的需求不断更新,同时高校间的竞争也处于白热化的地步,管理领先一步就会令学校领域非常有利的地位,所以管理手段就必须要更新。使用先进高效的网络学籍管理系统会极大地优化高效的教务工作的管理。
当前高校学籍管理的弊端主要表现在两方面:第一,工作安排缺乏系统性、需要的教务管理人员比较多、人工管理的情况下时有错误发生;第二,整个管理体系和局面时常处于失控的境地。每个教务管理人员对学籍管理政策理解的差异导致了工作上的不协调,同时这种分散的管理直接造成了学籍管理工作无法监督的局面,很难保证学籍工作的严肃性和公平原则,往往使置高校学籍管理工作于非常尴尬的地步,也给社会带来了很大的负面影响。《高校学籍管理系统》主要为了解决的一个核心问题是信息共享。学生从入学、不断学习到毕业的几年时间了,在校的学习情况是一组非常复杂的数据;对教师教学业绩的考核和学校教学策略的制定都依赖对学生成绩的分析;用人单位希望得到学生在校学习的真实成绩。所有这些需求都围绕学生的学籍信息不断地进行加工,而且好多数捃都是直接重复的,基于局域网的B/S学籍管理系统可以很好地解决这些问题。
1.2背景
开发软件名称:学生学籍信息管理系统
项目开发者:湖北理工学院计算机科学与技术系“学生学籍信息管理系统”开发小组;
组长:,其他成员:,,,。
用户单位:湖北理工学院计算机学院
主要采用JSP网站开发技术,系统运行在SQLServer 2005之上,应用服务
器为 Windows server 2003之上。
1.3定义
1.4参考资料
(1) (2) (3) (4) (5) (6) (7)
钱乐秋,《软件工程》,清华大学出版社; 张海藩,《软件工程导论》(第四版),清华大学出版社; 王珊,《数据库原理及设计》,清华大学出版社; 赵池龙,《软件工程实践教程》,电子工业出版社;
耿祥义,张跃平.Java大学实用教程(第2版).电子工业出版社; 李兴华.JAVA开发实战经典.清华大学出版社,2009.8: 89-234 孙鑫. Java Web开发详解[M].电子工业出版社,2008: 59-199
2实际开发结果 2.1产品
各种文件
2.2主要功能和性能
1、功能
1、Tomcat主窗体登录功能
该功能主要实现系统的注册和登录,对系统的数据起到管理作用,主要涉及一些基本的页面跳转知识应用。
2、学生信息及成绩查询功能
该功能主要实现学生信息的查询和学生成绩的查询,在系统中起到对数据的检索,主要涉及一些基本的数据库查询操作。
3、班级信息管理功能
该功能主要实现班级的创建,删除和修改,在系统中起到对数据的实际操作,主要涉及一些基本的数据库添加,删除,修改等操作。
4、学生信息管理功能
该功能主要实现对应班级中学生的创建,删除和修改,在系统中起到对数据的实际操作,主要涉及一些基本的数据库添加,删除,修改等操作。
5、系统维护功能
该功能主要是用户退出登录的实现,该功能采用简单的页面跳转回登录界面的思想实现。 2、性能 1)、支持B/S结构; 2)、 兼容主流浏览器;
2.3基本流程
图6-3 基本流程图
2.4进度
实际计划进度与原定进度相比明显延迟,实际操作中充满了未知,开发过程中遇到的问题也不可能事先预知,有时会因为一些问题而耽误进程,这些都是开发时会出现的问题,因此实际进度会比计划进度慢。
2.5费用
开发过程主要花费是个人时间的消耗,计算机使用时间等,因为项目的最后完成和计划内时间相隔不少天,所以话费的时间会比计划的要多。主要原因还是时间仓促,组员的知识匮乏,组员之间的协调工作做的不是很好,中途遇到问题无法解决,讨论也没有很好的结果,导致整体开发效率降低。
3开发工作评价
3.1对生产效率的评价
开发大约花时间每天平均编码三小时。
开发过程中有时编写错误或者某个符号错误导致运行错误,都会耽误时间,浪费资源。
3.2对产品质量的评价
在开发学生学籍信息管理系统的过程中,我们综合考虑了系统的时间效率、空间效率、维护代价和各种用户要求进行了权衡。完全依赖于所选用的RDBMS,而我们采用的是SQL Server 2005,主要从定量估算各种方案的存储空间和维护代价入手,对估算结果进行权衡、比较。我们需要从各个方面来查找问题并解决问题,总体上比较符合要求。
3.3对技术方法的评价
使用B/S形式的两层结构,由于现在的软件应用系统正在向分布式的Web应用发展,Web可以进行相关的业务处理,应用分不同的模块共享逻辑组件;这也就是目前应用系统的发展方向。
信息处理方法:
1、Tomcat主窗体登录功能
该功能主要实现系统的注册和登录,对系统的数据起到管理作用,主要涉及一些基本的页面跳转知识应用。
2、学生信息及成绩查询功能
该功能主要实现学生信息的查询和学生成绩的查询,在系统中起到对数据的检索,主要涉及一些基本的数据库查询操作。
3、班级信息管理功能
该功能主要实现班级的创建,删除和修改,在系统中起到对数据的实际操作,主要涉及一些基本的数据库添加,删除,修改等操作。
4、学生信息管理功能
该功能主要实现对应班级中学生的创建,删除和修改,在系统中起到对数据的实际操作,主要涉及一些基本的数据库添加,删除,修改等操作。
5、系统维护功能
该功能主要是用户退出登录的实现,该功能采用简单的页面跳转回登录界面的思想实现。
3.4出错原因的分析
本次实习旨在对数据库设计过程的培训和熟悉, 进而养成数据库设计的良好方法。 由于 时间有限,并且对真正的业务流程不是十分熟悉,因此难免出现偏差,而只是对具体业务的 简单模拟。 因此存在的问题是与实际的业务处理不太符合, 功能不太完善。 在逻辑设计阶段, 对课程表信息在数据库中的存储方式不太清楚。 因此在以后研究中应该更加详细地熟悉具体业务,进而对系统进行完善和补充。
4经验与教训
通过这次的软件工程的大作业,我们小组进行了很长时间的讨论。通过这次软件工程论文,我拓宽了知识面,锻炼了能力,综合素质得到较大提高。利用课余时间,通过理论与实际的结合、人与人的沟通,进一步提高思想觉悟。尤其是观察、分析和解决问题的实际工作能力,培养了我成为能够主动适应社会主义现代化建设需要的高素质的复合型人才。
作为整个学习体系的有机组成部分,老师虽然给了很长的时间准备,但并不具有绝对独立的意义。它的一个重要功能,在于运用学习成果,检验学习成果。运用学习成果,把课堂上学到的系统化的理论知识,尝试性地应用于实际设计工作,并从理论的高度对设计工作的现代化提出一些有针对性的建议和设想。检验学习成果,看一看课堂学习与实际工作到底有多大距离,并通过综合分析,找出学习中存在的不足,以便为完善学习计划,改变学习内容与方法提供实践依据。对我们计算机专业的学生来说,实际能力的培养至关重要,而这种实际能力的培养单靠课堂教学是远远不够的,必须从课堂走向实践。这也是一次预演和准备毕业设计工作。
通过这个软件工程的课程设计,让我找出了自身状况与实际需要的差距,并在以后的学习期间及时补充相关知识,为求职与正式工作做好充分的知识、能力准备,从而缩短从校园走向社会的心理转型期。
在课余时间里,我们普遍感到不仅实际动手能力有所提高,更重要的是通过对软件开发流程的了解,进一步激发了我们对专业知识的兴趣,并能够结合实际存在的问题在专业领域内进行更深入的学习。
软件工程课程虽已结束,但我对于软件工程的学习才刚刚开始。我体会到项目管理的重要性,随着软件规模、复杂度的不断增加,项目开发中更多的是协作、管理和控制。我学习到很多一般性的方法,例如:需求获取、模块化、计划等等。同时,我也认识到使用计算机解决实际问题的复杂性,人们认识表达的过程不断反复、逐步深化,软件工程方法要提供给程序员们一种更加有效的对客观世界问题域进行形式化的过程方法。
软件工程成绩评定表