首页 / 专利库 / 软件 / 软件 / 软件开发方法

软件开发方法

阅读:199发布:2020-05-11

专利汇可以提供软件开发方法专利检索,专利查询,专利分析的服务。并且本 发明 公开了一种 软件 开发方法。本发明一种软件开发方法,包括:S1.定义体系完整的软件结构描述语言;S2.通过 可视化 界面进行某个软件结构的设定,并转换为符合S1中语法的描述内容;S3.根据S1中语法对S2的软件结构描述内容进行智能解析;S4.根据S3中获得的完整软件场景,进行最终软件的动态构造。本发明的有益效果:1.减少重复劳动、提高工作效率,降低开发成本,明确开发分工。2.加快对客户的需求响应速度,提升软件的用户体验。,下面是软件开发方法专利的具体信息内容。

1.一种软件开发方法,其特征在于,包括:
S1.定义体系完整的软件结构描述语言;
S2.通过可视化界面进行某个软件结构的设定,并转换为符合S1中语法的描述内容;
S3.根据S1中语法对S2的软件结构描述内容进行智能解析;
S4.根据S3中获得的完整软件场景,进行最终软件的动态构造。
2.如权利要求1所述的软件开发方法,其特征在于,步骤S2具体包括
S2-1.创建软件设计过程的完整场景;
S2-2.将可视化操作轨迹和场景即时内容按S1中语法转换为软件结构描述内容;
S2-3.对软件结构最终的完整描述内容进行持久化,输出数据文件。
3.如权利要求1所述的软件开发方法,其特征在于,步骤S3具体包括:
S3-1按S1中语法对软件结构描述内容进行解析;
S3-2.按解析结果重构软件场景;
S3-3.对重构的软件场景进行动态补充。
4.如权利要求1所述的软件开发方法,其特征在于,步骤S4具体包括:
S4-1.将补充完整的最终软件场景和软件支撑框架进行适配;
S4-2.让软件动态运行于所有可支持适配的软件支撑框架。
5.如权利要求1所述的软件开发方法,其特征在于,步骤S1通过XML(可扩展标记语言)来进行软件结构描述语言的语法定义和内容记录;
包括对表格、表列、视图等数据内容的定义。
6.如权利要求1所述的软件开发方法,其特征在于,步骤S1包括模、服务端、客户端、静态数据字典、动态数据字典和白名单的定义。
7.如权利要求1所述的软件开发方法,其特征在于,步骤S1包括各种控件、视点、视点事件、视点过程控制、面板、布局、桌面和画板的定义。
8.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现权利要求1到7任一项所述方法的步骤。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现权利要求1到7任一项所述方法的步骤。
10.一种处理器,其特征在于,所述处理器用于运行程序,其中,所述程序运行时执行权利要求1到7任一项所述的方法。

说明书全文

软件开发方法

技术领域

[0001] 本发明涉及软件开发领域,具体涉及一种软件开发方法。

背景技术

[0002] 开发平台是软件公司用来协助研发人员进行软件开发的平台,是一条进行软件生产的“流线”。
[0003] 随着信息化的普及和发展,国内企业在进行自身的信息化建设时,对其所用软件的业务需求的划分越来越细,而企业在自身发展和壮大的过程中,其所用软件的业务需求的范围也越来越大,业务需求的变化也越来越频繁,另一方面,企业对为其提供软件开发服务的软件公司的响应速度要求也更高,对软件用户体验的要求也更高,对软件终端类型的需求也更多(如电脑、手机、平板和电视等),对智能硬件设备集成的需求也更多(智能化生产、仓储和家居硬件设备等),而随着技术面的扩大和软件代码体量的增加,软件代码内部关系也变得更加错综复杂,使得研发人员的工作压更大,软件公司的生存更加困难。
[0004] 开发平台可以协助软件公司研发人员进行新软件的开发和旧软件的维护,缓解研发人员的工作压力,提高软件开发、维护效率,加快对企业客户的响应速度,让软件公司能协助企业客户更快的进行信息化建设和改造,同时让软件公司有更多的时间和精力进行用户体验的提升、终端类型和智能硬件设备集成的扩展,加快软件技术方面的升级速度。
[0005] 传统技术存在以下技术问题:
[0006] 不同软件公司的开发平台有不同的应用方向、协助程度和运作方式。
[0007] 在现有的一些开发平台中,大部分都是将已有软件拆分成不同的独立功能模,通过开发平台进行独立功能模块的拖拽组合及小幅调整,来达到协助新软件开发的目的,应用方向较为狭窄,协助程度较小,运作方式较为传统。
[0008] 因此,即便目前的开发平台已经相对较多,在一定程度上也能解决一部分的开发问题,却仍然没有从根本上解决软件公司存在的一些问题,使得软件公司和开发人员仍无法将精力专注在软件技术方面的升级上。
[0009] 传统开发平台采用的方式虽然节省了一定的时间,但最终产生的仍然是各种各样的软件代码,开发技术和业务需求仍通过软件代码的形式结合在一起,因为协助程度较低,研发人员仍需要针对具体业务需求另行编写大量软件代码。
[0010] 所以使用传统开发平台的软件公司仍存在很多固有问题,大量的人员参与和协作,较大的沟通成本和沟通差异,较大的代码设计差异,手工编写代码时各种因粗心而导致的异常,代码难以维护和更新迭代

