论文摘要
数值天气预报系统的开发人员一般都分布异地,开发过程中需要用到各地的稀有计算资源。为了给分布在全国各地的气象专家提供一个数值天气预报系统开发的异地协同攻关环境,需要在网格环境下建立一个分布式的软件协同开发系统,该系统能够有效地集成版本管理的功能。目前现有的协同开发系统都不能够与网格环境相结合、充分利用网格环境下的各种稀有资源,在开发过程中也没有使用版本管理工具对软件开发进行版本管理,开发模式上依然采用传统的C/S模式,只适合在局域网内进行软件协同开发。本文首先研究分析了现行协同开发平台SourceForge、PrepIFS中相关技术的优缺点,然后结合数值天气预报开发这个具体应用,提出了建立一种基于网格环境下的协同开发系统,并主要对该系统的安全访问控制、代码的远程编辑和编译、版本管理及多工作拷贝一致性等核心技术做了研究。在安全访问控制方面,采用了基于全局角色与门户资源组相结合的安全访问控制机制,实现了对一般资源的安全访问控制,并且建立了门户用户与版本库用户之间映射关系,解决了用户在协同开发系统中的单点登录问题;在代码的远程编辑和编译方面,利用网格基础设施Globus Toolkit4.0的功能,实现了一种B/S结构的代码编辑和编译环境,为用户提供了远程编辑和编译环境;在协同开发系统的版本管理方面,研究开发了命令解释器,解释执行用户提交的版本管理命令,增强了系统可扩充性和可维护性;该系统为用户建立了多工作拷贝,针对多工作拷贝的一致性问题,采用了基于消息队列的一致性解决方案,解决了工作拷贝的单一失效问题,减少了远程操作的响应时间,提高了项目开发的效率。在理论研究的基础上,本文设计了网格环境下协同开发系统的总体框架,并实现了系统的用户权限管理、代码开发环境等核心功能模块。该系统已经应用到国家863项目“集合预报应用网格”中,在这个项目中的实际运行证明了本文研究工作具有一定的理论意义与实践价值。
论文目录
摘要ABSTRACT第一章 绪论1.1 课题背景及意义1.1.1 课题的背景分析1.1.2 课题研究的目标1.1.3 课题研究的意义1.2 发展现状1.2.1 SourceForge1.2.2 Subversion 技术1.2.3 Trac 技术1.2.4 PrepIFS1.3 论文的结构第二章 相关知识介绍2.1 网格系统软件简介2.1.1 网格基础设施Globus2.1.2 Globus 主要功能部件分析2.2 网格门户中间件GRIDSPHERE 简介2.2.1 GridSphere 概述2.2.2 GridSphere 体系结构2.2.3 GridSphere 容器2.2.4 GridSphere 的核心Portlets2.3 AJAX 技术简介2.3.1 Ajax 的引入2.3.2 Ajax 所包含的主要技术2.3.3 与传统的web 应用比较优势2.4 软件开发过程中的配置管理2.4.1 配置管理的概念2.4.2 配置管理对软件开发的重要意义2.4.3 配置管理的主要活动本章小结第三章 协同开发系统的结构3.1 层次结构3.1.1 如何划分本系统层次结构3.1.2 各层次的功能3.2 拓扑结构3.3 协同开发系统各功能模块3.3.1 权限控制模块3.3.2 数据管理模块3.3.3 作业运行模块3.3.4 资源管理模块3.3.5 代码开发模块本章小结第四章 协同开发系统用户权限管理机制的研究4.1 协同开发系统的访问控制需求分析4.1.1 传统访问控制策略的优缺点4.1.2 协同开发系统的访问控制需求4.1.3 后台访问控制需求分析4.2 协同开发系统中门户资源的访问控制4.2.1 设计思想4.2.2 门户资源和服务的访问控制4.2.3 门户资源组的定义4.2.4 RBAC 与门户资源组相结合的访问控制机制4.3 门户用户与后台版本库用户之间的映射4.4 协同开发系统安全管理模块的安全性评价本章小结第五章 多工作拷贝的一致性管理技术5.1 多工作拷贝的可行性与必要性分析5.2 工作拷贝的管理5.3 多工作拷贝一致性研究5.3.1 数据更新需要解决的问题5.3.2 数据更新的内容5.3.3 基于消息队列的一致性策略5.3.4 多工作拷贝一致性更新的特点本章小结第六章 协同开发系统核心模块的设计与实现6.1 协同开发系统安全控制模块的设计与实现6.1.1 访问控制的数据库实现6.1.2 用户验证流程6.2 代码开发模块的设计与实现6.2.1 B/S 结构版本管理的系统设计与实现6.2.2 B/S 结构的代码开发环境的设计与实现6.2.3 版本库的备份策略与同步6.2.4 消息发布系统的实现6.2.5 项目创建、项目开发与项目发布流程本章小结第七章 结束语致谢参考文献作者在学期间取得的学术成果
相关论文文献
标签:协同开发论文; 网格论文; 版本管理论文; 访问控制论文;