监狱管理系统

监狱管理系统摘要当今社会正快速向着信息化社会前进 信息自动化的作用也越来越大 慢慢的使人们从繁杂的事务中解放出来 提高了大家的工作效率

当今社会正快速向着信息化社会前进,信息自动化的作用也越来越大,慢慢的使人们从繁杂的事务中解放出来,提高了大家的工作效率。目前很多监狱的管理还处于人工管理和半人工管理的阶段,不仅效率低下,不易于保存和查找信息和数据,还很明显的已经远远落后于当今技术的发展。并且人工管理的弊端也愈来愈明显,由于不可避免的人为因素,造成数据的遗漏、误报,而造成监狱重大失误的事例层出不穷。一旦遗失或损坏,很难进行恢复。

监狱实行计算机信息化管理,有着储存信息量大,速度快等许多优点,使用计算机对监狱的信息进行管理,具有手工管理所无法比拟的优点。例如:查找方便、掌控性强、可靠性高、存储量大、保密性好、寿命长、成本低等。它在提供给工作人员的处理信息及时快捷的同时,也提高了工作人员的自身素质,这些优点能够极大地提高监狱管理的各方面效率,同时也是使罪犯能够在监狱顺利完成服刑并成功回到社会的重要保证。

对于一个好的监狱管理系统,它的狱政管理系统又是重中之重。在监狱依法执行刑罚的过程中,狱政管理贯彻始终。它是指监狱最基本的、最常规的落实行刑的实践活动。因此我利用计算机提供给我们的有利信息,做出了这个香兰男子监狱狱政管理系统。狱政管理系统是现在各大中型监狱管理工作不可缺少的一部分,也是推动监狱管理走向科学化、规范化的必要条件。

关键词 监狱;狱政管理;JSP;SQL Server 2005;JDBC

Abstract

Today's society is rapidly advancing toward the information society, the role of information has become increasingly automated, slowly so that people from the complex to liberate them and improve their efficiency. At present, many still in the manual management of the prison management and the stage of semi-manual management is not only inefficient, not easy to save and find information and data, is still far behind was the development of today's technology. And the shortcomings of manual management become apparent, due to the inevitable human factor, resulting in missing data, false positives, causing heavy losses to business cases are legion. Once the lost or damaged, it is difficult to recover.

Prison implementation of computer information management, storage of large amount of information with speed and many other advantages, the use of computer information on prison management, management manual with incomparable advantages. For example: easy to find, control of high reliability, large memory capacity, security and good, long life and low cost. It is in the provision of information to staff timely and efficient processing, but also improve their own quality of staff, these benefits can greatly improve the efficiency of all aspects of prison management, but also enable criminals to the prison and successfully returned to the successful completion of Fuxing an important guarantee for social.

For a good prison management system, and its prison administration system is a top priority. In prison during the execution of sentences according to law, prison administration consistent. It refers to the prison, the most basic, most conventional implementation of the execution of the practice. So I use the computer favorable information provided to us to make this XiangLan man prison administration system. Prison administration prison system is the management of large and medium now an integral part of the prison administration is to promote scientific and standardized the necessary conditions.

Key words Prison  Prison administration  JSP  SQL Server 2005  JDBC

目    录

摘要

Abstract

第1章 绪论

1.1 课题背景

1.2 目的和意义

1.3 系统设计思想

第2章 系统可行性研究

2.1 系统开发目标分析

2.2 系统业务流程分析

2.3 系统可行性分析

2.3.1 经济可行性分析

2.3.2 技术可行性分析

2.3.3 运行可行性分析

2.4 本章小结

第3章 需求分析

3.1 MIS系统的产生和发展情况

3.2 香兰男子监狱狱政管理系统的需求分析

3.2.1 数据流图

3.2.2 数据字典

3.3 本章小结

第4章 总体设计

4.1 系统模块总体设计

4.2 数据库设计

4.2.1 数据库设计概述及基本步骤

4.2.2 数据库数据分析

4.2.3 数据库的详细设计

4.3 本章小结

第5章 详细设计

5.1 系统运行平台设置

5.2 开发工具简介

5.3 登陆页面步骤设计

5.4 系统主页设计

5.5 日常管理基本功能设计

5.5.1 罪犯管理功能设计

5.5.2 通信管理添加功能设计

5.5.3 警戒设施分配功能设计

5.6 特殊事件管理功能设计

5.6.1 罪犯释放管理申请功能设计

5.6.2 狱内调配审批功能设计

5.7 人力管理

5.7.1 用户管理添加用户功能设计

5.7.2 个人信息管理修改个人口令功能设计

5.8 本章小结

第6章 系统测试与性能分析

6.1 软件测试概念

6.2 测试的目的与内容

6.2.1 测试的目的

6.2.2 测试的内容

6.3 软件测试计划

6.3.1 测试步骤

6.3.2 测试方法与技术

6.4 本系统测试

6.4.1 黑盒测试

6.4.2 白盒测试

6.5 本章小结

结论

致谢

参考文献

附录1

附录2

随着中国步入了21世纪,为了全面推进中国监狱实现由传统向现代转型、传承“挽救人、改造人、造就人”的社会主义行刑文明、努力提高改造罪犯质量,监狱中有一个现代的、科学的、严谨的监狱管理系统是必须的。一个好的监狱管理系统,可以挽救那些因一时糊涂而误入歧途的罪犯,也可以改造那些一心想重新做人的罪犯,同样还可以造就那些对新生活有坚定信念的罪犯。

对于一个好的监狱管理系统,它的狱政管理系统又是重中之重。

狱政管理理念源于监狱行刑理念,根置于现代监狱的价值理念。传统狱政管理理念由于受到历史的局限性以及我国长期封建社会的影响,监狱的“惩罚”、“重刑”、“报应”思想意识根深蒂固,“罪犯-监禁”、“管束-剥夺”、“再造-劳役”似乎成为一条约定俗成的定律。而现代监狱的价值理念的根本是以人为中心,体现监狱管理的“人”的思想,以法治、科学、人文关怀和效率作为监狱工作的灵魂内在价值追求。

在监狱依法执行刑罚的过程中,狱政管理贯彻始终,指监狱最基本的、最常规的落实行刑的实践活动。只有依靠狱政管理,狱警才能有效地对每一个罪犯的情况随时进行了解、监督、分析、管理,充分了解每个罪犯的实际状况和内心思想。这样可以对维护监管安全,依法惩罚罪犯,矫治罪犯恶习,规范狱内生活秩序,改造罪犯成为新人等方面都发挥着极其重要的作用,也为罪犯出狱能尽快融入社会、为社会做贡献起到了积极的作用。

随着管理信息系统在各个行业中的广泛应用,该系统对监狱管理的影响也会越来越大,它对监狱狱政管理方面的贡献是无可替代的。即一个方便用户使用的软件应该具备软件体积小,操作界面友好,基本功能稳定,运行速度快等特性。

  1. 思想和方法性:管理的进步主要体现为管理思想和相应管理模式与方法的进步。管理软件本身是管理思想和管理模式的载体,它具有双重核心,即:管理思想、信息技术。软件是具体的,除了带给管理思想外,更多地表现为基于思想的管理模式和方法。管理软件带给企业操作方便的业绩考核体系和人才度量指标;决策支持软件使决策模型真正走进了企业的日常管理中。
  2. 正规性:管理正规化是管理通向更高层次的台阶。实现管理正规化有多条路径,软件能够有效地促进这一进程。监狱狱政管理规则、标准、程序和制度都可以在软件及其相关系统中体现出来。更重要的是,软件对管理正规化的促进在很大程度上避免了形式主义。由于软件是一个实时应用系统,管理规范透过软件溶入了监狱的业务和管理流程,较之纸质的规章和无形的规范而言,更容易被贯彻执行。
  3. 实用性:本系统以用户需求为目标,以方便用户为原则。根据实际的需求分析,应该设计并实现一个先进的系统。从用户角度出发尽可能的方便用户使用,满足基本的用户需要,尽可能降低使用前的培训和使用中的维护时间并充分体现办公一体化的优势,使其具有实用性。
  4. 移动性:本系统具备了很好的移动性,确保不同的使用者都能以最佳的方式来使用所需的系统,普通使用者只需要使用浏览器就可以在任何地方通过身份权限确认后就可以进行相关操作。
  5. 先进性:本设计将充分应用现有成熟的计算机技术、网络技术、软件开发技术,为用户提供高性能的系统。系统采用B/S开发模式,采用其所长SQL Server2005数据库,开发工具使用MyEclipse、Dreamweaver等等,可以方便的满足此系统的使用和管理上的需要。
  6. 高安全性:在严谨设计中,将充分利用网络软、硬件提供的各种安全措施,既可以保证用户共享资源,同时也可保证关键数据的高安全性等等。
  7. 可维护性:系统的设计要求方便维护,包括硬件的维护,软件的维护(更改,升级等)和网络的维护。
  8. 可扩展性及灵活性:系统的设计以方便未来业务的扩展和系统扩充为目标,系统要求能够方便的升级,充分保护系统的投资。
  9. 智能性:系统在设计时,充分考虑系统运行的智能性,在使用系统一段时间后,系统可以适应于任何局域网。

系统可行性研究是在系统进入正式设计开始之前,对该项系统实施的可能性、有效性、技术方案及运行策略进行具体的、深入的、细致的技术论证和经济评价,以求确定一个在技术上合理、运行上可行、经济上合算的最优方案。

香兰男子监狱狱政管理的运营过程是以罪犯管理为核心,综合考虑信息化普及过程中出现的问题,结合实体监狱的运营模式,从实际出发,为达到本系统开发成功后能使用方便、操作灵活等设计需求,在设计时应满足以下目标。

1.界面设计简洁友好,操作方便快捷,架构清晰明了。

2.显示罪犯的详细信息,方便用户了解罪犯,并进行合理分析和管理。

3.对用户输入的数据,系统将进行严格的数据检验,尽量排除人为错误的发生。

4.对用户所拥有的操作资源进行严格的掌控,具有灵活多变的权限管理。

    • 业务流程分析

通过对现实生活中业务进行调查及对香兰男子监狱狱政管理流程进行分析,具体模块进行如下具体描述。

1.罪犯管理

该模块具体实现了对新入监的罪犯进行信息的录入和对信息的一个增删改查的操作。所面向的用户是监狱的普通干警,而监狱管理员和监狱长则只能对罪犯的信息进行查看操作。对于罪犯来说,如果想要成为一名罪犯,必须拥有一个床位,所以普通干警在给罪犯登记信息的同时,也必须分配监舍和床位。

罪犯管理业务流程如图2-1所示。

图2-1 罪犯管理业务流程图

2.通信管理

该模块是对罪犯与外界的通信情况进行一个检查的关口。普通干警可以将对检查罪犯信件信息进行一个筛选,并记录该信件通过检查与否。所以该模块包含录入检查信件情况和检查信件情况操作两个子模块。

通信管理业务流程如图2-2所示。

图2-2 通信管理流程图

3.考核管理

该模块是对罪犯的定期考核成绩进行录入、查看、修改等管理的模块。普通干警可以对已有的考核进行录入相应罪犯的成绩,管理员来创建新的考核,监狱长却只能查看考核成绩信息。

考核管理业务流程如图2-3所示。

图2-3 考核管理流程图

4.集训管理

该模块是普通干警对罪犯进行集训锻炼等活动的记录管理。普通干警可以创建集训、修改集训、查看集训和删除集训等操作,而管理员和监狱长可以对集训的情况进行监督查看等操作。

集训管理业务流程如图2-4所示。

图2-4 集训管理流程图

5.警戒设施管理

