(信号与信息处理专业论文)研究生学位管理信息系统开发.pdf_第1页
(信号与信息处理专业论文)研究生学位管理信息系统开发.pdf_第2页
(信号与信息处理专业论文)研究生学位管理信息系统开发.pdf_第3页
(信号与信息处理专业论文)研究生学位管理信息系统开发.pdf_第4页
(信号与信息处理专业论文)研究生学位管理信息系统开发.pdf_第5页
已阅读5页,还剩48页未读 继续免费阅读

(信号与信息处理专业论文)研究生学位管理信息系统开发.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

研究生学位管理信息系统开发 摘要 本论文以关系型数据库理论为基础,通过软件工程的方法,在研究生院局 _ _ _ 一 域网和英特网的环境下完成了一个以c s 模式为主兼有b s 模式的信息管理系 统的分析、设计与实现,包括数据库的建设、管理和应用软件的开发。重点讨 论了数据库结构的构建方法、数据库管理系统的维护以及c s 和b s 模式下的 数据库应用软件的开发。系统中的开发环境是n ts e r v e r 4 0 操作系统和s q l s e r v e r7 0 数据库,采用的高级语言是d e l p h i 5 0 和a s p 。 关键词:管理信息系统 c sb s数据库 a b s t r a c t b a s e do r lt h et h e o r yo fd a t a b a s ea n dt h r o u g ht h es o f t w a r ee n g i n e e r i n gm e t h o d , t h ea n a l y s i s d e s i g n ,a n di m p l e m e n t a t i o no fam i si nt h em o d eo fc sa c c o m p a n i e d w i t hb su n d e rt h ec i r c u m s t a n c eo ft h el a no ft h eg r a d u a t es c h o o la n dt h ei n t e m e t i sp r e s e n t e d ,i n c l u d i n gt h es e t u p ,m a i n t e n a n c eo ft h ed a t a b a s ea n dt h ed e v e l o p m e n t o ft h e a p p l i c a t i o n s o f t w a r e t h ee m p h a s i si s p u t o nt h em e t h o do fd e s i g na n d m a i n t a i n i n ga d a t a b a s es y s t e ma n dt h ed e v e l o p m e n to f d a t a b a s ea p p l i c a t i o ns o f t w a r e i nt h em o d eo fb o t hc sa n db s t h em i si sd e v e l o p e du n d e rt h ee n v i r o n m e n to f m sn ts e r v e r 4 0a n ds q ls e r v e r 7 0 ,a n dt h el a n g u a g ea t i l i z e di s d e l p h i 5 0a n d a s r k e y w o r d :m a n a g e m e n t i n f o r m a t i o ns y s t e mc sb s d a t a b a s e 星二量堕堡 ! 第一章绪论 第一节m i s 系统简介 m i s ( 管理信息系统,m a n a g e m e n ti n f o r m a t i o ns y s t e m s ) 是一个以人为主导, 利用计算机硬件、软件、网络通信设备以及其他办公设备,进行信息的收集、传输、 加工、储存、更新和维护,以企业战略竞优、提高效益和效率为目的,支持企业高 层决策、中层控制、基层运作的集成化的人机系统。这个定义也说明m i s 绝不仅 仅是一个技术系统,而是把人包括在内的人机系统,因而它是一个管理系统,是 个社会系统。需要指出的是:对于一个企业来说没有计算机也有m i s ,m i s 是任何 企业不能没有的系统。所以,对于企业来说,m i s 只有优劣之分,不存在有无的问 题。 m i s 正在形成为- - i 1 学科,我国己把它列为管理科学与工程一级学科下的二级 学科。它引用其他学科的概念,把它们综合集成为一门系统性的学科。它面向管 理,利用系统的观点,数学的方法和计算机应用三大要素,形成自己独特的内涵, 从而形成系统型、交叉型、边缘型的学科。 m i s 又是一个专业,在清华大学、复旦大学等4 0 多所大学有这个专业。有人说 其他许多专业如会计学、市场学、财务学专业在我国均是现代化专业,而国际商 务、国际贸易等均是国际化专业,我们说管理信息系统是个未来化专业,是个革 新性专业。它所从事的工作主要在于改变世界,用科学方法和信息技术手段,在 会计领域、市场领域、贸易领域等从事变革。没有这种变革的思想就不能算是一 个好的管理信息系统专业人员。只有变革才能得到美好的未来,未来到处是管理 信息系统的天地。 m i s 是一个一体化系统或集成系统,这就是说m i s 进行信息管理是从总体出发, 全面考虑,保证各种职能部门共享数据,减少数据的冗余度,保证数据的兼容性 和一致性。严格地说只有信息的集中统一,信息才能成为企业的资源。数据的一 体化并不限制个别功能子系统可以保存自己的专用数据。为保证一体化,首先要 有一个全局的系统计划,每一个小系统的实现均要在这个总体计划的指导下进行! 其次是通过标准、大纲和手续达到系统一体化。这样数据和程序就可以满足多个 用户的要求,系统的设备也应当互相兼容,即使在分布式系统和分布式数据库的 情况下,保证数据的一致性也是十分重要的。 具有集中统一规划的数据库是m i s 成熟的重要标志,它象征着m i s 是经过周 密地设计而建立的,它标志着信息已集中成为资源,为各种用户所共享。数据库 有自己功能完善的数据库管理系统,管理着数据的组织、数据的输入和数据的存 取,使数据为多种用户服务。 2 研究生学位管理信息系统开发 m i s 用数学模型分析数据,辅助决策。只提供原始数据或者总结综合数据对管 理者来说往往感到不满足,管理者希望直接给出决策的数据。为得到这种数据往 往需要利用数学模型,例如联系于资源消耗的技资决策模型,联系于生产调度的 调度模型等。模型可以用来发现问题,寻找可行解、非劣解和最优解。在高级的 管理信息系统中,系统备有各种模型,供不同的子系统使用,这些模型的集合叫 模型库。高级的智能模型能和管理者以对话的形式交换信息,从而组合模型,并 提供辅助决策信息。 m i s 的概念是发展的。最初许多倡议者设想管理信息系统是一个单个的高度一 体化的系统,它能处理所有的组织功能。也有一些人怀疑,先进的计算机系统能 否解决定义不清楚的管理判断过程。实践证明,这种高度一体化的单个系统显得 过于复杂,并难以实现。管理信息系统的概念转向各子系统的联合,按照总体计划、 标准和程序,根据需要,开发和实现一个个子系统。这样,一个组织不是只有一个 包罗万象的大系统,而是一些相关的信息系统的集合。 在互联网飞速发展并得到广泛应用的今天,m i s 的概念又有了新的发展,与互 联网紧密结合在一起。互联网给人们提供了一个方便、快捷的交换信息方式。目 前,各行各业都在向互联网靠拢,有的行业如:信息、电子、通信等,已经完全 无法离开互联网。m i s 与互联网的结合使它的作用范围更m f 泛,由局域网走向了 广域网,如网上信息发布、录入和共享可以使工作变得更加轻松,有效。 管理信息系统的结构是指各部件的构成框架,由于对部件的不同理解就构成 了不同的结构方式,其中最重要的是概念结构、功能结构、软件结构和硬件结构。 从概念上看m i s 由四大部件组成,即信息源、信息处理器、信息用户和信息管 理者,如图1 1 所示。 图1 im i s 的总体结构 其中,信息源是信息产生地;信息处理器担负信息的传输、加工、保存等任 务;信息用户是信息的使用者,他应用信息进行决策;信息管理者负责信息系统 的设计实现,在实现以后,他负责信息系统的运行和协调。 一个m i s 从使用者的角度看,它总是有一个目标,具育多种功能,各种功能 之问又有各种信息联系,构成一个有机结合的整体,形成一个功能结构例如, 第一章绪论 一个企业的内部管理系统可以具有如图1 2 所示的结构。 市 场 管理信息系统 蓁ll塞i萋i 萋 图1 2 管理信息系统的功能结构 第二节研究生学位m i s 现状 研究生教育是高等教育的高等层次,是培养和造就高层次人才的主要途径。 研究生学位管理是学位与研究生教育的一个重要环节,也是研究生院最重要的一 项任务,是一项系统工程,它涉及了多学科的知识,是一项比较复杂的多部门协 调工作的管理工程:同时也是保证研究生教育质量的一个重要手段,它保证了培 养的学生的质量。管理水平的高低,直接影响着研究生院的形象。随着研究生招 生规模的不断扩大,研究生管理的重要性也表现得更加突出。 研究生管理各个学校或单位都有自己的特点,但是相互之间都是大同小异,大 部分功能是类似的,大致可以分为学校或单位内部的管理和教育部的管理。教育 部对招生、学籍和学位等方面都是全国统的,有统一的标准和下发的软件,主 要完成对全国研究生信息的汇总。学校或单位根据教育部的规定标准和形式上报 数据。学校或单位内部的管理是各学校或单位研究生管理的主要内容。而研究生 学位管理则是整个研究生管理的一部分。学位是研究生付出努力的最终目标,是 自己奋斗的成果;国家和单位则要通过学位了解一个人的知识背景,并由此估计 人的能力。可见,不论对同学,还是对国家或单位而言,都非常重要的。这就对 研究生学位管理提出了更高的要求,也使其变得尤为重要。 我校研究生院下设有学位办公室,专门负责研究生的学位管理工作。其主要任 务有:信息采集,数据处理,信息输出和数据转存。采集信息的方式有两种,即: 从其它办公室获取已有信息和手工录入学位信息。数据经过处理后以所需的形式 输出,有学位申请报表、授予学位文件、授予学位名单、学位证明和报盘数据等。 数据转存是把数据存放在适当的位置,如从当前的库转入近年库或从近年库转入 到历年库等。 4 研究生学位管理信息系统开发 第二章系统开发背景与技术 第一节系统开发的必要性 我校研究生工作的计算机化开始较早,研究生院学位办公室原来使用的管理 软件是在1 9 9 6 开发的。到目前为止,这套软件已经在以往的工作中做出了非常大 的贡献。但是,由于以下原因迫切需要新的管理系统来替代。 首先,由于开发较早,它所使用的开发语言是f o x p r 0 2 5 。f o x p r o 语言现在已 经发展到了v f o x p r o6 0 ,原来使用的不是可视化环境下的编程语言,连可视化界 面都自己用程序实现的,要对其进行修改则需要改变大量的程序,致使对系统的 维护比较困难,且工作量非常大。其次,它采用的是f o x p r o 数据库,原来选择它 是因为其比较简单,易于掌握。但是随着研究生招生规模的不断扩大,f o x p r o 的 数据库已经不能适应大量数据下复杂操作的要求;f o x p r o 数据库的访问权限设置 不够灵活,因而就会出现安全方面的问题不能满足;f o x p r o 数据库中没有存储过 程,导致所有的功能都要通过编程语言来实现,且开发出的软件不易维护。第三, 新的需求不能满足。1 9 9 9 年教育部下发了学位报盘系统,该系统规定的上报数据 库中包含一部分学籍和培养的信息,且提供了一个由d b f 格式的表转入数据的接 口。原系统中没有生成上报数据的功能,以往几年都是由学位办公室的老师录入 全部的报盘信息,包括学籍和培养中已经存在的信息。这种重复录入不仅增加了 工作量,而且也容易出错。第四,博士攻博期间的成果信息没有保存记录。这些 信息以往是由博士研究生自己打印出来贴在其学位申请表上,或者按指定格式用 软盘交到学位办,数据库中却没有保存。之后需要使用这些信息时就会出现困难, 软盘的使用也导致了病毒的传播。 在升级系统的开发中,我们选用了s q ls e r v e r 数据库,因为:它在权限设置 上有较多层次,灵活方便:它的存储过程可以使开发的程序更加简单和规范:也 适用于大中型数据库;各方面的性能都可以满足需要。开发语言选择了对s q l s e r v e r 数据库支持较好的d e l p l l i 开发语言,网上信息录入采用的开发工具是a s p 。 第二节系统性能指标 功能指标: ( 1 ) 户可通过输入界面对学历硕士、同等学力硕士、工程硕士和博士的学位信息 进行录入和修改的维护操作;自动添加学位中用到的学籍方面的信息;可分类计 算总学分、学位学分和学位平均成绩;网上录入博士的成果信息。 ( 2 ) 检查数据的合法性,尤其是表示时间的字段;生成打印学位申请表时使用的 第二章系统开发背景与技术 数据:处理形成生成上报库信息导入的d b a s e 3 格式的表时使用的数据;生成授予 学位研究生的学位证书编号,生成时按专业、导师排序:报盘后把授过学位的记 录转入近年库;近年库的信息转入历年库。 ( 3 ) 按学位办公室制定的规则抽取部分学历硕士生成学位申请表,上校学位委员 会使用:对全部的同等学力硕士和工程硕士生成学位申请表;生成博士、学历硕 士和同等学力硕士的上报库,d b a s e 3 格式,用于把数据导入教育部学位报盘软件; 打印授予学位文件,包括学历硕士、同等学力硕士、工程硕士和博士,文件类型 有授予学位文件、授予学位人员名单和学位证明,前两者可以生成文档形式,拷 贝后到指定地点打印,三种文件都可由学位办公室打印。 性能指标: 可以运行在w i n 9 5 、w i n 9 8 、w i n d o w s m e 、w i n 2 0 0 0 的操作系统下,建议运行 环境的c p u 为1 3 3 m 咀上,内存不低于6 4 m 。1 0 0 0 条记录的处理时间不能超过 5 s 。 第三节数据库平台选择 在系统开发中选择的数据库平台为s q ls e r v e r ,下面对s q ls e r v e r 的性能做 一个简单的介绍,这些性能也是我们选择它的原因。 s q ls e r v e r 是一个客户机服务器模式关系型数据库管理系统( r d b m s ) ,使用 t r a n s a c t - s q l ( - - 种结构化查询语言,s t r u c t u r e dq u e r yl a n g u a g e ) 在客户机和s q l s e r v e r 之间发送请求。它将s q l 的各项功能和管理机制以种友好的设计平台( 或 者说是设计模块) 展现在开发者的面前,具有很好的操作性和条理感。这实际上 是将相应的s q l 语句段封装起来,用户只须给出需要的参数即可。与此同时,s q l s e r v e r 也提供了直接使用s q l 语言进行数据库操作和管理的方法。因此,较好的 掌握s q l 语言是充分地理解和操作s q ls e r v e r 系统的重要基础。 首先让我们来了解一下在s q ls e r v e r 中最为常用的几个数据库对象视 图、索引和存储过程。 视图:它建立在基本表之上,提取了某些基本表的某些字段和某些记录的一 个逻辑存在的虚拟表。它的好处在于: 】) 它从数据库烦琐的数据堆中集中了特定的信息,提供给使用者。 2 ) 与没有建立视图相比,它简化了s q l 查询语句a 3 ) 基于相同的表,可以针对不同的用户,定义不同的视图,成为一种安全保 密的手段。 “ 、。 但是,为保证数据完整性,在需要通过视图修改表的数据时,又必须有许多 条件限制。比如: 一一_ _ 一 研究生学位管理信息系统开发 1 ) 多个表上建立的视图上不能使用删除语句( d e l e t e ) 。 2 ) 一般不能使用插入语句( i n s e r t ) ,除非所有用在基本表的非空列都包 含在此视图中。 3 ) 如果视图的定义中引用了其他的视图,那么所修改的信息要保证都在同一 个基本表上。 4 ) 用d i s t i n c t ( 聚集类) 子旬创建的视图,不能被修改或插入。 5 ) 带有虚拟列的视图不能修改。虚拟列一般是指由表达式或函数结果所组成 的列。 另外需要说明的一点是,视图在使用时才动态的生成,一般情况下是不存在 的,因此。它的运行要慢,这点在对大量的记录进行操作进比较明显。所以在 速度要求比较高而操作的数据量又很大的场合不适宜用视图。 索引:顾名思义,索引就是排序方式的定义。一般有聚集索引和非聚集索引。 二者之间最显著的差异是,聚集索引的顺序就是实际的物理排序,而非聚集索引 不是。这里要阐述的是,索引虽然是用来提高查询效率的,可索引的建立需要考 虑以下几点,否则不一定会提高查询速度,甚至会事倍功半。说明如下: 1 ) 对于小表,有无索引关系不大。而对于大表,当要求返回少量数据时( 一 般是少于总量的2 5 ) ,索引所改善的性能才比较明显。 2 )当修改一个表的大部分数据时,最好不建索引,或先将索引删除,因为 修改表时,表的指针会由索引原因而走许多重复的路线。尤其是非聚集索引导致 的效率降低会很突出。 存储过程:它是一组已被编辑在一起的完成某种功能的s q l 语句段落,它可 以定义输入参数、输出参数。它在数据库编程时将被频繁地使用到。它的主要特 点是: 1 ) 它在服务器端执行,只接受参数和返回结果,这样节省了网络通信量, 从而提高了服务器效率。 2 ) 它作为一个可随时调用执行的功能模块,将明显简化用户端应用程序的 框架。 较好地编写和设计存储过程,为应用程序的编写提供了很大的帮助,有的存 储过程的功能可以设计为专用,有的可以设计为公用。从某种意义上讲,存储过 程的设计思想就是c t s 多层结构模式中所指的中间件。 触发器的功能与存储过程非常相似,只不过它是在表执行插入、修改或删除 时自动执行的,同时保证了数据的完整性。 下面简要介绍s q ls e w e r 的各种管理机制。 。 s q ls e r v e r 的管理可以作到服务器的集中式管理,即在多台服务器运行的环 境下,你可以使用一台服务器来管理所有的服务器。这种服务器的集中管理方式 第二章系统开发背景与技术 对管理员来说,既便捷又提高了工作效率。 s q ls e r v e r 支持多客户应用程序,支持多种开发平台、数据复制、分布式事 务处理、数据仓库、内建式的在线分析处理等。这里主要讨论的是s q ls e r v e r 的 安全机制和数据库的备份、恢复。 1 ) s q ls e r v e r 的安全性: s q ls e r v e r 在用户验证上有两个安全级:登录鉴别:数据库用户帐号和角色 的许可验证。 登录鉴别:用户可以用s q ls e r v e r 帐号和口令登录,也可以用w i n d o w sn t 分组或帐号登录。这需要对s q ls e r v e r 的鉴别模式事先设置,要么w i n d o w sn t 鉴别模式,要么混合鉴别模式。 数据库用户帐号和角色的许可验证:角色即s q ls e r v e r 系统设计和定义好了 的权限组合,不同的角色具有不同的权限。角色的分配是由d b a ( 数据库系统管 理员,d a t a b a s ea d m i n i s t r a t o r ) 针对不同的用户、密级等来决定的。如图4 1 所示。 w i n d o w sw 验证n 4 - 凰b ls u ls e r v e r l s q ls e r v e r 验证口令 卫 i 巳 : fi 方卜一 憾角丫 图2 1s q ls e r v e r 的登录安全模式 2 1 数据库的备份: 数据库的备份是数据库系统的管理中非常重要的一个部分。天有不测风云, 当任何可能引起数据丢失的灾难性事件发生时,如服务器崩溃或数据库损坏或硬 件损坏等,唯一可做的事就是利用数据库备份进行恢复,否则只有从头再来,但 是会耗费大量的人力物力和时间。甚至有些情况下,从头收集数据根本无法实现。 不管数据的损失是意外的还是人为的,d b a 都应认真考虑数据库的备份策略 和方法。一般从以下几方面考虑: a 数据库系统主要用于哪些处理? o l t p ( 联机事务处理) ,还是o l a p ( 联 机分析处理) ,由此大致估计备份数据的频繁性。 b 知道备份的过程是动态的,除了个别例外情况,备份可以在数据库正在被 研究生学位管理信息系统开发 使用或数据正在被修改时进行。 c 备份内容: 模式和文件结构、数据、部分事务日志文件 d 在s q ls e r v e r 数据库中,系统信息存储在系统数据库中,主要的系统数据 库包括: m a s t e r - 从整体上控制用户数据库和s q ls e r v e r 操作,在创建了任何用户定义 的对象后,都要备份它。 m o d e l - 为新数据库提供模版和原型,若有过修改,也要备份它。 m s d b - 包含了有关作业、报警及操作员等信息,若有过修改,也要各份它。 对系统数据库m a s t e r 的备份非常重要。因为m a s t e r 数据库是用于跟踪用户帐 号、远程用户帐号、远程服务器、环境变量、系统错误消息、其他系统数据库、 数据库存储分配、设备和活动等的系统数据库。m a s t e r 数据库的损坏将导致s q l s e r v e r 无法启动。顺便提一下,m a s t e r 数据库中的些系统表可以理解成数据字典, 它是系统自动扩充的,而在以前数据字典都是在数据库设计中所要考虑的事情。 e 备份方式: + 全库备份,备份整个数据库的数据、存储过程、用户帐号等参数的完整 备份。 + 差异备份,将自上一次全库备份以来的变化进行备份。 + 事务日志备份。 + 数据库文件或文件组的备份,这是对特大型数据库或由于时问原因而无法 全库备份时的考虑。 根据以上考虑,本文制定了一个基本的数据库备份策略。由于研究生信息管 理系统教务管理的季节性很强,一段时间内要大量地录入数据,一段时间内要利 用数据库的信息进行决策。可见,本数据库既是个o l t p ,又是个o l a p ,而 且数据库中几个重要的表如学籍表、成绩表、课程表都会常有变动,因此,备份 数据库是必须的。通过以上考虑,本数据库应以全库备份为基础,兼以差异备份。 由于数据库不是很大,在系统建好后就可进行一次全库各份,以后进行定期地差 异备份或数据文件组备份( 主要是指几个重要的表) 。当然,备份策略将会随着整 体数据库系统的发展和具体应用的变化而有所改变。 3 ) 数据库的恢复 启动e n t e r p r i s em a n a g e r , 选t o o l s - d a t a b a s eb a c k u p r e s t o r e 这是s q ls e r v e r 系 统管理的基本功能。 关于系统数据库的恢复总结如下: 如果包含系统数据库的介质变了,那么必须重建系统数据库,如果你仍然可 以启动s q ls e r v e r 服务贝可以通过r e s t o r e 语句从系统数据库的备份中恢复 第二章系统开发背景与技术 数据库。 如果m a s t e r 坏了,不能启动系统,可以按照下面步骤进行恢复 s t e p l 重建系统数据库运行c :、i i l s s q l 7 b i n n r e b u i l 血e x e ,按照提示进行即可, 过程中需要系统数据库样本的路径,可在安装光盘中找到; s t e p 2 重建系统数据库后,启动s q ls e r v e r 服务,用系统数据库的备份恢复 数据库就行了。 通常恢复顺序为m a s t e r - m s d b m o d e l 在恢复m a s t e r 的备份时要注意:必须在s i n g l eu s e r 模式下进行。 第四节开发工具选择 一、d e l p h i d e l p h i 是b o r l a n d 公司于1 9 9 4 年底发布的用于开发数据库应用程序的工具, 是一个完全导向的可视化系统开发工具,具有功能强大、运行速度快、易于使用 以及开发迅速等特点,一经推出就受到广大用户的喜爱。d e l p h i 被称为是第四代 编程语言,以它基于窗口和面向对象的编程方法,与w i n d o w s 操作系统紧密结合。 强大的数据库技术支持、迅捷的编程速度,同时兼备生动的界面和易学灵活等特 点,一直为程序员们喜爱的编程工具。在d e l p h i 的众多优势中,它在数据库方面 的特长显得尤为突出:适应于多种数据库结构;从客户机n 务器模式到多层数据 库结构模式;高效率的数据库管理系统和先进的数据库引擎;先进的数据分析手 段和提供大量的企业组件。 目前具有两类版本:d e l p h i 的标准版本和c s 版本。标准版本包含一个 b o r l a n dd a t a b a s ee n g i n e 的局部拷贝,它允许用户创建能访问d b a s e 、p a r a d o x 和l o c a li n t e r b a s e 服务器的数据库应用,它还支持具有o d b c 接口的数据库。 d e l p h i 的c s 版本包括b o r l a f i ds q ll i n k ,它能直接访问o r a c l e 、s y b a s e 和 m i c r o s o f ts o ls e r v e r ,i n f o r m i x 以及i n t e r b a s e 数据库服务器。 d e l p h i 可以访问多种数据库管理系统的数据库,凭借窗体( f o r m s ) 和报表 ( r e p o r t s ) ,b d e ( b o r i a n dd a t a b a s ee n g i n e ) 可以访问诸如p a r a d o x 、d b a s e 、本地 i n t e r b a s e 服务器的数据库,也可以访问远程数据库服务器上的数据库( 如o r a c l e 、 s y b a s e 、i n f o r m i x 等客户服务器数据库中的数据库) ,或任何经o d b c ( 开放式数 据库联接,o p e nd a t a b a s ec o n n e c t i v i t y ) 可访问的数据库管理系统中的数据库。 下面介绍几种频繁使用的d e l p h i 控件: 1 ) 数据库访问部件( d a t a a c c e s s ) :d a t a s o u r c e 、t a b l e 、q u e r y 、s t o r e d p m c 等。 研究生学位管理信息系统开发 2 ) 数据控制部件( d a t a c o n t r 0 1 ) :d b g r i d 、d b n a v i g a t e r 、d b t e x t 、d b e d i t 、 d b l m a g e 等各种数据显示控件。 3 ) q r e p o r t 部件:它包含了报表设计时要用到的多种控件,报表的设计和制作 在该系统中使用也比较多。 4 ) 还有s e r v e r s 部件,如w o r d a p p l i c a t i o n 、w o r d d o c u m e n t 等。 5 ) d a t a p u m p 工具非常有用,他可以完成任何数据库类型的转换,当然,有 些数据库类型的转换不能一步完成,但可以通过一个中间类型的过渡,来达到最 终目的。 由于是针对数据库编程的,所以编程的总思想就是,前台用于接收和发送参数, 浏览数据记录、统计结果、打印等等。后台主要完成数据库的关联查询、统计运 算、数据存储和更新、返还结果等。 二、a s p a s p 全名为( a c t i v es e r v e r p a g e s ) ,它是微软公司新推出i i s 3 0 的一个组件, 亦即微软在i i s 2 0 推出i d c 之后新一代的动态网页开发方案。a s p 实际是一种在 服务器端开发脚本语言的环境。利用它可以开发出动态、交互、高性能w e b 服务 器端的应用,且能较容易实现复杂的w e b 应用。利用a s p 开发的脚本程序全部运 行在服务器端,极大地减少了对客户端的要求。 浏览器从w e b 服务器调用a s p 文件,然后执行每一条脚本语句,再把执行的 结果生成h t m l 文件传给客户端。a s p 用扩展名为a s p 的文件,以区别于以h t m 为扩展名的h t m l 文件。当支持a s p 的w e b 服务器调用以a s p 为扩展名的文件 时,自动执行其脚本语句。a s p 文件同样是文本文件,它包括文本、h t m l 标记 和a s p 文件特有的脚本语句( 用( 与) 命令界定符标记) 。制作a s p 文件同 h t m l 文件一样,可以用任何纯文本编辑器进行编辑,但专业开发人员最好使用 微软推出的a s p 专用开发工具u s u a li n t e r d e v l 0 。a s p 可以使用任何脚本语言, 只需提供其相应的脚本引擎就可,a s p 自身提供v bs c r i p t 和js c r i p t 两种脚本引 擎,缺省为v bs c r i p t 。 a s p 包括了五个内置对象: ( 1 ) r e q u e s t 对象,从浏览器获取信息。 ( 2 ) r e s p o n s e 对象,发送信息到浏览器。 ( 3 ) s e r v e r 对象,控制a s p 执行情况,对服务器端a c t i v e x 控件起作用。 ( 4 ) s e s s i o n 对象,存储用户任务的信息。 ( 5 ) a p p l m a t i o n 对象,使多用户共享一个程序的信息。 为了同数据库服务器进行交互,就必须用脚本语言生成a d o ( a c t i v e xd a t a 第二章系统开发背景与技术 o b j e c t s ) 。a d o 为a s p 内置s e r v e r 对象数据库访问控件。用a d o 可以使客户端的 程序通过o d b c 存取和操纵数据库服务器的数据。a d o 的优点是简单易用、高速、 占用资源少等。a d o 包括七个对象: ( 1 ) c o m m a n d 对象,定义对数据源进行操作的命令。 ( 2 ) c o n n e c t i o n 对象,表示建立一个数据源的连接。 ( 3 ) e r r o r 对象提供属于数据访问错误的细节。 ( 4 ) f i e l d 对象表示一般数据类型的字段。 ( 5 ) p a r a m e t e r 对象,表示c o m m a n d 对象的参数。 ( 6 ) p r o p e r t y 对象,表示由数据提供源定义a d o 对象的动态特性。 ( 7 ) r e c o r d s e t 对象,表示由数据库或命令的结果产生的全部的结果集。 使用a d o 对象可以建立和管理数据库的连接从数据库服务器要求和获取数 据,执行更新、删除、添加数据,获取o d b c 的错误信息等。 第五节相关技术讨论 一、 软件开发模型 3 1 1 4 软件生存期指软件的开发过程,它可以分为以下六个步骤:制定计划、需求分 析和定义、软件设计、程序编写、软件测试和运行维护。软件生存期模型是反映 软件生存期中各个步骤的组织衔接的一个概念,指系统开发、运作和维护所实施 的全部过程、活动、和任务的结构框架。目前已提出了多种软件生存期模型, 如:瀑布模型、演化模型、螺旋模型、喷泉模型和智能模型等分别介绍如下。 瀑布模型规定了软件生存期的六个步骡自上而下、相互衔接的固定次序,如图 2 2 所示,如同瀑布流水,逐级下落。每项活动从上一项活动接受输入,然后实施 图2 , 2 软件生存期的瀑布模型 该项活动,该项活动的成果作为输出再传给下一项活动。最后,对该项活动的工 研究生学位管理信息系统开发 作进行评审,若得到确认则继续下一项活动,否则返回前项,甚至更前项的活动 进行返工。需要注意的是维护过程仍要经历上述各项活动,并且不断重复,构成 了软件生存期循环。该模型的缺点是缺乏灵活性,无法解决软件需求不明确或不 准确的问题,且随着项目日益庞大,该缺点引发的问题显得更为严重。 为解决规格说明不完善、需求的变更、通信中的模糊和误解等问题,逐渐形 成了软件系统的快速原形的概念。原型指软件的一个早期可运行的版本,它反映 了最终系统的部分重要特性。用户可在试用原型系统的过程中得到亲身感受和启 发,并做出反应和评价,开发者再根据用户意见对原型加以改进。然后再试用修 改,不断循环,直到得到令用户满意的软件产品为止。除分析之外,这种方法也 面向开发过程的其它阶段。 演化模型是针对需求不明确提出来的,其中就采用了快速原形。这种方法要 进行两次系统开发。先针对粗略的用户需求快速地开发了一个系统原型,用于探 索可行性,借助于该原型来准确的确定需求,然后在此基础上继续开发,得到用 户满意的产品。该模型在克服瀑布模型缺点、减少需求不明确给开发工作带来的 风险方面,有显著的效果。 螺旋模型在演化模型的基础上更进一步,并且加入了风险分析,弥补了两者的 不足。该模型开发不止一个原型,如图2 3 所示每一次循环上升后都出现一个新 的原型。该模型适合于大型软件的开发,应该说它是最为实际的方法。它驳收了 软件工程“演化”的概念,使得开发人员和客户对每个演化层出现的风险有所了 解,继而做出应有的反应。针对所开发系统的特点,作者在工作中采用的就是这 种开发模型。 封定让盈【 簇嚣,一 缀 修蓊奏 髀檬黠 o 竺! 兰w 警要i , l 验收l 测通宝施王程 岁擎嚣 盔庄迸估 图2 3 软件生存期螺旋模型 兰三至墨堑茎茎矍墨量堇查 ! 瀑布模型的另一个不足在于它难于支持面向对象的开发方法,喷泉模型的提 出弥补了这一缺点。“喷泉”一词体现了迭代和无间隙特性,该模型的系统某个部 分常常重复工作多次,相关功能在每次迭代中随之加入演进的系统。无间隙指在 开发活动,即分析、设计和编码之间不存在明显的边界。 智能模型综合了上述若干模型,并把专家系统结合在一起。该模型应用基于 规则的系统,采用归约和推理机制,帮助软件人员开发工作,并使维护在系统规 格说明一级进行。为此建立了知识库,将模型、软件工程知识与特定领域的知识 分别存入数据库。以软件工程知识为基础的生成规则构成的专家系统与含有应用 领域知识规则的其它专家系统相结合,构成了这一应用领域软件的开发系统。这 是比较理想的开发模型,它可以使开发过程更加规范,更有利于软件业的发展。 我国的软件业之所以较印度、美国等国家落后,就是由于软件开发中很不规范。 没有一定的管理方式,全凭程序员的编程技巧,程序如何全在个人的一念之间。 二、 软件需求分析与设计f 3 】 4 j 软件需求分析工作把软件功能和性能的总体概念描述为具体的软件需求规格 说明,从而奠定软件开发的基础。该过程主要完成的是“做什么”的问题。用户 提出对软件功能和性能的初步要求,软件分析人员则要认真了解用户的要求细 致地进行调查分析,并澄清一些模糊概念,最后转化成一个完全的、精细的软件 逻辑模型并写出软件的需求规格说明,准确地表达用户的要求,这是软件设计阶 段的基础。 软件需求分析的任务就是借助于当前系统的逻辑模型导出目标系统的逻辑模 型。其实现步骤可由图2 4 来表示。该过程中,通过对当前系统即已有的计算机 上运行的数据处理系统或者一个人工的数据处理过程的了解,模型化得到它的物 理模型。再对物理模型抽象化得到其逻辑模型。接下来分析目标系统与当前系统 逻辑上的差别,从而导出目标系统的逻辑模型。为了对目标系统做完整的描述, 还要对得到的模型做些补充,如用户界面等。 竺簖蓄| | ; 吖逻辑模型卜 寻需l 竺生剖蓁 i表】 图2 , 4 参考当前系统建立目标系统模型 4 研究生学位管理信息系统开发 需求分析包括以下四个方面的工作。 首先是问题的识别,它要完成的工作是确定目标系统的综合要求,也就是需 求。如功能( 最主要的) 、性能、环境、可靠性、安全性、用户界面、资源使用、 开发进度等方面的需求。 第二个方面是问题的分析和方案的综合,该工作从信息流和信息结构出发, 逐步细化所有的软件功能,找出系统各元素之间的联系、接口特性和设计上的约 束,分析它们是否满足功能要求、是否合理。最终综合成系统的解决方案,给出 目标系统的详细逻辑模型。常用的分析方法有面向数据流的结构化分析方法、面 向数据结构的j a c k s o n 方法、结构化数据系统开发方法、面向对象的分析方法等, 对于要求时序的高度类软件,还可使用状态迁移图,p e t r i 网等。 另外两个方面的工作分别是编制需求分析阶段的文档和需求分析评审。这两 个方面的工作容易理解,就不再多说了。但这决不是说它们不重要。 三、 软件设计 3 】【4 】 软件设计是一个把软件需求变成软件表示的过程,它要实现软件的需求,解 决“怎么做”的问题。软件设计可以分为两步。首先是概要设计,将软件需求转 化为数据结构和软件的系统结构。然后是详细设计,通过对结构表示进行细化, 得到软件详细的数据结构和算法。 程序结构表明了程序各个部件的组织情况,是软件的过程表示。程序结构通 常是树状结构或网状结构。网状结构由于模块间相互关系的任意性,处理起来引 起许多麻烦,故现在一般都采用树状结构。树状结构由位于顶层的主模块和与其 相连的若干下属模块组成,而每个下属模块又可以有若干个更下一层的下属模块, 如图2 5 所示。该结构的特点是整个结构只有一个顶层模块而任何一个下属模块 都只有一个上级模块,且同一层模块之间不发生联系。 0 层 1 层 2 层 3 层 图2 5 程序树状结构图 在模块设计中应尽量提高模块的独立性。模块的独立性是指每个模块只涉及 壅卣 第二章系统开发背景与技术 软件要求的具体子功能,而与其它模块只存在简单的接口。独立性可以通过模块 间的耦合性和模块的内聚性来度量。 耦合性是各个模块间相互关联的度量。它取决于各模块之间接口的复杂程度、 调用模块的方式以及哪些信息通过接口等。耦合性有七种类型,如图2 6 所示。原 则上讲,模块化设计的最终目标是希望建立模块间耦合尽可能松散的系统。 低一耦合性+高 强鲁一独立性弱 图2 6 模块问耦台性类型 内聚程度高的模块应该只完成单一的任务,而不与其它部分的过程发生联系。 内聚性也有七种类型,它与模块独立性的关系如图2 7 所示。 低一内聚性高 强i 一独立性 功能单一 一弱 功能丹散 图2 7 模块的内聚性类型 内聚性和耦合性是相互关联的。一般说来,模块的内聚程度越高,模块间的耦 合程度就越低。软件概要设计的目标是力求增加模块的内聚性,尽量减少模块间 的耦台性,但增加内聚性比减少耦合性更重要,应当把更多的注意力集中到提高 模块的内聚程度上来。 软件设计方法可以分为三大类:面向数据流的设计、面向数据结构的设计和面 向对象的设计。前两者都是结构化的设计方法。 结构化分析和设计方法按照功能分解的原则,根据软件内部数据传递、变换 的关系,自顶向下逐层分解,直到找到满足功能要求的所有可实现的软件为止。 该方法中运用的工具有:数据流图、数据词典、结构化英语、判定表与判定树。 其中数据流图用以表达系统内数据的运动情况;数据词典用以定义系统中的数据; 结构化英语、判定表与判定树都用于描述数据加工。 四、数据库表结构设计 5 】 1 6 研究生学位管理信息系统开发 在数据库系统工程中,必须满足的一个性质是数据完整性,即要求数据库中 信息完整齐备。有了完备的信息之后,需要按一定的原则对数据的结构进行规范 化的重新组织,以达到在冗余陛和灵活性等方面获得最优的效果。 数据组织的规范化形式是关系数据库的创始人之一库德( e f c o d d ) 首 先提出的。早在1 9 7 1 年库德就提出了规范化理论,并在随后一系列的论文中逐步 形成一整套数据规范化模式,这些模式已经成为建立关系数据库的基本范式。规 范化表达中规定在每一个基本表中必须定义一个数据元素为关键字,它可以唯一 地标识出该表中其它相关的数据元素。其中,数据元素就是基本表中的字段。在 规范化理论中表是二维的,它的任意一列上,数据项应属于同一个属性,其行和 列的顺序都无关紧要的,且不允许有相同的列和所有列都相同的行出现。 在对表的形式进行了规范化定义后,c o d d 还对数据结构进行了七种规范化定 义,并定名为规范化模式,称为范式。在这七种范式中,一般只用前三种,对于 常用系统就足够了。而且这七种范式是“向上兼容的”,即满足第七范式的数据结 构必满足前六种范式,满足第四范式的数据结构必满足前三种范式,依此类推。 第一范式( f i r s tn o r m a lf o r m ,简称l s tn f ) 就是指在同一表中没有重复项出 现,如果有则应将重复项去掉。这个去掉重复项的过程就称之为规范化处理。一般 按规范化建立的表都满足l s tn f 。 第二范式( s e c o n dn o r m a lf o r m ,简称2 n dn f ) 指表中其它数据元素都完全依 赖于主关键字,或称该数据元素唯一地被主关键字所标识。化为该范式的规则是 去掉功能上不完全依赖于主关键字的字段,它处理的是部分依赖关系。该规则只 用于已经是第一范式的表,主要是处理关键字是两个或多个字段的表。 第三范式( t h i r dn o r m a lf o r m ,简称3 r dn f ) 就是指表中的所有数据元素不但 要能够唯一被主关键字所标识,而且它们之间还必须相互独立,不存在其它的函数 关系也就是说对于一个满足了2 n dn f 的数据结构来说,表中有可能存在某些数据 元素依赖于其它非关键字数据元素的现象,必须加以消除。 下面给出一个进行规范化的例子。该例子是对一个订单的表结构的规范化过 程,如图2 8 所示。图a 中列出了订单中涉及的全部信息,没有规范化,所有信 息作为一张表。图b 把出

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论