APP下载

软件应用生命周期管理下SaaS平台的设计与实现

2016-01-05张延年米洪

电脑知识与技术 2015年29期
关键词:生命周期

张延年++米洪

摘要:网络信息技术深入发展的环境下,软件的开发和更新越来越受到重视,基于软件生命周期管理的软件开发平台,影响着软件开发的质量和实用性。该文将以SaaS平台为基础分析和阐述软件开发平台的设计思想,具体论述该平台的设计过程以及该平台软件开发各个环节的实现过程。

关键词:软件应用;生命周期;SaaS平台

中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2015)29-0080-02

软件应用的生命周期拥有自身的特征,是指软件的产生到停止使用的过程,这个周期内的一切定义、分析、描述、设计、编程、调试和测试、验收、运行等均是软件应用生命周期下的活动。这些过程也可以分为几个不同的阶段,在每个阶段进行定义、工作、审查并形成文档,以用于交流和备查,以保障软件的质量。当前,软件的发展以发展成为一种面向对象的设计方法和技术。在软件生命周期管理下,SaaS平台的设计需要采用框架选型(OSGi)、系统架构设计(SE Cloud)、SE Cloud的SaaS 服务集成方法设计、以及异构数据集成方法,最后对 Red mine 问题跟踪系统的集成进行实现和展示。

1 SaaS平台的设计思想

SaaS平台的设计过程,是基于OSGI的模块化机制设计,在一个模块内有一个或者多个的Bundle,用来对模块的范围进行定义,并在模块对外服务的过程中提供服务和依赖服务。当前的软件设计所采用的主要形式均是面向对象化的服务组件模块设计,通过组件提供对外的服务接口,并引用其他的服务接口实现交互的目标;或者在以POJO的方式编写程序时,通过依赖注入的方式注入引用的服务,用XML描述Component引用服务的方式,提供对外的服务和服务属性。

除此之外,SaaS平台采用的是动态化和可扩展的设计思想,保证系统稳定的提供个服务并实现组件扩展功能。

2 SaaS平台的设计过程

2.1 系统的架构设计

软件应用周期管理下,SaaS平台的合理设计过程首先是OSGi框架选型,从常用的四个框架(Apache Felix,Equinox,Spring DM,Knopfler fish)中,实现OSGi组件从一个框架轻易地转移到另一个,在不同的框架上,实现本身的设计和额外的服务,并对这四个框架进行分析,选择出合适的框架。

2.2 SaaS服务集成设计

在SE Cloud平台的框架下,Business Module对模块范围的定义是能够提供独立业务功能模块,故平台的集成思想是将开源工具以业务模块为边界来进行拆分和集成,这便可以实现用户按需使用的要求,下表1就是Red mine模块的划分表格。

表1 Red mine模块的划分

在异构开源管理工具中,编程语言是多样化的,技术架构也不同,是属于只面向Java 语言的软件设计模式。

3 SaaS平台实现过程

在软件应用生命周期管理下的SaaS平台开发环境主要如下表2所示。软件开发环境对软件开发的效率至关重要,也有助于软件开发平台对软件运行问题的有效跟踪和及时解决。下面将以SE Cloud平台对Red mine问题跟踪系统的集成为例进行实现,通过这个过程阐述SaaS平台实现过程的相关技术处理和需要注意的问题。

在软件开发系统的运用过程中,各种框架的搭建、框架技术的运用以及模块化集成平台的运用,均影响着软件开发的效率和实现结果的好坏。

表2 软件开发环境

3.1 平台实现的配置

在OSGi框架技术下,搭建的模块化平台定义为SE Cloud,该框架下,模块化的单元定义为Bundle,它包含了一系列的源代码、资源和配置文件,与一般的jar包不一样的是,模块化的单元强调的是package角度下打包,而不是单个的文件打包。在模块化的单元里, Manifest文件便是用来声明模块化单元的基本属性,主要内容个有名称,版本、作者、构建环境、访问路径及导入和导出包等重要的信息。通常,在构建模块化单元的定义中,开发者会采用第三方开源工具进行构建,其构建原则是在pom.xml文件中设置单元化模块的相关基本配置。

除了Bundle框架开发方式,还有Apache Felix框架,同样能够很好地实现软件应用平台的构建和开发。

3.2 服务管理平台实现

在服务管理平台的实现过程中,服务的分类及分类间的层次结构以树形菜单的方式展现,在浏览器向Servlet发送请求的时候,Servlet会使用Felix框架中Fast j son模块提供的静态方式( JSON.to J SON String)将查询的结果以JSON的方式输出,而页面将通过Easyui自动解析查询的数据并进行结构化展示。在选择服务菜单时,浏览器再次请求数据,并在新选项卡中现实服务信息。其次,在模块化单元初次启动时,平台将自动向数据库中注册这项服务,并直接从数据库中读取服务列表。这个过程还可以由系统管理员拖动到制定的分类目录下对服务项目进行分类。最后,模块化单元的管理在框架体系下也是能够实现安装、卸载、更行、刷新和停止启动等操作的。

3.3 SE Cloud平台实现

在SE Cloud平台实现的过程中,主要需要实现数据同步和项目配置。数据同步是根据数据集成方案,实现同时链接多个数据库,保持数据的一致性,并保证所有的源数据能实现同时更新。在Java的分布式数据处理机制中,可实现多个数据库的访问和更新目的。在面向对象的软件开发过程中,我们可以将事务管理器和资源管理器区别定义,开发人员所使用的接口和面向服务提供商所使用的接口是不同的。在不同的数据库同步为多个集成系统服务时,若存在重复和冲突,也可以通过SE cloud进行管理,主要有用户管理、角色权限管理和项目管理设置。

参考文献:

[1] 宋杰,李甜甜,贾路路,朱志良.基于角色和交互的SaaS软件生命周期推演模型[J].东北大学学报:自然科学版,2012(6) .

[2] 何月,陈明.取证分析SaaS云的安全体系及关键技术研究[J]. 信息网络安全, 2012(8) .

猜你喜欢

生命周期
从生命周期视角看并购保险
民用飞机全生命周期KPI的研究与应用
煤粉热水锅炉生命周期分析
企业生命周期及其管理
安徽:打造创新全生命周期的金融资本支撑体系
绿色建筑全生命周期的成本控制
塑料包装生命周期绿色化浅论(四)
旅游地生命周期理论研究进展
塑料包装生命周期绿色化的浅论(三)
覆盖整个生命周期的威胁防护解决方案