该模块是整个监狱狱政系统所涉及到的警戒设施的分配管理。它的业务流程是由管理员新增、分配警戒设施,普通干警对于已分配的警戒设施进行损坏登记,对于损坏严重的警戒设施进行申请;管理员参考相关的条例,对合理的申请进行审批。监狱长只能对相关的信息进行查看。

警戒设施管理业务流程如图2-5所示。

图2-5 警戒设施管理流程图

6.会见管理

该模块是对罪犯家属朋友探视的管理。普通干警进行提交会见申请,管理员对会见申请进行审批。对于审核通过的会见申请,普通干警进行登记会见过程中的详细情况。监狱长只能对各个相关的信息进行查看。

会见管理业务流程如图2-6所示。

图2-6 会见管理流程图

7.死亡管理

该模块是对罪犯死亡的管理。管理员进行登录后录入死亡罪犯的死亡登记,由于罪犯的死亡不是由他人所决定的,所以本模块没有审批操作。监狱长和普通干警只能对各个相关的信息进行查看。

死亡管理业务流程如图2-7所示。

图2-7 死亡管理流程图

8.释放管理

该模块是对罪犯刑满释放或假释的管理。管理员进行登录后先对要出狱的罪犯进行查看,再录入罪犯释放申请;管理员可以对申请的信息进行修改或删除操作。监狱长登录后可以对申请进行审批,并且对于已审批的申请信息可以进行修改审批意见操作;普通干警只能对各个相关的信息进行查看。

释放管理业务流程如图2-8所示。

图2-8 释放管理流程图

9.禁闭管理

该模块是对罪犯禁闭的管理。管理员进行登录后先对罪犯禁闭进行录入,再进行提交申请操作;管理员可以对申请的信息进行修改或删除操作。监狱长登录后可以对申请进行审批,并且对于已审批的申请信息可以进行修改审批意见操作;普通干警只能对各个相关的信息进行查看。

禁闭管理业务流程如图2-9所示。

图2-9 禁闭管理流程图

10.狱内调配管理

该模块是对罪犯狱内调配的管理。管理员进行登录后先对罪犯狱内调配进行录入,再进行提交申请操作;管理员可以对申请的信息进行修改或删除操作。监狱长登录后可以对申请进行审批,并且对于已审批的申请信息可以进行修改审批意见操作;普通干警只能对各个相关的信息进行查看。

狱内调配管理业务流程如图2-10所示。

图2-10 狱内调配管理流程图

11.用户管理

该模块是对监狱中工作人员信息的管理。监狱长登录后可以添加新的用户信息,但是在生成工作人员之前,必须给新用户分配一个职务;监狱长可以对用户的信息进行增、删、改、查等操作。管理员和普通干警不能进行查看或者其他操作。

用户管理业务流程如图2-11所示。

图2-11 用户管理流程图

12.个人信息管理

该模块是用户对自己的信息进行修改的模块,用户登录后可以修改个人信息和密码,在修改密码时候,有个旧密码的判定,只有旧密码判定成功,才能修改密码。

个人信息管理业务流程如图2-12所示。

图2-12 个人信息管理流程图

系统开发目标及业务流程分析完毕后,需要对系统的可行性进行详细的分析,具体从经济可行性、技术可行性和运行可行性三个方面对能否实现系统目标进行可行性分析。

    • 可行性分析

为了实现本系统的研发,做必要的可行性分析是非常重要的一个过程,其中可行性分析是实现“做还是不做”,需求分析是实现“做什么?怎么做?”。

需求分析过程是整个系统开发的重要阶段,分析的成功与否,决定着整个系统功能的完善性以及稳定性。在该阶段需求分析人员需要确定整个产品的功能要求,并且将现实事务抽象成对象并建模。所以根据《GB8567-88计算机软件产品开发文件编制指南》中对系统可行性分析的要求与实施指导,制定相应的可行性分析策略。

经济可行性是从系统开发所需要的投资金额和系统实施后所能带来的效益出发来进行分析,下面以一个正规研发系统为例,从一下几方面进行具体分析。

1.系统开发人员分析

系统开发人员分工如表2-1所示。

表2-1 系统开发人员分工表

姓名

技术水平

角色

工作描述

赵XX

MBA

项目经理

负责项目的前期分析、策划、跟踪、质检

钱XX

高级系统分析员

系统分析员

负责系统功能分析、框架设计

孙XX

高级软件工程师

软件工程师

负责软件的设计与编码

李XX

高级软件工程师

软件工程师

负责软件的设计与编码

周XX

中级美工工程师

网页设计师

负责网页风格确定、布局设计

吴XX

高级系统测试员

测试人员

对软件进行测试、编写测试文档

2.系统初期支出费用

根据项目的规模及项目的开发周期(预计2个月),预测应投入6个人进行系统开发。应付项目经理薪水:2.4万,系统分析员薪水:1.6万,软件工程师薪水:2.4万,网页设计师薪水:0.6万,测试人员薪水:1万。为此应直接支付9万左右的工资及各种福利待遇。计算机设备及系统软件费用预计使用0.5万。网络建设费用预计使用0.5万。在项目安装及调试阶段,用户培训、员工出差等费用预计支出1.5万。在项目维护阶段预计需要投入2.5万的资金,累计项目需要投入14万的资金。

3.系统开发收益费用

用户提供项目资金30万左右,公司对系统3年免费维护,3年后每年维护费用5万。如果本系统使用年限为5年,因此从投资与收益的效益比上,系统开发成功后可获取30-14+10=26万的利润。

4.企业运营系统收益费用

系统初期投资为人民币30万。一旦投入使用,香兰男子监狱共有工作人员600人,每人每天节省纸张开销1,即每年可节约纸张开支21.9万,使用五年共节省纸张开支109.5万。除去初期投资的30万和两年的维护费用10万,5年后,可节约费用69.5。

综上所述,系统投资开发在经济可行性方面,是完全可行的。

      • 分析

根据该系统的设计目标来对设计时所必须具备的技术进行衡量,一般需要从软、硬件的性能要求,运行环境条件,操作人员水平和数量等方面进行相应考虑与分析。

在软件方面,考虑到系统的安全性、可用性、可靠性等问题后,本系统采用MVC设计模式和Javabean+Dao+Servlet+Service的设计标准,在前台用JSP进行页面开发和管理用户界面,提示信息完善,界面简洁美观,具有较强的亲和力,后台采用SQLServer2005数据开发和管理数据库,对数据库操作采用事务处理机制,具有强大的错误处理功能。本系统的开发环境是使用现在非常流行的开源开发工具MyEclipse和Tomcat6.0服务器。使用很灵活以及他们当前的广泛实际应用,充分说明本系统在技术方面是确实可行的

在硬件方面,则选择空间相对较为广泛,只要是AMD双核处理器以上的计算机,内存在2G以上,硬盘在80G以上,均可以满足系统的开发需要。当然,硬件的配置越高,系统的开发与运行将会更流畅。考虑到如今的家用或商用电脑硬件的整体配置水平,系统在硬件方面是可行的。

      • 分析

在现今社会,随着计算机和Internet在中国的迅速发展,人们日常生活中越来越多地使用计算机技术来为自己的工作和学习服务。香兰男子监狱有在押罪犯1883名,在职干警600余人,这在进行统一管理的方面有着很大的困难。另外由于历史赋予监狱不可缺失的职责所在,决定了监狱管理必须向着严谨性、保密性、安全性、快速性等等特点靠拢。在以上特点之外,更应该使得监狱管理过程中节约经费、合理的资源利用,也是本系统所考虑的重中之重。在基于B/S的香兰男子监狱狱政管理系统有着对罪犯管理更加直接、更加迅速、更加方便、更加直观等诸多的优点,可以成功地解决监狱管理所面临的难题,同时本系统也解决了监狱狱政管理过程中的不合理支出,例如可以大量的节约纸张的使用。本系统使用界面简洁明朗,操作简单易行,所以使用前的培训比较容易,本系统的管理人员对开发此应用项目的态度确定而且管理方面的条件都比较成熟。经过以上分析,运行方面是可行的。

本章主要从系统的可行性研究着手,对系统的开发目标、业务流程、可行性分析进行介绍,总体看来系统工程的目标明确、设施完备,运行方面可靠,并且良好的对资源合理利用,节约开支。整体追求简单、严谨、迅速、直观、易用的思想,及成熟、完善、可靠的技术,因此本系统具有一定的开发前景,值得进行相应投入与开发。

需求分析是软件生存周期中最重要的一步。只有通过需求分析,才能把软件功能和性能的总体概念描述为具体的软件需求规格说明,进而奠定软件开发的基础。需求是用户对系统提出的要求,这组要求可能是原始的、笼统的,也可能是抽象的、细化的。一个软件系统的开发必须以一组需求作为开发点。需求分析则是在综合分析用户对系统提出的如功能、性能、数据等方面需求的基础上,构成一个从抽象到具体的逻辑模型,来表达软件将要实现的需求,为下一阶段的软件设计提供设计基础。

需求分析的任务:分析员通过需求分析提供一种可转化为数据设计、结构设计和过程设计的数据与功能表示,在软件完成后,需求分析阶段研究的对象是软件项目的用户需求。

总体说来,本系统----香兰男子监狱狱政管理系统,其实是一个MIS系统,即管理信息系统。

    1. 系统的产生和发展情况

所谓管理信息系统(MIS—Management Information System)系统 ,是一个由人、计算机及其他外围设备等组成的能进行信息的收集、传递、存贮、加工、维护和使用的系统,是一门新兴的科学,其主要任务是最大限度的利用现代计算机及网络通讯技术加强企业的信息管理,通过对企业拥有的人力、物力、财力、设备、技术等资源的调查了解,建立正确的数据,加工处理并编制成各种信息资料及时提供给管理人员,以便进行正确的决策,不断提高企业的管理水平和经济效益。目前,企业的计算机网络已成为企业进行技术改造及提高企业管理水平的重要手段。随着我国与世界信息高速公路的接轨,企业通过计算机网络获得信息必将为企业带来巨大的经济效益和社会效益,企业的办公及管理都将朝着高效、快速、无纸化的方向发展。MIS系统通常用于系统决策,例如,可以利用MIS系统找出目前迫切需要解决的问题,并将信息及时反馈给上层管理人员,使他们了解当前工作发展的进展或不足。换句话说,MIS系统的最终目的是使管理人员及时了解公司现状,把握将来的发展路径。与传统的管理系统相比,在MIS中,处理的对象是抽象成数据的信息,因此,MIS有着自己的巨大优势。

    • 需求分析

需求分析过程是整个系统开发的重要阶段,分析的成功与否,决定着整个系统功能的完善性与稳定性。在该阶段需求分析人员需要确定整个系统的功能要求,并将现实事务抽象为对象进行建模。在系统项目的需求分析中主要表现在开发者理解并执行用户的需求程度,一次成功的需求分析不仅需要系统开发者的分析,更应对用户需求进行分析,这是需要所有参与者共同努力的才能完成的。

在本系统中对于用户来说,则希望能够快速、稳定、直接地对罪犯的信息进行操作。用户将浏览器连接至WWW服务,并通过访问系统服务器浏览系统主页,用户输入用户名及密码,审核通过后方可进行操作。对于重要的操作本系统都将进行权限的比较,只有符合权限的用户方可执行操作,并记录在案。本系统也对集训、通信、考核、警戒设施、罪犯信息等信息进行管理和储存,用户可以通过历史记录进行查询。而且,也会对会见的谈话内容、探亲人员信息进行监控和记录,有效地阻止了信息外流等不利于管理因素的发生。这些在设计该系统的后台进行需求分析时都应该考虑到。因此,必须用行之有效的方法对软件需求进行严格的审查验证。

需求分析一般是按图3-1所示的过程进行。

图3-1 需求分析的一般过程