发明内容

[0011] 本发明要解决的技术问题是提供一种软件开发方法,创造一种软件结构描述语言,用于在开发技术和业务需求之间建立中间层支撑完全自定义;设计一些可视化的操作界面,用于在不依赖开发技术的情况下完整描述某个软件的结构;设计智能解析算法,智能的根据软件结构描述进行反向解析,获得某个软件的结构;设计动态构造过程,对开发技术进行适配,获得的某个软件结构动态构造该软件。
[0012] 为了解决上述技术问题,本发明提供了一种软件开发方法,包括:
[0013] S1.定义体系完整的软件结构描述语言;
[0014] S2.通过可视化界面进行某个软件结构的设定,并转换为符合S1中语法的描述内容;
[0015] S3.根据S1中语法对S2的软件结构描述内容进行智能解析;
[0016] S4.根据S3中获得的完整软件场景,进行最终软件的动态构造。
[0017] 在其中一个实施例中,步骤S2具体包括
[0018] S2-1.创建软件设计过程的完整场景;
[0019] S2-2.将可视化操作轨迹和场景即时内容按S1中语法转换为软件结构描述内容;
[0020] S2-3.对软件结构最终的完整描述内容进行持久化,输出数据文件。
[0021] 在其中一个实施例中,步骤S3具体包括:
[0022] S3-1按S1中语法对软件结构描述内容进行解析;
[0023] S3-2.按解析结果重构软件场景;
[0024] S3-3.对重构的软件场景进行动态补充。
[0025] 在其中一个实施例中,步骤S4具体包括:
[0026] S4-1.将补充完整的最终软件场景和软件支撑框架进行适配;
[0027] S4-2.让软件动态运行于所有可支持适配的软件支撑框架。
[0028] 在其中一个实施例中,步骤S1通过XML(可扩展标记语言)来进行软件结构描述语言的语法定义和内容记录;
[0029] 包括对表格、表列、视图等数据内容的定义。
[0030] 在其中一个实施例中,步骤S1包括模块、服务端、客户端、静态数据字典、动态数据字典和白名单的定义。
[0031] 在其中一个实施例中,步骤S1包括各种控件、视点、视点事件、视点过程控制、面板、布局、桌面和画板的定义。
[0032] 一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现任一项所述方法的步骤。
[0033] 一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现任一项所述方法的步骤。
[0034] 一种处理器,所述处理器用于运行程序,其中,所述程序运行时执行任一项所述的方法。
[0035] 本发明的有益效果:
[0036] 1.减少重复劳动、提高工作效率,降低开发成本,明确开发分工。
[0037] 2.加快对客户的需求响应速度,提升软件的用户体验。
[0038] 3.重心移至高新技术的研究,支持更多的终端类型以及智能化硬件设备的应用。
[0039] 4.需求个性化、流程标准化、管理规范化、操作简易化、开发快速化、系统稳定化。附图说明
[0040] 图1是本发明软件开发方法中未使用平台的示意图。
[0041] 图2是本发明软件开发方法中传统平台的示意图。
[0042] 图3是本发明软件开发方法的示意图。
[0043] 图4是本发明软件开发方法中的视点的嵌套示意图。
[0044] 图5是本发明软件开发方法中的视点布局定义示意图。

