1、摘 要 对于一所高等院校来说,学科门类多,科研项目及成果所涉及科学领域广,其内容亦比较繁杂,这给管理造成了一定的困难,利用计算机技术使高校高效率完成信息管理,推动高校科研信息管理走向科学化、社会化、规范化和自动化,是适应现代高等学校制度要求。科研是研究生面临的一项重要任务,研究生科研管理内容比较复杂,科研涉及的内容极为广泛,手工管理比较麻烦。科研成果管理系统就是在这种背景之下开发的,为高校的科研成果管理提供快捷高效服务。 研究生科研管理系统是由人、计算机组成的能对科研信息录入、修改、存储和统计,该系统能够实时反映研究生的科研活动,为日常事务的处理和管理提供重要支持。基于研究生科研管理系统的开发
2、背景,设计划分出三个大的模块,分别是论文管理模块、软件著作管理模块、专利管理模块。本系统运用ASP.NET技术配合大型数据库SQL Server2008和C#构建了一个界面友好的科研信息管理系统。采用了B/S模式,以完成科研成果的录入和统计,查询等功能。关键词:科研管理系统;数据库; B/S结构;ASP.NETAbstract For a higher education , multiple disciplines and the results of research projects involving a wide field of science, its content is al
3、so more complicated, which caused some to management difficulties , the use of computer technology to make efficient completion of college information management, promote information management to scientific research and university community , standardization and automation system is to adapt to the
4、 requirements of modern universities . Graduate research is an important task facing the Graduate Research manage content more complex, involving scientific content is extremely broad, manual management is too much trouble . Research management system is developed in this context , for the managemen
5、t of university research to provide fast and efficient service .Graduate research management system is composed of people, computers can be composed of scientific information on the entry , modification, storage, and statistics, the system is able to reflect the real-time postgraduate research activ
6、ities, provide important support for the processing and management of daily affairs . Background postgraduate research -based development management system , designed to divide the three major modules , namely, paper management module , the software works management module, patent management module.
7、 The system uses ASP.NET technology with a large database SQL Server2008 and C # to build a user-friendly scientific information management system. Using the B / S mode , in order to complete the entry and statistical research , inquiries and other functions.Keywords:Research management system; data
8、base; B/S structure; ASP.NETword文档 可自由复制编辑目 录摘 要IAbstractII1绪论11.1研究目的和意义11.2研究现状11.3研究内容21.4论文结构22 系统开发工具和技术22.1 ASP.NET概述22.1.1 ASP.NET基本含义和特点22.1.2 ASP.NET的优点32.2 SQL介绍42.3 B/S结构介绍52.4三层架构63 需求分析和系统功能设计73.1需求分析73.1.1功能需求83.1.2 性能需求83.2系统功能模型的建立94系统规划和概要设计104.1 系统功能模块104.2 方法概要114.3系统流程图114.4系统解决方
9、案项目构成125 数据库层的设计与实现125.1 数据库概念结构设计125.2数据流图135.3数据字典145.4逻辑设计165.5存储过程设计166 详细设计236.1系统的主要功能236.2程序流程图246.2.1 用户登录流程图246.2.2 添加数据流程图246.2.3 修改数据流程图256.2.4 删除数据流程图266.2.5 查找数据流程图276.3用户界面设计286.3.1登陆界面286.3.2用户管理286.3.3科研管理317系统测试及维护347.1系统测试347.1.1信息录入及查询测试347.1.1信息修改及删除测试377.2系统维护398总结与展望40参考文献42致谢4
10、3word文档 可自由复制编辑1绪论 1.1研究目的和意义随着社会的发展,在现代社会中,信息的获取、处理、交流和决策都需要高质量的计算机软件来完成。高校的管理也愈加信息化,智能化。高校之间的竞争日益激烈,迫使高校的各个部门的工作更加追求高效快捷。通过计算机进行管理无疑是最科学和最有效的方法,一方面可提高工作效率和工作质量,同时又便于部门之间进行信息交流。科研是研究生面临的一项重要任务,研究生科研管理内容比较复杂,科研涉及的内容极为广泛,手工管理比较麻烦。科研管理系统就是在这种背景之下开发的,为高校的科研成果管理提供快捷高效服务。研究生科研管理系统是从学校科研管理的实际需求出发,能够使传统的科研
11、纸质办公环境进入一个全新的网络办公环境中,减少了各类教学科研人员及管理工作者大量重复性的工作,所有的科研情况一次性输入即可长期使用,大大提高了办公效率和数据的准确性。同时能为各级部门及时准确的掌握每个科研人员的科研情况、学院和学校的整体科研情况提供及时准确的科研数据,为各级领导制定决策提供依据。1.2研究现状目前,我国高校规模不断扩大,研究生人数日益增多。对于研究生的科研管理也越来越复杂,随着信息技术的发展,计算机已经被广泛应用于当今社会的各个领域。因此,现阶段研究生科研管理系统的研究受到很多人的关注。在一些发达国家一些类似的管理系统已经应用于企业,而且已经相当普及,然而在我国很多管理还停留在
12、手工操作。因此,使科研管理工作更加规范化、科学化,建设一个科研管理系统已显得非常重要。1.3研究内容 本系统是一个由人、计算机组成的能进行科研信息的录入、修改、查询和导出的系统,该系统采用了 B/S 三层结构,以完成科研成果的录入和统计,采用 ASP.NET 与SQL Server2008 数据库等技术来设计。主要功能是对科研项目、论文、著作、专利等科研信息的录入及维护,实时反映研究生的科研活动,为日常事务的处理和人员管理提供支持。1.4论文结构 论文共分为八个部分,第一部分是绪论,简要介绍了系统的设计背景、目的研究现状及研究内容;第二部分概述系统开发所用到的技术和工具,主要是ASP.NET、
13、B/S三层结构和SQL;第三部分是对系统进一步的深入认识后,对系统需求、功能分析并列出功能模型,开发一个基于现有技术的条件下,又能满足需求的系统;论文第四部分就是对系统的规划和概要设计,这部分内容主要介绍系统功能模块,系统流程图及使用的方法;第五部分是数据库的设计,通过E-R图、数据流图、数据字典等方法罗列出设计必须的要素,为下一步设计做好铺垫;论文的第六部分,就是系统的详细设计了,主要分为三个方面分别是,系统主要功能的设计、程序流程图分析以及界面设计;第七部分就到了设计的尾声,对系统进一步测试和维护;第八部分是对系统设计的总结与展望。2 系统开发工具和技术2.1 ASP.NET概述 2.1.
14、1 ASP.NET基本含义和特点 ASP是Active Server Page的缩写,意为“活动服务器网页”。ASP是微软公司开发的代替CGI脚本程序的一种应用,它可以与数据库和其它程序进行交互,是一种简单、方便的编程工具。ASP的网页文件的格式是.asp,现在常用于各种动态网站中。ASP是一种服务器端脚本编写环境,可以用来创建和运行动态网页或web应用程序。ASP网页可以包含HTML标记、普通文本、脚本命令以及COM组件等。利用ASP可以向网页中添加交互式内容(如在线表单),也可以创建使用HTML网页作为用户界面的web应用程序。与HTML相比,ASP网页具有以下特点: (1)利用ASP可以
15、实现突破静态网页的一些功能限制,实现动态网页技术; (2)ASP文件是包含在HTML代码所组成的文件中的,易于修改和测试; (3)服务器上的ASP解释程序会在服务器端制定ASP程序,并将结果以HTML格式传送到客户端浏览器上,因此使用各种浏览器都可以正常浏览ASP所产生的网页; (4)ASP提供了一些内置对象,使用这些对象可以使服务器端脚本功能更强。例如可以从web浏览器中获取用户通过HTML表单提交的信息,并在脚本中对这些信息进行处理,然后向web浏览器发送信息; (5)ASP可以使用服务器端ActiveX组建来执行各种各样的任务,例如存取数据库、发现那个Email或访问文件系统等。 (6)
16、由于服务器是将ASP程序执行的结果以HTML格式传回客户端浏览器,因此使用者不会看到ASP所编写的原始程序代码,可放置ASP程序代码被窃取。ASP.NET不仅仅是 Active Server Page (ASP) 的下一个版本,而且是一种建立在通用语言上的程序构架,能被用于一台Web服务器来建立强大的Web应用程序。ASP.NET提供许多比现在的Web开发模式强大的优势。2.1.2 ASP.NET的优点 ASP.NET的主要优点大概可以归纳如下: (1)ASP.NET是把基于通用语言的程序在服务器上运行。不像以前的ASP即时解释程序,而是将程序在服务器端首次运行时进行编译,这样的执行效果,当然
17、比一条一条的解释强很多。(2)ASP.NET构架是可以用Microsoft(R)公司最新的产品 Visual S开发环境进行开发,WYSIWYG(What You See Is What You Get所见即为所得)的编辑。这些仅是ASP.NET强大化软件支持的一小部分。(3)因为ASP.NET是基于通用语言的编译运行的程序,所以它的强大性和适应性,可以使它运行在Web应用软件开发者的几乎全部的平台上。通用语言的基本库、消息机制、数据接口的处理都能无缝的整合到ASP.NET的Web应用中。ASP.NET同时也是language-independent语言独立化的,所以,可以选择一种最适合的语言
18、来编写程序,或者把程序用很多种语言来写,现在已经支持的有C#(C+和Java的结合体)、VB、J script。将来,这样的多种程序语言协同工作的能力保护您现在的基于COM+开发的程序,能够完整的移植向ASP.NET。ASP.NET一般分为两种开发语言,VB.NET和C#,C#相对比较常用。(4)ASP是运行在服务器端,所以无须担心浏览器是否支持ASP所使用的编程语言,用户端只要使用可执行HTML码的浏览器,即可浏览Active Server Pages所设计的网页内容。ASP在服务器端运行,当程序执行完毕后,服务器仅将执行的结果返回给客户浏览器,这样也就减轻了客户端浏览器的负担,大大提高了交
19、互的速度。 2.2 SQL介绍 SQL是英文Structured Query Language的缩写,意思为结构化查询语言。SQL语言的主要功能就是同各种数据库建立联系,进行沟通。按照ANSI(美国国家标准协会)的规定,SQL被作为关系型数据库管理系统的标准语言。SQL语句可以用来执行各种各样的操作,例如更新数据库中的数据,从数据库中提取数据等。目前,绝大多数流行的关系型数据库管理系统,如Oracle, Sybase, Microsoft SQL Server,Access等都采用了SQL语言标准。虽然很多数据库都对SQL语句进行了再开发和扩展,但是包括Select、Insert、Update
20、、Delete、Create以及Drop在内的标准的SQL命令仍然可以被用来完成几乎所有的数据库操作。语言特点如下:1一体化:SQL集数据定义DDL、数据操纵DML和数据控制DCL于一体,可以完成数据库中的全部工作。2使用方式灵活:它具有两种使用方式,即可以直接以命令方式交互使用;也可以嵌入使用,嵌入到C、C+、FORTRAN、COBOL、JAVA等主语言中使用。3非过程化:只提操作要求,不必描述操作步骤,也不需要导航。使用时只需要告诉计算机“做什么”,而不需要告诉它“怎么做”。4语言简洁,语法简单,好学好用:在ANSI标准中,只包含了94个英文单词,核心功能只用6个动词,语法接近英语口语。2
21、.3 B/S结构介绍 B/S结构(Browser/Server,浏览器/服务器模式),是WEB兴起后的一种网络结构模式,WEB浏览器是客户端最主要的应用软件。这种模式统一了客户端,将系统功能实现的核心部分集中到服务器上,简化了系统的开发、维护和使用。客户机上只要安装一个浏览器(Browser),如Netscape Navigator或Internet Explorer,服务器安装Oracle、Sybase、Informix或 SQL Server等数据库。浏览器通过Web Server 同数据库进行数据交互。B/S最大的优点就是可以在任何地方进行操作而不用安装任何专门的软件,只要有一台能上网的
22、电脑就能使用,客户端零安装、零维护。系统的扩展非常容易。B/S结构的使用越来越多,特别是由需求推动了AJAX技术的发展,它的程序也能在客户端电脑上进行部分处理,从而大大的减轻了服务器的负担;并增加了交互性,能进行局部实时刷新。B/S结构具有如下特点: 1.维护和升级方式简单。当前,软件系统的改进和升级越发频繁,B/S架构的产品明显体现着更为方便的特性。对一个稍微大一点单位来说,系统管理人员如果需要在几百甚至上千部电脑之间来回奔跑,效率和工作量是可想而知的,但B/S架构的软件只需要管理服务器就行了,所有的客户端只是浏览器,根本不需要做任何的维护。无论用户的规模有多大,有多少分支机构都不会增加任何
23、维护升级的工作量,所有的操作只需要针对服务器进行;如果是异地,只需要把服务器连接专网即可,实现远程维护、升级和共享。所以客户机越来越“瘦”,而服务器越来越“胖”是将来信息化发展的主流方向。今后,软件升级和维护会越来越容易,而使用起来会越来越简单,这对用户人力、物力、时间、费用的节省是显而易见的,惊人的。因此,维护和升级革命的方式是“瘦”客户机,“胖”服务器。2.成本降低,选择更多。大家都知道windows在桌面电脑上几乎一统天下,浏览器成为了标准配置,但在服务器操作系统上windows并不是处于绝对的统治地位。当前的趋势是凡使用B/S架构的应用管理软件,只需安装在Linux服务器上即可,而且安
24、全性高。所以服务器操作系统的选择是很多的,不管选用哪种操作系统都可以让大部分人使用windows作为桌面电脑操作系统不受影响,这就使得最流行免费的Linux操作系统快速发展起来,Linux除了操作系统是免费的以外,连数据库也是免费的,这种选择非常盛行。比如说很多人每天上“新浪”网,只要安装了浏览器就可以了,并不需要了解“新浪”的服务器用的是什么操作系统,而事实上大部分网站确实没有使用windows操作系统,但用户的电脑本身安装的大部分是windows操作系统。3.应用服务器运行数据负荷较重。由于B/S架构管理软件只安装在服务器端(Server)上,网络管理人员只需要管理服务器就行了,用户界面主
25、要事务逻辑在服务器(Server)端完全通过WWW浏览器实现,极少部分事务逻辑在前端(Browser)实现,所有的客户端只有浏览器,网络管理人员只需要做硬件维护。但是,应用服务器运行数据负荷较重,一旦发生服务器“崩溃”等问题,后果不堪设想。因此,许多单位都备有数据库存储服务器,以防万一。以目前的技术看,局域网建立B/S结构的网络应用,并通过Inter/Intra模式下数据库应用,相对易于把握、成本也是较低的。它是一次性到位的开发,能实现不同的人员,从不同的地点,以不同的接入方式(比如LAN、WAN、 Inter/Intra等)访问和操作共同的数据库;它能有效地保护数据平台和管理访问权限,服务器
26、数据库也很安全。2.4三层架构随着软件工程的不断进步和规范以及面向对象编程思想的应用,人们对封装、复用、扩展、移置等方面的要求,使得双层架构显然更加臃肿繁琐,三层程序架构体系应运而生,可以说,三层架构体系结构是面向对象思想发展中的必然产物。所谓三层架构,是在客户/服务之间加入了一个“中间层”,也叫组件层。它与客户层、服务器层共同构成了三层体系。这里所说的三层体系,不是指物理上的三层,不是简单地放置三台机器就是三层体系结构,也不仅仅有B/S应用才有三层体系结构,三层是指逻辑上的三层。通过引入中间层,将复杂的商业逻辑从传统的双层结构(Client-Server)应用模型中分离出来,并提供了可伸缩、
27、易于访问、易于管理的方法,可以将多种应用服务分别封装部署于应用服务器,同时增强了应用程序可用性、安全性、封装复用性、可扩展性和可移置性,使用户在管理上所花费的时间最小化,从而实现了便捷、高效、安全、稳定的企业级系统应用。三层体系架构具体包括:表示层、业务逻辑层、数据访问层。(1) 表示层:即用户接口层,是由ASP.NET技术的Web窗体和Web用户控件组合起来构成的。表示层运行在客户端浏览器上,产生用户视图。在业务逻辑层发生变化时通过改变表示层的组合以及做一些简单的调整就可以很好地适应新的业务逻辑层。(2) 业务逻辑层:这一层是从整个系统功能设计中抽取大量具有共性的模块,把它们统一设计成为系统
28、公共的可重用的组件。由COM+组件服务管理器统一配置管理组件。(3) 数据访问层:用来管理和存储数据,实现数据访问功能,设计数据库,定义数据表结构、表的索引、数据表之间的关联,定义数据库中的视图以及操作数据的存储过程,设计数据库的安全等等。该层由数据库管理系统如SQL Server来管理和控制。3 需求分析和系统功能设计系统的开发不仅仅是一个应用程序的编写过程,最重要的是在系统分析和系统设计的阶段所做的的工作,研究生科研管理系统是基于Microsoft Visual Studio 2010系统开发的Web应用程序,它针对有关目标设计系统开发背景,运行环境等进行分析,通过数据库需求分析、系统功能
29、模块设计等实现系统及功能模块。科研水平逐渐成为衡量一个高校的重要指标,高校作为重要的科研机构,如何对大量的科研信息进行高效、安全的保存、处理、统计、加工等管理操作,将日常的科研管理工作更加规范化、科学化,建立科研管理系统进行科研管理工作是每一个高校必由之路。科研管理系统数据库设计是高校科研管理系统设计中的一项核心工作,所有的管理工作都必须以数据库为中心,进而建立科研管理系统。3.1需求分析科研管理是高校学术活动及研究生管理的重要环节,电子化科研成果管理方式成为现实需要。计算机技术、网络技术和数据库技术的快速发展,为电子化的学术成果提交及管理提供了充分的技术条件及运行环境。研究生科研管理系统是以
30、科研项目管理为核心,全方位通过计算机来管理科研成果,以达到方便、高效地管理和控制,提高管理效能。该系统既满足学院对科研活动的宏观管理,又满足科研管理部门对研究生科研的统计、汇总和查询,也满足个人对科研项目的查询。3.1.1功能需求 研究生科研成果管理系统的主要目的是对高校研究生的科研成果进行管理, 从而方便教师对科研成果高效透明地进行管理、维护。本系统面对的用户有三种:一是学生,二是教师管理员,三是系统管理员 (1)学生使用学号和默认密码登陆系统。可在系统中上传科研成果信息,包括专利名称、专利类型、申请号、申请时间、授权号和授权时间;软件著作权名称、著作权编号、登记号和出版时间;论文名称、发表
31、刊物、发表卷期、是否增刊和发表时间等情况。 (2)管理员可以修改用户类型,可审核学生提交的学术成果资料,系统也可将审核通过的科研成果信息,以Excel 文件格式的形式,导出到磁盘等外部存储器中。 (3)系统可以分配多个管理员,可以通过管理员增加、删除管理员。管理员登陆系统支持修改密码,新增和删除人员,新增、修改和查询科研成果,统计科研成果信息;学生登录可以修改 密码,新增、查询科研成果。3.1.2 性能需求专门为学校实现信息化交互平台的解决方案,多个管理要素的整合,统一信息平台,优质的科研项目管理系统,性能上需要满足如下要求:1.安装简单,程序在服务器端安装,在客户端应用解决方案,客户端无须安
32、装,纯B/S结构实现,系统的维护和培训费无或较低,完全是人们熟悉的界面和运行方式易于推广。2.维护容易,只需要对服务器进行管理和维护,就实现对整个软件系统的维护。提供远程维护管理,项目建设者在异地就可以最快的时间了解问题、并解决问题。3.通过图形化的浏览器,界面美观,直观明了。不需要太多华丽的特效。4.全B/S结构操作,扩展了流程文档的应用范围;让用户共享编辑文档。应该应用当前比较成熟的技术,应用广泛,易学易懂。当更换维护人员时候不需要技术培训就可以进行维护。5.文件信息处理规范化,专门为文件在服务器上开辟一个空间,便于流程文件的统一保存和管理。对文档按时间、按流程分类存档处理。6.安全性,本
33、系统主要是在学校内部局域网内运行,并且必要的信息进行了加密。7.响应速度,本系统设计时候尽量避免大量的.swf 等较大文件的出现,另外本系统主要是用来实际应用,并不要求华丽的界面,只要美观明了就行,不需要网页特效。所以加快了系统的反映速度。8.主存磁盘,不存在影响本系统的因素所以不用考虑。3.2系统功能模型的建立 系统模型是指以某种确定的形式(如文字、符号、图表、实物、数学公式等),对系统某一方面本质属性的描述。根据不同的研究目的,对同一系统可建立不同的系统模型。本系统模型如下:(1) 系统管理员:整个系统的管理者,具有最大的权限功能,主要完成用户角色信息的管理、信息的管理、系统基础数据的维护
34、等。(2) 教师管理员:科研成果管理、统计科研成果。(3)学生:登录系统,上传科研成果。不同的角色完成不同的功能。系统功能模型,如图3-1所示。研究生科研管理系统 教师管理员系统管理员 科研项目、 科研项目、 成果、人员 成果、科研 信息管理和维护 信息查询成果维护 科研成果上传 学生 图3-1 系统功能模型4系统规划和概要设计4.1 系统功能模块研究生科研管理系统的主要任务是用计算机对各种科研信息进行日常的管理,如查询、修改、增加、删除以及存储等,迅速准确地完成各种科研信息的统计计算和汇总工作,快速打印出科研信息报表,针对系统服务对象的具体要求,设计了学校科研管理系统。系统主要包括人员管理、
35、项目管理、成果管理。各模块之间并非各个独立,而是相互联系,相互关联在一起的,从而使本系统能够很好的完成所设计的功能。系统有三种不同角色:系统管理员、教师管理员、学生。不同角色可做不同的操作。该系统功能模块及其子模块如图4-1。研究生科研管理系统科研成果申报子系统内部管理子系统登录子系统用户登录学生科研成果上传用户管理科研成果管理图4-1 系统功能模块及其子模块4.2 方法概要科研管理系统是采用面向对象的程序设计思想进行编制的。用户可以通过主菜单调用系统的各项功能。(1)面向对象设计不再是单纯的从代码的第一行一直编到最后一行,而是考虑如何创建类和对象,利用类和对象来简化程序设计,并提供代码的封装
36、和可重用性,便于程序的维护与扩展。(2)所谓的对象是一种抽象的名称,用来对应实现世界存在的“东西”。一个窗口、一个按钮、一个菜单都可视为一个对象,而按钮对象、菜单对象、又会出现在窗口对象中,因此按钮对象、菜单对象便是窗口的组件之一。对象内部的数据是不能随意更改的,必须由外部向其传递信息,再由对象按其方法加以处理。用户无需知道其任何细节,操作是封闭的,对象之间能通过方法调用相互通信。(3)类可视为一个产品模具、一个模块。在面向对象设计中,类是对象的原型,是对象的制作器。类的概念是面向对象程序设计最重要的特征。所谓类,是指由数据结构及其相关操作所形成的集合,描述该类任一对象的共同的行为特征,是对一
37、组性质相同的对象的程序描述,概括了对象的共同性质和数据。4.3系统流程图本系统采用当前流行的B/S设计模式,基于Windows.NET平台构建Web应用程序,把系统划分为数据层、业务逻辑层和表示层。逻辑体系结构如图4-2所示:图4-2 系统逻辑体系结构图表示层业务逻辑组件层数据层SQL Server4.4系统解决方案项目构成为了用B/S设计模式的三层体系结构实现系统的设计,本人用Visual Studio.NET 2010简体中文企业版设计了一个名为“ResearchManager”的科研管理系统解决方案,用VC#语言在该解决方案中建立了三个项目,如图4-3所示,这四个项目的有机结合,构成了本
38、科研管理系统。图4-3 解决方案这三个项目分别为:Web表示层、DAL数据访问类、Objects实体类。各层之间互相的引用联系是:首先要将实体类(Objects)命名空间在其它各层全部引用,表示层(Web)命名空间中再引用数据访问类(DAL)。5 数据库层的设计与实现5.1 数据库概念结构设计E-R方法是“实体-联系方法”(Entity-Relationship Approach)的简称。它是描述现实世界概念结构模型的有效方法。是表示概念模型的一种方式,用矩形表示实体型,矩形框内写明实体名;用椭圆表示实体的属性,并用无向边将其与相应的实体型连接起来;用菱形表示实体型之间的联系,在菱形框内写明联
39、系名,并用无向边分别与有关实体型连接起来,同时在无向边旁标上联系的类型(1:1,1:n或m:n)。(1)局部E-R图,下图为人员信息的E-R图,如图5-1。(2)下图为文件信息E-R图,如图5-2。性别密码用户名年龄用户编号用户类型用户信息姓名图5-1 用户信息实体E-R图文件编号客户编号姓名描述文件名称文件类型 文件信息图5-2 文件信息E-R图5.2数据流图数据流图(Data Flow Diagram):简称DFD,它从数据传递和加工角度,以图形方式来表达系统的逻辑功能、数据在系统内部的逻辑流向和逻辑变换过程,是结构化系统分析方法的主要表达工具及用于表示软件模型的一种图示方法。数据流图是结
40、构化分析方法中使用的工具,它以图形的方式描绘数据在系统中流动和处理的过程,由于它只反映系统必须完成的逻辑功能,所以它是一种功能模型。在结构化开发方法中,数据流图是需求分析阶段产生的结果。用户管理用户D1用户清单用户信息输出控制用户操作事务处理数据库输出信息用户权限科研数据处理结果图5-3数据流图该系统数据流程图,如图5-3所示。5.3数据字典数据字典是关于数据的信息的集合,也就是对数据流图中包含的所有元素的定义的集合。数据字典最重要的作用是作为分析阶段的工具。任何字典最重要的用途都是供人查询对不了解的条目的解释,在结构化分析中,数据字典的作用是给数据流图上每个成分加以定义和说明。换句话说,数据
41、流图上所有的成分的定义和解释的文字集合就是数据字典,而且在数据字典中建立的一组严密一致的定义很有助于改进分析员和用户的通信。数据库数据字典不仅是每个数据库的中心,而且对每个用户也是非常重要的信息。用户可以用SQL语句访问数据库数据字典。由于本次设计是小型软件系统的开发,所以采用卡片形式书写数据字典。每张卡片上保存描述一个数据的信息这样做更新和修改起来比较方便,而且能单独处理描述每个数据的信息。下面将列出若干数据元素的数据卡片信息。数据字典卡片:名称:用户名描述:使用者的字符的描述定义:用户名=3字符40位置:用户信息表名字:客户编号描述:惟一地标识用户信息中一个特定用户的关键域定义:客户编号=
42、8字符40位置:用户信息表 文件信息表 名称:性别描述:描述用户的字符串定义:性别=2字符40位置:用户信息表名称:密码描述:识别用户的字符串定义:密码=6字符40位置:用户信息表名称:客户类型描述:客户种类的描述定义:由是系统管理员、教师管理员、学生中取值位置:用户信息表名称:年龄描述:描述用户的年龄定义:整型位置:用户信息表 名称:文件编号描述:惟一地标识用户信息中一个特定文件的关键域定义:文件编号=8字符40位置:文件信息表名称:姓名描述:描述用户的字符串定义:姓名=3字符40位置:用户信息表名称:文件数据库名称描述:惟一地标识用户信息中一个特定用户的关键域定义:文件数据库名称=8字符4
43、0位置:文件信息表名称:文件原有名称描述:文件的原名其他定义:文件数据库名称=8字符40位置:文件信息表名称:描述描述:对所需信息的描述。定义:描述=8字符40位置:文件信息表名称:文件类型描述:标示文件类型、图片、文档、软件、代码其他定义:文件数据库名称=8字符40位置:文件信息表名称:底部文字描述:要显示在底部的文字。其他定义:标题=1字符40位置:系统配置表名称:标题描述:要显示的标题其他定义:标题=1字符40位置:系统配置表5.4逻辑设计 逻辑设计就是把一种计划、规划、设想通过视觉的形式通过概念、判断、推理、论证来理解和区分客观世界的思维传达出来的活动过程。逻辑设计比物理设计更理论化和
44、抽象化,关注对象之间的逻辑关系,提供了更多系统和子系统的详细描述。本系统各要素逻辑关系如下: (1)Student(学号、姓名、用户名、密码、专业、年级、性别、年龄、导师、联系电话) (2)User(用户名、密码) (3)Teacher(用户名、密码、姓名、年龄、性别、职称、职务、联系电话) (4)Thesis(作者、名称、发表刊物、发表卷期、是否增刊、发表时间、论文页码、导师一作、论文级别) (5)Copyright(著作权名称、登记号、出版时间、作者、导师一作) (6)patent(专利名称、专利类型、申请号、申请时间、授权号、授权时间、作者、导师一作)5.5存储过程设计数据库中的存储过程
45、对应高级语言中的子程序,存储过程的内容是SQL语句,与高级语言的子程序一样,存储过程也有输入输出形参。存储过程在服务器运行,存储过程执行一次后,就被编译为二进制代码且驻留在高速缓冲存储器中,在以后的操作中,只需从高速缓冲中调用已编译好的二进制代码,提高了系统性能。下面以学生信息新增修改过程为例说明存储过程,这个存储过程是将Student表里面的所有字段作为参数,通过前台的添加修改数据,将记录添加修改到数据库中。namespace ResearchManager.User public partial class StudentAdd : System.Web.UI.Page private int Id = -1; UserDAL ud = new UserDAL(); protected void Page_Load(obje