数据流图是描述数据处理过程的工具。它是表示系统逻辑模型的常用工具,图中不存在任何具体的物理素,只表示信息在系统中流动和处理的情况。数据流图是逻辑系统的图形化表示。因此,它是系统分析员与用户进行交流的极好工具。下面具体对系统的顶层数据流图进行详细描述。

系统顶层数据流图如图3-2所示。

图3-2 系统顶层数据流图

数据流图和数据字典共同构成系统的逻辑模型。数据字典是数据信息的集合,对数据流图中各个素完整的定义与说明,并且是数据流图的补充工具,其作用是在软件分析和系统设计过程中给人们提供关于数据的描述信息。数据流程图配以数据字典,从图形和文字两个方面对系统的逻辑模型进行完整的描述。

1.数据项定义

系统顶层数据项定义如表3-1所示。

表3-1 系统顶层数据项定义

编号

名称

别名

类型

长度(字符)

I1-01

LetterNo

通信编号

Int(6)

1-6

I1-02

CrimNo

罪犯编号

Varchar(4)

1-4

I1-03

Compendium

概述

Text

10000

I1-04

State

状态

Varchar(6)

1-6

I1-05

EnterDate

录入时间

Datetime(10)

10

I1-06

UserId

普通干警编号

Int(4)

1-4

I1-07

Del

删除标识符

Varchar(1)

1

I1-08

CrimNo

罪犯编号

Int(4)

1-4

I1-09

Name

姓名

Varchar(10)

1-10

I1-10

Birth

出生日期

Datetime(10)

10

I1-11

IdCard

身份证号

Varchar(18)

1-18

I1-12

Poliface

政治面貌

Varchar(200)

1-200

I1-13

Nationality

民族

Varchar(10)

1-10

I1-14

Naticeplace

籍贯

Varchar(200)

1-200

I1-15

CrimFact

犯罪事实

Varchar(200)

1-200

I1-16

Relation

联系人

Varchar(200)

1-200

I1-17

Impress

特征

Varchar(200)

1-200

I1-18

InJailTime

入监日期

Datetime(10)

10

I1-19

OutJailTime

出监日期

Datetime(10)

10

I1-20

Photo

照片

Varchar(200)

1-200

I1-21

UserID

干警编号

Int(4)

1-4

I1-22

Del

删除标识符

Varchar(1)

1

I1-23

CheckNo

考核编号

Int(10)

1-10

I1-24

CheckName

考核名称

Varchar(20)

1-20

I1-25

Type

类型

Varchar(6)

1-6

I1-26

Compengdium

概述

Text

10000

续表3-1

I1-27

RunDate

执行时间

Datetime(10)

10

I1-28

CreateDate

提交时间

Datetime(10)

10

I1-29

AdminID

管理员编号

Int(4)

1-4

I1-30

Del

删除标识符

Varchar(1)

1

I1-31

MeetNo

会见编号

Int(6)

1-6

I1-32

CrimNo

罪犯编号

Int(4)

1-4

I1-33

FamilyName

家属姓名

Varchar(10)

1-10

I1-34

ID_Card

身份证号

Varchar(20)

1-20

I1-35

ApplyDate

申请日期

Datetime(10)

1-10

I1-36

UserID

干警编号

Int(4)

1-4

I1-37

State

状态

Varchar(6)

1-6

I1-38

AdminID

管理员编号

Int(4)

1-4

I1-39

CheckTime

审批日期

Datetime(10)

1-10

I1-40

Del

删除标识符

Varchar(1)

1

I1-41

TrainNo

集训编号

Int(6)

1-6

I1-42

Type

类型

Varchar(6)

1-6

I1-43

TrainName

集训名称

Varchar(20)

1-20

I1-44

Aim

目的

Varchar(50)

1-50

I1-45

Compengdium

概述

Text

10000

I1-46

Result

结果

Varchar(6)

1-6

I1-47

Date

执行时间

Datetime(10)

1-10

I1-48

UserID

干警编号

Int(4)

1-4

I1-49

EnterTime

录入时间

Datetiem(10)

1-10

I1-50

Del

删除标识符

Varchar(1)

1

I1-51

InstalNo

警戒设施编号

Int(6)

1-6

I1-52

InstalName

名称

Varchar(20)

1-20

I1-53

InstalNum

数量

Int(100)

1-100

I1-54

Del

删除标识符

Varchar(1)

1

I1-55

DeathNo

死亡编号

Int(6)

1-6

I1-56

Type

类型

Varchar(6)

1-6

I1-57

CrimNo

罪犯编号

Int(4)

1-4

I1-58

Reason

原因

Text

10000

续表3-1

I1-59

DeathDate

死亡时间

Datetiem(10)

10

I1-60

Flow

流程

Text

10000

I1-61

EnterDate

录入时间

Datetiem(10)

10

I1-62

AdminID

管理员编号

Int(4)

1-4

I1-63

Del

删除标识符

Varchar(1)

1

I1-64

CfaNo

释放编号

Int(6)

1-6

I1-65

CrimNo

罪犯编号

Int(4)

1-4

I1-66

Type

类型

Varchar(20)

1-20

I1-67

Compengdium

概述

Text

10000

I1-68

ApplyDate

申请时间

Datetime(10)

10

I1-69

State

状态

Varchar(6)

1-6

I1-70

LeaderID

监狱长编号

Int(4)

1-4

I1-71

AdminID

管理员编号

Int(4)

1-4

I1-72

CheckDate

审批时间

Datetime(10)

10

I1-73

Del

删除标识符

Varchar(1)

1

I1-74

EaNo

禁闭编号

Int(6)

1-6

I1-75

EncageTitle

禁闭名称

Varchar(20)

1-20

I1-76

CrimNo

罪犯编号

Int(4)

1-4

I1-77

Reason

原因

Text

10000

I1-78

StartTime

开始时间

Datetime(10)

10

I1-79

EndTime

结束时间

Datetime(10)

10

I1-80

ApplyDate

申请日期

Datetime(10)

10

I1-81

AdminID

管理员编号

Int(4)

1-4

I1-82

State

状态

Varchar(6)

1-6

I1-83

LeaderID

监狱长编号

Int(4)

1-4

I1-84

CheckTime

审批日期

Datetime(10)

10

I1-85

Del

删除标识符

Varchar(1)

1

I1-86

PcaNO

调配编号

Int(6)

1-6

I1-87

CrimNo

罪犯编号

Int(4)

1-4

I1-88

JRoomNo

监舍编号

Int(4)

1-4

I1-89

BedNO

床位编号

Varchar(2)

1-2

I1-90

FutureRoom

预调监舍

Int(4)

1-4

续表3-1

I1-91

FutrureBed

预调床位

Varchar(2)

1-2

I1-92

Reason

原因

Varchar(500)

1-500

I1-93

ApplyDate

申请时间

Datetime(10)

10

I1-94

AdminID

管理员编号

Int(4)

1-4

I1-95

State

状态

Varchar(6)

1-6

I1-96

LeaderID

监狱长编号

Int(4)

1-4

I1-97

CheckTime

审批时间

Datetime(10)

10

I1-98

Del

删除标识符

Varchar(1)

1

I1-99

PeopleID

用户编号

Int(4)

1-4

I1-100

PeopleName

用户名

Varchar(18)

1-18

I1-101

PassWord

密码

Varchar(18)

1-18

I1-102

Name

姓名

Varchar(10)

1-10

I1-103

Sex

性别

Int(1)

1

I1-104

Birthday

出生日期

Datetime(10)

10

I1-105

IdCard

身份证号

Varchar(18)

1-18

I1-106

PoliticalFace

政治面貌

Int(3)

1-3

I1-107

Nation

民族

Varchar(20)

1-20

I1-108

NativePlace

籍贯

Varchar(50)

1-50

I1-109

Relation1

联系方式1

Varchar(12)

1-12

I1-110

Relation2

联系方式2

Varchar(12)

1-12

I1-111

Photo

照片

Varchar(100)

1-100

I1-112

Post

职位

Varchar(10)

1-10

I1-113

Del

删除标识符

Varchar(1)

1

2.数据流定义

系统顶层数据流定义:

数据流编号:D1-01

数据流名称:登陆信息

数据流来源:用户

数据流去向:P1-1

数据流组成:I1-100+I1-101+I1-112

数据流编号:D1-03

数据流名称:要管理的通信信息

数据流来源:P1-2

数据流去向:F1-1

数据流组成:I1-01+I1-02+I1-03+I1-04+I1-05+I1-06+I1-07

数据流编号:D1-04

数据流名称:要管理的罪犯信息

数据流来源:P1-2

数据流去向:F1-2

数据流组成:I1-08+ I1-09+ I1-10+ I1-11+ I1-12+ I1-13+ I1-14+I1-15+

I1-16+ I1-17+ I1-18+ I1-19+ I1-20+ I1-21+ I1-22

数据流编号:D1-05

数据流名称:要管理的考核信息

数据流来源:P1-2

数据流去向:F1-3

数据流组成:I1-23+I1-24+ I1-25+I1-26+ I1-27+I1-28+ I1-29+I1-30

数据流编号:D1-06

数据流名称:要管理的通信信息

数据流来源:P1-2

数据流去向:F1-4

数据流组成:I1-31+ I1-32+ I1-33+ I1-34+ I1-35+ I1-36+ I1-37+ I1-38+

I1-39+ I1-40

数据流编号:D1-07

数据流名称:登陆信息

数据流来源:管理员

数据流去向:P1-9

数据流组成:I1-100+I1-101+I1-112

数据流编号:D1-08

数据流名称:要查看的通信信息

数据流来源:P1-7

数据流去向:F1-1

数据流组成:I1-01+I1-02+I1-03+I1-04+I1-05+I1-06+I1-07

数据流编号:D1-09

数据流名称:要查看的罪犯信息

数据流来源:P1-7

数据流去向:F1-2

数据流组成:I1-08+ I1-09+ I1-10+ I1-11+ I1-12+ I1-13+ I1-14+I1-15+ I1-16+ I1-17+ I1-18+ I1-19+ I1-20+ I1-21+ I1-22

数据流编号:D1-10

数据流名称:要查看的考核信息

数据流来源:P1-7

数据流去向:F1-3

数据流组成:I1-23+I1-24+ I1-25+I1-26+ I1-27+I1-28+ I1-29+I1-30

数据流编号:D1-12

数据流名称:要审批的会见信息

数据流来源:P1-8

数据流去向:F1-4

数据流组成:I1-31+ I1-32+ I1-33+ I1-34+ I1-35+ I1-36+ I1-37+ I1-38+

I1-39+ I1-40

数据流编号:D1-14

数据流名称:要管理的集训信息

数据流来源:P1-10

数据流去向:F1-5

数据流组成:I1-41+I1-42+ I1-43+I1-44+ I1-45+I1-46+ I1-47+I1-48+

I1-49+I1-50

数据流编号:D1-15

数据流名称:要管理的警戒设施信息

数据流来源:P1-10

数据流去向:F1-6

数据流组成:I1-51+I1-52+ I1-53+I1-54

数据流编号:D1-16

数据流名称:要管理的罪犯死亡信息

数据流来源:P1-10

数据流去向:F1-7

数据流组成:I1-55+I1-56+ I1-57+I1-58+ I1-59+I1-60+ I1-61+I1-62+I1-63

数据流编号:D1-17

数据流名称:要管理的罪犯释放信息

数据流来源:P1-10

数据流去向:F1-8

数据流组成:I1-64+I1-65+ I1-66+I1-67+ I1-68+I1-69+ I1-70+I1-71+

I1-72+I1-73

数据流编号:D1-18

数据流名称:要管理的禁闭信息

数据流来源:P1-10

数据流去向:F1-9

数据流组成:I1-74+I1-75+I1-76+I1-77+I1-78+I1-79+I1-80+I1-81+

I1-82+I1-83+ I1-84+I1-85

