CN111208976B - 一种软件系统架构自动生成的方法 - Google Patents

一种软件系统架构自动生成的方法 Download PDF

Info

Publication number
CN111208976B
CN111208976B CN201911381052.7A CN201911381052A CN111208976B CN 111208976 B CN111208976 B CN 111208976B CN 201911381052 A CN201911381052 A CN 201911381052A CN 111208976 B CN111208976 B CN 111208976B
Authority
CN
China
Prior art keywords
page
codes
pages
software
elements
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.)
Active
Application number
CN201911381052.7A
Other languages
English (en)
Other versions
CN111208976A (zh
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.)
Guangxi Park Network Technology Co ltd
Guangxi University of Science and Technology
Original Assignee
Guangxi Park Network Technology Co ltd
Guangxi University of Science and Technology
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 Guangxi Park Network Technology Co ltd, Guangxi University of Science and Technology filed Critical Guangxi Park Network Technology Co ltd
Priority to CN201911381052.7A priority Critical patent/CN111208976B/zh
Publication of CN111208976A publication Critical patent/CN111208976A/zh
Application granted granted Critical
Publication of CN111208976B publication Critical patent/CN111208976B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/20Software design
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本发明公开了一种软件系统架构自动生成的方法,属于计算机领域,方法包括收集汇总并分类软件构成资料,图文描述架构组成元素和元素之间的关联,汇总元素,对元素根据权限进行分类,对分类的元素自动添加基本功能和人工添加特定功能,根据元素分类层次配置页面,页面汇总,根据架构组成把页面进行组合,根据功能需求对每个页面添加功能控件,并根据元素关联配置功能控件指向,加载页面和控件布局,同时解析页面及控件代码,根据元素分类层次与功能匹配。根据权限配置不同用户的权限页面和控制指向。汇总软件开发所需的一些资料和代码后,根据用户层次和用户关联,生成相应的页面和调用相应的操作功能代码,快速的完成软件系统框架的自动布局。

Description

