(教育技术学专业论文)基于java技术实现程序编辑过程的管理系统.pdf_第1页
(教育技术学专业论文)基于java技术实现程序编辑过程的管理系统.pdf_第2页
(教育技术学专业论文)基于java技术实现程序编辑过程的管理系统.pdf_第3页
(教育技术学专业论文)基于java技术实现程序编辑过程的管理系统.pdf_第4页
(教育技术学专业论文)基于java技术实现程序编辑过程的管理系统.pdf_第5页
已阅读5页,还剩46页未读 继续免费阅读

(教育技术学专业论文)基于java技术实现程序编辑过程的管理系统.pdf.pdf 免费下载

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

文档简介

摘要 随着信息化的发展,越来越多的企业开展了软件外包的业务,开发流程的管 理显得极为重要。本论文设计正是顺应这一形势而立,为解决开发管理过程中的 诸多难题,设计和开发了针对程序的开发管理工具一s o u r c e s y s 。 本文阐明了设计和开发s o u r c e s y s 的理论依据;并阐明了平台中前台操作部 分,附加功能部分和后台管理部分所设计的各个功能模块,如:新建l i b t h e m , 新建s o u r c e 等。 本文在分析了现有开发管理过程中存在的一些问题的基础上,利用j a v a n l 技 术开发设计了针对程序的开发管理工具一s o u r c e s y s 。在本次的设计开发过程中 注重解决项目研发过程中的整体管理:项目开发小组的成员之间的协调;小组成 员各自承担子项目统一的管理;研发小组各成员所作的修改进行统一汇总;保留 修改过的版本以及对研发过程中形成的软件的各个版本进行标识,管理及差异辨 识。在本次设计中采用b s 模式三层结构体系,j a v a 技术和m ys q l 数据库; 该设计具有版本管理的功能即新版本的取得、历史版本的取得、回复旧版本等; 该设计还具有开发过程的管理功能并易于后期维护。另外,在本次设计中我还运 用j a v a 技术构建了一个三层( 用户层、功能层一s e r 垤r 层和a c t i o n 层、数据层) 结构模式的平台。其中,数据访问包括两个层次的程序设计,一个是数据库存储 过程的设计;另一个是应用程序中数据连接的设计。s e r v e r 层的主要功能是业务 逻辑的实现;a c t i o n 层是用来调用s e r v e r 层的。特别要提及的是用户界面方便快 捷,信息全面,系统安全性高,并可以根据各应用的具体情况,适当加以修改, 能够很好的成为软件开发者的选择。系统目前采用的是白盒测试的方法。 关键词:软件开发过程管理:j a v a ;m ys q l :b s 结构模式 a b s t 隐c t w i t h 廿l ed e v e l o p m e mo fi n f o r 玎1 a t i o nt e c h n o l o g y m o r ea n dm o r ce n t e r p r i s e s h a v ed e v e l o p e dn l es o r w a r co u t s o i l l c i n g b u s i n e s s ,m u s ,d e v e j o p m 锄tp r o c e s s m 锄a g e m e n ti sb e c o m i n gm o r ec r i t i c a l t os o l v et h ep r o b l e m st h a ta p p e a r e d 谢t ht h i s ,i n “sp a p l e r ,t h ew r i t e rd e s i g i l s a n dd e v e l o p st h et o o lf o rt h ep r o 矿a md e v e l o p m e n t 细dm a l l a g e m e n t s o u r c e s y s t h i sp a p e rs e t so u tm et h e o r e t i c a lb a s i sf o rt h ed e s i g l la n dd e v e l o p m e n to f s o u 】汜e s y sa i l d 甜s op r e s e n t sap l a t f o n ni nt h ef 如n tp a r to ft h eo p e r a t i o n ,敷i d i t i o n a l f c a t i l r e s 觚db a c k o f n c em a n a g e m e mc o m p o n e n tp a n sd e s i 擘皿e df o rt i l ev a r i o l l s 觚c t i o i l a lm o d u l e s ,f o re x 锄p l e ,n e wl i b t h e m a ,n e ws o u r c ea n ds oo n b 勰e s0 nt l l e 肌a l y s i so ft l l ep r o b l e m se x i s t i n gi nt l l ec u n e n td e v e l o p m e n t 锄d m 锄a g e m e n tp r o c e s s , t h ew r i t e rd e s i g n s也et o o l s o u r c e s y sf o r t 1 1 e p r o g r a m d c v e l o p m e n ta i l dm 锄a g e m e n t 、i m 廿1 ej a v at e c l u l o l o g y t l l i sj o bs o l v e sm ep r o b l e m s a _ b o u tt h eo v e r a l lm a n a g e m e mi nt h ep r o j e c td e v e l o p m e mp r o c e s s ,t l l ec o o r d i m t i o n 锄o n gt h ep r o j e c td e v e l o p m e n tt e a mm e m b e r s ,t h em a i l a g e m e n ts u b p r o j e c t sb ye a c h t e 锄m e m b e ra n d 也eu n i f i e ds u m m a r yo f 也ec h a n 留e sm a d eb yt e 锄m e m b e r s m e a n w t l i l e ,t h es y s t e mc a i lr e t a i nr n o d i f i e dv e r s i o n sa i l dw e l li d e n t i 母a n dm 趾a 譬r et h e 训o u sv e r s i o n so ft l l es o f h a r ei nn l er e s e a r c ha n dd e v e l o p m e n tp r o c e s sa sw e u 缌 f i 阻l r e so u tm ed i f j f e r e n c e si ni d e n t m c a t i o n t h i sd e s i g ni sc h a r a c t e r i z e db ya p p l y i n gt i l eb sm o d e lo ft m e e t i e r 锄c h i t e c t u r e a n du s i n gt h ej a v at e c l u l o l o g ya n dm ys q ld 鼬a s et od e s i 印m es y s t e m nh 硒 v e r s i o nm a j l a g e m e n tf e a t u r e si n c l u d i n gt h ea c q u i s i t i o no fn e w 锄dh i s t o r i c a lv e r s i o n s , r e s p o l l s e st 0t l l ep r e v i o u sv e r s i o n s ,e t c i ta l s oh a sm 锄a g e m e n t 缸l c t i o n si nt h e d e v e l o p m e n td r o c e s s 觚di ti se 舔yt 0m a i n t 面nl a t e r i na d d i t i o n ,t h ed e s i g nu s e st h ej a v at e c h n o l o g yt 0b u i l dat l l r e e t i e r ( u s e rl a y e r , 矗m c t i o nl a y e r s e r 、,e rl a y e r 赳l dm ea c t i o nl a y e r m ed a t al a y e r ) s 仃u c t 啊em o d e l p l a t f b n n a m o n gt h e m ,t h ed a :t aa c c e s si n c i u d e s 伯,0l e v e l so fp r o 铲醐姗i n gd e s i g 璐: o n ei s t i l ed e s i g i li nd a t a b 嬲es t o r e dp r o c e d u r e ,t h eo t i l e ri s 也ed e s i g ni nd a 诅 c o l m e c t i o na p d l i c a t i o n t h em 撕na m c t i o no fs e r v e rl a y e ri st oa c h i e v et h eb u s i n e s s l o g i ca n dt l l ea c t i o nl 硒,e ri su s e dt oc a ut h es e r 、,e rl a y e r t h ed e s i 霉mh :勰ac o n v e i l i e n t u s e ri n t e r f a c e ,c o m p r e h e i l s i v ei 1 1 f 0 衄a t i o nm l dl l i 曲s y s t e m a t i cs e c u r 时b e s i d e s , a c c o r d i n gt 0m es p e c i f i cc i r c 啪s t a i l c e so fe a c ha p p l i c a t i o n ,i tc a l lm a k ea p p r o p r i a t e m o d i f i c a t i o l l ss 0 嬲t ob eag o o dc h o i c eo fs o f h 硼r ed e v e l o p e r s c u r r e n t l y ,i ti su s i n g n l ew h i t e b o xt e s t i n gm e m o d s k e y w o r d s : s o f t 、柏r e m a n a g e m e n t i l i d e v e l o p m e n tp r o c e s s ; j a v a ;m ys q l ; b s s t l l l c t l j r em o d e l 独创性声明 本人声明所呈交的论文是我个人在导师指导下进行的研究工作及取得的研究成果。尽我 所知,除了文中特别加以标注和致谢的地方外,论文中不包含其他人已经发表或撰写过的研 究成果,也不包含为获得:墨盗竖垫盘堂或其它教育机构的学位或证书而使用过的材料。 与我一同工作的同志对本研究所做的任何贡献均已在论文中作了明确的说明并表示了谢意。 签名: 盆骜 日期:丝虚尘:扣 学位论文版权使用授权书 本人完全了解天津师范大学有关保留、使用学位论文的规定,即:学校有权将学位论文 的全部或部分内容编入有关数据库进行检索,并采用影印、缩印或扫描等复制手段保存、汇 编以供查阅和借阅。同意学校向国家有关部门或机构送交论文的复印件和磁盘。 ( 保密的论文在解密后应遵守此规定) 签名: 导师签名: 1 1 开发背景 第一章绪论 如果说2 0 世纪7 0 年代的软件危机导致了软件工程思想的诞生和理论体系的 发展,那么2 0 世纪8 0 9 0 年代尤其是2 0 世纪9 0 年代软件产业的迅猛发展导致 了另一种新思想的产生和实现,这就是软件的版本管理。现在的软件项目完全由 一个人来完成是不可能的,通常是有一个研发小组来共同分析、设计、编码和维 护,并有专门的测试小组对已完成编码调试的软件进行全面的测试。在软件开发 这个庞大而复杂的过程中,需要涉及到各个方面的人员,信息的交流反馈不仅仅 是在研发小组的成员之间及各个研发小组之间,还存在于客户和研发者之间。所 有的这些交流反馈意见信息都有可能导致对软件的修改,小的可能只是对某个源 文件中的某个变量的定义改动,大到重新设计程序模块甚至可能是整个需求分析 变动。在这个工程中,由于软件开发所固有的特征,可能会形成众多的软件版本, 而且我们并不能保证不出现错误的修改,而这样的一个困难局面却又非常现实地 摆在项目开发管理者的面前,他该如何有效地解决这些问题,具体地说就是如下 一些问题: 1 怎样对研发项目进行整体管理; 2 项目开发小组的成员之间如何以一种有效的机制进行协调; 3 如何进行对小组成员各自承担的子项目的统一管理; 4 如何对研发小组各成员所作的修改进行统一汇总; 5 如何保留修改的轨迹,以便撤销错误的改动: 6 对在研发过程中形成的软件的各个版本如何进行标识,管理及差异识辨 等等。 如今软件外包已经成为当今国际国内软件业新的增长点,也是现代我国软件 出口业的主流发展方向,越来越引起相关企业的重视,己经成为国内外大规模开 发的热点课题之一。目前世界发达国家都十分重视软件外包,如美国、日本、欧 盟等都有大量大企业与中国存在着软件外包的合作关系。所以,关于外包的开发 质量就成了国内外各大企业研究的重要课题。我们必须要引进一种管理机制,一 个版本管理机制,而且是广义上的版本管理,它不仅需要对源代码的版本进行管 理,而且还要对整个项目进行管理。本次开发的s o u r c e s y s 正是应势而出的,可 以对外包业的品质进行管理的软件系统。 1 2 本系统的主要特点 s o u r c e s y s 是一种以程序版本管理为主体的开发管理平台,使各个开发过程 趋于规范化,可监控化,强化开发团队的协作性,是完全不同于传统开发管理的 新的管理模式。也正因为它是近几年的新生事物,是一个研究热点,所以国内对 此技术的应用还在起步阶段,需要探讨、摸索的内容很多。针对大部分的开发管 理系统普遍存在着一些问题和不足,本系统在设计与开发时主要具有以下几方面 特点: 1 采用b s 瞳3 模式三层结构体系 大部分程序版本管理平台都采用c s 模式进行开发,用户要想使用必须得先 安装客户端软件,从而对用户及时获取资源产生了一定的影响。 而b s 模式在传统的c s 模式的基础上,从两层结构之间增加了一个中间层 _ w e b 应用服务器,客户机上只需安装浏览器即可,它很好地解决了传统c s 模 式在可扩展性、可维护性、可重用性等方面的缺陷。在三层架构中,客户端接受 用户向应用服务器提出的请求,应用服务器从数据库中获得数据,将数据进行计 算并将结果提交给客户端,客户端浏览器将结果呈现给用户。应用服务器将大部 分的处理运算工作承担起来,减轻了客户浏览器和数据库服务器的负担,提高了 工作效率,同时也增加了安全性。 2 以先进的j a v a 技术口3 和m ys q l 肺1 数据库设计本系统 以j a v a 阳1 技术设计的系统能够解决传统二层结构系统的互操作性差及难以 跨平台运行等问题。另外,m ys q l 作为开源数据库的佼佼者,具有高效的数据 分析性能,灵活的业务扩展性,与操作系统集成的安全性以及客户及管理工具的 易用性,提高了管理工作的效率,降低了系统运行维护的成本。 3 版本管理的功能 程序是开发过程中至关重要的东西,也是本系统管理的重点。考虑到开发过 程中的版本变化是很频繁的,而且多个版本也有可能同时存在。所以,本系统可 以对开发过程中所有提交过的版本进行管理,包括新版本取得,历史版本取得, 回复旧版本等。 4 开发过程的管理功能 开发过程规范化是软件工程保证品质的基础,也是本系统的突出特点。它可 以规范一些开发规则,如测试未完成的版本不可进入下一工程阶段。有效的控制 了人为疏忽所造成的品质问题并且在大规模的开发当中,也起到了联系作用。比 如,两方同时要修正同一程序是会提醒你此程序处于并行开发状态。避免了由于 沟通不畅,导致版本出现混乱。 5 易于后期维护 2 许多版本管理系统在开发期投入了大量的人力与物力,建立了一套完整的系 统,但是任何个系统不可能是完美的,在使用的过程中需要不断地维护、修改、 补充,而这些工作却很少为人重视,无疑日后给使用带来了不便。 本系统在开发时使用b s 模式( 可以在任意一台可上网的机器上完成维护) , 加上系统的模块化设计( 每一功能的维护都可单独修改其对应的模块,从而避免 了波及其它的功能模块) 与全新的页面设计技术,使得后期维护变得更具效率 与方便。 1 3 系统主要部署与论文内容组织 s o u r c e s y s 由用户登陆,l i b t l l e m a 登录,管理物件新规登录,管理物件更新 登录,变更破弃及追加修正指示,管理物件再修正登录,管理物件登录取消,完 成登录,其他检索功能这1 4 个功能模块组成。本系统设计与开发时的主要部署 如下: 1 根据三层结构的要求设计系统的结构,划分出用户层( 客户层组件) 、功 能层( w e b 层组件1 c t i o n 层、业务逻辑层组件一s e r v e r 层) 、数据层( d b 系统) 。 2 构建基于w e b 的开发环境。这部分工作包括建立数据库服务器,即安装 m y s q l 并对其进行配置:安装j a v am m t i m ee n v i r o n m e n t ,对a p a c h eh t t ps e r v e r 进行配置等。 3 实现系统数据库的设计,建立系统数据库的结构与关系。 4 设计并实现用户层的用户界面,包括登录界面,各个功能界面、用户管理 界面等。 5 利用e c l i p s e 开发系统应用程序。实现本系统的上述功能,实现功能层所 承担的用户层与数据层之间的连接与数据处理。 6 完成本系统的功能测试。 7 完成本系统的安全性设计。 全文各章节内容组织如下: 第一章阐述s o u r c e s y s 的开发背景及技术研究现状,分析了目前现有系统存 在的问题和开发此系统的必要性,以及本系统的主要特点和本文的主要研究工作 与部署。 第二章主要是对本系统进行需求分析、可行性分析、功能分析以及与研究内 容相关的技术,主要包括系统开发所用的硬件平台,软件平台如:p e n t i u m4 2 4 g h z 处理器,5 1 2 m b 内存,e c i i p s e 等。 第三章从整体上设计系统,包括网络设计,系统总体设计,数据库设计和系 统中用到的关键技术。 第四章阐述了系统具体功能的实现,即介绍了数据层、功能层及用户层的具 3 体功能。 第五章阐述系统的功能测试一采用白盒测试的方法以及对系统安全性一对 系统常见的安全漏洞进行了阐述,并相应的给出了一些安全措施。 第六章对本次设计工作的总结与展望。 4 第二章系统分析及相关技术 2 1 系统的需求分析 在没有开发程序版本管理之前,研发小组的成员之间、各个研发小组之间以 及客户和研发者之间经常存在着信息反馈不及时,甚至信息反馈出现错误的现 象。所有的这些交流反馈意见信息都有可能导致对软件的修改,小的可能只是对 某个源文件中的某个变量的定义改动,大到重新设计程序模块甚至可能是整个需 求分析变动。针对这种种的问题,程序版本管理的开发就应势而出。程序版本管 理的开发主要是为了解决以下几个问题: 1 对研发项目进行整体管理; 2 让项目开发小组的成员之间以一种有效的机制进行协调; 3 对小组成员各自承担的子项目进行统一管理; 4 对研发小组各成员所作的修改进行统一汇总; 5 保留修改的轨迹,以便撤销错误的改动; 6 对在研发过程中形成的软件的各个版本进行标识,管理及差异识辨等等。 2 2 系统的可行性分析 对开发基于j a v a 的s o u r c e s y s 开发管理平台的可行性进行分析如下: 1 社会可行性分析 随着科学技术的不断提高,计算机科学的日渐成熟,其强大的功能已经为人们深 刻认识,它己进入人类社会的各个领域并发挥着越来越重要的作用。同时,为了 适应时代发展,适应我国软件开发行业的发展,努力实现我国软件开发管理水平 的跨越式发展的战略目标,所以开发s o u r c e s y s 开发管理平台在社会上是可行的。 2 技术可行性分析 从技术角度分析,这项开发工作所涉及的专业技术如下,s u i l 的j b o s s 作为 新一代的互联网平台,提供了支持未来计算的高效的w e b 服务开发工具;操作 系统采用w i n d o w sx p ;m ys q l 是当前主流开源数据库管理系统,它具有很强 的稳定性和易用性。因此,在数据管理系统上,采用了m ys q l ,开发工具选用 e c l i p s e 开发平台,服务器采用l i n u s 。由框架在整个系统中的角色和任务看,本 系统框架需要完成以下任务:( 1 ) 搭建b s 结构框架,即b r o w s e r s e r v e r ( 浏览器 服务器) 结构。在这种结构下,用户界面完全通过w w w 浏览器实现,一部分 事务逻辑在前端实现,另一部分事务逻辑在服务器端实现,形成所谓3 层结构。 ( 2 ) 实现开发管理的互动,即开发者可以通过w ,e b 窗体向服务器提交程序、测 试结果等信息,服务器根据提交的信息进行数据库检索及运算,最终把程序上传 版本库。所以开发s o u r c e s y s 开发管理平台在技术上是可行的。 3 操作可行性分析 因为开发管理平台平台采用的是b s 模式。b s 结构主要利用了不断成熟 的w w w 浏览器技术,用通用浏览器就实现了原来需要专用软件才能实现的功 能,用户在使用系统时,仅仅需要一个浏览器就可操作全部的模块。所以开发 s o u r c e s y s 开发管理平台在操作上是可行的。 综上所述,开发s o u r c e s y s 开发管理平台在社会上、技术上、操作上都是可 行的。 2 3 系统的功能分析 总体功能如下所列: 1 用户登录:在本系统中,不同的用户登录拥有不同的使用权限。 2 l i b t i l e m a 登录:对于一个大项目来说,每次业务变更都可能涉及到n 个 程序,本功能目的就是为1 次业务变更建立一个版本库,以待以后修改程序用。 3 管理物件新规登录:管理物件即为程序,本功能是把新作的程序上传到上 面所作成的版本库中去。 4 管理物件更新登录:管理物件即为程序,本功能是把要修改的程序上传到 上面所作成的版本库中去。 5 完成登录:若新作或修改的程序开发完成,利用此功能更新管理物件的状 态。 6 变更破弃及追加修正指示:如果先前修正的版本发生错误,或者想要追加 新的修正内容,使用此功能。 7 管理物件登录取消:把已经登陆的管理物件删除。 8 其他检索功能:各种状态的检索功能,用户管理功能。 2 4 系统开发的平台 示) 。 硬件配置:p e n t i 啪42 4 g h z 处理器,5 1 2 m b 内存,8 0 g b 可用硬盘空 间, d v d r o m 驱动器。 开发环境:一台l i n u s 服务器,一台高性能p c 作为开发用机。 软件平台:在p c 机上安装w i n d o w sx p ,m ys q l 和e c l i p s e ( 如图2 一l 所 6 囤2 一le c i i p 界面 w i n d o w s 操作系统以及m ys q l 在此就不再赘述了。下面主要介绍e c l i p s e 及其相关开发技术。 24 1e c i i o s e 本系统选用e c j i p ”1 作为开发平台,采用的是e c j i 畔3 3 版本。 e c i i p s e 是一个开放源代码的( 这种源代码是可用的,用户能自由地修改和分 发该软件) ,基于j g v a 9 ”的可扩展开发平台。本系统之所以选用它是因为 蒯i p s e 3 3 为我们提供了非常丰富的插件:e c i i p 北3 3 为我们提供了舒适的、强有 力而且能够提供语法高亮显示的编辑器。它十分清楚类与实例变量之间的区别。 因此它能以不同的颜色来标志它们,甚至能够通过窥探源码注释来指出我们调用 的一个方法是否过时,并且针对这一方法调用绘制一条线以强调这一部分代码值 得注意;l i p 辨33 为我们提供了内容助理c 廿l + s p 搬,即当我们不记得一个 对象的方法有哪些或如何拼写一个类名时。只要按下c 廿l + s 舭那么e c 邱s e 将 在任何给定点提供一个有效的可能性列表:e c l i p s c 3 3 还为我们提供了以下的修 改:如果我们想得到关于使用原始类型的一个警告。那么我们只要把光标放到那 一行上,然后按下c 订l + l 并且选择一种”修整”即可。再有,o 幽kf i x 能够维护 同一个文件甚至在多个文件中的许多问题,而不必单独处理每一个问题;在33 版本下,我们可以在同一时嘉9 运行多个测试集,并且可以“回溯”和查看以前运行 的历史。 盹l i p s e 3 3 还为我们进行团队开发提供了良好的环境。在团队开发中我们 需要知道当前文件中各部分内容的作者,e c i i p s e 3 3 提供了显示基于颜色的注解, 以便确定在当前文件中各部分内容的作者一这是通过读取c v s 历史实现的。把 鼠标停在一个更改块上将显示开发者的姓名、相应的日期和注释信息。它还会高 亮在文件的其它部分中作过相同修动的代码。e c l i p s e 3 3 还加入了重构脚本的功 能。 e c l i p s e 3 3 提供了代码清洁器,即一个新的”c l e a i lu p i 向导,进一步强化了 代码格式化功能,以帮助整个团队的代码格式化。下面列出这个向导的一些选择 实现功能:删除不用的导入功能;删除不用的曲v a t e 方法和构建函数:添加缺 乏的 o v e m d e 和( 园d e p r e c a t c d 注解;添加缺乏的$ n o n - n l s $ 标签或删除不必要 的那些标签;把所有循环转换成增强式的f 0 r 循环;把控制语句体转换成块;删 除不必要的强制转换;把串行序列版本i d 添加到s e r i a l i z a b l e 和e x t e n l a l i z a b l e 类。 2 5 2j b o s s j b o s s 足一个用纯j a v a 编写、开放源代码、遵循j 2 e e 规范的应用服务器。 在j 2 e e 应用服务器领域,j b o s s 是发展最为迅速的应用服务器。本系统采用的 是j b o s s 4 2 3 g a 版本。 本系统之所以采用j b o s s 4 2 3 g a 版本,是因为j b o s s 应用服务器具有许多 优秀的特质。1 它将具有革命性的j m x n 们微内核服务作为其总线结构,j m x 定 义了完整的可扩展的框架体系、设计模式、a p i 接口、基于网络的管理和监控服 务等,通过这些可以对j a v a 程序进行管理控制。利用j a v a 平台的管理能力,j 凇 可以跨越一系列不同的异构操作系统平台、系统体系结构和网络传输协议。灵活 地开发无缝集成的网络应用系统。它通过一种分层的方法,降低了可伸缩网络管 理的复杂性。达到了远程管理多个不同的应用程序和系统的目标。鹏o s s 的模块 架构是建立在j m x 底层上的。它的架构是层式架构,它们分别是实现层 ( i n s t n l m e n 协t i o nl a y e r ) 、代理层( a g e n tl a y e r ) 和发布层( d i s t r i b u t i o nl a y e r ) 。2 j b o s s 4 2 3 g a 版本中加入了集群技术n q n 2 1 ,几乎能对任何j 2 e e 规范进行集群 管理。集群在j b o s s n 3 1 中是一系列的节点,一个节点可以是一台计算机或者是更 简单的一个服务实例。这些节点中的集群功能都具有自动发现、集群技术支持对 象、动态刷d i 发现等特点。j b o s s 钉为j 2 e e 应用提供了一个非常灵括有效的 集群机制。它能使得在保持服务端性能损失最小的情况下进行失效转发,并能动 态地对集群节点进行配置。 3 1 网络设计 第三章系统设计 出于性能的考虑,系统中包含一台w e b 服务器、一台b l 服务器和一台数据 库服务器,3 台服务器协同对来访的多个客户端提供服务。如果经济考虑并且数 据流量不太大的话,也可以将3 台服务器合并为一台,但应适当提高其配置,以 保证稳定运行。 系统中未对管理终端和普通用户终端进行区分,因为对于用户权限的控制是 通过系统认证来实现的。应该说,在任何一台客户端上通过认证后都可以使其成 为管理终端。 3 2 系统的具体设计 系统的具体设计部分包括以下内容:系统平台的设计原则、程序框架、 s o u r c e s y s 概要( s o u r c e 版本管理、系统的全体构成、工程的过程管理) 。 3 2 1 系统平台的设计原则 设计一个让开发者,管理者都满意的平台至少要遵循以下几个原则: 1 规范性原则 实现的功能都要以c m m i 的标准进行设定,对开发支持和资源管理提供强有 力的功能支持。 2 能支持多种开发管理模式 能支持个别化开发管理模式,从而加强灵活性和适应性。 3 可扩充性原则 可扩充性原则是指平台建设既要考虑目前开发管理对支撑环境的要求,也要 考虑未来发展的需要,因此,软件功能上应有进一步开发的计划,硬件环境的选 型要考虑扩充方案的成本。 4 界面友好原则 界面美观、大方,可以一目了然;操作要简单,不需要大量的预备技能:提 示信息详尽、准确、恰当。 5 易维护性原则 9 当出现开发管理上小的变动和出现新的需要时,要能方便快速地进行维护。 3 2 2 程序框架 程序框架反应的是使用者的机器、新s o u r c e s y s 服务器和外部服务器之间 的关系( 如图3 1 所示) 。 3 2 3s o u 悦s y s 概要 图3 一l 程序框架 1 s o u r c e 版本管理 版本管理包括n l e m a 管理、l i b a 巧管理和d b 维护。其中,t h e n l a 管理对于 一个比较庞大的工程来说,它并不是一次就做好的,而是从雏形开始不断完善的。 因此,对于工程来说,先要决定干什么( 进行一个t h e m a ) ,然后再决定需要写 哪些程序或者修改原来的哪些程序( 在n l e m a 中,新作或修改s o u r c e ) ,通过所 有的测试后,这个n l e i n a 算作是完了。l i b a r y 管理是指对版本库的管理,对于本 项目而言就是指s v n 。d b 维护:对主表的增加、删除、修改、检查的功能。 l o 2 系统的全体构成 通过图示( 如图3 2 所示) 阐明了l i b r a r ys e r v e r 和个人开发环境、共用开 发环境及测试环境的关系。 图3 2 系统构成图 本程序的开发环境是多种系统的,l i b s y s 作为一个单独的服务器进行统一管 理( 如图3 3 所示) 。 图3 3l i b s y s 服务器管理 3 工程的过程管理 开发本系统是一个复杂的工程,这就需要我们对此项开发过程进行严格的、 系统的管理。具体的方式如图3 4 所示。 3 3 数据库设计 开发 d 单体 b 连结l d 连结 b 综合 du a 测试完成2 完澍试 t 完成成 完了 图3 4 工程的过程管理 本系统在数据库n 钉的设计这部分内容中分别阐述了数据库设计的要求、数 据库的需求分析、数据库的物理设计( u s e r 管理、t e a m 管理、m e n u 管理、职责、 s y s t 咖管理、n e m a 管理、基本管理、r e l e a s e 发布的e r 图) 1 2 日朋 3 3 1 数据库设计的要求n 们 数据库设计是否支持应用系统的对象模型,这是判断是否是面向对象数据库 系统的基本出发点。由于应用系统设计在前,数据库设计随后,所以应用系统对 象模型向数据库模式的映射是面向对象数据库设计的关键。 1 三层数据库模式n 7 面向对象模型的扩展 般数据库设计多参照a n s l s p a r c 关于数据库模式的三层标准结构提 案。最接近物理数据库的内部模式由d b m s 提供的s q l 来描述。概念模式可以 由若干个内部模式聚集面成,它是由数据库用户规范的一些表的集合。一般的概 念模式是数据库物理模式作用域的边界,它能实现数据库的物理意义、特定 d b m s 的特殊操作对外部应用程序的信息隐蔽。外部模式是从特定用户应用角度 看待的数据库模式,从不同的应用出发对同一概念模式可以给出多种不同的外部 模式。当外部应用系统以对象模型进行抽象时,从各个应用出发抽象出的对象模 型可以映射到外部模型上,对此我们不妨称之为外部对象模型。但是,外部模型 只是概念模型的子集,所以面向对象的数据库设计核心在于系统对象模型向数据 库概念模型的映射。 2 对象模型向数据库表的映射规则 由于r d b m s 是以二维表为基本管理单元的,所以对象模型最终是由二维表 及表间关系来描述的。换言之,对象模型向数据库概念模型的映射就是向数据库 表的变换过程。有关的变换规则如下: ( 1 ) 一个对象类可以映射为一个以上的库表,当类间有一对多的关系时,一 个表也可以对应多个类。 ( 2 ) 关系( 一对一、一对多、多对多以及三项关系) 的映射可能有多种情况, 但一般映射为一个表,也可以在对象类表间定义相应的外键。对于条件关系的映 射,一个表至少应有三个属性。 ( 3 ) 单一继承的泛化关系可以对超类、子类分别映射表,也可以不定义父类 表而让子类表拥有父类属性。反之,也可以不定义予类表而让父类表拥有全部子 类属性。 ( 4 ) 对多重继承的超类和子类分别映射表,对多次多重继承的泛化关系也映 射一个表。 ( 5 ) 对映射后的库表进行冗余控制调整,使其达到合理的关系范式。 3 数据库模式要面向应用系统 我们选择面向对象的系统设计也好,面向对象的数据库设计也好,根本目的 是应用系统的需要。是数据库设计的面向对象特征最终奠定了整个系统的面向对 象性,其优点如下: 1 3 ( 1 ) 数据库结构清晰,便于实现面向对象程序设计 由于实现了应用模块对象对数据库对象的完全映射,数据库逻辑模型可以自 然且直接地模拟现实世界的实体关系。用户所处的当前物理世界、系统开发者所 抽象的系统外部功能,与支持系统功能的内部数据库( 数据结构) 一一对应,所 以用户、开发者和数据库维护人员可以用一致的语言进行沟通。特别是对多数不 了解业务的程序开发人员来说,这种将应用对象与相应的数据对象封装在对象统 一体中的设计方法,大大减轻了程序实现的难度,使他们只要知道加工的数据及 所需的操作即可,而且可以多处继承由设计人员抽象出来的、预先开发好的各种 超类。 ( 2 ) 数据库对象具有独立性,便于维护 除了数据库表对象与应用模块对象一一对应外,在逻辑对象模型中我们没有 设计多重继承的泛化关系,所以这样得到的数据库结构基本上是由父表类和子表 类构成的树型层次结构,表类间很少有继承以外的复杂关系,是一个符合局部化 原则的结构,从而使数据库表数据破坏的影响控制在局部范围且便于修复,给系 统使用后的数据库日常维护工作带来便利。 ( 3 ) 需求变更时程序与数据库重用率高,修改少 在映射应用对象时,除关系映射规范化后可能出现一对多的表映射外,大多 数应用对象与表对象是一一对应的。我们可以把规范化处理后的、由一个应用对 象映射出来的多个表看成一个数据库对象。因此当部分应用需求变更时,首先, 系统修改可以不涉及需求不变更的部分;其次,变更部分的修改可以基本上只限 于追加或删除程序模块或追加新库表,而基本上不必修改原有程序代码和原有库 表定义,从而大大减少了工作量,降低了工作难度。 3 3 2 数据库需求分析 需求分析的结果是系统开发的基础。在这个阶段主要是收集基本数据以及数 据处理的流程,为以后进一步设计打下基础。 就本系统而言,需要建立l i b t h e m a 管理表,通过建立此表,可以新建立一 个l i b t h e m a ,使后续功能可以向此l i b m e m a 中,添加s o u r c e 。管理物件表,通 过建立此表可以定义一个管理物件一s o u r c e 。开发系管理物件状况表,l i b t h e m a 管理表与此表是l 对多的关系,它表示l i b t h e m a 的各个版本的管理物件一 s o u r c e 。用户管理表,记录使用此系统的用户的账户信息履历表,记录使用者的 所有操作信息。 1 4 3 3 3 数据库物理设计 数据库的物理设计1 阳是指对已确定的逻辑数据库结构,研制出一个有效、 可实现的数据库结构的过程,是逻辑数据库的实现。数据库的物理设计的主要任 务是对数据库中数据在物理设备上的存放结构和存取方法进行设计。 1 u s e r 管理 u s e r 管理中包括t - u s e r 履历、m u s e r 管理、1 m u s e r 情报、1 m 代行者权 限情报、t - u s e r 管理,下面用e r 图阐明他们之间的关系( 如图3 5 所示) 。 刑代行者权限情报 s i t c i d i d p 两c c t i d u s 凹i d 职责i d m c n u i d 登录年月日 削除年月日 图3 5u s e r 管理e r 图 2 t e 锄管理 t e 锄管理中包括m t e a i i l 管理和m t e 撇关系,下面用e r 图来阐明它们之 间的关系( 如图3 6 所示) 。 m 1 b 帅管理m - t c 枷关系 s i t c i d s i t c i d p m j c c t l d p m j e c t i d 1 ;姗i d 1 1 组m i d s y 或c l l l i d s y s t c m i d t e 啪名称 s u b s y s t c m i d 登录年月日 登录年月日 删除年月日 删除年月日 图3 6t e 锄管理e r 图 3 m e n u 管理 m e n u 管理中包括m m e n u 管理和m m e n u 情报,下面用e r 图来阐明它们 之间的关系( 如图3 7 所示) 。 m m 锄u 管理 m m 伽情报 s i t d d s i t c i d p m j e c t l dp m j e c t i d m 锄u l dm 舶u l d m 锄u 名称 s u b m u i d s u b m e n u i d ls u b m u 名称 s u b m n u i d 2 i 功能i d o o l s u b m e n u l d 2 0 功能i d 2 0 0 t h e m a 人力f l a g 图3 7 m e n u 管理e r 图 4 职责管理 职责管理阐述了m 一职责管理的各项内容一s i t e i d 、p r o j e c t i d 、职责i d 、职责 名称、功能i d 0 0 1 、功能i d 0 0 2 、功能i d 0 0 3 、功能i d 0 0 4 、功能i d 0 0 5 功能i d 2 0 0 适用开始年月日、适用终了年月日( 如图3 8 所示) 。 1 6 m 职责管理 s i t c i d p m j e c t i d 职责l d 职责名称 功能i d o o l 功能i d 0 0 2 功能i d 0 0 3 功能i d 0 0 4 功能i d 0 0 5 功能l d 2 0 0 适用开始年月日 适用终了年月日 图3 8 职责管理e r 图 5 s y s t c m 管理 s y s t e m 管理包括m - s e r v e r 情报、m - s e r v e r 管理、m s e r v e r g r 0 印管理、m 一 测试配布s e r v e r u p 管理、m - 系统配布s e r 代r u p 管理、m - s y s t e m 管理、 m s u b s y s t e m 管理。下面用e r 图来阐述它们之间的关系( 如图3 - 9 所示) 。 1 7 m s y s t e m 管理 s j t c i d p m j c c l i d s y s t c m i d s y 妣m 名称 s y 妣m 登录日 s y s t c m 登录u 靶r i d 系统s v n 反映区分 管理物件压缩f l a g - m - s u b s y s t e m 管理 s i t e l d p m j t i d s y s t e m i d s u b s y s i c m i d s u b s y s l c m 名称 s u b s y s t c m 登录日 s u b s y s t c m 登录u s e r i d 图3 9 s y s t e m 管理e r 图 1 8 6 t h e n m 管理 n e m a 管理中包括t mt a g 管理、俐- l i b n i e m a 管理以及m 测试工程种类 的管理,下面用e r 图来分别进行阐述( 如图3 一l o 所示) 。 t mt a g 管理 s i t e i d p r o j e c t i d t a g i d 系统开发区分 s v

温馨提示

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

评论

0/150

提交评论