数据流编号:D1-19

数据流名称:要管理的狱内调配信息

数据流来源:P1-10

数据流去向:F1-10

数据流组成:I1-86+I1-87+ I1-88+I1-89+ I1-90+I1-91+ I1-92+I1-93+

            I1-94+I1-95+ I1-96+I1-97+ I1-98

数据流编号:D1-20

数据流名称:登陆信息

数据流来源:监狱长

数据流去向:P1-4

数据流组成:P100+P101+P112

数据流编号:D1-22

数据流名称:要查看的会见信息

数据流来源:P1-3

数据流去向:F1-4

数据流组成:I1-31+ I1-32+ I1-33+ I1-34+ I1-35+ I1-36+ I1-37+ I1-38+ I1-39+ I1-40

数据流编号:D1-23

数据流名称:要查看的集训信息

数据流来源:P1-3

数据流去向:F1-5

数据流组成:I1-41+I1-42+ I1-43+I1-44+ I1-45+I1-46+ I1-47+I1-48+

            I1-49+I1-50

数据流编号:D1-24

数据流名称:要查看的警戒设施信息

数据流来源:P1-3

数据流去向:F1-6

数据流组成:I1-51+I1-52+ I1-53+I1-54

数据流编号:D1-25

数据流名称:要查看的死亡信息

数据流来源:P1-3

数据流去向:F1-7

数据流组成:I1-55+I1-56+ I1-57+I1-58+ I1-59+I1-60+ I1-61+I1-62+I1-63

数据流编号:D1-27

数据流名称:要审批的释放信息

数据流来源:P1-5

数据流去向:F1-8

数据流组成:I1-64+I1-65+ I1-66+I1-67+ I1-68+I1-69+ I1-70+I1-71+

I1-72+I1-73

数据流编号:D1-28

数据流名称:要审批的禁闭信息

数据流来源:P1-5

数据流去向:F1-9

数据流组成:I1-74+I1-75+ I1-76+I1-77+ I1-78+I1-79+ I1-80+I1-81+

I1-82+I1-83+ I1-84+I1-85

数据流编号:D1-29

数据流名称:要审批的狱内调配信息

数据流来源:P1-5

数据流去向:F1-10

数据流组成:I1-86+I1-87+ I1-88+I1-89+ I1-90+I1-91+ I1-92+I1-93+

            I1-94+I1-95+ I1-96+I1-97+ I1-98

数据流编号:D1-31

数据流名称:要管理的用户信息

数据流来源:P1-6

数据流去向:F1-11

数据流组成:I1-99+ I1-100+ I1-101+ I1-102+ I1-103+ I1-104+ I1-105+ I1-106+ I1-107+ I1-108+ I1-109+ I1-110+ I1-111+ I1-112+

I1-113

本章主要简单介绍了管理信息系统产生与发展状况,在系统可行性研究的基础上对系统的数据流程进行了更进一步的深化,对该系统进行全方位的需求分析并画出数据流图,写出数据字典。需求分析报告是对系统需求的书面表达形式。由于需求分析报告是采用软件设计的术语编写的,因此常常令计算机背景知识较少的用户难以理解,从而很难发现需求报告与实际需求中不符之处,更难提出建设性的意见。因此在需求分析过程中必须要做到细致、准确、实效。

系统模块的总体设计是利用层次图来表示系统中各模块之间的关系。层次方框图是用树形结构的一系列多层次的矩形框描绘数据的层次结构。树形结构的顶层是一个单独的矩形框,它代表完整的数据结构,下面的各层矩形框代表各个数据的子集,最底层的各个矩形框代表组成这个数据的实际数据素。

本系统一共分为十二大模块。每个模块之间从表面上看来是相互独立存在的,但是从对数据库的访问上看都是紧密相连的,各个模块访问的是同一个数据库,只是所访问的表不同而已。每个模块的功能都是按照调研中搜集的资料进行编排制作的。依据上述功能的分析,系统中模块在逻辑上分别为:日常管理模块、特殊事件管理模块和用户管理模块三大板块,总共十二大模块。

各功能模块的具体功能如下:

1.日常管理模块包括:罪犯管理、通信管理、考核管理、集训管理、警戒设施管理。

  1. 罪犯管理模块:

用于监狱干警对新进监狱的罪犯进行信息的录入、修改和分配监区、监舍并对罪犯的物品进行录入。包括罪犯信息,罪犯简历,罪犯的照片的录入和修改等。主要的操作有:罪犯的信息进行查询、修改、删除等操作。

  1. 通信管理模块:

用于监狱干警对罪犯的信件进行记录、审查。主要有创建通信事件、修改通信事件和删除通信事件等操作。

  1. 考核管理模块:

监狱干警定期对每个犯人进行考核。干警将所得的成绩进行录入、查询等操作。主要的操作有:新建考核事件、修改考核事件、查询考核事件、录入罪犯的相应的考核成绩、对考核成绩修改、查询。

  1. 集训管理模块:

对集训管理情况和结果登记、管理情况的查询。主要操作有创建并记录集训事件,删除集训事件,修改集训事件,查看集训信息,集训期间突发情况创建、查询、修改、删除,结果录入、查询、修改、删除。

  1. 警戒设施管理模块:

用于登记警戒设施的设置情况和检查情况,并能对这些情况进行查询。主要操作有:警戒设施检查事件创建、录入、查询、修改、删除、分配;损坏设施登记、申请、审批、修改、删除。

2.特殊事件管理模块包括:会见管理、死亡管理、释放管理、禁闭管理、狱内调配管理。

  1. 会见管理模块:

包括会见登记申请管理,监听监视管理和申请审批管理等。主要操作有:对会见事件的创建、审核、修改、删除和对已批准的会见申请进行详细信息登记等操作。

  1. 死亡管理模块:

用于对罪犯死亡后各项处理情况进行登记、查询等。主要操作有:死亡事件的创建、记录、查看、修改、删除。

  1. 释放管理模块:

对刑满的或假释的罪犯进行申请和审批后进行释放。主要的操作有:显示还有两个月出狱的罪犯,创建释放事件、修改或删除,监狱长或副监狱长审批。

  1. 禁闭管理模块:

对罪犯犯错进行关禁闭惩罚。主要操作有:禁闭事件的创建、申请、查看、修改和删除。

  1. 狱内调配管理模块:

用于监狱中罪犯因特殊原因而从所在监区监舍调至其他监区监舍。其主要操作有:调配创建、查看、修改、删除和审批。

3.人力管理模块包括:用户管理、个人信息管理。

  1. 用户管理模块:

包括用户的添加、查看、修改、删除等操作。在添加用户的同时,分配用户的职位。此模块只能是监狱长进行操作。

  1. 个人信息管理模块:

主要包括当前用户修改个人密码和修改个人信息。另外退出功能也添加在此模块中。

系统功能模块图如图4-1所示。

图4-1 系统功能模块图

数据库设计是建立数据库及其应用系统的技术,是信息系统开发和建设中的核心技术,具体的说,数据库设计是一个给定的应用环境,构造最优的用户的应用需求(信息要求和处理要求)。这个问题是我们在进行软件开发时期的主要研究方向。

      • 及基本步骤

数据库设计(Database Design)是指对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,使之能够有效地存储数据,满足各种用户的应用需求,即信息要求和处理要求。在数据库领域内,常常把使用数据库的各类系统统称为数据库应用系统。数据库设计的基本步骤如下,共分为六个阶段。

1.需求分析阶段,即准确了解与分析用户需求,包括数据与处理。是整个设计过程的基础,是最困难、最耗费时间的一步。

2.概念结构设计阶段,即整个数据库设计的关键阶段,通过对用户需求进行综合、归纳与抽象,形成一个独立于具体DBMS的概念模型。

3.逻辑结构设计阶段,即将概念结构转换为某个DBMS所支持的数据模型,对其进行优化。

4.数据库物理设计阶段,即为逻辑数据模型选取一个最适合应用环境的物理结构,包括存储结构和存取方法。

5.数据库实施阶段,即运用DBMS提供的数据语言、工具及宿主语言,根据逻辑设计和物理设计的结果。建立数据库,编制与调试应用程序,组织数据入库,并进行试运行。

6.数据库运行和维护阶段,即数据库应用系统经过试运行后即可投入正式运行,在数据库系统运行过程中必须不断地对其进行评价、调整与修改。

      • 数据分析

数据分析有助于及时观察并分析变异,从而识别并把握改进的机会,其重要性勿庸置疑。数据分析是组织有目的地收集数据、分析数据,使之成为信息的过程。这一过程是质量管理体系的支持过程。在产品的整个生存周期,包括从市场调研到售后服务和最终处置的各个过程都需要适当运用数据分析过程,以提升有效性。

在为实体确定相关的属性过程中,也需要确定此实体的主键和索引,并且要确定在每个实体中怎样组织这些属性,确定属性的数据类型和它是否为空值。在高层次的描述过程中,还可以确定所有扩展属性信息,包括长度、格式、编辑风格、校验规则和初始值。单独实体的属性被组织起来,用户就能够开始以某一种组织方式来给实体分类。用户必须通过关系,来为实体分组的方式确定分类模式,这是抽象化的初始层,或者说是通过隐藏模糊的信息来提高对分析的理解,通过将数据分类成组,就产生了相关分组的不同类型,这样,更加易于观察和分析。

要确定实体和关系的性质,用户必须确定单个实体和他们相关的属性。为每个对象定义一个完整的与业务相关的描述以及他单独使用的要求,这也包括确定此实体是否使用应用程序的永久需求,每种关系的基本定义使用了业务定义和与关系相连接的需求。

在对数据库进行详细设计时,应考虑以下事项:

1.数据库的用途及该用途将如何影响设计,创建符合用途的数据库计划。

2.数据库规范化规则,防止数据库设计中出现错误。

3.对数据完整性的保护。

4.数据库和用户权限的安全要求。

5.应用程序的性能需求。

数据库E-R如图4-2所示。

图4-2 数据库E-R图

根据香兰男子监狱的实际情况,把本系统的数据库命名为:prison,用来存储系统中用到的相关数据。prison数据库中共分为20张信息表如表4-1至表4-21所示:

管理员表:用来存储监狱中管理员的基本信息。

管理员表如表4-1所示。

表4-1 Admin(管理员表)

序号

字段名

注释

类型

长度(字符)

1

Admin_ID

管理员编号

Int(4)

1-4

2

Adminanme

用户名

Varchar(20)

1-20

3

Password

密码

Varchar(20)

1-20

4

name

姓名

Varchar(10)

1-10

5

Sex

性别

Int(1)

1

6

birthday

出生日期

Datetime(10)

10

7

idcard

身份证号

Varchar(20)

1-20

8

politicalface

政治面貌

Int(2)

1-2

9

nation

民族

Varchar(20)

1-20

10

nativeplace

籍贯

Varchar(20)

1-20

11

relation1

联系方式1

Varchar(20)

1-20

12

relation2

联系方式2

Varchar(20)

1-20

13

photo

照片

Varchar(100)

1-100

14

post_no

职务编号

Int(1)

1

15

del

删除标识符

Varchar(1)

1

床位表:用来存储监狱中床位的基本信息。

床位表如表4-2所示。

表4-2 bed(床位表)

序号

字段名

注释

类型

长度(字符)

1

bed_no

床位号

Int(4)

1-4

2

j_room_no

监舍编号

Int(4)

1-4

3

bed_name

床位名称

Varchar(20)

1-20

4

crim_no

罪犯编号

Int(4)

1-4

罪犯考核表:用来存储监狱中罪犯考核所得成绩的基本信息。

罪犯考核表如表4-3所示。

表4-3 crim_check(罪犯考核表)

序号

字段名

注释

类型

长度(字符)

1

crim_check_no