一种软件系统架构自动生成的方法
技术领域
本发明涉及计算机领域,尤其涉及一种软件系统架构自动生成的方法。
背景技术
现有技术公开了用于根据存储在知识库中的短语所表达的需求来自动生成软件设计文档的设备,这些设备可以基于这些需求对“类”进行建模,在面向对象编程的背景下,这些“类”随后被可视化为UML图。现有技术还公开了用于形式化自然语言的系统和方法,使得所得语言可以由计算机处理。
现有的软件系统均是从需求分析,然后由程序员进行编写代码和系统的页面布局等,一般的项目需要的时间较长,同时需要花费大量的人力进行完成整个项目,开发成本较高,降低了企业的利润等。随着计算机技术的进步,AI和大数据发展,计算机慢慢取代了人工,为了减少软件系统项目的开发周期和减少开发成本,需要设计一种能够自动生成软件系统架构的方法,使得减短开发周期和减低开发成本等。
发明内容
本发明的目的在于提供一种软件系统架构自动生成的方法,解决现有人工开发软件系统项目周期长,开发成本高的技术问题。
一种软件系统架构自动生成的方法,所述方法包括如下步骤:
步骤1:收集汇总并分类软件构成资料;
步骤2:图文描述架构组成元素和元素之间的关联;
步骤3:汇总元素,对元素根据权限进行分类,对分类的元素自动添加基本功能和人工添加特定功能;
步骤4:根据元素分类层次配置页面,页面汇总,根据架构组成把页面进行组合;
步骤5:根据功能需求对每个页面添加功能控件,并根据元素关联配置功能控件指向;
步骤6:加载页面和控件布局,同时解析页面及控件代码;
步骤7:根据元素分类层次与功能匹配,分配元素层次用户权限;
步骤8:根据权限配置不同用户的权限页面和控制指向,生成系统框架。
本发明中,所述步骤1中,软件构成资料包括软件系统页面、页面脚本代码、页面效果封装代码、控件、控件代码和动作关联代码库,把所有的软件系统页进行汇总,然后根据页面在系统中的层次关系进行分类,每个软件系统页面均会指向一个固定的页面脚本代码,所有的页面效果封装代码均会提供API接口供页面脚本代码直接调用,每个控件与固定控件代码构成映射,调用控件默认直接调用映射的控件代码,动作关联代码库用于供软件系统执行功能直接调用,完成系统功能操作。
本发明中,所述动作关联代码库包括逻辑代码、操作代码、函数功能代码和界面元素代码,所述逻辑代码为业务规则代码,包括软件页面的中间层调用代码、数据操作指令代码和界面锁定代码,界面锁定代码即为权限展现代码,根据用户权限展示不同的页面或者控件。
本发明中,所述步骤2中的具体过程为,根据软件的使用用户设定为架构组成元素,即是该软件系统的使用的每个用户为元素,把用户之间的关联关系列出来即为元素与元素之间的关联,即是软件系统运行时需要跳转的页面或者跳转页面相应的功能指向或者页面展示指向。
本发明中,所述步骤3的具体过程为:把所有的元素进行汇总,然后根据使用软件系统的权限进行分类,即为软件系统使用用户的分级,然后根据每个层次的用户添加基本的软件功能,用户查看基础功能后,进行人工添加其它需要的特定功能。
本发明中,所述步骤4的具体过程为:解析每个元素在使用系统时所要涉及的页面,然后把所有元素所涉及的页面进行汇总,然后把相同的页面只保留一个页面,其它的页面进行删除,留下的页面与拥有该页面的元素形成映射关系,删除后留下的页面即为软件系统所有页面,每个元素映射的页面均会要执行不同的功能,每个页面按照功能最多的元素进行配置控件指向,即为每个页面的控件为该页面所映射所有元素功能对应控制的集合,相同功能控件保留一个,其它的删除。
本发明中,所述步骤5的具体过程为:把页面的所有控件布局到页面上,并根据按键的功能关联指向相应的页面,同时调用动作关联代码库完成操作功能。
本发明中,所述步骤6的具体过程为:加载定义好的XML文件,同时进行解析处理,包括数据结构解析和匹配性检查、界面元素解析、业务逻辑解析的过程,解析处理自动产生运行界面,解析过程对源代码编译生成计算机可执行代码的编译过程。
本发明中,所述步骤7的具体过程为:根据元素分类的层次,对每个层次分配一个用户权限管理区,用于存储不同层次用户的账号,相同层次的用户的权限功能相同。
本发明中,所述步骤8的具体过程为:根据每个层次的用户的权限,在调用页面时,重新生成页面控件布局图,即是把多余的控件进行隐藏,每个层次用户与每个页面设置了权限映射,使得不同的用户所使用的界面均是用户所需要的和能够使用操作的,完成整个软件系统框架的自动生成,后期人工进行一些微调即可完成软件项目的开发。
发明采用了上述技术方案,发明具有以下技术效果:
本发明通过汇总软件开发所需的一些资料和代码后,直接根据用户层次和用户关联,生成相应的页面和调用相应的操作功能代码,使得可以快速的完成软件系统框架的自动布局,大大的减少了开发人员的工作,同时提高软件项目开发的周期。
附图说明
图1是发明的方法流程图。
具体实施方式
为使发明的目的、技术方案及优点更加清楚明白,举出优选实施例,对发明进一步详细说明。然而,需要说明的是,说明书中列出的许多细节仅仅是为了使读者对发明的一个或多个方面有一个透彻的理解,即便没有这些特定的细节也可以实现发明的这些方面。
如图1,发明一种软件系统架构自动生成的方法,所述方法包括如下步骤:
步骤1:收集汇总并分类软件构成资料。软件构成资料包括软件系统页面、页面脚本代码、页面效果封装代码、控件、控件代码和动作关联代码库,把所有的软件系统页进行汇总,然后根据页面在系统中的层次关系进行分类,每个软件系统页面均会指向一个固定的页面脚本代码,所有的页面效果封装代码均会提供API接口供页面脚本代码直接调用,每个控件与固定控件代码构成映射,调用控件默认直接调用映射的控件代码,动作关联代码库用于供软件系统执行功能直接调用,完成系统功能操作。
动作关联代码库包括逻辑代码、操作代码、函数功能代码和界面元素代码,所述逻辑代码为业务规则代码,包括软件页面的中间层调用代码、数据操作指令代码和界面锁定代码,界面锁定代码即为权限展现代码,根据用户权限展示不同的页面或者控件。
动态智能分析功能,支持工作流管理全过程,将工作流引擎纳入业务处理的核心机制,形成了自动流程的驱动。该系统以业务逻辑为驱动,提供了综合性的开发和应用平台,开创了全新的商业运作模式,并提出产品和服务完全分离的新型信息化运作模式。
步骤2:图文描述架构组成元素和元素之间的关联。根据软件的使用用户设定为架构组成元素,即是该软件系统的使用的每个用户为元素,把用户之间的关联关系列出来即为元素与元素之间的关联,即是软件系统运行时需要跳转的页面或者跳转页面相应的功能指向或者页面展示指向。
步骤3:汇总元素,对元素根据权限进行分类,对分类的元素自动添加基本功能和人工添加特定功能。把所有的元素进行汇总,然后根据使用软件系统的权限进行分类,即为软件系统使用用户的分级,然后根据每个层次的用户添加基本的软件功能,用户查看基础功能后,进行人工添加其它需要的特定功能。
步骤4:根据元素分类层次配置页面,页面汇总,根据架构组成把页面进行组合。解析每个元素在使用系统时所要涉及的页面,然后把所有元素所涉及的页面进行汇总,然后把相同的页面只保留一个页面,其它的页面进行删除,留下的页面与拥有该页面的元素形成映射关系,删除后留下的页面即为软件系统所有页面,每个元素映射的页面均会要执行不同的功能,每个页面按照功能最多的元素进行配置控件指向,即为每个页面的控件为该页面所映射所有元素功能对应控制的集合,相同功能控件保留一个,其它的删除。
步骤5:根据功能需求对每个页面添加功能控件,并根据元素关联配置功能控件指向。把页面的所有控件布局到页面上,并根据按键的功能关联指向相应的页面,同时调用动作关联代码库完成操作功能。
步骤6:加载页面和控件布局,同时解析页面及控件代码。加载定义好的XML文件,同时进行解析处理,包括数据结构解析和匹配性检查、界面元素解析、业务逻辑解析的过程,解析处理自动产生运行界面,解析过程对源代码编译生成计算机可执行代码的编译过程。
步骤7:根据元素分类层次与功能匹配,分配元素层次用户权限。根据元素分类的层次,对每个层次分配一个用户权限管理区,用于存储不同层次用户的账号,相同层次的用户的权限功能相同。比如超级管理员回比一般的管理员多一些功能,就算是相同的页面,有一些的功能一般的管理员是看不到,因此生成在调用该页面时,就要先判断请求的用户的权限,然后根据权限把页面的一些控件隐藏或者显现出来,同时还包括一些内容的显现和隐藏等。
步骤8:根据权限配置不同用户的权限页面和控制指向,生成系统框架。根据每个层次的用户的权限,在调用页面时,重新生成页面控件布局图,即是把多余的控件进行隐藏,每个层次用户与每个页面设置了权限映射,使得不同的用户所使用的界面均是用户所需要的和能够使用操作的,完成整个软件系统框架的自动生成,后期人工进行一些微调即可完成软件项目的开发。就是向最终用户提供人机交互的操作环境。需要说明的是,平台保证了定义过程具有“所见即所得”的特性,运行界面和定义的完全一致。此外,平台还在运行效率和性能上做了大量优化,确保运行效率不低于直接编译的系统。
该方法使得软件系统的自动配置实现了程序员零代码,自需要后期的简单的布局修改等即可完成一个大项目的软件代码的生成。
日常维护,对于系统中交付后发现的Bug或问题,及时更新解决,维护系统安全、稳定的运行。
系统升级,主要是应用深度上的变化,涉及业务流程的新增或修改、业务表单及报表的新增或修改等。
以上所述仅是发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离发明原理的前提下,还可以作出若干改进和润饰,这些改进和润饰也应视为发明的保护范围。