具体实施方式

[0045] 下面结合附图和具体实施例对本发明作进一步说明,以使本领域的技术人员可以更好地理解本发明并能予以实施,但所举实施例不作为对本发明的限定。
[0046] 想要很好的解决这些问题,平台就需要有更好的改进方向,而完全自定义、可视化开发、智能解析和动态构造是非常具有挑战性的方向,因为它需要能从零开始,在无软件代码的情况下,通过可视化的方式快速的、完整的开发出一个完全自定义的并能被智能解析、动态构造和运行的软件。
[0047] 通过完全自定义和可视化开发可以迅速建立一个或多个软件的结构,由于摆脱了开发技术的束缚,研发人员能更专注于业务流程的设计和完善。
[0048] 通过智能解析和动态构造能将建立好的一个或多个软件的结构描述,解析和构造成一个或多个完整的软件,智能和动态的进行大部分重复性、相似性的内容处理,大幅减少了代码开发内容,降低了出错率,将研发人员的精力从大量重复劳动中解放出来,投入到智能解析和动态构造过程本身的技术细节中去。
[0049] 这种新的改进方向将开发平台从传统的“授之以鱼”的模式转变为新的“授之以渔”的模式。
[0050] 综上所述,现有的大部分开发平台的缺点主要有:
[0051] 1.无法更灵活的进行开发协助。
[0052] 2.无法更大范围、更快速、更准确的进行开发协助。
[0053] 3.无法从根本上解决软件公司存在的大量问题。
[0054] 本申请软件开发方法的具体流程为:
[0055] S1.定义体系完整的软件结构描述语言;
[0056] S2.通过可视化界面进行某个软件结构的设定,并转换为符合S1中语法的描述内容;
[0057] S2-1.创建软件设计过程的完整场景
[0058] S2-2.将可视化操作轨迹和场景即时内容按S1中语法转换为软件结构描述内容[0059] S2-3.对软件结构最终的完整描述内容进行持久化,输出数据文件[0060] S3.根据S1中语法对S2的软件结构描述内容进行智能解析;
[0061] S3-1.按S1中语法对软件结构描述内容进行解析
[0062] S3-2.按解析结果重构软件场景
[0063] S3-3.对重构的软件场景进行动态补充
[0064] S4.根据S3中获得的完整软件场景,进行最终软件的动态构造。
[0065] S4-1.将补充完整的最终软件场景和软件支撑框架进行适配
[0066] S4-2.让软件动态运行于所有可支持适配的软件支撑框架。
[0067] 步骤S1主要内容如下:
[0068] 设计目标:建立一套在人和人之间、人和开发平台之间,开发技术和业务需求之间互相沟通交流的新语言体系;
[0069] 技术效果:通过简洁的语法来保证逻辑的清晰,使其能满足对大多数软件的描述,把开发技术和业务需求分割开来。
[0070] 详细内容:
[0071] 通过XML(可扩展标记语言)来进行软件结构描述语言的语法定义和内容记录。
[0072] 包括对表格、表列、视图等数据内容的定义。
[0073] 包括模块、服务端、客户端、静态数据字典、动态数据字典和白名单的定义。
[0074] 包括各种控件、视点、视点事件、视点过程控制、面板、布局、桌面和画板的定义。
[0075] 其中比较重要的一个概念是视点,它是一个逻辑上的定义,一方面表示完整的具备布局的视觉区域,另一方面又是简单的点,作为上级视点的一部分,通过这种结构嵌套来完整展现任意复杂度的界面。
[0076] 图4视点的嵌套
[0077] 图4展现了一个三级视点嵌套的示例。
[0078] 布局,通过横向和纵向的数值定义来进行某视点区域的划分,大于1代表固定长度,小于等于1代表按比例分割除固定长度以外的剩余长度,在区域进行拉伸时,固定长度保持不变,非固定长度按比例拉伸。
[0079] 图5视点布局定义
[0080] 图5进行了图4中视点1的布局定义,定义了一个被划分为9格的区域,其中横向三个数值[0.5,80,0.5],表示中间80是定长,左右等分剩余长度,在界面被拉伸时,左右5:5等比拉伸,中间不变;纵向三个数值[40,0.2,0.8],表示上面40是定长,中下按2:8分割剩余长度,在界面被拉伸时,中下按2:8拉伸,上面不变。
[0081] 再通过[起始格x,起始格y,横格数w,纵格数h]的方式定义下级视点占用区域,w和h可省略代表一格,如[0,0]和[1,1,1,2]分别定义了图中两块被标记为灰色的区域,其中[1,1,1,2]即为视点2在视点1中所占的区域定义。
[0082] 视点可定义无限复杂度的任何界面,但软件界面无数,全部独立自定义是没有必要的,界面和界面之间有很多是相似的,所以可以参考面向对象语言,给界面进行分类,提取界面相似属性,建立父界面和子界面之间的继承关系,利用覆盖和重载等概念,提高定义的重用性。
[0083] 定义构后即载,在载入页面架构之后再异步载入下级区域。
[0084] 针对视点定义和其匹配的事件和过程控制,这里的事件不是通俗意义上的鼠标键盘事件,而是业务事件,将软件所有流转过程进行梳理和分类,定义通用过程类。
[0085] 步骤S1中内容主要是语法,是对后续步骤的指导,其中视点可以指导后续步骤进行界面的动态展现,视点过程控制可以指导后续步骤进行通用过程的动态发起和控制。
[0086] 步骤S2-1开发平台从另一个度来说也是软件,它是一个特殊的、软件公司内部使用的、更深层次的、用来开发普通软件的软件。
[0087] 通过载入和S1中语法匹配的各种可视化操作界面来构建一个软件设计的场景,用于辅助研发人员进行软件结构的设计和描述。
[0088] 步骤S2-2.开发人员针对软件具体的业务需求,分析设计后,在场景中进行各种相关的设定,形成无数和S1语法匹配的数据对象,通过算法将数据对象转换为S1语法下的软件结构描述内容。
[0089] 转换过程:
[0090] 获得对象所有属性名值对的队列
[0091] 按属性名值对队列循环
[0092] 通过语法映射模型对属性名和属性类型进行语法匹配
[0093] 按语法创建和属性名、属性类型对应的XML节点
[0094] 步骤S3-1.前面的步骤都是软件的设计过程,从这里开始是软件的实现过程,本步骤需要首先对S2中产生的软件结构描述内容进行载入,再按S1中语法将其解析为无数的数据对象。
[0095] 解析过程
[0096] 循环递归获得所有XML节点
[0097] 通过语法映射模型对节点进行语法匹配
[0098] 按语法寻找或创建和XML节点对应的属性名、属性类型。
[0099] 将对应的值赋予该属性名
[0100] 步骤S3-2.本步骤将根据S3-1解析的结果进行软件设计场景的重构,将数据对象按更大的结构组织起来并缓存。
[0101] 步骤S3-3.通过S2-2的正向过程和S3-1反向过程,会有一定程度上的场景缺失(主要是默认内容),这部分内容的省略主要是为了让S2-2产生的内容更为简洁,更加易于保存和解析,本步骤将对解析后重构的软件场景进行动态补充。
[0102] 补充过程
[0103] 整数位、小数位
[0104] 最小值、最大值
[0105] 日期格式
[0106] 最大位数
[0107] 是否非空
[0108] 步骤S4-1.首先将补充完整的最终软件场景和本公司目前使用的软件支撑框架进行适配,让软件完成最终的实现过程。
[0109] 适配过程
[0110] MVC:将软件场景的数据结构作为Model模型,创建Control控制部分,View视图部分分层,创建基本部分,扩展部分进行支撑框架的适配。
[0111] 步骤S4-2.开发平台预计将作为产品用于对其他软件公司进行技术支持,软件公司都有自己的内部支撑框架,所以会对其进行软件支撑框架的适配,让软件可动态运行于其内部软件支撑框架上。
[0112] 以上所述实施例仅是为充分说明本发明而所举的较佳的实施例,本发明的保护范围不限于此。本技术领域的技术人员在本发明基础上所作的等同替代或变换,均在本发明的保护范围之内。本发明的保护范围以权利要求书为准。
高效检索全球专利

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

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

申请试用

分析报告

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

申请试用

QQ群二维码
意见反馈