罪犯考核编号

Int(10)

1-10

2

crim_no

罪犯编号

Int(4)

1-4

3

check_no

考核编号

Int(10)

1-10

4

score

分数

Int(3)

1-3

5

enterdate

录入时间

Datetime(10)

10

6

User_ID

干警编号

Int(4)

1-4

7

del

删除标识符

Varchar(1)

1

罪犯释放表:用来存储监狱中罪犯释放申请的基本信息。

罪犯释放表如表4-4所示。

表4-4 crim_free_apply(罪犯释放表)

序号

字段名

注释

类型

长度(字符)

1

cfa_no

释放编号

Int(5)

1-5

2

crim_no

罪犯编号

Int(4)

1-4

3

type

类型

Varchar(6)

1-6

4

compengdium

概述

test

1-10000

5

applydate

申请时间

datetime(10)

10

6

Admin_ID

管理员编号

Int(4)

1-4

7

state

状态

Varchar(6)

1-6

8

Leader_ID

监狱长编号

Int(4)

1-4

9

checkdate

审批时间

datetime(10)

10

10

del

删除标识符

Varchar(1)

1

罪犯信息表:用来存储监狱中罪犯的基本信息。

罪犯信息表如表4-5所示。

表4-5 criminal(罪犯信息表)

序号

字段名

注释

类型

长度(字符)

1

crim_no

罪犯编号

Int(4)

1-4

2

name

姓名

Varchar(10)

1-10

3

birth

出生日期

Datetime(10)

10

4

idcard

身份证号

Varchar(20)

1-20

5

poliface

政治面貌

Varchar(20)

1-20

6

nationality

民族

Varchar(20)

1-20

7

nativeplace

籍贯

Varchar(20)

1-20

8

crimfact

犯罪事实

Varchar(100)

1-100

9

relation

社会关系

Varchar(100)

1-100

10

impress

特征

Varchar(100)

1-100

11

in_jail_time

入监日期

Datetime(10)

10

12

out_jail_time

出监日期

Datetime(10)

10

13

photo

照片

Varchar(100)

1-100

14

User_ID

干警编号

Int(4)

1-4

15

del

删除标识符

Varchar(1)

1

损坏设施表:用来存储监狱中损坏设施申请的基本信息。

损坏设施表4-6所示。

表4-6 damaged_instal_apply(损坏设施表)

序号

字段名

注释

类型

长度(字符)

1

dia_no

损坏设施编号

Int(6)

1-6

2

id_no

损坏登记编号

Int(6)

1-6

3

apply_date

申请日期

Datetime(10)

10

4

User_ID

干警编号

Int(4)

1-4

5

state

状态

Varchar(6)

1-6

6

Admin_ID

管理员编号

Int(4)

1-4

7

check_date

审批日期

Datetime(10)

10

8

del

删除标识符

Varchar(1)

1

罪犯死亡信息表:用来存储监狱中罪犯死亡的基本信息。

罪犯死亡信息表如表4-7所示。

表4-7 deathenter(罪犯死亡信息表)

序号

字段名

注释

类型

长度(字符)

1

death_no

死亡编号

Int(4)

1-4

2

type

类型

Varchar(20)

1-20

3

crim_no

罪犯编号

Int(4)

1-4

4

reason

死亡原因

Varchar(20)

1-20

5

deathdate

死亡时间

Datetime(10)

10

6

flow

处理流程

text

1-10000

7

enterdate

录入时间

Datetime(10)

10

8

Admin_ID

管理员编号

Int(4)

1-4

9

del

删除标识符

Varchar(1)

1

罪犯禁闭表:用来存储监狱中罪犯禁闭的基本信息。

罪犯禁闭表如表4-8所示。

表4-8 encage_apply(罪犯禁闭表)

序号

字段名

注释

类型

长度(字符)

1

ea_no

禁闭编号

Int(6)

1-6

2

encagetitle

禁闭题目

Varchar(50)

1-50

3

crim_no

罪犯编号

Int(4)

1-4

4

reason

原因

Varchar(200)

1-200

5

starttime

开始时间

Datetime(10)

10

6

endtime

结束时间

Datetime(10)

10

7

applydate

申请时间

Datetime(10)

10

8

Admin_ID

管理员编号

Int(4)

1-4

9

state

状态

Varchar(6)

1-6

10

Leader_ID

监狱长编号

Int(4)

1-4

11

checktime

审批时间

Datetime(10)

10

12

del

删除标识符

Varchar(1)

1

警戒设施损坏登记表:用来存储监狱中警戒设施损坏登记的基本信息。

警戒设施损坏登记表如表4-9所示。

表4-9 instal_damage(警戒设施损坏登记表)

序号

字段名

注释

类型

长度(字符)

1

id_no

损坏登记编号

Int(6)

1-6

2

instal_no

设施编号

Int(6)

1-6

3

j_room_no

监舍号

Int(4)

1-4

4

damaged_level

损坏程度

Varchar(5)

1-5

5

situation

具体情况概述

Varchar(200)

1-200

6

enterdate

录入时间

Datetime(10)

10

7

User_ID

干警编号

Int(4)

1-4

8

del

删除标识符

Int(1)

1

警戒设施分配登记表:用来存储监狱中警戒设施分配登记的基本信息。

警戒设施分配登记表如表4-10所示。

表4-10 instal_room_bed(警戒设施分配登记表)

序号

字段名

注释

类型

长度(字符)

1

id_no

损坏登记编号

Int(6)

1-6

2

instal_no

设施编号

Int(6)

1-6

3

j_room_no

监舍号

Int(4)

1-4

4

damaged_level

损坏程度

Varchar(5)

1-5

5

situation

具体情况概述

Varchar(200)

1-200

6

enterdate

录入时间

Datetime(10)

10

7

User_ID

干警编号

Int(4)

1-4

监舍表:用来存储监狱中监舍的基本信息。

监舍表如表4-11所示。

表4-11 jail_room(监舍表)

序号

字段名

注释

类型

长度(字符)

续表4-11

1

j_room_no

监舍编号

Int(6)

1-6

2

shouldnum

额定人数

Int(2)

1-2

3

realitynum

实际人数

Int(2)

1-2

4

state

状态

Varchar(1)

1

监狱长表:用来存储监狱中监狱长的基本信息。

监狱长表如表4-12所示。

表4-12 Leader(监狱长表)

序号

字段名

注释

类型

长度(字符)

1

Leader_ID

管理员编号

Int(4)

1-4

2

Leaderanme

用户名

Varchar(20)

1-20

3

Password

密码

Varchar(20)

1-20

4

name

姓名

Varchar(10)

1-10

5

Sex

性别

Int(1)

1

6

birthday

出生日期

Datetime(10)

10

7

idcard

身份证号

Varchar(20)

1-20

8

politicalface

政治面貌

Int(2)

1-2

9

nation

民族

Varchar(20)

1-20

10

nativeplace

籍贯

Varchar(20)

1-20

11

relation1

联系方式1

Varchar(20)

1-20

12

relation2

联系方式2

Varchar(20)

1-20

13

photo

照片

Varchar(100)

1-100

14

post_no

职务编号

Int(1)

1

15

del

删除标识符

Varchar(1)

1

会见申请表:用来存储监狱中会见申请的基本信息。

会见申请表如表4-13所示。

表4-13 meet_apply(会见申请表)

序号

字段名

注释

类型

长度(字符)

续表4-13

1

meet_no

会见编号

Int(6)

1-6

2

crim_no

罪犯编号

Int(4)

1-4

3

familyname

家属姓名

Varchar(10)

1-10

4

ID_card

身份证号

Varchar(20)

1-20

5

applydate

申请日期

Datetime(10)

10

6

User_ID

干警编号

Int(4)

1-4

7

state

状态

Varchar(6)

1-6

8

Admin_ID

管理员编号

Int(4)

1-4

9

checktime

审批日期

Datetime(10)

10

10

del

删除标识符

Varchar(1)

1

职务表:用来存储监狱中职务的基本信息。

职务表如表4-14所示。

表4-14 post(职务表)

序号

字段名

注释

类型

长度(字符)

1

post_no

职务编号

Int(4)

1-4

2

post_name

职务名称

Varchar(20)

1-20

狱内调配表:用来存储监狱中狱内调配的基本信息。

狱内调配表如表4-15所示。

表4-15 prison_change_apply(狱内调配表)

序号

字段名

注释

类型

长度(字符)

1

pca_no

调配编号

Int(4)

1-4

2

crim_no

罪犯编号

Int(4)

1-4

3

j_room_no

监狱编号

Int(4)

1-4

4

bed_no

床位编号

Int(4)

1-4

5

futureroom

预调监舍编号

Int(4)

1-4

6

futurebed

预调床位编号

Int(4)

1-4

7

reason

原因

text

1-10000

续表4-15

8

applydate

申请日期

Datetime(10)

10

9

Admin_ID

管理员编号

Int(4)

1-4

10

state

状态

Varchar(6)

1-6

11

Leader_ID

监狱长编号

Int(4)

1-4

12

checktime

审批日期

Datetime(10)

10

13

del

删除标识符

Varchar(1)

1

考核表:用来存储监狱中罪犯考核的基本信息。

考核表如表4-16所示。

表4-16 to_check(考核表)

序号

字段名

注释

类型

长度(字符)

1

check_no

考核编号

Int(6)

1-6

2

checkname

考核名称

Varchar(22)

1-22

3

type

类型

Varchar(6)

1-6

4

compengdium

概述

text

1-10000

5

rundate

执行时间

Datetime(10)

10

6

createdate

创建时间

Datetime(10)

10

7

Admin_ID

管理员编号

Int(4)

1-4

8

del

删除标识符

Varchar(1)

1

通信表:用来存储监狱中罪犯通信的基本信息。

通信表如表4-17所示。

表4-17 to_letter(通信表)

序号

字段名

注释

类型

长度(字符)

1

letter_no

通信编号

Int(6)

1-6

2

crim_no

罪犯编号

Int(4)

1-4

3

compendium

概述

text

1-10000

4

state

状态

Varchar(6)

1-6

5

enterdate

创建时间

Datetime(10)

10

续表4-17

6

User_ID

干警编号

Int(4)

1-4

7

del

删除标识符

Varchar(1)

1

集训表:用来存储监狱中罪犯集训的基本信息。

集训表如表4-18所示。

表4-18 train(集训表)

序号

字段名

注释

类型

长度(字符)

1

train_no

集训编号

Int(6)

1-6

2

type

类型

Varchar(6)

1-6

3

trainname

集训名称

Varchar(50)

1-50

4

aim

目的

Varchar(50)

1-50

5

compengdium

概述

text

1-10000

6

result

结果

Varchar(6)

1-6

7

date

执行时间

Datetime(10)

10

8

User_ID

干警编号

Int(4)

1-4

9

entertime

录入时间

Datetime(10)

10

10

del

删除标识符

Varchar(1)

1

干警表:用来存储监狱中干警的基本信息。

干警表如表4-19所示。

表4-19 Users(干警表)

序号

字段名

注释

类型

长度(字符)

1

User_ID

管理员编号

Int(4)

1-4

2

Useranme

用户名

Varchar(20)

1-20

3

Password

密码

Varchar(20)

1-20

4

name

姓名

Varchar(10)

1-10

5

Sex

性别

Int(1)

1

6

birthday

出生日期

Datetime(10)

10

7

idcard

身份证号

Varchar(20)

1-20

续表4-19

8

politicalface

政治面貌

Int(2)

1-2

9

nation

民族

Varchar(20)

1-20

10

nativeplace

籍贯

Varchar(20)

1-20

11

relation1

联系方式1

Varchar(20)

1-20

12

relation2

联系方式2

Varchar(20)

1-20

13

photo

照片

Varchar(100)

1-100

