首页 / 专利库 / 软件 / 软件 / 一种软件开发平台及方法

一种软件开发平台及方法

阅读:134发布:2021-06-08

专利汇可以提供一种软件开发平台及方法专利检索,专利查询,专利分析的服务。并且本 申请 公开了一种 软件 开发平台及方法,该平台包括: 基础 模 块 和扩展模块的功能模块集;基础模块包括 硬件 模块、系统适配模块、文件模块、内存模块、资源模块、 信号 处理模块、字符处理模块、模块管理模块、基础日志模块、错误管理模块、配置模块、线程管理和 人机交互 模块,基础模块中每个模块均处于有效状态;扩展模块包括单元测试模块、日志调试及 跟踪 模块、动态监控模块,动态监控模块包括内存监控模块、线程监控模块、文件监控模块、缓存监控模块、系统监控模块和资源监控模块,扩展模块中每个模块均为有效性可调的模块;软件开发管理器,用于根据不同的开发模式,对扩展模块中不同的模块进行相应的有效性调节,以适应相应的开发模式的需要。,下面是一种软件开发平台及方法专利的具体信息内容。

1.一种软件开发平台,其特征在于,包括功能模集以及软件开发管理器;所述功能模块集包括基础模块和扩展模块;其中,
所述基础模块包括硬件模块、系统适配模块、文件模块、内存模块、资源模块、信号处理模块、字符处理模块、模块管理模块、基础日志模块、错误管理模块、配置模块、线程管理和人机交互模块,并且,所述基础模块中的每个模块均为处于有效状态的模块;
所述扩展模块包括单元测试模块、日志调试及跟踪模块、动态监控模块,所述动态监控模块包括内存监控模块、线程监控模块、文件监控模块、缓存监控模块、系统监控模块和资源监控模块,并且,所述扩展模块中的每个模块均为有效性可调的模块;
所述软件开发管理器,用于根据不同的开发模式,对所述扩展模块中不同的模块进行相应的有效性调节,以适应相应的开发模式的需要;其中,不同的开发模式对应于不同的软件开发阶段。
2.根据权利要求1所述的软件开发平台,其特征在于,若当前开发模式为开发者模式,则:
所述软件开发管理器,具体用于将所述单元测试模块、所述日志调试及跟踪模块和所述动态监控模块的状态均设置为有效状态,以适应开发者模式的需要。
3.根据权利要求1所述的软件开发平台,其特征在于,若当前开发模式为测试模式,则:
所述软件开发管理器,具体用于将所述日志调试及跟踪模块和所述动态监控模块的状态均设置为有效状态,以适应测试模式的需要。
4.根据权利要求1所述的软件开发平台,其特征在于,若当前开发模式为交付模式,则:
所述软件开发管理器,具体用于将所述动态监控模块的状态设置为有效状态,以适应交付模式的需要。
5.根据权利要求1至4任一项所述的软件开发平台,其特征在于,还包括:
平台初始化模块,用于在进行与任一种开发模式对应的软件开发过程之前,对所述软件开发平台以及所述软件开发平台的框架中的数据和业务进行初始化处理;
应用层初始化模块,用于当所述平台初始化模块结束相应的初始化处理之后,通过调用应用层接口来对应用层数据和业务进行初始化处理。
6.根据权利要求5所述的软件开发平台,其特征在于,还包括:
第一数据业务处理模块,用于当与任一种开发模式对应的软件开发过程结束之后,对应用程序数据进行清理并停止相应的业务;
第二数据业务处理模块,用于当所述第一数据业务处理模块的处理流程结束之后,对所述软件开发平台以及所述软件开发平台的框架的数据进行清理,并停止相应的业务。
7.根据权利要求6所述的软件开发平台,其特征在于,还包括:
进程退出模块,用于在满足预设强制退出条件的情况下,强制退出相应的进程。
8.一种软件开发方法,其特征在于,包括:
根据当前的软件开发阶段,确定当前软件的开发模式,得到目标开发模式;
利用如权利要求1至7任一项所述的软件开发平台,展开与所述目标开发模式对应的软件开发过程。
9.根据权利要求8所述的软件开发方法,其特征在于,
所述目标开发模式为开发者模式或测试模式或交付模式。

说明书全文

一种软件开发平台及方法

技术领域

[0001] 本发明涉及软件开发技术领域,特别涉及一种软件开发平台及方法。

背景技术

