CN102135885A - 一种模块化的软件开发架构 - Google Patents

一种模块化的软件开发架构 Download PDF

Info

Publication number
CN102135885A
CN102135885A CN2011100690234A CN201110069023A CN102135885A CN 102135885 A CN102135885 A CN 102135885A CN 2011100690234 A CN2011100690234 A CN 2011100690234A CN 201110069023 A CN201110069023 A CN 201110069023A CN 102135885 A CN102135885 A CN 102135885A
Authority
CN
China
Prior art keywords
software development
component
software
feature exists
infrastructure component
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN2011100690234A
Other languages
English (en)
Inventor
郭庆
赵欢
李云华
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Dawning Information Industry Beijing Co Ltd
Original Assignee
Dawning Information Industry Beijing Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Dawning Information Industry Beijing Co Ltd filed Critical Dawning Information Industry Beijing Co Ltd
Priority to CN2011100690234A priority Critical patent/CN102135885A/zh
Publication of CN102135885A publication Critical patent/CN102135885A/zh
Pending legal-status Critical Current

Links

Images

Abstract

本发明提供一种模块化的软件架构,包括基础组件和第三方库,核心平台,应用组件;本发明实现了模块化开发的核心平台,允许开发人员在核心平台下并行开发各自模块,同时复用相关模块已实现功能,最终可在核心平台下运行所有模块,搭建整个软件系统;支持模块化的封装和交互;支持模块化的动态配置、部署;极大提高了软件的可扩展性,方便开发人员并行开发,扩展软件系统;实现了软件功能定制化,允许管理人员根据需求自由定制组合软件模块。

Description

一种模块化的软件开发架构
技术领域
本发明涉及软件开发领域,具体涉及一种模块化软件开发架构。
背景技术
随着软件复杂性的增长,软件系统的规模也越来越大,软件系统会被划分为多个模块或子系统进行开发,如何灵活的对系统进行模块划分,并支持系统扩容时灵活的增加新的模块,是软件开发面临的一个难点。
发明内容
本发明目的是提供一种模块化的软件架构,用来支持可扩展的软件开发设计。
一种模块化的软件开发架构,所述构架分层次化,包括基础组件和第三方库、核心平台和应用组件三层;其中,
所述基础组件和第三方库定义了基础组件实现的公共规范,并且按此规范实现的基础组件可以被任何系统使用;
所述核心平台以扩展点技术为核心,定义了模块化扩展的的各种扩展点,并提供对模块的统一配置、管理功能,对各个功能进行封装供子系统使用;
所述应用组件为开发人员利用前两层功能实现自己应用
优选的,所述基础组件和第三方库包括数据库,日志,系统调用接口,异常信号,工具类,输入控件与图形控件。
优选的,开发人员实现的基础组件都可以被其他业务系统使用和调用。
优选的,在核心平台上,业务组件可动态加入到软件系统中。
较优选的,所述业务组件是在按照扩展点和模块化规范要求的基础上实现的。
优选的,所述应用组件包括维护管理类,数据中心类和HPC类。
本发明带来的有益效果如下:
1、实现了模块化开发的核心平台,允许开发人员在核心平台下并行开发各自模块,同时复用相关模块已实现功能,最终可在核心平台下运行所有模块,搭建整个软件系统;
2、支持模块化的封装和交互;
3、支持模块化的动态配置、部署;
4、极大提高了软件的可扩展性,方便开发人员并行开发,扩展软件系统;
5、实现了软件功能定制化,允许管理人员根据需求自由定制组合软件模块。
附图说明
图1是本发明架构层次图
具体实施方式
系统总体上分为三个层次,基础组件第三方库;核心平台;应用组件;
基础组件第三方库:对于整个软件系统,存在大量的公用方法与基础控件,如数据库操作、日志、系统调用等,如果每个方法都需在不同的业务系统独立开发,势必造成大量的重复劳动,故此层次定义了基础组件实现的公共规范,使得按照此规范实现的基础组件可以被任何业务系统使用,从而大大提高了软件代码的复用性;只要有开发人员实现某种基础组件,就可以被任何其他业务系统使用,也大大提高了开发人员的效率。
核心平台:为支持模块化的系统架构,核心平台以扩展点技术为核心,定义了模块化扩展的各种扩展点,并提供了对模块的统一配置、管理等功能,从而使得业务组件在按照扩展点和模块化规范要求的基础上实现,即可动态的加入到软件系统中,而不用修改原有软件,达到了系统模块化动态扩展的目的;同时对于任何一个软件系统都会用到诸如用户管理、认证审计等功能,且各业务系统将依赖此功能进行业务系统的操作;故核心平台对此也统一进行了封装实现,可供各子系统直接使用。
如主菜单扩展点,传统的页面开发方式,当需在页面中增加一个菜单时,需要在原有页面代码中编写新的菜单代码,而本发明中通过在系统中定义菜单扩展点,各子系统在按照扩展点要求实现各自的页面并编写配置文件后,核心平台即可将子系统的页面加入主页面中,而不用修改主页面的代码,实现了页面的灵活动态扩展;而当无此子系统时,也不需像传统开发模式下删除菜单代码,因无此业务子系统,核心平台自动不会显示出该子系统的页面。
应用组件:在如上两层次的基础上,开发人员就可以使用基础组件和核心平台提供的公用功能,同时实现自己业务系统的业务流程;按照模块化规范的要求实现的各业务组件可动态加入到软件系统中;这样使得业务组件的开发人员可以专注于应用的流程,而不用分心研究软件的框架等公共方法,从而各有所攻,各有所长,提高了团队开发的效率。