14

post_no

职务编号

Int(1)

1

15

del

删除标识符

Varchar(1)

1

警戒设施表:用来存储监狱中警戒设施的基本信息。

警戒设施表如表4-20所示。

表4-20 warn_installation(警戒设施表)

序号

字段名

注释

类型

长度(字符)

1

instal_no

警戒设施编号

Int(6)

1-6

2

instal_name

警戒设施名称

Varchar(20)

1-20

3

instal_num

数目

Int(10)

1-10

4

del

删除标识符

Varchar(1)

1

总体设计阶段是在对系统需求进行了详细分析的基础之上,规划出的系统功能模块,以及在此分析基础上设计出的具体的、可以满足本系统全部需求的数据库。由于数据库在设计中有非常重要的作用,所以在开发过程中考虑数据库上的时间较多。因此提供了系统数据库E-R图,并对本系统使用到的数据库结构进行了详尽的叙述,列出了使用到数据库表的表结构。

详细设计的主要任务是确认开发平台所需的系统配置,为每个模块确定采用的完成方法,选择适当的开发工具表达完成系统设计的过程,写出模块的详细过程性描述,确定每一模块使用的数据结构。详细设计的目标是实现模块功能逻辑上的正确性与算法运用描述的完整性。

良好的系统运行平台能够对系统设计起到关键性的作用,加快了系统的安全性与运行,达到事半功倍的效果。因此在系统详细设计之前要对运行环境进行细致的配备。

硬件配置环境:台式计算机(PC)一台,相关的运行环境硬件配置如表5-1所示。

表5-1 运行环境硬件配置

硬件

配置

处理器

AMD双核

内存

2G以上

硬盘空间

80G以上

软件配置环境:

1.系统开发环境

系统后台数据库:SQL Server 2005

系统开发环境:Microsofe Visual Studio 2005集成开发环境

系统开发语言:JSP+java

系统开发环境运行平台:Windows XP Professional

2.服务器端

操作系统:Windows XP

WEB服务器:IIS 5.0

数据库服务器:SQL Server 2005

浏览器:IE 6.0

系统服务器运行环境:Microsofe.NET Framework SDK v2.0

3.客户端

浏览器:IE 6.0

1.Java简介:

Java是由Sun Microsystems公司于1995年5月推出的Java程序设计语言(以下简称Java语言)和Java平台的总称。用Java实现的HotJava浏览器(支持Java applet)显示了Java的魅力:跨平台、动态的Web、Internet计算。从此,Java被广泛接受并推动了Web的迅速发展,常用的浏览器现在均支持Java applet。另一方面,Java技术也不断更新。

2.Eclipse平台是一个具有一组强大服务的框架,这些服务可以支持插件,比如Java开发环境插件(JDT)、插件开发环境(PDE)和其他的第三方插件(New tool)。它由几个主要的部分构成:平台运行库、工作区、工作台、团队支持和帮助。Eclipse是一个开放源代码的、基于Java的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,Eclipse附带了一个标准的插件集,包括Java开发工具(Java Development Tools,JDT)。

Eclipse开发java程序,现在有MyEclipse是集成了各种开源框架及插件之类的方便开发,所以多数使用MyEclipse,myeclipse是eclipse的一个插件,它不可单独运行。

3.SQL Server 2005相关介绍

SQL Server是一个全面的、集成的、端到端的数据解决方案,它为企业中的用户提供了一个安全、可靠和高效的平台用于企业数据管理和商业智能应用。SQL Server 2005数据平台为不同规模的组织提供以下好处。

(1)充分利用数据资产,除了为业务线和分析应用程序提供一个安全可靠的数据库之外,SQL Server 2005也使用户能够通过嵌入的功能,如报表、分析和数据挖掘等从他们的数据中得到更多的价值。

(2)提高生产力,通过全面的商业智能功能,和熟悉的微软Office系统之类的工具集成,SQL Server 2005为组织内信息工作者提供了关键的、及时的商业信息以满足他们特定的需求。SQL Server 2005目标是将商业智能扩展到组织内的所有用户,并且最终允许组织内所有级别的用户能够基于他们最有价值的资产。

(3)减少IT复杂度,SQL Server 2005简化了开发、部署和管理业务线和分析应用程序的复杂度,它为开发人员提供了一个灵活的开发环境,为数据库管理人员提供了集成的自动管理工具。

(4)更低的总体拥有成本,对产品易用性和部署上的关注以及集成的工具提供了工业上最低的规划、实现和维护成本,使数据库投资能快速得到回报。

    • 登陆页面步骤设计

步骤一:程序运行时,会从登陆对话框开始。

步骤二:首先要求输入用户名和密码。

步骤三:再选择登陆身份后,单击“登陆”按钮。在登陆界面上,可以看到几条规定和所有权所属。

下面是本系统的登陆界面如图5-1所示。

图5-1 系统登陆界面

本系统的页面结构被设计为左右结构的样式,这种样式的系统设计被大多数人群所喜爱,设计清晰明了,浏览方便快捷,全站功能一目了然。上面部分为本系统头部,运用母版页设计,其余页面进行包含使用,显示主要内容为本站的名称、主要功能及信息导航;左边部分是用户操作模块;右面部分为用户的内容区,显示当前操作使用窗口的相应内容。

下面是本系统的系统主页界面如图5-2所示。

图5-2 系统主页界面

日常管理功能都是日常最基本的对罪犯的管理,这些管理对于监狱信息的保密性都相对比较低。具体包括:罪犯管理、通信管理、考核管理、集训管理、和境界设施管理。

1.实现目标

在干警进行添加新罪犯操作时(如图5-3所示),用户进行罪犯姓名、出生日期、身份证号码、政治面貌、民族、籍贯、犯罪事实、社会关系、特征、入监日期、出监日期、照片、记录等相关信息的填写。“重置”按钮,内容被全部清空,用户将可以进行重新填写;“预览”按钮,将跳转到一个新的页面显示出刚刚所添加的信息(如图5-4所示),进行进一步的确认,同时分配监舍和床位;按相应提示要求填写完后“确认提交”按钮系统将把用户信息存储到数据库中。

图5-3 添加罪犯界面

图5-4 罪犯信息预览界面

增加罪犯程序流程描述:

当干警进入系统进行添加罪犯时进行相关信息填写,预览按钮,系统将显示刚刚填写的信息供干警做进行判断,看格式是否正确,如果正确显示则分配监舍和床位,单击确定就添加成功。如果格式不正确,返回到信息填写,进行重新填写。流程图如图5-5所示。

图5-5 干警添加罪犯流程图

2.实现过程

窗体名:addcrim.jsp

添加罪犯页面主要控件信息表如表5-2所示。

表5-2 添加罪犯控件信息列表

名称

主要属性设置

作用

username

输入罪犯名

birth

输入出生日期

idcard

输入身份证号

polityface

确认政治面貌

national

民族

nativeplace

籍贯

crimfact

犯罪事实

relation

社会关系

impress

特征

inJailTime

入监日期

outJailTime

出监日期

photo

照片

users

干警编号

del

删除标识符

1.实现目标

在所显示系统页面中,通信管理,展开了通信管理的操作项,能看到‘录入检查信件情况’、‘查看检查信件情况’和‘修改检查信件情况’等等,‘录入检查信件情况’,就进入了添加通信检查情况界面,普通干警可以进行相关的操作。

具体界面如图5-6所示。

图5-6 添加通信检查情况界面

添加通信检查情况功能流程描述:

当用户进入系统进行添加通信检查情况时,先对用户进行判断,如果用户已经登录,则把信息录入数据库中,如果用户未登陆,则提示登陆。添加通信检查情况流程图如图5-7所示。

图5-7 添加通信检查情况流程图

2.实现过程

窗体名:check_letter.jap

添加检查信件信息主要控件信息表如表5-3所示。

表5-3 商品详细信息页面主要控件信息列表

名称

主要属性/事件设置

作用

letterNo

添加信件编号

criminal

罪犯编号

compendium

概述

state

状态

enterdate

录入时间

users

录入人

del

删除标识符

1.实现目标

单击警戒设施分配,跳转到相应的操作界面(如图5-8所示)。

图5-8 警戒设施分配界面

2.实现过程

窗体名:order_warn_instal.jsp

order_warn_instal.jsp页面主要控件信息表如表5-4所示。

表5-4  order_warn_instal.jsp页面主要控件信息列表

名称

主要属性/事件设置

作用

irbNo

编号

wi

设施编号

jr

监舍编号

num

数量

puttime

分配时间

people

分配人

del

删除标识符

特殊事件管理功能都是日常最需要保密和严谨的对罪犯的管理,这些管理对于监狱信息的保密性要求都相对比较高。具体包括:罪犯释放管理、会见管理、狱内调配管理、死亡管理、和禁闭管理等等。普通干警对相关的事件进行登记或提出申请,管理员和监狱长对提交的申请进行审批和查看等操作。

1.实现目标

实现了罪犯释放提前做出准备的特点。首先显示出还有两个月刑满释放的罪犯,管理员录入相依的信息,选择清楚释放的类型和时间,提交,最下面的操作界面就显示出了刚刚添加的申请,可以对已提交的申请进行修改或删除等操作;而监狱长对提交的申请进行审批操作,对于已审批的申请,监狱长可以进行修改和删除等操作。

释放审批管理界面如图5-9所示。

图5-9 释放管理申请界面

2.实现过程

窗体名:crim_free_apply.jsp

释放管理申请页面主要控件信息表如表5-5所示。

表5-5 释放管理申请主要控件信息列表

名称

主要属性设置

作用

cfaNo

释放编号

criminal

罪犯编号

type

类型

compengdium

概述

applydate

申请日期

admin

管理员编号

state

状态

leader

监狱长编号

checkdate

审批日期

del

删除标识符

1.实现目标

监狱长对已经申请的狱内调配申请进行审批(如图5-10所示)。当进行审批过后,就显示不同的操作界面。

图5-10 狱内调配审批界面

2.实现过程

窗体名:check_change_apply_info1.jsp

狱内调配审批页面主要控件信息表如表5-6所示。

表5-6 狱内调配审批页面主要控件信息列表

名称

主要属性设置

作用

pcaNo

调配编号

crim

罪犯编号

jRoom

监舍编号

bed

床位编号

jFRoom

预调监舍编号

fBed

预调床位编号

reason

原因

applyDate

申请日期

续表5-6

admin

管理员编号

state

状态

leader

监狱长编号

checkTime

审批日期

del

删除标识符

    • 人力管理

人力管理是对监狱的工作人员进行管理的操作模块。包括:用户管理和个人信息管理两个模块。用户管理是监狱长操作的模块,主要是添加用户等信息;个人信息管理主要是修改自己的密码和个人信息等操作。

      • 用户管理添加用户功能设计

1.实现目标

在监狱长进行添加用户操作时(如图5-11所示),用户进行用户姓名、出生日期、身份证号码、政治面貌、民族、籍贯、犯罪事实、社会关系、特征、入监日期、出监日期、照片、记录等相关信息的填写。“重置”按钮,内容被全部清空,用户将可以进行重新填写;“预览”按钮,将跳转到一个新的页面显示出刚刚所添加的信息(如图5-12所示),进行进一步的确认;按相应提示要求填写完后“确认提交”按钮系统将把用户信息存储到数据库中。

图5-11 预览用户界面

图5-12 添加用户界面

增加用户程序流程描述:

当监狱长进入系统进行添加罪犯时进行相关信息填写,预览按钮,系统将显示刚刚填写的信息供监狱长做进行判断,看格式是否正确,如果格式不正确,返回到信息填写,进行重新填写。流程图如图5-13所示。

图5-13 添加用户界面

2.实现过程

窗体名:addpeople.jsp

添加罪犯页面主要控件信息表如表5-7所示。