Claims (9)

1.一种软件系统架构自动生成的方法,其特征在于:所述方法包括如下步骤:
步骤1:收集汇总并分类软件构成资料;
步骤2:图文描述架构组成元素和元素之间的关联;
步骤3:汇总元素,对元素根据权限进行分类,对分类的元素自动添加基本功能和人工添加特定功能;
步骤4:根据元素分类层次配置页面,页面汇总,根据架构组成把页面进行组合;
步骤5:根据功能需求对每个页面添加功能控件,并根据元素关联配置功能控件指向;
步骤6:加载页面和控件布局,同时解析页面及控件代码;
步骤7:根据元素分类层次与功能匹配,分配元素层次用户权限;
步骤8:根据权限配置不同用户的权限页面和控制指向,生成系统框架;
所述步骤8的具体过程为:根据每个层次的用户的权限,在调用页面时,重新生成页面控件布局图,即是把多余的控件进行隐藏,每个层次用户与每个页面设置了权限映射,使得不同的用户所使用的界面均是用户所需要的和能够使用操作的,完成整个软件系统框架的自动生成,后期人工进行一些微调即可完成软件项目的开发。
2.根据权利要求1所述的一种软件系统架构自动生成的方法,其特征在于:所述步骤1中,软件构成资料包括软件系统页面、页面脚本代码、页面效果封装代码、控件、控件代码和动作关联代码库,把所有的软件系统页进行汇总,然后根据页面在系统中的层次关系进行分类,每个软件系统页面均会指向一个固定的页面脚本代码,所有的页面效果封装代码均会提供API接口供页面脚本代码直接调用,每个控件与固定控件代码构成映射,调用控件默认直接调用映射的控件代码,动作关联代码库用于供软件系统执行功能直接调用,完成系统功能操作。
3.根据权利要求2所述的一种软件系统架构自动生成的方法,其特征在于:所述动作关联代码库包括逻辑代码、操作代码、函数功能代码和界面元素代码,所述逻辑代码为业务规则代码,包括软件页面的中间层调用代码、数据操作指令代码和界面锁定代码,界面锁定代码即为权限展现代码,根据用户权限展示不同的页面或者控件。
4.根据权利要求1所述的一种软件系统架构自动生成的方法,其特征在于:所述步骤2中的具体过程为,根据软件的使用用户设定为架构组成元素,即是该软件系统的使用的每个用户为元素,把用户之间的关联关系列出来即为元素与元素之间的关联,即是软件系统运行时需要跳转的页面或者跳转页面相应的功能指向或者页面展示指向。
5.根据权利要求4所述的一种软件系统架构自动生成的方法,其特征在于:所述步骤3的具体过程为:把所有的元素进行汇总,然后根据使用软件系统的权限进行分类,即为软件系统使用用户的分级,然后根据每个层次的用户添加基本的软件功能,用户查看基础功能后,进行人工添加其它需要的特定功能。
6.根据权利要求5所述的一种软件系统架构自动生成的方法,其特征在于:所述步骤4的具体过程为:解析每个元素在使用系统时所要涉及的页面,然后把所有元素所涉及的页面进行汇总,然后把相同的页面只保留一个页面,其它的页面进行删除,留下的页面与拥有该页面的元素形成映射关系,删除后留下的页面即为软件系统所有页面,每个元素映射的页面均会要执行不同的功能,每个页面按照功能最多的元素进行配置控件指向,即为每个页面的控件为该页面所映射所有元素功能对应控制的集合,相同功能控件保留一个,其它的删除。
7.根据权利要求6所述的一种软件系统架构自动生成的方法,其特征在于:所述步骤5的具体过程为:把页面的所有控件布局到页面上,并根据按键的功能关联指向相应的页面,同时调用动作关联代码库完成操作功能。
8.根据权利要求7所述的一种软件系统架构自动生成的方法,其特征在于:所述步骤6的具体过程为:加载定义好的XML文件,同时进行解析处理,包括数据结构解析和匹配性检查、界面元素解析、业务逻辑解析的过程,解析处理自动产生运行界面,解析过程对源代码编译生成计算机可执行代码的编译过程。
9.根据权利要求8所述的一种软件系统架构自动生成的方法,其特征在于:所述步骤7的具体过程为:根据元素分类的层次,对每个层次分配一个用户权限管理区,用于存储不同层次用户的账号,相同层次的用户的权限功能相同。
CN201911381052.7A 2019-12-27 2019-12-27 一种软件系统架构自动生成的方法 Active CN111208976B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911381052.7A CN111208976B (zh) 2019-12-27 2019-12-27 一种软件系统架构自动生成的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911381052.7A CN111208976B (zh) 2019-12-27 2019-12-27 一种软件系统架构自动生成的方法