Claims (6)

1.一种模块化的软件开发架构,其特征在:所述构架分层次化,包括基础组件和第三方库、核心平台和应用组件三层;其中,
所述基础组件和第三方库定义了基础组件实现的公共规范,并且按此规范实现的基础组件可以被任何系统使用;
所述核心平台以扩展点技术为核心,定义了模块化扩展的的各种扩展点,并提供对模块的统一配置、管理功能,对各个功能进行封装供子系统使用;
所述应用组件为开发人员利用前两层功能实现自己应用。
2.如权利要求1所述一种模块化的软件开发架构,其特征在:所述基础组件和第三方库包括数据库,日志,系统调用接口,异常信号,工具类,输入控件和图形控件。
3.如权利要求1或2所述一种模块化的软件开发架构,其特征在:所述基础组件可被其他业务系统使用和调用。
4.如权利要求1所述一种模块化的软件开发架构,其特征在:在核心平台上,业务组件可动态加入到软件系统中。
5.如权利要求4所述一种模块化的软件开发架构,其特征在:所述业务组件是在按照扩展点和模块化规范要求的基础上实现的。
6.如权利要求1所述一种模块化的软件开发架构,其特征在:所述应用组件包括维护管理类,数据中心类和HPC类。
CN2011100690234A 2011-03-22 2011-03-22 一种模块化的软件开发架构 Pending CN102135885A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2011100690234A CN102135885A (zh) 2011-03-22 2011-03-22 一种模块化的软件开发架构

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2011100690234A CN102135885A (zh) 2011-03-22 2011-03-22 一种模块化的软件开发架构

Publications (1)

Publication Number Publication Date
CN102135885A true CN102135885A (zh) 2011-07-27

Family

ID=44295679

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2011100690234A Pending CN102135885A (zh) 2011-03-22 2011-03-22 一种模块化的软件开发架构

Country Status (1)

Country Link
CN (1) CN102135885A (zh)