表5-7 添加罪犯控件信息列表

名称

主要属性设置

作用

username

输入罪犯名

birth

输入出生日期

idcard

输入身份证号

polityface

确认政治面貌

national

民族

nativeplace

籍贯

crimfact

犯罪事实

relation

社会关系

impress

特征

inJailTime

入监日期

outJailTime

出监日期

photo

照片

users

干警编号

del

删除标识符

      • 个人信息管理修改个人口令功能设计

1.实现目标:

用户登录后对自己的登录口令进行更改。单击修改口令,跳转到相应的页面(如图5-14所示)。在单击确定时候,会首先比较旧密码是否正确,然后再比较两次新密码是否一致,当一切都正确后,才对数据库进行修改。

图5-14 修改口令界面

2.实现过程

窗体名:update_people_pwd.jsp

修改口令页面主要控件信息表如表5-8所示。

表5-8 修改口令控件信息列表

名称

主要属性设置

作用

oldpwd

旧密码

newpwd

新密码

againnewpwd

再次输入新密码

    • 本章小结

本章阐述了运行系统开发平台的设置及使用的开发工具的特点,在总体设计的基础上重点采用图文结合的方式介绍了系统主要功能界面的具体设计,重点叙述了系统的实现过程中几个代表性窗体的实现方法,包括主窗体、用户注册窗体、商品详细信息查看窗体、体育知识阅览窗体、购物车窗体、用户留言窗体及系统后台的部分窗体实现,并介绍了其所使用的主要控件,实现的主要功能,以及相应的使用方法。

系统在经过需求分析、总体设计、详细设计及编码等阶段的开发后,得到了源程序,开始进入到软件测试阶段。测试阶段要进行系统全方位的测试与性能分析,查找出系统中存在的问题和漏洞,并及时的改正。使系统在投入实施之后能够正常运行,并且能达到开发前所预计的性能效果。

软件测试即使用人工或者自动手段来运行或测试某个系统的过程,其目的在于检验它是否满足规定的需求或弄清预期结果与实际结果之间的差别。它是帮助识别开发完成的计算机软件整体或部分的正确度、完全度和质量度的软件实现过程,是SQA(software quality assurance)的重要子域。总之软件测试贯穿整个软件开发生命周期、对软件产品或阶段性产品进行验证和确认的活动过程,其目的是尽快尽早地发现在软件产品中所存在的各种问题,例如与用户需求、预先定义的不一致性。

经过需求分析、设计和编码等阶段的开发后,得到了源程序,开始进入到软件测试阶段。然而,在测试之前的各阶段中都可能在软件产品中遗留下许多错误和缺陷,如果不及时找出这些错误和缺陷,并将其改正,这个软件产品就不能正常使用,甚至会导致巨大的损失。目前,程序的正确性证明尚未得到根本的解决,因此软件测试仍是发现软件中错误和缺陷的主要手段。

Grenford J.Myers对软件测试的目的提出过以下几条新的观点:

首先,测试并不仅仅是为了找出错误.通过分析错误产生的原因和错误的发生趋势,可以帮助项目管理者发现当前软件开发过程中的缺陷,以便及时改进;其次,这种分析也能帮助测试人员设计出有针对性的测试方法,改善测试的效率和有效性;最后,没有发现错误的测试也是有价值的,完整的测试是评定软件质量的一种方法。

软件测试主要工作内容是验证和确认,下面分别给出两方面的概念及分析。

验证是保证软件正确地实现了一些特定功能的一系列活动,即保证软件做了你所期望的事情。

1.确定软件生存周期中的一个给定阶段的产品是否达到前阶段确立的需求的过程。

2.程序正确性的形式证明,即采用形式理论证明程序符号设一计规约规定的过程。

3.评市、审查、测试、检查、审计等各类活动,或对某些项处理、服务或文件等是否和规定的需求相一致进行判断和提出报告。

确认是一系列的活动和过程,目的是想证实在一个给定的外部环境中软件的逻辑正确性。即保证软件以正确的方式来做了这个事件。

1.静态确认,不在计算机上实际执行程序,通过人工或程序分析来证明软件的正确性。

2.动态确认,通过执行程序做分析,测试程序的动态行为,以证实软件是否存在问题。

软件测试的对象不仅仅是程序测试,软件测试应该包括整个软件开发期间各个阶段所产生的文档,如需求规格说明、概要设计文档、详细设计文档,当然软件测试的主要对象还是源程序。

软件测试计划中包括软件测试的步骤及软件测试的基本方法,通过对计划的分析和研究,找出适合本系统软件测试的相应方法,进行更好的测试。

测试过程按四个步骤进行,即单测试、集成测试、确认测试和系统测试。

1.单测试,单测试即集中对用源代码实现的每一个程序单进行测试,检查各个程序模块是否正确地实现了规定的功能,并且要求数据的输入和查询的准确性。

2.集成测试,集成测试是把已测试过的模块组装起来,主要对与设计相关的软件体系结构的构造进行测试。

3.确认测试,确认测试则是要检查已实现的软件是否满足了需求规格说明中确定了的各种需求,以及软件配置是否完全、正确。

4.系统测试,系统测试是把已经经过确认的软件纳入实际运行环境中,与其它系统成份组合在一起进行测试。

软件测试的方法和技术是多种多样的。对于软件测试方法与技术,可以从不同的角度加以分类,下面举出两种典型的方法进行分析。

从是否需要执行被测软件的角度,可分为静态测试和动态测试。

从测试是否针对系统的内部结构和具体实现算法的角度来看,可分为黑盒测试和白盒测试。

1.黑盒测试

黑盒测试也称功能测试或数据驱动测试,它是在已知产品所应具有的功能,通过测试来检测每个功能是否都能正常使用。

2.白盒测试

白盒测试也称结构测试或逻辑驱动测试,它是知道产品内部工作过程,按照程序内部的结构测试程序,检验程序中的每条通路是否都能按预定要求正确工作,而不顾它的功能。

    • 本系统测试

结合以上介绍的系统测试方法与步骤,按照系统测试的基本步骤对本系统系统进行测试。

对本系统进行黑盒测试,首先把本系统系统看作一个不能打开的黑盆子,不考虑它的内部结构和内部特性,按照需求的规格说明书检查程序功能是否正常使用,看本程序是否能适当地接收输入数据而产生正确的输出信息,并且保持外部信息的完整性。

例如对用户登录、添加/删除、事务处理等进行测试操作,结果填入数据能够准确提交,功能能够正常完成,并且界面能够随时刷新,因此测试成功。测试结果如图6-1所示。

图6-1测试结果图

已知系统的内部结构和特效,首先对系统的连接速度进行测试,用户连接页面的速度取决于两个方面,其一是应用服务器的性能;其二是所开发系统的性能。在应用服务器环境已定的情况下我们进行测试,本系统启动后,访问速度比较快。因此连接速度测试成功。

对本系统的导航功能及界面结构进行测试,操作方便,跳转容易,可以方便用户查看商品信息,实现了良好的处理功能。整体界面测试,即布局比较合理、界面简洁。因此满足需求说明中的要求

    • 本章小结

信息技术的飞速发展使软件产品应用到社会的各个领域,软件产品的质量自然成为人们共同关注的焦点,开发完成后的测试工作变得很重要。本章从软件测试的目的、软件测试的内容、测试的方法及步骤等方面介绍了有关软件测试的知识,并且详细阐述了本系统所使用的测试方法以及本系统的测试分析与测试结果。

    

经过为期三个多月的设计与开发,香兰男子监狱狱政管理系统基本开发完毕。其功能基本符合实际需求。并提供系统管理维护功能,使管理员方便进行罪犯管理,通信管理,考核管理,集训管理,警戒设施管理,会见管理,死亡管理,释放管理,禁闭管理,狱内调配管理,用户管理,个人管理等操作。

本系统的设计以MyEclipse为主要制作工具,实现了所有的需求分析的内容。监狱狱政管理系统为用户带来了很大的方便及解决了传统管理的不足之处,具体表现在以下几点:

  1. 思想和方法性:管理的进步主要体现为管理思想和相应管理模式与方法的进步。管理软件本身是管理思想和管理模式的载体,它具有双重核心,即:管理思想、信息技术。软件是具体的,除了带给管理思想外,更多地表现为基于思想的管理模式和方法。人事管理软件带给企业操作方便的业绩考核体系和人才度量指标;决策支持软件使决策模型真正走到了企业。
  2. 正规性:管理正规化是管理通向更高层次的台阶。实现管理正规化有多条路径,软件能够有效地促进这一进程。监狱狱政管理规则、标准、程序和制度都可以在软件及其相关系统中体现出来。更重要的是,软件对管理正规化的促进在很大程度上避免了形式主义。由于软件是一个实时应用系统,管理规范透过软件溶入了监狱的业务和管理流程,较之纸质的规章和无形的规范而言,更容易被贯彻执行。
  3. 实用性:本系统以用户需求为目标,以方便用户为原则。根据实际的需求分析,应该设计并实现一个先进的系统。从用户角度出发尽可能的方便用户使用,满足基本的用户需要,尽可能降低使用前的培训和使用中的维护时间并充分体现办公一体化的优势,使其具有实用性。
  4. 移动性:本系统具备了很好的移动性,确保不同的使用者都能以最佳的方式来使用所需的系统,普通使用者只需要使用浏览器就可以在任何地方通过身份权限确认后就可以进行相关操作。
  5. 先进性:本设计将充分应用现有成熟的计算机技术、网络技术、软件开发技术,为用户提供高性能的系统。系统采用B/S开发模式,采用其所长SQL Server2005数据库,开发工具使用MyEclipse、Dreamweaver等等,可以方便的满足此系统的使用和管理上的需要。
  6. 高安全性:在设计中,将充分利用网络软、硬件提供的各种安全措施,既可以保证用户共享资源,同时也可保证关键数据的安全性。
  7. 可维护性:系统的设计要求方便维护,包括硬件的维护,软件的维护(更改,升级等)和网络的维护。
  8. 可扩展性及灵活性:系统的设计以方便未来业务的扩展和系统扩充为目标,系统要求能够方便的升级,充分保护系统的投资。
  9. 智能性:系统在设计时,充分考虑系统运行的智能性,在使用系统一段时间后,系统可以适应于任何局域网。

为实现该系统的特定目标和功能,在编制、调试程序的过程中,面临到了各种难题。由于个人的能力有限,不得不查阅大量书籍,反复调试程序,并向老师及同学请教。在设计中深切感受到理论与实际的差距,了解到自己在理论知识方面的缺陷,“事非经过不知难”。

    

毕业设计让我学到了很多东西,不仅重新巩固了原来的知识,而且还学到了那些没有在课堂里学到的知识,为今后的工作和再学习打下了坚实的基础。能有现在这样的成果,离不开老师和同学们的鼓励和帮助。

我的毕业设计是在彭富强老师悉心指导下完成的。导师渊博的专业知识,严谨的治学态度,精益求精的工作作风,诲人不倦的高尚师德,严以律己、宽以待人的崇高风范,朴实无华、平易近人的人格魅力对我影响深远。不仅使我树立了远大的学术目标、掌握了基本的研究方法,还使我明白了许多待人接物与为人处世的道理。毕业设计从开题到完成,彭老师都始终给予我细心的指导和不懈的支持。在此,谨向导师表示崇高的敬意和衷心的感谢!

其次我还要感谢在开题、中检、末检、论文换审及答辩中检查我的老师们,感谢他们为我指出程序设计中存在的缺点和不足,感谢他们提出的宝贵建议和意见,使我能够及时的找到自己的错误,让我能够确立明确的思路,最终让系统设计变的更加完善。同时也要感谢其他老师在此期间的关怀和帮助,以及学院为我提供良好的毕业设计环境。