[0002] 目前,为了提升软件开发效率的通常做法是使用开发平台;为了提升软件开发质量的通常做法是使用单元测试工具;而为了直观反应当前软件的运行状态的通常做法是为用户提供动态的,持续的监控数据,比如一些内存监控工具等。就目前而言,以上所描述的功能大部分是作为第三方库或代码而独立存在的,特别是单元测试工具和一些监控工具,基本作为外部代码或者工具存在于软件开发过程中,如gtest作为一款单元测试工具,valgrind作为一款内存泄漏检测工具就是独立存在的。同时,正是由于独立存在的缘故,使得在进行软件开发活动的时候,外部工具往往只能提供定性的数据分析支持,如用了多少内存,用了多少文件句柄,对定量数据的分析支持就比较困难,如内存详细使用情况,文件句柄的详细使用情况,因此进程中有必要提供内部的监控组件,为用户提供详细的运行信息支持,使其能够通过数据分析,及早发现并规避问题,同时基于此,实现“运行即检测”的目标,即每一次对程序的运行都是一次对软件功能的检测,通过对监控数据的分析,逐渐修改完善代码,直到满足最终用户的需求。并且,一些外部监控工具的使用增加了操作以及过程的复杂度,同时也增加了学习成本。容易使程序员产生抵触情绪,不利于软件开发各个阶段活动的开展。例如,gtest作为一款比较常用的单元测试工具,其测试的单位是单个文件/类,对于整体的、复杂业务场景的测试和跨线程的测试时,其构造测试用例或场景繁琐;使用上一般需要切换工程,造成测试过程繁琐;因此容易使程序员抵触单元测试活动,不利于持续集成活动的开展。
[0003] 综上所述可以看出,现有软件开发平台的用户体验较差,不利于软件的顺利持续开发。

发明内容

[0004] 有鉴于此,本发明的目的在于提供一种软件开发平台及方法,能够提升软件开发平台的用户体验,提高软件开发速度和软件质量,并为软件开发过程提供一站式服务,有利于软件的顺利持续开发和运行时的动态分析定位。其具体方案如下:
[0005] 一种软件开发平台,包括功能模集以及软件开发管理器;所述功能模块集包括基础模块和扩展模块;其中,
[0006] 所述基础模块包括硬件模块、系统适配模块、文件模块、内存模块、资源模块、信号处理模块、字符处理模块、模块管理模块、基础日志模块、错误管理模块、配置模块、线程管理和人机交互模块,并且,所述基础模块中的每个模块均为处于有效状态的模块;
[0007] 所述扩展模块包括单元测试模块、日志调试及跟踪模块、动态监控模块,所述动态监控模块包括内存监控模块、线程监控模块、文件监控模块、缓存监控模块、系统监控模块和资源监控模块,并且,所述扩展模块中的每个模块均为有效性可调的模块;
[0008] 所述软件开发管理器,用于根据不同的开发模式,对所述扩展模块中不同的模块进行相应的有效性调节,以适应相应的开发模式的需要;其中,不同的开发模式对应于不同的软件开发阶段。
[0009] 可选的,若当前开发模式为开发者模式,则:
[0010] 所述软件开发管理器,具体用于将所述单元测试模块、所述日志调试及跟踪模块和所述动态监控模块的状态均设置为有效状态,以适应开发者模式的需要。
[0011] 可选的,若当前开发模式为测试模式,则:
[0012] 所述软件开发管理器,具体用于将所述日志调试及跟踪模块和所述动态监控模块的状态均设置为有效状态,以适应测试模式的需要。
[0013] 可选的,若当前开发模式为交付模式,则:
[0014] 所述软件开发管理器,具体用于将所述动态监控模块的状态设置为有效状态,以适应交付模式的需要。
[0015] 可选的,所述软件开发平台,还包括:
[0016] 平台初始化模块,用于在进行与任一种开发模式对应的软件开发过程之前,对所述软件开发平台以及所述软件开发平台的框架中的数据和业务进行初始化处理;
[0017] 应用层初始化模块,用于当所述平台初始化模块结束相应的初始化处理之后,通过调用应用层接口来对应用层数据和业务进行初始化处理。
[0018] 可选的,所述软件开发平台,还包括:
[0019] 第一数据业务处理模块,用于当与任一种开发模式对应的软件开发过程结束之后,对应用程序数据进行清理并停止相应的业务;
[0020] 第二数据业务处理模块,用于当所述第一数据业务处理模块的处理流程结束之后,对所述软件开发平台以及所述软件开发平台的框架的数据进行清理,并停止相应的业务。
[0021] 可选的,所述软件开发平台,还包括:
[0022] 进程退出模块,用于在满足预设强制退出条件的情况下,强制退出相应的进程。
[0023] 本发明还相应公开了一种软件开发方法,包括:
[0024] 根据当前的软件开发阶段,确定当前软件的开发模式,得到目标开发模式;
[0025] 利用前述公开的软件开发平台,展开与所述目标开发模式对应的软件开发过程。
[0026] 可选的,所述目标开发模式为开发者模式或测试模式或交付模式。
[0027] 可见,本发明中的软件开发平台上集成了功能模块集以及软件开发管理器;功能模块集包括基础模块和扩展模块;其中,基础模块包括硬件模块、系统适配模块、文件模块、内存模块、资源模块、信号处理模块、字符处理模块、模块管理模块、基础日志模块、错误管理模块、配置模块、线程管理和人机交互模块,并且,基础模块中的每个模块均为处于有效状态的模块;扩展模块包括单元测试模块、日志调试及跟踪模块、动态监控模块,动态监控模块包括内存监控模块、线程监控模块、文件监控模块、缓存监控模块、系统监控模块和资源监控模块,并且,扩展模块中的每个模块均为有效性可调的模块;软件开发管理器,用于根据不同的开发模式,对扩展模块中不同的模块进行相应的有效性调节,以适应相应的开发模式的需要。由此可见,本发明中的软件开发平台上集成了诸多功能单元,能够在最大程度上满足不同用户的软件开发需求,应用范围非常广,其应用程序基于开发平台基础上进行开发,是一种开发方式的改进和优化,能够加快软件开发速度,提升软件开发质量;并且,由于内嵌了单元测试模块,使得软件开发平台更适用于跨模块、跨线程的复杂业务场景的测试和验证,从源头上保证了软件的质量,其是对传统的单元测试方法和过程的优化;其次,通过嵌入动态监控模块,能够让用户掌握软件的实时健康状态,运行过程中,实现软件的动态分析定位;再者,在三种开发模型基础上实现的一站式软件开发服务,是一种软件开发过程的优化和改进;另外,本发明还提供了软件开发管理器,能够根据不同的开发模式对扩展模块中的不同模块进行相应的有效性调节,使得软件开发平台能够满足各个软件开发阶段的开发需求。附图说明
[0028] 为了更清楚地说明本发明实施例现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
[0029] 图1为本发明实施例公开的一种软件开发平台结构示意图;
[0030] 图2为本发明实施例公开的一种软件开发方法流程图