Cited By (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102495730A (zh) * 2011-12-02 2012-06-13 曙光信息产业(北京)有限公司 一种动态可扩展的web界面的方法
CN102546826A (zh) * 2012-02-22 2012-07-04 浪潮电子信息产业股份有限公司 一种云海os中应用模块拆分与集成的方法
CN103324470A (zh) * 2012-03-21 2013-09-25 阿里巴巴集团控股有限公司 一种Web系统生成的方法和装置
CN103777965A (zh) * 2014-02-24 2014-05-07 武汉大学 一种用于软件合作开发的间层模型
CN104142825A (zh) * 2014-07-08 2014-11-12 北京彩云动力教育科技有限公司 一种产品的模块化开发方法及系统
CN104243207A (zh) * 2014-09-05 2014-12-24 阿纳克斯(苏州)轨道系统有限公司 基于模块化与集成化的pis维护方法及系统
CN104765603A (zh) * 2015-03-18 2015-07-08 百度在线网络技术(北京)有限公司 应用程序构建方法及装置
CN105847026A (zh) * 2015-11-28 2016-08-10 成都广达新网科技股份有限公司 一种基于扩展点实现网管系统功能扩展的方法
CN106445786A (zh) * 2016-09-28 2017-02-22 北京奇虎科技有限公司 一种数据处理方法和装置
CN107145353A (zh) * 2017-05-05 2017-09-08 武汉斗鱼网络科技有限公司 软件框架及软件框架设计方法
CN107402768A (zh) * 2017-07-31 2017-11-28 四川长虹电器股份有限公司 一种可复用扩展的Android应用开发方法
CN108053336A (zh) * 2018-01-15 2018-05-18 中企动力科技股份有限公司 可定制领域服务方法及装置
CN108984161A (zh) * 2018-06-21 2018-12-11 广州视源电子科技股份有限公司 一种统一且可分类拓展的软件安装包构建方法和装置
CN109582422A (zh) * 2018-11-30 2019-04-05 广州净松软件科技有限公司 基于组件的监察系统构建方法、装置、设备和存储介质
CN109598572A (zh) * 2018-09-29 2019-04-09 阿里巴巴集团控股有限公司 服务定制方法、装置、电子设备及计算机可读存储介质
CN109710236A (zh) * 2018-12-30 2019-05-03 北京字节跳动网络技术有限公司 基于共享服务的业务开发和实现方法、装置、平台及介质
CN109976715A (zh) * 2017-12-28 2019-07-05 中移(杭州)信息技术有限公司 一种软件项目开发方法和装置
WO2019218724A1 (zh) * 2018-05-18 2019-11-21 上海旺谷计算机科技有限公司 软件模块标准化开发方法及软件系统开发方法
CN110839090A (zh) * 2019-11-14 2020-02-25 中国民航信息网络股份有限公司 一种基于动态url的产品配置方法及系统
WO2020048238A1 (zh) * 2018-09-06 2020-03-12 威胜集团有限公司 针对电能表软件的模块化设计方法
CN111381899A (zh) * 2020-02-21 2020-07-07 泰康保险集团股份有限公司 用于开发目标系统的方法和装置
CN113238731A (zh) * 2021-05-11 2021-08-10 广州以大计算机科技有限公司 一种Ebeit开发平台

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101261582A (zh) * 2008-04-29 2008-09-10 山东大学 多层协同软件开发结构
CN101320327A (zh) * 2008-07-17 2008-12-10 上海众恒信息产业有限公司 专用证件管理系统的软件架构

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101261582A (zh) * 2008-04-29 2008-09-10 山东大学 多层协同软件开发结构
CN101320327A (zh) * 2008-07-17 2008-12-10 上海众恒信息产业有限公司 专用证件管理系统的软件架构

Cited By (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102495730B (zh) * 2011-12-02 2014-07-02 曙光信息产业(北京)有限公司 一种动态可扩展的web界面的方法
CN102495730A (zh) * 2011-12-02 2012-06-13 曙光信息产业(北京)有限公司 一种动态可扩展的web界面的方法
CN102546826A (zh) * 2012-02-22 2012-07-04 浪潮电子信息产业股份有限公司 一种云海os中应用模块拆分与集成的方法
CN103324470B (zh) * 2012-03-21 2017-09-22 阿里巴巴集团控股有限公司 一种Web系统生成的方法和装置
CN103324470A (zh) * 2012-03-21 2013-09-25 阿里巴巴集团控股有限公司 一种Web系统生成的方法和装置
CN103777965B (zh) * 2014-02-24 2016-08-17 武汉大学 一种用于软件合作开发间层模型的设计方法
CN103777965A (zh) * 2014-02-24 2014-05-07 武汉大学 一种用于软件合作开发的间层模型
CN104142825A (zh) * 2014-07-08 2014-11-12 北京彩云动力教育科技有限公司 一种产品的模块化开发方法及系统
CN104243207B (zh) * 2014-09-05 2018-09-11 阿纳克斯(苏州)轨道系统有限公司 基于模块化与集成化的pis维护方法及系统
CN104243207A (zh) * 2014-09-05 2014-12-24 阿纳克斯(苏州)轨道系统有限公司 基于模块化与集成化的pis维护方法及系统
CN104765603A (zh) * 2015-03-18 2015-07-08 百度在线网络技术(北京)有限公司 应用程序构建方法及装置
CN105847026A (zh) * 2015-11-28 2016-08-10 成都广达新网科技股份有限公司 一种基于扩展点实现网管系统功能扩展的方法
CN106445786A (zh) * 2016-09-28 2017-02-22 北京奇虎科技有限公司 一种数据处理方法和装置
CN106445786B (zh) * 2016-09-28 2019-05-21 北京奇虎科技有限公司 一种数据处理方法和装置
CN107145353A (zh) * 2017-05-05 2017-09-08 武汉斗鱼网络科技有限公司 软件框架及软件框架设计方法
CN107402768A (zh) * 2017-07-31 2017-11-28 四川长虹电器股份有限公司 一种可复用扩展的Android应用开发方法
CN107402768B (zh) * 2017-07-31 2020-06-30 四川长虹电器股份有限公司 一种可复用扩展的Android应用开发方法
CN109976715A (zh) * 2017-12-28 2019-07-05 中移(杭州)信息技术有限公司 一种软件项目开发方法和装置
CN108053336A (zh) * 2018-01-15 2018-05-18 中企动力科技股份有限公司 可定制领域服务方法及装置
WO2019218724A1 (zh) * 2018-05-18 2019-11-21 上海旺谷计算机科技有限公司 软件模块标准化开发方法及软件系统开发方法
CN108984161B (zh) * 2018-06-21 2022-04-08 广州视源电子科技股份有限公司 一种统一且可分类拓展的软件安装包构建方法和装置
CN108984161A (zh) * 2018-06-21 2018-12-11 广州视源电子科技股份有限公司 一种统一且可分类拓展的软件安装包构建方法和装置
WO2020048238A1 (zh) * 2018-09-06 2020-03-12 威胜集团有限公司 针对电能表软件的模块化设计方法
CN109598572A (zh) * 2018-09-29 2019-04-09 阿里巴巴集团控股有限公司 服务定制方法、装置、电子设备及计算机可读存储介质
CN109582422A (zh) * 2018-11-30 2019-04-05 广州净松软件科技有限公司 基于组件的监察系统构建方法、装置、设备和存储介质
CN109710236A (zh) * 2018-12-30 2019-05-03 北京字节跳动网络技术有限公司 基于共享服务的业务开发和实现方法、装置、平台及介质
CN110839090A (zh) * 2019-11-14 2020-02-25 中国民航信息网络股份有限公司 一种基于动态url的产品配置方法及系统
CN110839090B (zh) * 2019-11-14 2022-04-26 中国民航信息网络股份有限公司 一种基于动态url的产品配置方法及系统
CN111381899A (zh) * 2020-02-21 2020-07-07 泰康保险集团股份有限公司 用于开发目标系统的方法和装置
CN113238731A (zh) * 2021-05-11 2021-08-10 广州以大计算机科技有限公司 一种Ebeit开发平台
CN113238731B (zh) * 2021-05-11 2024-03-22 广州以大计算机科技有限公司 一种Ebeit开发平台

Similar Documents

Publication Publication Date Title
CN102135885A (zh) 一种模块化的软件开发架构
CN102541541B (zh) 界面生成方法和装置
CN103617255B (zh) 一种用于电力信息系统的业务数据交换同步系统及方法
CN102158516B (zh) 服务组合编译方法及编译器
SG126058A1 (en) System and method for applying development patterns for component based applications
CN103500087A (zh) 一种基于maven插件和freemarker模版的代码生成方法及装置
CN101477462A (zh) 一种用于动态改变系统行为的模型驱动软件开发方法
CN102136946A (zh) 一种光网络拓扑图的绘制方法及其拓扑子系统
TW200711379A (en) Management system and method for wireless communication network and associated user interface
CN102929645B (zh) 一种内嵌Python解释器实现软件系统二次开发的方法
CN103678815A (zh) 一种机械产品协同仿真平台系统及其仿真方法
CN102314358A (zh) 一种在云平台上以soa的方式部署常规应用的方法
CN104580532A (zh) 一种跨平台应用系统
CN103646134A (zh) 一种面向服务的网络化仿真系统动态生成方法
CN105389153A (zh) 一种通用集成展现技术在多系统集成中的应用方法
CN102495730A (zh) 一种动态可扩展的web界面的方法
CN101907993A (zh) 基于SpringDM的动态模型及其在RFID中间件持久层的应用
CN103761388A (zh) 一种基于hla通用化的异构仿真系统互联方法
CN113177088B (zh) 一种材料辐照损伤多尺度模拟大数据管理系统
CN102999329B (zh) 基于可扩展标记语言映射配置的活动目录接口开发方法
CN113238731B (zh) 一种Ebeit开发平台
CN102929606A (zh) 一种基于云计算的数据挖掘系统插件模型
CN103870280A (zh) 基于flex与jsp的网页无缝结合处理方法
CN102868746A (zh) 实现移动信息化的方法
CN103473389A (zh) 一种应用于hla分布式仿真技术的通用模型

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C12 Rejection of a patent application after its publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20110727