Publications (2)

Publication Number Publication Date
CN111208976A CN111208976A (zh) 2020-05-29
CN111208976B true CN111208976B (zh) 2023-04-11

Family

ID=70785822

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911381052.7A Active CN111208976B (zh) 2019-12-27 2019-12-27 一种软件系统架构自动生成的方法

Country Status (1)

Country Link
CN (1) CN111208976B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113434117B (zh) * 2021-06-22 2022-04-15 华腾软件产业有限公司 一种自动化的软件开发系统、软件自动生成方法和设备

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103577931A (zh) * 2013-10-28 2014-02-12 北京邮电大学 一种基于语义的可复用软件服务管理系统及其实现方法
CN105630472A (zh) * 2014-11-03 2016-06-01 中国科学院沈阳自动化研究所 制造执行系统客户端快速开发框架及其软件开发方法

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1965301A1 (en) * 2007-02-27 2008-09-03 Abb Research Ltd. Method and system for generating a control system user interface
CN102750145B (zh) * 2012-06-05 2015-02-25 怯肇乾 一种网络系统软件体系框架及其实现方法
CN105224377B (zh) * 2015-10-08 2018-07-10 广州华旻信息科技有限公司 一种通过元数据自动生成软件项目编码文件的方法及装置
CN109933310A (zh) * 2019-03-11 2019-06-25 山东鲁能软件技术有限公司 一种基于数据模板的可配置型java开发平台

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103577931A (zh) * 2013-10-28 2014-02-12 北京邮电大学 一种基于语义的可复用软件服务管理系统及其实现方法
CN105630472A (zh) * 2014-11-03 2016-06-01 中国科学院沈阳自动化研究所 制造执行系统客户端快速开发框架及其软件开发方法