具体实施方式

[0031] 下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0032] 本发明实施例公开了一种软件开发平台,参见图1所示,该软件开发平台包括功能模块集1以及软件开发管理器2;功能模块集1包括基础模块11和扩展模块12;其中,[0033] 基础模块11包括硬件模块、系统适配模块、文件模块、内存模块、资源模块、信号处理模块、字符处理模块、模块管理模块、基础日志模块、错误管理模块、配置模块、线程管理和人机交互模块,并且,基础模块11中的每个模块均为处于有效状态的模块。
[0034] 需要说明的是,本实施例中,硬件模块具体用于适配不同的硬件,获取硬件特性。系统适配模块具体用于适配不同的操作系统差异,使其代码具有平台特性。文件模块具体用于实现不同类型文件的磁盘写入功能。内存管理具体用于负责内存的分配和释放管理。
资源模块具体用于实现资源的分配和释放管理。信号处理模块具体用于系统常见的信号处理。字符处理模块具体用于实现字符串的常规操作。模块管理模块具体用于实现模块的启动和退出管理。基础日志模块具体用于实现程序的日志记录功能。错误管理模块具体用于实现与错误相关的错误码管理。配置模块具体用于实现配置文件的读取和参数配置操作。
线程管理模块具体用于实现线程的创建和退出,性能分析等功能。人机交互模块具体用于实现外部命令的输入,解析,实现与内部实现的互动。
[0035] 另外,本实施例中,基础模块11中的每个模块均为处于有效状态的模块。需要指出的是,基础模块11中的每个模块是一直处于有效状态的模块。
[0036] 扩展模块12包括单元测试模块、日志调试及跟踪模块、动态监控模块,动态监控模块包括内存监控模块、线程监控模块、文件监控模块、缓存监控模块、系统监控模块和资源监控模块,并且,扩展模块12中的每个模块均为有效性可调的模块。
[0037] 需要说明的是,本实施例中,单元测试模块具体用于实现代码的单元测试功能。日志调试及跟踪模块具体用于实现日志信息的详细输出。文件监控模块具体用于监控该进程文件的详细信息。内存监控模块具体用于监控该进程内存的详细信息。线程监控模块具体用于监控该进程线程的详细信息。缓存监控模块具体用于监控该进程缓存的详细信息。资源监控模块具体用于监控该进程资源的详细信息。系统监控模块具体用于监控该进程的运行详细信息。
[0038] 软件开发管理器2,用于根据不同的开发模式,对扩展模块12中不同的模块进行相应的有效性调节,以适应相应的开发模式的需要;其中,不同的开发模式对应于不同的软件开发阶段。
[0039] 例如,在实际的软件开发过程中,通常会存在三种软件开发阶段,分别为代码开发阶段、测试阶段和交付阶段,这三种软件开发阶段分别对应于三种不同软件开发场景,并且与此对应的,开发模式分别为开发者模式、测试模式和交付模式。并且,需要指出的是,不同的开发阶段都有不同的输出产物,即每个阶段都会生成相应的目标软件,只是因为开发模式不同,其软件的特性不尽相同。
[0040] 可见,本发明实施例中的软件开发平台上集成了功能模块集以及软件开发管理器;功能模块集包括基础模块和扩展模块;其中,基础模块包括硬件模块、系统适配模块、文件模块、内存模块、资源模块、信号处理模块、字符处理模块、模块管理模块、基础日志模块、错误管理模块、配置模块、线程管理和人机交互模块,并且,基础模块中的每个模块均为处于有效状态的模块;扩展模块包括单元测试模块、日志调试及跟踪模块、动态监控模块,动态监控模块包括内存监控模块、线程监控模块、文件监控模块、缓存监控模块、系统监控模块和资源监控模块,并且,扩展模块中的每个模块均为有效性可调的模块;软件开发管理器,用于根据不同的开发模式,对扩展模块中不同的模块进行相应的有效性调节,以适应相应的开发模式的需要。由此本发明实施例中的软件开发平台上集成了诸多功能单元,能够在最大程度上满足不同用户的软件开发需求,应用范围非常广,其应用程序基于开发平台基础上进行开发,是一种开发方式的改进和优化,能够加快软件开发速度,提升软件开发质量;并且,由于内嵌了单元测试模块,使得软件开发平台更适用于跨模块、跨线程的复杂业务场景的测试和验证,从源头上保证了软件的质量,其是对传统的单元测试方法和过程的优化;其次,通过嵌入动态监控模块,能够让用户掌握软件的实时健康状态,运行过程中,实现软件的动态分析定位;再者,在三种开发模型基础上实现的一站式软件开发服务,是一种软件开发过程的优化和改进;另外,本发明实施例还提供了软件开发管理器,能够根据不同的开发模式对扩展模块中的不同模块进行相应的有效性调节,使得软件开发平台能够满足各个软件开发阶段的开发需求。
[0041] 本发明实施例公开了一种具体的软件开发平台,相对于上一实施例,本实施例对技术方案作了进一步的说明和优化。具体的:
[0042] 在一种具体实施例方式中,若当前开发模式为开发者模式,则:
[0043] 软件开发管理器,具体用于将单元测试模块、日志调试及跟踪模块和动态监控模块的状态均设置为有效状态,以适应开发者模式的需要。
[0044] 在另一种具体实施例方式中,若当前开发模式为测试模式,则:
[0045] 软件开发管理器,具体用于将日志调试及跟踪模块和动态监控模块的状态均设置为有效状态,以适应测试模式的需要。
[0046] 在又一种具体实施例方式中,若当前开发模式为交付模式,则:
[0047] 软件开发管理器,具体用于将动态监控模块的状态设置为有效状态,以适应交付模式的需要。
[0048] 进一步的,为了确保软件开发平台的性能流畅性,避免大量的数据垃圾对平台造成的不良影响,本实施例中的软件开发平台,还可以包括第一数据业务处理模块和第二数据业务处理模块;其中,
[0049] 第一数据业务处理模块,用于当与任一种开发模式对应的软件开发过程结束之后,对应用程序数据进行清理并停止相应的业务;
[0050] 第二数据业务处理模块,用于当第一数据业务处理模块的处理流程结束之后,对软件开发平台以及软件开发平台的框架的数据进行清理,并停止相应的业务。
[0051] 另外,本实施例中,软件开发平台,还可以进一步包括:
[0052] 进程退出模块,用于在满足预设强制退出条件的情况下,强制退出相应的进程。
[0053] 其中,上述进程退出模块具体可以在退出时间大于预设时间阈值或者强制退出有效的情况下,选择强制退出相应的进程。
[0054] 进一步的,本实施例中的软件开发平台,还可以包括平台初始化模块和应用层初始化模块;其中,
[0055] 平台初始化模块,用于在进行与任一种开发模式对应的软件开发过程之前,对软件开发平台以及软件开发平台的框架中的数据和业务进行初始化处理;
[0056] 应用层初始化模块,用于当平台初始化模块结束相应的初始化处理之后,通过调用应用层接口来对应用层数据和业务进行初始化处理。
[0057] 相应的,本发明实施例还公开了一种软件开发方法,参见图2所示,该方法包括:
[0058] 步骤S11:根据当前的软件开发阶段,确定当前软件的开发模式,得到目标开发模式。
[0059] 其中,上述目标开发模式具体可以为开发者模式或测试模式或交付模式。
[0060] 步骤S12:利用前述公开的软件开发平台,展开与目标开发模式对应的软件开发过程。
[0061] 关于上述软件开发平台的具体构造可以参考前述实施例中公开的相应内容,在此不再进行赘述。
[0062] 最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0063] 以上对本发明所提供的一种软件开发平台及方法进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