最后感谢在毕业设计中为我提供帮助的众多益友和同学,以及在设计中被我引用或参考的论著的作者。

参考文献

1 林来兴.空间控制技术.宇航出版社.1992

2  孙卫琴.基于MVC的Java Web设计与开发.电子工业出版社.2004

3  王国辉,吕海涛.Java数据库系统开发.人民邮电出版社.2007

4  闪四清.SQL Server 2005基础教程.清华大学出版社.2007

5  王珊,萨师煊.数据库系统概论.高等教育出版社.2007

6  刘乃丽.精通JavaEE.人民邮电出版社.2008

7  孙更新,吕婕.Java毕业设计指南与项目实践.科学出版社.2008

8  苗春义.Java项目开发全程实录.清华大学出版社.2008

9  沈应逵,曾凌.JAVA WEB数据库系统应用开发与实例.人们邮电出版社.2006

10  5D媒体工作室.JSP完全实例教程.电子工业出版社.2007

11  高洪志,邓琨.Java程序设计基础教程.哈尔滨工业大学出版社.2008

12  丁秋林力士奇客户关系管理清华大学出版社.2001

13  周绪管丽娜白海波等SQL SERVER 2005入门与提高清华大学出版社.2005

14  田同生客户关系管理的中国之路机械工业出版社.2001

15  黄梯云李一军管理信息系统高等教育出版社.1999

16  Green berg kae bookManLiu Ya translation's Real-time customer relationship managementMachinery Industry Press 2002

17  S. NiwaMSuzuki and KKimuraElectrical Shock Absorber for Docking System in Space IEEE International Workshop on Intelligent Motion ControlBogazici UniversityIstenbul.1990

18  David FlanaganJava In A Nutshell 5th EditionSoutheast University Press.2006

附录1

Java Servlet编程

服务器端Java应用程序的崛起是Java编程领域一个最新和最令人激动的趋势。Java语言最初是用于小型嵌入式设备。这是第一次作为一个发展的详细的语言阐述客户端的网页内容的程序形式。Java的潜力作为服务器端开发平台已不幸被忽视。目前,Java作为一种语言,非常适合用于服务器端的发展。

特别是企业已经很快认识到Java在服务器端程序开发的潜力,Java本来就是适合大客户机/服务器应用程序。其跨平台的性质的Java是极为有益的组织,可以在 Unix和Windows操作系统下运行。 Java的面向对象,内存保护设计功能允许开发人员简短开发周期并增加可靠性。此外, Java的内置的支持网络服务和为企业的API提供了传统数据,缓解过渡到早期客户机/服务器系统。

Web应用程序的历史

虽然servlets可以用来延伸功能的任何Java功能的服务器,今天他们是最经常被用来延长网络服务器,提供了强大的,有效的替代CGI脚本。当您使用一个servlet创建动态内容的网页或其他扩展功能的Web服务器,您实际上是建立一个web应用。虽然网页只是静态显示的内容,并让用户浏览的内容,一个web应用提供了一个更具交互性的体验。一个web应用可以作为一个简单的关键字搜索的一份文件存档或复杂的电子商店。 Web应用程序正在部署在互联网上的企业内联网和外联网,在那里他们有潜力提高生产力,改变了企业,大型和小型,做生意。

为了使您可以轻松地开发servlets,Sun公司已经公布了一套课程,提供基本的servlet支持。该javax.servlet和javax.servlet.http软件包构成Servlet的API。2.0版本的这些类别捆绑与Java Servlet的开发工具包(JSDK),用于Java开发工具包1.1版以上。

由于servlets写在Java和符合一个明确的和普遍接受的API ,它们是高度便携不同操作系统和跨服务器实现的。你可以在Windows NT机器运行的Java Web服务器开发一个servlet,随着在高端Unix服务器上运行的Apache部署servlets,可以真正做到“写一次,服务无处不在。”

Servlet的便携性不是绊脚石,它往往是对于程序,有两个原因。首先,Servlet的可携性不具有强制性。不同的程序,必须测试所有可能的客户端平台,servlets的工作不仅在服务器上,您使用的是为开发和部署。除非你是业务的销售您的servlets ,您不必担心完全可移植性。第二, servlets避免最易出错的实施和不一致的部分Java语言:抽象窗口工具包(AWT)的形式的基础上的Java图形用户界面。

Servlets可以充分利用权力的核心的Java API:网络和网址访问,多线程,图像处理,数据压缩,数据库连接,国际化,远程方法调用(RMI), CORBA的连接和对象序列化,等等。如果你想要写一个web应用,让员工查询企业原有的数据库,您可以利用所有的API的Java企业在这样做的。或者,如果您需要建立一个基于网络的目录查找应用程序,您可以利用JNDI的空气污染指数。

JavaServerPage

JSP的运作在许多方面像服务器端包括。主要的不同之处在于,不是嵌入<SERVLET>标记的网页,JSP技术嵌入实际摘录的servlet代码。这是一个由Sun试图分开的内容介绍,更方便于服务器端的网页包含有大块的动态内容混杂与静态内容在几个不同的地方。

就像服务器端包含的servlet链和, JSP技术不需要任何改变Servlet的空气污染指数。但它确实需要特别的支持,您的Web服务器。这种支持是不包括在Java Web服务器1.1.1 (内定审议的参考的servlet引擎针对这本书是写) ,但预计会在下一版本的Java Web服务器,大概1.2 ,以及其他Servlet的引擎,他们跟上。

MVC(Model-View-Controller)由Trygve Reenskaug提出,首先被应用在SmallTalk-80环境中,是许多交互和界面系统的构成基础。根据界面设计可变性的需求,MVC把交互系统的组成分解成模型、视图、控制器三部分。

模型(Model)是软件所处理问题逻辑在独立于外在显示内容和形式情况下的内在抽象,封装了问题的核心数据、逻辑和功能的计算关系,独立于具体的界面表达和I/O操作。视图(View)把表示模型数据及逻辑关系和状态的信息及特定形式展示给用户。它从模型获得显示信息,对于相同的信息可以有多个不同的显示形式或视图。控制器(Controller)是处理用户与软件的交互操作的,其职责是控制提供模型中任何变化的传播,确保用户界面于模型间的对应联系;它接受用户的输入,将输入反馈给模型,进而实现对模型的计算控制,是使模型和视图协调工作的部件。通常一个视图对应一个控制器。模型、视图与控制器的分离,使得一个模型可以具有多个显示视图。如果用户通过某个视图的控制器改变了模型的数据,所有其它依赖于这些数据的视图都应反映到这些变化。因此,无论何时发生了何种数据变化,控制器都会将变化通知所有的视图,导致显示的更新。这实际上是一种模型的变化-传播机制。

附录2

Java Servlet Programming

The rise of server-side Java applications is one of the latest and most exciting trends in Java programming. The Java language was originally intended for use in small, embedded devices. It was first hyped as a language for developing elaborate client-side web content in the form of applets. Until recently, Java's potential as a server-side development platform had been sadly overlooked. Now, Java is coming into its own as a language ideally suited for server-side development.

Businesses in particular have been quick to recognize Java's potential on the server—Java is inherently suited for large client/server applications. The crossplatform nature of Java is extremely useful for organizations that have a heterogeneous collection of servers running various flavors of the Unix and Windows operating systems. Java's modern, object-oriented, memory-protected design allows developers to cut development cycles and increase reliability. In addition, Java's built-in support for networking and enterprise APIs provides access to legacy data, easing the transition from older client/server systems.

Java servlets are a key component of server-side Java development. A servlet is a small, pluggable extension to a server that enhances the server's functionality. Servlets allow developers to extend and customize any Java- enabled server—a web server, a mail server, an application server, or any custom server—with a hitherto unknown degree of portability, flexibility, and ease. But before we go into any more detail, let's put things into perspective.

History of Web Applications

While servlets can be used to extend the functionality of any Java-enabled server, today they are most often used to extend web servers, providing a powerful, efficient replacement for CGI scripts. When you use a servlet to create dynamic content for a web page or otherwise extend the functionality of a web server, you are in effect creating a web application. While a web page merely displays static content and lets the user navigate through that content, a web application provides a more interactive experience. A web application can be as simple as a keyword search on a document archive or as complex as an electronic storefront. Web applications are being deployed on the Internet and on corporate intranets and extranets, where they have the potential to increase productivity and change the way that companies, large and small, do business.

To make it easy for you to develop servlets, Sun has made publicly available a set of classes that provide basic servlet support. The javax.servlet and javax.servlet.http packages constitute this Servlet API. Version 2.0 of these classes comes bundled with the Java Servlet Development Kit (JSDK) for use with the Java Development Kit version 1.1 and above.

Because servlets are written in Java and conform to a well-defined and widely accepted API, they are highly portable across operating systems and across server implementations. You can develop a servlet on a Windows NT machine running the Java Web Server and later deploy it effortlessly on a high-end Unix server running Apache. With servlets, you can truly "write once, serve everywhere."

Servlet portability is not the stumbling block it so often is with applets, for two reasons. First, servlet portability is not mandatory. Unlike applets, which have to be tested on all possible client platforms, servlets have to work only on the server machines that you are using for development and deployment. Unless you are in the business of selling your servlets, you don't have to worry about complete portability. Second, servlets avoid the most error-prone and inconsistently implemented portion of the Java language: the Abstract Windowing Toolkit (AWT) that forms the basis of Java graphical user interfaces.

Servlets can harness the full power of the core Java APIs: networking and URL access, multithreading, image manipulation, data compression, database connectivity, internationalization, remote method invocation (RMI), CORBA connectivity, and object serialization, among others. If you want to write a web application that allows employees to query a corporate legacy database, you can take advantage of all of the Java Enterprise APIs in doing so. Or, if you need to create a web-based directory lookup application, you can make use of the JNDI API.

JavaServer Pages

JSP operates in many ways like server-side includes. The main difference is that instead of embedding a <SERVLET> tag in an HTML page, JSP embeds actual snippets of servlet code. It's an attempt by Sun to separate content from presentation, more convenient than server-side includes for pages that have chunks of dynamic content intermingled with static content in several different places.

Just like server-side includes and servlet chaining, JSP doesn't require any changes to the Servlet API. But it does require special support in your web server. This support is not included in the Java Web Server 1.1.1 (the unofficially considered reference servlet engine against which this book is written), but it's expected to be introduced in the next version of the Java Web Server, probably 1.2, and in other servlet engines as they keep pace.

MVC (Model-View-Controller) by Trygve Reenskaug proposed, the first to be used in SmallTalk-80 environment, and many interactive interface system based on the composition. According to the variability of the interface design requirements, MVC the interactive system broken down into component model, view, controller of three parts.

Model (Model) is handled by software problems in the logic independent of the external display content and format of the internal circumstances abstract, a package of core data, logic and function of the calculation, independent of the specific expression of the interface and I / O Operation. View (View) said that the model data and the logic of relations and the status of information and specific forms of display to users. It was revealed that information from the model, the same information can have many different forms or view the display. Controller (Controller) is to address the user interaction with the software, its duty is to provide control of any change in the model of communication, to ensure that the user interface in the corresponding model; accept user input, the input feedback to the model, then Implementation of the calculation model control, is to model and the view of coordinating the work of the components. Usually a corresponding view of a controller. Model view controller and the separation, can make a model with multiple display view. If the user through a controller to change the view of the model data, all the other dependent on the data should be reflected in the view of these changes. Therefore, no matter what happened when the data changes, the controller will be notified of all changes in the view, lead to show updates. This is in fact a model for change - communication mechanisms.

今天的文章 监狱管理系统分享到此就结束了,感谢您的阅读。
编程小号
上一篇 2024-12-08 11:30
下一篇 2024-12-08 11:27

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/bian-cheng-ji-chu/81035.html