Also Published As

Publication number Publication date
CN111208976A (zh) 2020-05-29

Similar Documents

Publication Publication Date Title
US11789715B2 (en) Systems and methods for transformation of reporting schema
US9946517B2 (en) Dynamic model based software application development
US8448132B2 (en) Systems and methods for modifying code generation templates
US20160170719A1 (en) Software database system and process of building and operating the same
US8930900B2 (en) Artifact divider for large scale application builds
US8495559B2 (en) Extracting platform independent models from composite applications
US20120102451A1 (en) Computationally efficient system for developing configurable, extensible business application product lines using model-driven techniques
US20050065953A1 (en) System and method for changing defined elements in a previously compiled program using a description file
US20060259386A1 (en) Building digital assets for use with software applications
EP2087424A2 (en) A system and method for automated re-architectureing of legacy systems using object-oriented language
Arcelli et al. Performance-driven software model refactoring
US20060026506A1 (en) Test display module for testing application logic independent of specific user interface platforms
CN112764743B (zh) 一种基于数据模型驱动自动生成软件的方法
US8543975B2 (en) Behavior-first event programming model
Rahgozar et al. An effective strategy for legacy systems evolution
US20110271248A1 (en) Converting controls into source code
CN111208976B (zh) 一种软件系统架构自动生成的方法
Schröpfer et al. A Generic Projectional Editor for EMF Models.
Kulkarni et al. A model-driven approach for developing business applications: experience, lessons learnt and a way forward
Filipe et al. XIS-CMS: Towards a model-driven approach for developing platform-independent CMS-specific modules
Mohan et al. Model driven development of graphical user interfaces for enterprise business applications–experience, lessons learnt and a way forward
US20120151434A1 (en) System And Method For Generating One Or More Plain Text Source Code Files For Any Computer Language Representing Any Graphically Represented Business Process
US20140372398A1 (en) Native language support for intra-and interlinked data collections using a mesh framework
Fritzsche et al. A scalable approach to annotate arbitrary modelling languages
KR101073394B1 (ko) 기간업무 데이터베이스의 웹전환을 위한 통합처리방법

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant