1、 常州大学科研项目管理系统的设计与实现摘 要:随着高校科研项目的增多,对科研项目的管理势在必行。本开发是以常州大学为例而开发的高校科研管理系统。该系统是在Tomcat服务器下,MyEclipse环境中开发,使用的语言是JAVA、数据库是MySQL。系统的用户包括三种权限:管理员、项目负责人、普通教师,每类用户各司其职,相辅相成,共同完成科研项目管理功能。管理员的权限功能包括用户权限管理、部门管理、项目类别管理、系统管理,还可以查询统计系统信息。项目负责人是对项目的审批、结题进行把关,功能包括项目审批管理、项目结题管理、系统管理。普通教师是对项目进行申报的,功能包括项目申报管理、过期项目管理、项
2、目结题管理、系统管理。三类用户功能分工明确,权限之间没有交叉,完美地结合,为科研项目的管理提供了完美保障。关键词:科研项目;科研管理系统;JAVA;MySQL数据库;Tomcat服务器;MyEclipse开发环境; Design and implementation of scientific research project management system of the University of ChangzhouAbstract:With the increasing of scientific research project, the management of scientif
3、ic research projects is essential trend, so in this curriculum, I study the university scientific research management system, this system is developed by University of Changzhou as an example, is the subject of design and implementation of scientific research project management system of the Univers
4、ity of Changzhou.The system is in the Tomcat server, MyEclipse development environment, the language used is JAVA, the database is MySQL.The user of the system includes three kinds of permissions: administrator, who is in charge of the project, the ordinary teacher, each category of users perform th
5、eir respective duties, complement each other, to complete the scientific research project management. Administrator permissions, user rights management, including management, project category management, system management, can also query statistics information system. Person in charge of the project
6、 is the project examination and approval, the control of the system includes management, project approval, project completion management, system management. Ordinary teachers is to declare to the project, including project management function, project management, project completion date management,
7、system management. Three types of user function clear division of labor, no cross between authority, the perfect combination, has provided the safeguard for the management of scientific research projects.Key words:Research project; Scientific research management system; JAVA; MySQL database; Tomcat
8、server; MyEclipse development environment目录1 绪论11.1 系统概况11.2 系统目的21.3 本章小结22 开发工具32.1 Tomcat服务器32.2 MyEclipse开发工具32.3 MySQL数据库42.4 JAVA语言52.5 本章小结63 需求分析73.1 功能需求73.1.1 登录模块73.1.2 部门负责人功能73.1.3 管理员功能83.1.4 普通教师功能93.2 技术需求103.3 可行性分析103.4 数据库需求113.5 本章小结114.1 数据需求分析124.2 数据结构分析124.3 E-R图144.4 本章小结155
9、 系统设计与实现175.1 登录模块175.2 项目负责人功能模块185.2.1 项目审批管理模块195.2.2 项目结题管理模块215.3 管理员功能模块235.3.1 用户权限管理模块235.3.2 部门管理模块255.3.3 项目类别管理模块275.3.4 查询统计系统模块285.4 普通教师功能模块305.4.1 项目申报管理模块305.4.2 过期项目管理模块335.4.3项目结题管理模块345.5 本章小结366 系统测试376.1 功能测试376.1.1 登录功能376.1.2 审批项目功能386.1.3 结题项目功能386.1.4 文件上传功能396.2 本章小结397 总结4
10、0参 考 文 献41致 谢42IV常州大学本科生毕业设计(论文)1 绪论1.1 系统概况在如今这个核算机得到遍及运用的年代,许多往昔依靠人工进行的办理都由核算机所替代。特别在信息的存储、加工和保护上核算机能取得人所不能比拟的效果。经过核算机进行办理的首要办法是树立办理信息体系(Management Information System,MIS)。对办理信息体系有许多种解说,依照办理信息体系的创始人明尼苏达大学的Gordon B.Davis教授给出的界说,MIS是一个运用核算机硬件和软件,手作业业,剖析、方案、操控和决议方案模型,以及数据库的用户机器体系。它能供给信息,撑持公司或安排的运转、办理
11、和决议方案功用。我国专家薛华成则将其界说为:办理信息体系是一个以人为主导,运用核算机硬件、软件、网络通信设备以及其他办公设备,进行信息的搜集、传输、加工、存储、更新和保护,以公司战略竞优、进步功率和效益为意图,撑持公司高层决议方案、中层操控、底层运作的集成化的人机体系。虽然界说不一样,但总的说来,办理信息体系毕竟要起到一个进步办理功率、减轻办理人员担负的效果。无论关于公司或其他安排,树立一个办理信息体系都是完结其领先办理一切必要的。常州大学应国家要求与自身发展要求,每年都承接了许多的科研项目及发表了为数众多的科技论文,对这些效果进行计算所得到的信息在该校的办理中具有重要的含义;首要,它反映了常
12、州大学的学术水平效果,是对该校所进行的各项评价的首要参阅依据;第二,经过这些核算效果,可以看出常州大学的开展趋势,从而为学校开展决议方案供给重要的辅佐信息;第三,它是查询某位研究人员的作业效果的首要办法之一;最终,这些核算信息也是上级主管部门常常需要上报的信息。 明显,需要有一套卓有成效的手法来对常州大学的科研项目申请、结题等工作进行管理。到当前为止,常州大学的科研项目办理一向选用人工办理的办法,并无一套成文的办理标准,也没有相应的专职办理人员,只要当上级部门发文需要核算项目或论文情况时才由有关人员查阅本所的各种关联文档,人工进行核算并制造报表。这种落后办理的坏处是清楚明了的。 有鉴于此,开发
13、一个常州大学的科研项目管理系统是很有必要的。它将有助于将办理人员从烦琐的办理作业中脱节出来,使办理体系化、条理化,能敏捷取得感兴趣的信息。科研管理系统是一个一体化的系统,包含事务信息模块、常规作业模块、决议方案模块等。因此依据现有人力和时刻约束条件以及项目和论文申办的特色,树立一个完好的、具有一切功用的科研管理系统势在必行。咱们挑选开发一个相对较小的有用的数据处置体系。数据处置体系(Data Processing System,DPS)又称为电子数据处置体系(Electronic Data Processing System,EDPS)或事务处置体系(Transaction Processin
14、g System,TPS),它归于办理信息体系的领域,但不是办理信息体系的悉数。其首要特色是简略、精确和标准化。事务规模首要是事务数据的登录,数据的修正,将数据信息以文件方式存入软盘、磁带或硬盘,经过存取这些数据信息打印出报表,首要的操作是排序、列表、更新、查询等,首要运用的运算是简略的加减乘除,其输入通常是原始的单据或表单,输出通常是分类或汇总的报表,首要运用的人员是运转人员。这一类体系因为处置的疑问处于较低的办理层,因此疑问比拟布局化,即处置进程较固定,体系布局相对比拟简略,无须很杂乱的完结技能。 1.2 系统目的科研项目管理系统的服务对象是学院科研项目管理人员、教师等,教师是可以查看科研
15、项目信息的,然后根据情况对其进行申报工作;科研项目管理人员根据教师提出的申报项目进行审批,项目结束了对项目进行结题工作。其次,系统还应该有管理员对各类用户进行管理,对科研项目、科研项目类别、部门等信息进行管理,管理员是为各类用户进行服务的,以保证各类用户可以各司其职,确保科研项目管理得到很好的使用。1.3 本章小结这章介绍了系统开发的发展概况、目的和系统存在的问题。发展概况是对科研项目在我院发展的情况,系统的目的是从系统可以做什么方面进行了分析。2 开发工具常州大学科研项目管理系统是在Tomcat服务器下运行的,使用的是MyEclipse作为开发工具、MySQL数据库、JAVA语言开发的B/S
16、结构系统。2.1 Tomcat服务器Tomcat是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache、Sun 和其他一些公司及个人共同开发而成。由于有了Sun 的参与和支持,最新的Servlet 和JSP 规范总是能在Tomcat 中得到体现,Tomcat 5 支持最新的Servlet 2.4 和JSP 2.0 规范。因为Tomcat 技术先进、性能稳定,而且免费,因而深受Java 爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web 应用服务器。目前最新版本是7.0。Tomcat 服务器是一个免
17、费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。对于一个初学者来说,可以这样认为,当在一台机器上配置好Apache 服务器,可利用它响应对HTML 页面的访问请求。实际上Tomcat 部分是Apache 服务器的扩展,但它是独立运行的,所以当你运行tomcat 时,它实际上作为一个与Apache 独立的进程单独运行的。诀窍是,当配置正确时,Apache 为HTML页面服务,而Tomcat 实际上运行JSP 页面和Servlet。另外,Tomcat和IIS、Apache等Web服务器一样,具有处理HT
18、ML页面的功能,另外它还是一个Servlet和JSP容器,独立的Servlet容器是Tomcat的默认模式。不过,Tomcat处理静态HTML的能力不如Apache服务器。目前Tomcat最新版本为7.0.39。Tomcat 很受广大程序员的喜欢,因为它运行时占用的系统资源小,扩展性好,支持负载平衡与邮件服务等开发应用系统常用的功能;而且它还在不断的改进和完善中,任何一个感兴趣的程序员都可以更改它或在其中加入新的功能。2.2 MyEclipse开发工具MyEclipse,是一个十分优秀的用于开发Java, J2EE的Eclipse插件集合,MyEclipse的功能非常强大,支持也十分广泛,尤其
19、是对各种开源产品的支持十分不错。MyEclipse企业级工作平台(MyEclipse Enterprise Workbench ,简称MyEclipse)是对EclipseIDE的扩展,利用它我们可以在数据库和JavaEE的开发、发布以及应用程序服务器的整合方面极大的提高工作效率。它是功能丰富的JavaEE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML语言,Struts架构,JSP,CSS(层叠样式表),Javascript,Spring,SQL,Hibernate。MyEclipse 是一个十分优秀的用于开发Java, J2EE的 Eclipse 插件集合,MyEcl
20、ipse的功能非常强大,支持也十分广泛,尤其是对各种开源产品的支持十分不错。MyEclipse目前支持Java Servlet,AJAX, JSP, JSF, Struts,Spring, Hibernate,EJB3,JDBC数据库链接工具等多项功能。可以说MyEclipse几乎囊括了目前所有主流开源产品的专属eclipse开发工具。1根据官方最新消息,MyEclipse 2013已经正式发布!MyEclipse 20132支持HTML5、JQuery和主流的Javascript 库。随着MyEclipse 2013支持Html5,你可以添加音频、视频和API元素到你的项目,从而为移动设备创
21、建复杂的Web应用程序。你甚至还可以通过HTML5 可视化设计器设计令人难以置信的用户界面。同时,随着MyEclipse 2013支持JQuery,你可以通过插件提升性能,并添加动画效果到设计中。在结构上,MyEclipse的特征可以被分为7类:1JavaEE模型2WEB开发工具3EJB开发工具4应用程序服务器的连接器5JavaEE项目部署服务6数据库服务7MyEclipse整合帮助对于以上每一种功能上的类别,在Eclipse中都有相应的功能部件,并通过一系列的插件来实现它们。MyEclipse结构上的这种模块化,可以让我们在不影响其他模块的情况下,对任一模块进行单独的扩展和升级。简单而言,M
22、yEclipse是Eclipse的插件,也是一款功能强大的JavaEE集成开发环境,支持代码编写、配置、测试以及除错,MyEclipse5.5以前版本需先安装Eclipse。MyEclipse5.5以后版本安装时不需安装Eclipse。2.3 MySQL数据库MySQL(发音为my ess cue el,不是my sequel)是一种开放源代码的关系型数据库管理系统(RDBMS),MySQL数据库系统使用最常用的数据库管理语言-结构化查询语言(SQL)进行数据库管理。由于MySQL是开放源代码的,因此任何人都可以在General Public License的许可下下载并根据个性化的需要对其进
23、行修改。MySQL因为其速度、可靠性和适应性而备受关注。大多数人都认为在不需要事务化处理的情况下,MySQL是管理内容最好的选择。MySQL这个名字,起源不是很明确。一个比较有影响的说法是,基本指南和大量的库和工具带有前缀“my”已经有10年以上,而且不管怎样,MySQL AB创始人之一的Monty Widenius的女儿也叫My。这两个到底是哪一个给出了MySQL这个名字至今依然是个迷,包括开发者在内也不知道。MySQL的海豚标志的名字叫“sakila”,它是由MySQL AB的创始人从用户在“海豚命名”的竞赛中建议的大量的名字表中选出的。获胜的名字是由来自非洲斯威士兰的开源软件开发者Amb
24、rose Twebaze提供。根据Ambrose所说,Sakila来自一种叫SiSwati的斯威士兰方言,也是在Ambrose的家乡乌干达附近的坦桑尼亚的Arusha的一个小镇的名字。MySQL,虽然功能未必很强大,但因为它的开源、广泛传播,导致很多人都了解到这个数据库。它的历史也富有传奇性。2.4 JAVA语言Java是一种可以撰写跨平台应用软件的面向对象的程序设计语言,是由Sun Microsystems公司于1995年5月推出的Java程序设计语言和Java平台(即JavaSE, JavaEE, JavaME)的总称。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于
25、个人PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。在全球云计算和移动互联网的产业环境下,Java更具备了显著优势和广阔前景。Java是由Sun Microsystems公司于 1995年5月推出的Java面向对象程序设计语言(以下简称Java语言)和Java平台的总称。由James Gosling和同事们共同研发,并在1995年正式推出。用Java实现的HotJava浏览器(支持Java applet)显示了Java的魅力:跨平台、动态的Web、Internet计算。从此,Java被广泛接受并推动了Web的迅速发展,常用的浏览器均支持Javaa
26、pplet。另一方面,Java技术也不断更新。(2010年Oracle公司收购了SUN)Java由四方面组成:Java编程语言、Java类文件格式、Java虚拟机和Java应用程序接口(Java API)。 Java平台由Java虚拟机(Java Virtual Machine,简称JVM)和Java 应用编程接口(Application Programming Interface,简称API)构成。Java应用编程接口为Java应用提供了一个独立于操作系统的标准接口,可分为基本部分和扩展部分。在硬件或操作系统平台上安装一个Java平台之后,Java应用程序就可运行。Java平台已经嵌入了几乎
27、所有的操作系统。这样Java程序可以只编译一次,就可以在各种系统中运行。Java应用编程接口已经从1.1x版发展到1.2版。常用的Java平台基于Java1.4,最近版本为Java1.7。Java分为三个体系J2SE(Java2 Platform Standard Edition,java平台标准版),J2EE(Java 2 Platform,Enterprise Edition,java平台企业版),J2ME(Java 2 Platform Micro Edition,java平台微型版)。与传统程序不同,Sun 公司在推出 Java 之际就将其作为一种开放的技术。全球数以万计的 Java
28、开发公司被要求所设计的 Java 软件必须相互兼容。“Java 语言靠群体的力量而非公司的力量”是Sun公司的口号之一,并获得了广大软件开发商的认同。这与微软公司所倡导的注重精英和封闭式的模式完全不同。Sun 公司对 Java 编程语言的解释是:Java 编程语言是个简单、面向对象、分布式、解释性、健壮、安全与系统无关、可移植、高性能、多线程和动态的语言。Java 平台是基于 Java 语言的平台。这样的平台非常流行。因此微软公司推出了与之竞争的.NET平台以及模仿Java的C#语言。2.5 本章小结该章节介绍了系统的开发工具,包括Tomcat服务器、MyEclipse开发工具、MySQL数据
29、库、JAVA语言,详细对每一个工具的功能、用途进行了详细的介绍。3 需求分析3.1 功能需求科研项目管理系统是以后台管理为主,是典型的管理信息系统,以下是对管理信息系统的概述。管理信息系统(Management Information System,简称MIS)是一个以人为主导,利用计算机硬件、软件、网络通信设备以及其他办公设备,进行信息的收集、传输、加工、储存、更新和维护,以企业战略竞优、提高效益和效率为目的,支持企业的高层决策、中层控制、基层运作的集成化的人机系统。管理信息系统油决策支持系统(DSS)、工业控制系统(CCS)、办公自动化系统(OA)以及数据库、模型库、方法库、知识库和与上级
30、机关及外界交换信息的接口组成。本系统的用户权限有三种,分别是部门负责人、管理员、普通教师,每种权限的功能如下所示:3.1.1 登录模块登录功能是每种权限用户都可以实现的,只有登录了系统才可以对系统进行更好的管理。该系统的不同权限的用户有三类,分别是部门负责人、管理员、普通教师,这三类用户有各自的用户名、密码、权限来登录系统。3.1.2 部门负责人功能部门负责人可以实现的功能有项目审批管理、项目结题管理,每个模块的具体功能内容如下:项目负责人功能待审批列表已审批列表项目审批项目结题项目结题确认已确认项目图3. 1部门负责人功能(1)项目审批管理:该模块包括待审批列表、已审批列表。待审批列表展示了
31、科研项目组所有未审批的项目信息(包括项目名称、项目类别、开始时间、结束时间、人数、申报金额、创建时间、进度跟踪、文档下载等),项目负责人可以点击查看项目的目前进度情况信息,可以点击下载该项目的文档信息,如果在仔细查看了解了之后,确定该项目可以审批通过,项目负责人即可单击审批对该项目进行审批。已审批列表展示了科研项目组所有已审批的项目信息(包括项目名称、项目类别、开始时间、结束时间、人数、申报金额、创建时间、进度跟踪、文档下载等),项目负责人可以点击查看项目的目前进度情况信息,可以点击下载该项目的文档信息,项目负责人可以通过在查询自己想要查看的项目审批情况。(2)项目结题管理:该模块包括项目结题
32、确认和已确认项目。项目结题确认展示了项目的结题进度信息(包括项目名称、项目类别、开始时间、结束时间、人数、申报金额、创建时间、进度跟踪、文档下载等),项目负责人同样可以点击查看项目的目前进度情况信息,可以点击下载该项目的文档信息,如果在仔细查看了解了之后,确定该项目可以结题了,项目负责人即可单击确认结题对该项目进行结题确认。已确认结题提供项目负责人查看已经结题的项目信息(包括项目名称、项目类别、开始时间、结束时间、人数、申报金额、创建时间、进度跟踪、文档下载等),项目负责人同样可以点击查看项目的目前进度情况信息,可以点击下载该项目的文档信息。3.1.3 管理员功能管理员可以实现的功能有用户权限
33、管理、部门管理、项目类别管理、查询统计系统,每个模块的具体功能内容如下:管理员功能创建用户用户管理用户权限管理部门管理添加部门部门列表项目类别管理查询统计系统添加类别类别列表项目统计成果统计图3. 2管理员功能1、 用户权限管理:该模块包括创建用户和用户管理。创建用户提供管理员新建用户信息(用户名、密码、确认密码、部门、权限分配、描述),输入用户信息,实时保存即可。用户列表提供管理员修改、删除用户信息(用户名、密码、部门、权限、描述),描述是对用户的性质进行描述。2、 部门管理:该模块包括添加部门和部门列表。添加部门是提供管理员添加部门信息(部门编号、部门名称等),添加完毕保存即可。部门列表是
34、提供管理员对部门信息(部门编号、部门名称等)进行编辑、删除操作。3、 项目类表管理:该模块包括添加类别和类别列表。添加类别提供管理员添加项目类别信息(类别名称、描述),添加完毕保存即可。项目类别列表提供管理员查看、修改、删除项目类别信息(类别名称、描述)。4、 查询项目统计管理:该模块包括项目统计和成果统计。项目统计是提供管理员对项目信息(项目名称、项目类别、用户、部门、开始时间、结束时间、人数、申报金额、创建时间、是否审批、是否完成、进度跟踪、文档下载)进行统计,管理员可以点击查看项目的详细信息,可以对项目进行下载。成果统计是提供管理员成果信息(成果名称、项目、用户、部门、成果描述)进行统计
35、的,可以实现按照用户或者部门来查询某个成果信息,如果需要查询所有成果,不输入任何成果名称即可;可以实现下载某成果信息。3.1.4 普通教师功能普通教师可以实现的功能有项目申报管理、过期项目管理、项目结题管理,每个模块的具体功能内容如下:普通教师功能申报项目项目申报列表项目申报管理过期项目管理查看过期项目项目结题管理未结题项目已结题项目图3. 3普通教师功能1、 项目申报管理:该模块包括申报项目和项目申报列表。申报项目即添加项目信息(项目类别、项目名称、开始日期、结束日期、人数、申报金额、相关文档资料上传、文档下载、描述)。其中项目列表、是可以在下拉框中进行选择的,日期也是可以选择的。申报项目列
36、表提供教师查询、修改、删除申报项目,查看项目进度跟踪,下载项目文档。2、 过期项目管理:该模块提供教师查看已经过期的科研项目。该模块提供教师查看已经过期的科研项目信息,包括项目名称、项目类别、开始时间、结束时间、人数、申报金额、创建时间、进度跟踪、文档下载。如果已经过期的项目需要重新申报,教师是可以重新申报的。3、 项目结题管理:该模块包括未结题类表和已结题列表。未结题列表是提供教师查看未结题项目,如果需要结题,教师可以给其结题操作。已结题列表是查看已结题项目,教师可以查看进度、下载文档、查看项目成果。3.2 技术需求目前,开发此类系统的技术主要有ASP、JSP技术。针对本系统的功能需求和性能
37、需求,采用的是JSP(JAVA Server Page)技术。它是一个纯的面向对象的程序设计语言,它继承了 C+ 语言面向对象技术的核心,Java舍弃了C +语言中容易引起错误的指针(以引用取代)、运算符重载(operator overloading)、多重继承(以接口取代)等特性,增加了垃圾回收器功能用于回收不再被引用的对象所占据的内存空间,使得程序员不用再为内存管理而担忧。在 Java SE 1.5 版本中,Java 又引入了泛型编程(Generic Programming)、类型安全的枚举、不定长参数和自动装/拆箱等语言特性。3.3 可行性分析可行性分析,是在系统调查的基础上,针对新系统
38、的开发是否具备必要性和可能性,对新系统的开发从技术、经济、社会的方面进行分析和研究,以避免投资失误,保证新系统的开发成功。可行性研究的目的就是用最小的代价在尽可能短的时间内确定问题是否能够解决。该系统的可行性分析包括以下几个方面的内容。1、经济可行性:主要是对项目的经济效益进行评价,本系统作为一个毕业设计,无需开发经费,对于我系在经济上是可以接受的。2、 技术上的可行性:技术上的可行性分析主要分析技术条件能否顺利完成开发工作,硬、软件能否满足开发者的需要等。该管理系统采用了当前新兴的B/S模式进行开发,结合了Internet技术。数据库服务器选用MySQL数据库,它能够处理大量数据,同时保持数
39、据的完整性并提供许多高级管理功能。它的灵活性、安全性和易用性为数据库编程提供了良好的条件。因此,系统的软件开发平台已成熟可行。硬件方面,科技飞速发展的今天,硬件更新的速度越来越快,容量越来越大,可靠性越来越高,价格越来越低,其硬件平台完全能满足此系统的需要。3、管理上的可行性:主要是科研项目组管理人员大力支持,系领导认同,现有的管理制度和方法科学,规章制度齐全,原始数据正确等。规章制度和管理方法为系统的建设提供了制度保障。 综上所述,此系统开发目标已明确,在技术和经济等方面都可行,并且投入少、见效快。因此系统的开发是完全可行的。3.4 数据库需求1、 数据录入和处理的准确性和实时性数据的输入是
40、否准确是数据处理的前提,错误的输入会导致网站输出的不正确和不可用,从而使网站的工作失去意义。数据的输入来源是手工输入。手工输入要通过网站界面上的安排网站具有容错性,并且对操作人员要进行网站的培训。在网站中,数据的输入往往是大量的,因此网站要有一定的处理能力,以保证迅速的处理数据。2、 数据的安全性本网站为企业人事管理部门设计,因此只有特定的人事管理者才能对数据实现增,删,改,查等操作。未获授权人员不能进入网站。3、 数据的备份要定期对数据库中的数据进行全部或新增部分的备份工作,以保证在硬件出现故障或人为原因导致无法运行时是可以快速及时的还原到原来的正常状态。3.5 本章小结该章节从功能需求、技
41、术需求、可行性分析、数据库需求四个方面对需求分析进行了详细的分析,功能需求从管理员、项目负责人、普通教师三个方面对系统功能进行了分析;技术需求从系统所使用到的技术方面进行了分析;可行性分析从经济可行性、技术可行性、管理可行性三个方面进行分析;数据库需求是从数据录入和处理的准确性和实时性、数据的安全性、数据的备份三个方面进行分析。4 数据库分析与连接4.1 数据需求分析数据对象(Data Object):是性质相同的数据元素的集合,是数据的一个子集,数据对象是一种运行时的概念。可以是外部实体(例如,产生或使用信息的任何事物)、事物(例如,报表)、行为(例如,打电话)、事件(例如,响警报)、角色(
42、例如,教师、学生)、单位(例如,会计科)、地点(例如,仓库)或结构(例如,文件)等。总之,可以由一组属性来定义的实体都可以被认为是数据对象。合理地规划数据库,是成功实现常州大学科研项目管理系统的前提,也是使系统能够高效准确运行的关键要素之一。本系统应该建立一个稳定的后台数据库,通过该数据库管理整个科研项目管理所需的信息(用户信息、科研项目信息、项目类别信息、部门信息表、等)。针对系统的需求,本系统站中需要建立一个数据库来存放所有数据信息,数据库构成如下:pms数据库:用来存放系统涉及到的相关信息,包括了8个表,分别为:dept(部门信息表)、user(用户信息表)、picture(文件信息表)
43、、project(项目信息表)、projectrecords(项目进度信息表)、projectresult(项目成果信息表)、projecttype(项目类别信息表)、type(信息表)。4.2 数据结构分析表1用户信息表(user)编号字段名称数据类型主键备注1IdString是编号2UsernameString用户名3PasswordString密码4TypeInt1、 管理员(科研处);2、部门负责人;3普通教师(个人)5DeptString部门6DescriptionString用户描述用户信息表(user)是用来存放用户信息的,字段包括6个:编号、用户名、密码、用户类型、部门、用户描
44、述,其中编号的表的主键。表2部门信息表(dept)编号字段名称数据类型主键备注1IdString是编号2CodeString部门编号3NameString名称4DescriptionString描述部门信息表(dept)是用来存放部门信息的,字段包括4个:编号、部门编号、名称、描述,其中编号是表的主键,部门编号是表的外键。表3文件信息表(picture)编号字段名称数据类型主键备注1IdString是编号2PathString路径文件信息表(picture)是用来存放文件信息的,字段包括2个:编号、路径,其中编号是表的主键。表4科研项目信息表(project)编号字段名称数据类型主键备注1Id
45、String是编号2TypeString项目类型3NameString项目名称4UserString所属用户5StartdateDate开始日期6EnddateDate结束日期7PersonInt人数8MoneyFloat申报金额9DescriptionString描述10PictureString项目文档11IsacceptInt是否审批(0否1是)12IssuccessInt是否完成(0否1是)13AcceptuserString审批人14AcceptdateDate审批时间15SuccessdateDate完成时间16CreatedateDate项目创建时间17ConfirmInt项目结
46、题确认18DeptString部门19DeptnameString部门名称20UsernameString用户名称21ProjecttypeString项目类型而科研项目信息表(project)是用来存放可研项目信息的,字段包括21个:编号、项目类型、项目名称、所属用户、开始日期、结束日期、人数、申报金额、描述、项目文档、是否审批、是否完成、审批人、审批时间、完成时间、项目创建时间、项目结题时间、部门、部门名称、用户名称、项目类型,其中编号是表的主键。表5项目进度信息表(projectrecords)编号字段名称数据类型主键备注1IdString是编号2ProjectString项目3DescriptionString进度描述4UserString录入人5CreatedateDate录入时间项目进度信息表(projectrecords)是用来存放项目进的信息的,字段包括5个:编号、项目、进度描述、录入人、录入时间,其中编号是表的主键。表6项目成果信息表(projectresult)编号字段名称数据类型主键备注1IdString是编号2Titl