一种软件项目开发方法及装置制造方法

文档序号:6501990阅读:173来源:国知局
一种软件项目开发方法及装置制造方法
【专利摘要】本申请公开了一种软件开发方法及装置,应用于软件开发平台,所述软件开发平台设置有能够建立功能模型的功能模型模版,所述方法包括获取配置文件,所述配置文件包括目标开发项目的标题配置信息、页面布局配置信息、业务逻辑配置信息、数据操作区配置信息、页面数据源关系配置信息、工具栏配置信息及外部资源配置信息;在所述软件开发平台中建立与所述配置文件相对应的功能模型;其中,所述功能模型包括标题项、页面布局项、业务逻辑项、数据操作区项、页面数据源关系项、工具栏项及外部资源项;运行所述功能模型,生成与所述配置文件中描述的业务场景相对应的目标开发项目。
【专利说明】一种软件项目开发方法及装置

【技术领域】
[0001] 本申请涉及软件开发【技术领域】,特别涉及一种软件项目开发方法及装置。

【背景技术】
[0002] 目前,客户化软件应用项目由于其业务功能点多、需求多变等特点,要求软件项目 的开发周期短于普通软件项目,使得客户化软件项目的开发任务较紧。在实施软件项目 的开发时,项目团队通常会采用现有较为成熟的技术框架或架构来代替加班或增加人工 成本的方案,来缩短项目开发周期、降低项目开发的成本,而常用的技术框架包括struts、 spring或hibernate等技术框架。
[0003] 但上述采用技术框架缩短开发周期的方案,需要项目开发技术人员掌握对应的技 术框架的应用开发技能,需要特定的架构师完成对技术架构的整体设计,还需要在项目开 发完成之后,还需要考虑本项目的开发成果如何在其他各种业务场景复用性应用,由此不 仅增加了软件项目开发的人工成本,在一定程度上增加了软件项目开发流程,甚至延长项 目的开发周期。


【发明内容】

[0004] 本申请所要解决的技术问题是提供一种软件开发方法及装置,用以解决现有软件 项目开发过程中开发成本高、开发周期长的技术问题。
[0005] 本申请提供了一种软件开发方法,应用于软件开发平台,所述软件开发平台设置 有能够建立功能模型的功能模型模版,所述方法包括:
[0006] 获取配置文件,所述配置文件包括目标开发项目的标题配置信息、页面布局配置 信息、业务逻辑配置信息、数据操作区配置信息、页面数据源关系配置信息、工具栏配置信 息及外部资源配置信息;
[0007] 在所述软件开发平台中建立与所述配置文件相对应的功能模型;
[0008] 其中,所述功能模型包括标题项、页面布局项、业务逻辑项、数据操作区项、页面数 据源关系项、工具栏项及外部资源项;
[0009] 运行所述功能模型,生成与所述配置文件中描述的业务场景相对应的目标开发项 目。
[0010] 上述方法,优选的,所述在所述软件开发平台中建立与所述配置文件相对应的功 能模型,包括:
[0011] 在所述软件开发平台中建立一个与所述配置文件的文件名称相对应的功能模型 对象;
[0012] 根据所述配置文件中的业务逻辑配置信息项,设置所述功能模型对象中所要加载 并调用的业务逻辑实现类名称;
[0013] 根据所述配置文件中页面布局配置信息,设置所述功能模型对象中所要加载并调 用的页面布局类和风格构造类名称,并依据所述工具栏配置信息,设置所述功能模型对象 中所要加载并调用的工具条及按钮构造类名称;
[0014] 根据所述配置文件中数据操作区配置信息、页面数据源关系配置信息及外部资源 配置信息,依次设置所述功能模型对象中的数据操作区项、页面数据源关系项及外部资源 项。
[0015] 上述方法,优选的,在所述软件开发平台中建立与所述配置文件相对应的功能模 型之后,在所述运行所述功能模型,生成与所述配置文件中描述的业务场景相对应的目标 开发项目之前,所述方法还包括:
[0016] 将存储于预设服务器的软件开发平台加载至应用中间件。
[0017] 上述方法,优选的,所述将存储于预设服务器的软件开发平台加载至应用中间件 中,包括:
[0018] 接收项目调用请求,所述项目调用请求包括所述软件开发平台中的目标开发项目 的功能模型参数;
[0019] 依据所述功能模型参数,读取所述目标开发项目的功能模型对象,由所述功能模 型对象调用其内部的业务逻辑类执行其业务逻辑方法;
[0020] 依据所述业务逻辑类的调用结果,启动应用中间件中预设的模版页面;
[0021] 调用与所述功能模型对象中页面布局项相对应的页面构造器实现类,由所述页面 构造器实现类调用与所述数据操作区中每个数据区块相对应的数据块构造类;
[0022] 运行所述数据块构造类,依据所述数据操作区中各个数据区块的显示组件调用属 性控件构造类,生成所述目标开发项目的显示内容,将所述显示内容返回至所述模版页面 进行展示。
[0023] 上述方法,优选的,所述配置文件以可扩展标记语言XML标准编写实现。
[0024] 本申请还提供了一种软件开发装置,应用于软件开发平台,所述软件开发平台设 置有能够建立功能模型的功能模型模版,所述装置包括:
[0025] 文件获取单元,用于获取配置文件,所述配置文件包括目标开发项目的标题配置 信息、页面布局配置信息、业务逻辑配置信息、数据操作区配置信息、页面数据源关系配置 信息、工具栏配置信息及外部资源配置信息;
[0026] 模型建立单元,用于在所述软件开发平台中建立与所述配置文件相对应的功能模 型;
[0027] 其中,所述功能模型包括标题项、页面布局项、业务逻辑项、数据操作区项、页面数 据源关系项、工具栏项及外部资源项;
[0028] 项目构建单元,用于运行所述功能模型,生成与所述配置文件中描述的业务场景 相对应的目标开发项目。
[0029] 上述装置,优选的,所述模型建立单元包括:
[0030] 模型初始化子单元,用于在所述软件开发平台中建立一个与所述配置文件的文件 名称相对应的功能模型对象;
[0031] 逻辑配置子单元,用于根据所述配置文件中的业务逻辑配置信息项,设置所述功 能模型对象中所要加载并调用的业务逻辑实现类名称;
[0032] 页面配置子单元,用于根据所述配置文件中页面布局配置信息,设置功能模型对 象中所要加载并调用的页面布局类和风格构造类名称;,并依据所述工具栏配置信息,设 置功能模型对象中所要加载并调用的工具条及按钮构造类名称;
[0033] 数据配置子单元,用于根据所述配置文件中数据操作区配置信息、页面数据源关 系配置信息及外部资源配置信息,依次设置所述功能模型对象中的数据操作区项、页面数 据源关系项及外部资源项。
[0034] 上述装置,优选的,还包括:
[0035] 平台加载单元,用于在所述模型建立单元建立所述功能模型之后,在所述项目构 建单元生成所述目标开发项目之前,将存储于预设服务器的软件开发平台加载至应用中间 件。
[0036] 上述装置,优选的,所述平台加载单元包括:
[0037] 请求接收子单元,用于接收项目调用请求,所述项目调用请求包括所述软件开发 平台中的目标开发项目的功能模型参数;
[0038] 对象加载子单元,用于依据所述功能模型参数,读取所述目标开发项目的功能模 型对象,由所述功能模型对象调用其内部的业务逻辑类执行其业务逻辑方法;
[0039] 页面启动子单元,用于依据所述业务逻辑类的调用结果,启动应用中间件中预设 的模版页面;
[0040] 构造类调用子单元,用于调用与所述功能模型对象中页面布局项相对应的页面构 造器实现类,由所述页面构造器实现类调用与所述数据操作区中每个数据区块相对应的数 据块构造类;
[0041] 内容展示子单元,用于运行所述数据块构造类,依据所述数据操作区中各个数据 区块的显示组件调用属性控件构造类,生成所述目标开发项目的显示内容,将所述显示内 容返回至所述模版页面进行展示。
[0042] 上述装置,优选的,所述配置文件以可扩展标记语言XML标准编写实现。
[0043] 由上述方案可知,本申请提供的一种软件开发方法及装置,应用于软件开发平台, 该软件开发平台设置有能够建立功能模型的功能模型模版,本申请通过开发人员编写完配 置文件之后,获取配置文件,该配置文件所包括的各项配置信息描述出开发人员需要的目 标开发项目的业务场景,如标题配置信息、页面布局配置信息、业务逻辑配置信息、数据操 作区配置信息、页面数据源关系配置信息、工具栏配置信息及外部资源配置信息,在获取到 该配置文件之后,在所述软件开发平台中建立与所述配置文件相对应的功能模型,运行该 功能模型,生成与所述配置文件中描述的业务场景相对应的目标开发项目。本申请在实现 项目开发的过程中,开发人员只需掌握配置文件的编写工作,而对于文件的编写工作的学 习成本明显要低于现有技术中需要开发人员熟练掌握多种技术框架的应用开发技能的学 习成本,更加无需特定的架构师对技术框架进行设计,同时,本申请开发得到的项目是与用 户所要求的业务场景相对应的项目,直接满足于用户需求,无需再次关于项目的业务场景 进行重复设计,因此,本申请不仅降低了项目开发的人工成本,还在一定程度上节省了软件 项目开发的流程,缩短了项目的开发周期。

【专利附图】

【附图说明】
[0044] 为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使 用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于 本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其 他的附图。
[0045] 图1为本申请的应用实例发票报销软件项目中各模型的示例图;
[0046] 图2为本申请提供的一种软件开发方法实施例一的流程图;
[0047] 图3为本申请中软件开发平台的技术架构示意图;
[0048] 图4为本申请提供的一种软件开发方法实施例二的部分流程图;
[0049] 图5为本申请在实际应用中所述软件开发平台中的注册界面示例图;
[0050] 图6为本申请提供的一种软件开发方法实施例三的流程图;
[0051] 图7为本申请实施例三的部分流程图;
[0052] 图8为本申请实施例三中所述目标开发项目加载至应用中间件中的视图准备阶 段切入点示例分析图;
[0053] 图9为本申请实施例三中所述目标开发项目加载至应用中间件中的视图展示阶 段切入点示例分析图;
[0054] 图10为本申请中软件开发平台的技术架构中展示层的示例图;
[0055] 图11为本申请中软件开发平台的技术架构中控制层的示例图;
[0056] 图12为本申请中软件开发平台的技术架构中业务逻辑的层示例图;
[0057] 图13为本申请中软件开发平台的技术架构中系统层的示例图;
[0058] 图14为本申请提供的一种软件开发装置实施例四的结构示意图;
[0059] 图15为本申请提供的一种软件开发装置实施例五的部分结构示意图;
[0060] 图16为本申请提供的一种软件开发装置实施例六的结构示意图;
[0061] 图17为本申请实施例六的部分结构示意图。

【具体实施方式】
[0062] 下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完 整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于 本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他 实施例,都属于本申请保护的范围。
[0063] 针对客户化的软件开发项目具有业务功能点多、需求多变、项目周期短、开发任务 紧等特点,在软件项目开发过程中,项目开发团队一般都通过缩短项目开发周期、增加项目 人力成本或应用技术框架等方式来实现具有大需求大任务量的项目开发,其中:
[0064] 缩短项目开发周期对于项目开发团队而言,一般通过开发人员加班的方式实现, 但开发人员加班通常会导致项目开发的效率降低,还会影响项目的质量和效果;
[0065] 增加项目人力成本则会使得项目开发的总体成本增加,减少了项目的利润额,同 时会增加项目的管理成本;
[0066] 上述缩短项目开发周期和增加项目人力成本无法在本质上提高项目开发的效率, 目前在开发针对客户化的软件项目时,一般项目开发团队会采用了一些比较成熟的技术框 架或架构来降低项目的实施成本,例如,采用struts、spring、hibernate等技术框架,将整 体技术框架按照MVC (Model View Controller,模型视图控制器)的思想进行技术实现分 层,从而达到开发项目的每层架构的相对独立,而层与层之间通过接口的方式进行调用,达 到不依赖实现,提高各层的灵活扩展机制。
[0067] 采用struts、spring、hibernate等技术框架,固然能解决客户定制化项目的技术 需求,但是,它们的引入会带来新的问题:
[0068] 需要项目团队中的开发人员学习和掌握struts、spring、hibernate等技术框架 的应用开发技能,使得项目开发的学习成本较高或对项目开发人员的技能要求较高;
[0069] 需要需要一个特定的架构师,完成对技术框架的整体设计,提供一套完整的项目 技术实现解决方案;
[0070] 当上述两点都达到时,架构师或项目开人员,除了关注项目自身的客户功能需求, 还需要关注系统登录验证、系统权限管理、系统安全管理及还围绕着安装、发布及部署等环 节的内容;
[0071] 当项目完成后,开发人员还需要考虑设计项目的开发成果如何在其他项目的类似 场景中得到应用。
[0072] 因此,针对如何才能解决上述各种技术问题,需要项目团队的开发人员寻找既可 以满足客户需求还可以解决业务场景的应用问题。
[0073] 本申请采用了"业务模型为驱动"的思想,以业务模型作为管理软件开发的目标对 象,进行信息系统的设计、构造、集成、发布、维护和管理,通过软件开发平台进行业务模型 的创建,依托于页面模版,完成业务场景的技术实现,其中,所述软件开发平台中的模型包 括:
[0074] 数据模型:从数据的角度对目标开发项目进行描述,用于存储、维护以及处理与目 标开发项目相关的所有数据,这些数据是联系各个功能单元的纽带;
[0075] 功能模型:以功能活动为视角对整个目标开发项目进行描述,对目标开发项目中 功能模型的各个项之间的关系进行表现;
[0076] 组织模型:用于描述组织结构树、团队、能力、角色和权限等。
[0077] 所述软件开发平台以数据模型、功能模型和组织模型等众多动态模型,覆盖项目 管理和业务所涉及的对象和要素,动态构建目标开发项目的业务对象和业务场景,从而从 模型体系的方式来设计和构建客户定制化的目标开发项目,如图1中所示,为发票报销软 件项目中各模型的示例图。
[0078] 在本申请中,开发人员无需掌握多种技术框架的应用开发技能,更加无需特定的 架构师对技术框架进行设计,只需掌握功能模型的配置文件的编写工作,同时,本申请开发 得到的项目是与用户所要求的业务场景相对应的项目,直接满足于用户需求,无需再次关 于项目的业务场景进行重复设计,因此,本申请不仅降低了项目开发的人工成本,还在一定 程度上节省了软件项目开发的流程,缩短了项目的开发周期。
[0079] 参考图2,为本申请提供的一种软件开发方法实施例一的流程图,所述方法应用于 软件开发平台,所述软件开发平台中设置有能够建立功能模型的功能模型模版,所述方法 可以包括以下步骤:
[0080] 步骤201 :获取配置文件;
[0081] 其中,所述配置文件包括目标开发项目的标题配置信息、页面布局配置信息、业务 逻辑配置信息、数据操作区配置信息、页面数据源关系配置信息、工具栏配置信息及外部资 源配置信息。
[0082] 在本申请实施例中,项目团队中的开发人员的业务功能开发主要围绕在所述配置 文件的编写工作上,通过所述配置文件中的标题配置信息、页面布局配置信息、业务逻辑配 置信息、数据操作区配置信息、页面数据源关系配置信息、工具栏配置信息及外部资源配置 信息,来构建目标开发项目的业务场景的页面数据、展示风格、页面操作和业务逻辑。
[0083] 需要说明的是,所述软件开发平台的功能模型模版中预设有默认的实现,包括展 示风格、页面操作和业务逻辑,开发人员可以通过调用这些默认的实现来构建满足客户需 求的项目对应的功能模型,在默认的实现无法满足客户的需求时,开发人员可以通过所述 软件开发平台提供的灵活扩展注册机制,自定义设计功能模型,编写配置文件,满足客户的 个性化需求。
[0084] 如图3所示,所述软件开发平台在技术架构上分为:显示层、控制层、业务逻辑层、 数据持久层、模型层和系统层,其中:
[0085] 显示层:用于web页面的构造和显示,包含JSP模板页面、Tag Libray、JS工具库 等;
[0086] 控制层:负责前端页面的请求,安全校验及解析请求的指令,并委托业务逻辑类处 理前端请求,响应前端请求;
[0087] 业务逻辑层:平台的核心业务逻辑模块,分为页面校验、⑶RD基础逻辑、ajaxHttp 逻辑及辅助性逻辑等;
[0088] 数据持久层:实现对数据的管理和存储,业务逻辑层通过数据持久层完成对数据 的存储或访问;
[0089] 模型层:支持业务场景运行的基础支撑,负责对平台中各种模型的定义和解析;
[0090] 系统层:对业务逻辑层或控制层提供系统级或应用级的支撑。
[0091] 其中,所述模型层主要包含了功能模型、数据模型、代码模型:
[0092] 数据模型:用于定义所有业务对象的基本属性,对应的实体就是数据表,通过数据 建模工具配置维护。
[0093] 功能模型:用于定义业务功能的信息来源、业务处理规则,是实现基础业务事件的 元数据,通过功能设计器配置维护。
[0094] 代码模型:代码模型表示对象属性跟对象之间的关系,例如某个对象中有个性别 属性,用1代表男,0代表女。
[0095] 步骤202 :在所述软件开发平台中建立与所述配置文件相对应的功能模型;
[0096] 其中,所述功能模型包括标题项、页面布局项、业务逻辑项、数据操作区项、页面数 据源关系项、工具栏项及外部资源项。
[0097] 需要说明的是,所述步骤202具体由以下方式实现:
[0098] 依据所述配置文件中的标题配置信息、页面布局配置信息、业务逻辑配置信息、数 据操作区配置信息、页面数据源关系配置信息、工具栏配置信息及外部资源配置信息,在所 述软件开发平台中建立与所述配置文件相对应的功能模型。
[0099] 在所述软件开发平台中设置的功能模型模版内部,包含有多个配置项,如标题配 置项、页面布局样式配置项、业务逻辑配置项、数据操作区配置项、页面数据源关系配置项、 工具栏配置项、外部资源配置项,在所述步骤201中获取到所述目标开发项目的配置文件 之后,所述步骤202依据所述配置文件,在所述软件开发平台中建立与所述配置文件相对 应的功能模型,建立的功能模型中的每一项与所述软件开发平台中的功能模型模版中相应 项对应。
[0100] 所述功能模型模版的技术实现中包括功能模型XML配置,功能模型XML配置是对 按照所述功能模型模版建立的功能模型的组成部分的具体描述,以下为所述功能模型模版 中各项的具体实现示例:
[0101] 1、标题配置项:〈Title Style=〃CSS 样式〃〉标题〈/Title〉
[0102] 2、页面布局样式配置项:
[0103] 〈Type〉功能模型加载解析类型〈/Type〉
[0104] 〈Display Style="none (default) |Detail|MultiTab|View"
[0105] PageStyle=〃页面CSS样式〃IncludeStyle=〃js文件引入构造类的注册bean名"
[0106] PromptStyle = 〃页面提醒框构造类的注册bean名 "LinkAlign="T0P|BOTTOM|LEFT"/>
[0107] 3、业务逻辑配置项:
[0108] 〈Model Jsp=〃重定向JSP页面路径〃〉业务逻辑类〈/Model〉
[0109] 4、数据操作区配置项:
[0110] 〈FunctionObject Name="input,update, summary, view, search')
[0111] 〈Tables〉
[0112] 〈Table Name=〃数据模型名称〃Style=〃指定该功能页面展现风格〃
[0113] Main=〃是否是主表〃FilterSQL=〃数据模型过滤条件〃
[0114] Description'表模型的描述〃Main=〃是否为主表〃0rder=〃序位〃〉
[0115] 〈 ! 一数据模型中字段信息一>
[0116] 〈Field FieldName=〃数据模型中字段名称〃
[0117] HtmlCtrl="text | combo | date 等"Width="宽度"
[0118] Height=〃 高度〃Min=〃 最小值〃Max=〃 最大值"
[0119] DefaultValue=〃 默认值〃DisplayName=〃 控件显不名称"
[0120] Type=〃 字段类型;例如:string"
[0121] CodeType=〃代码模型名称〃
[0122] Alignment="left|center|right"
[0123] Length=〃长度〃CheckValue=〃设置控件的检查值〃
[0124] Empty="true|false"/〉
[0125] 〈/TableX/Tables〉
[0126] 〈/FunctionObject>
[0127] 5、页面数据源关系配置项:
[0128] 〈Relation〉
[0129] 〈MasterTable〉主表数据模型的名称〈/MasterTable〉
[0130] 〈DetailTable〉从表数据模型的名称〈/DetailTable〉
[0131] 〈MasterField〉主键字段〈/MasterField〉
[0132] 〈DetailField〉外键字段〈/DetailFieldX/Relation〉
[0133] 6、工具栏配置项:
[0134] 〈Toolbar Function="summary I input I update I view"Title="功能页面显不名称 //Prompt=////>
[0135] 〈Command Event=〃 按钮事件,search | summary | add 等"
[0136] Description' 按钮页面显不名称"Name=""Enabled="true | false"/〉
[0137] 〈/Toolbar〉
[0138] 7、外部资源配置项
[0139] <JS>javascript 代码块 </JS>
[0140] 〈Resource Style="css 样式"Function="">〈/Resource>
[0141] 步骤203 :运行所述功能模型,生成与所述配置文件中描述的业务场景相对应的 目标开发项目。
[0142] 由上述方案中可以看出,本申请提供的一种软件开发方法实施例一,应用于设置 有功能模型模版的软件开发平台,通过开发人员编写完配置文件之后,获取配置文件,该配 置文件所包括的各项配置信息描述出开发人员需要的目标开发项目的业务场景,如标题配 置信息、页面布局配置信息、业务逻辑配置信息、数据操作区配置信息、页面数据源关系配 置信息、工具栏配置信息及外部资源配置信息,在获取到该配置文件之后,在所述软件开发 平台中建立与所述配置文件相对应的功能模型,运行该功能模型,生成与所述配置文件中 描述的业务场景相对应的目标开发项目。本申请实施例在实现项目开发的过程中,开发人 员只需掌握配置文件的编写工作,而对于文件的编写工作的学习成本明显要低于现有技术 中需要开发人员熟练掌握多种技术框架的应用开发技能的学习成本,更加无需特定的架构 师对技术框架进行设计,同时,本申请开发得到的项目是与用户所要求的业务场景相对应 的项目,直接满足于用户需求,无需再次关于项目的业务场景进行重复设计,因此,本申请 实施例不仅降低了项目开发的人工成本,还在一定程度上节省了软件项目开发的流程,缩 短了项目的开发周期。
[0143] 参考图4,为本申请提供的一种软件开发方法实施例二的部分流程图,其中,所述 步骤202中在所述软件开发平台中建立与所述配置文件相对应的功能模型时,可以通过以 下方式实现:
[0144] 步骤401 :在所述软件开发平台中建立一个与所述配置文件的文件名称相对应的 功能模型对象。
[0145] 如图5所示,为在实际应用中所述软件开发平台中的注册界面示例图。在图5中, 注册的功能模型的注册名与所述标题配置信息相对应。
[0146] 步骤402 :根据所述配置文件中的业务逻辑配置信息项,设置所述功能模型对象 中所要加载并调用的业务逻辑实现类名称。
[0147] 步骤403 :根据所述配置文件中页面布局配置信息,设置功能模型对象中所要加 载并调用的页面布局类和风格构造类名称,并依据所述工具栏配置信息,设置功能模型对 象中所要加载并调用的工具条及按钮构造类名称。
[0148] 步骤404 :根据所述配置文件中数据操作区配置信息、页面数据源关系配置信息 及外部资源配置信息,依次设置所述功能模型对象中的数据操作区项、页面数据源关系项 及外部资源项。
[0149] 需要说明的是,在所述步骤401执行完成之后,可以同时执行所述步骤402至所述 步骤404,实现所述功能模型对象的建立。
[0150] 其中,所述功能模型对象即为所述步骤202中的功能模型。
[0151] 其中,所述标题配置信息与所述功能模型中的标题项相对应,表明所述目标开发 项目的名称信息;
[0152] 所述业务逻辑配置信息与所述功能模型中的业务逻辑项相对应,在所述功能模型 中,通过所述业务逻辑配置项,使得Action层自动加载,及调用对应的业务逻辑具体实现 类;
[0153] 所述页面布局配置信息与所述功能模型中的页面布局项相对应,在所述页面布局 配置信息中,指定了页面布局、风格构造类的注册名称,实现页面默认或个性化的页面布局 或风格;
[0154] 所述工具栏配置信息与所述功能模型中的工具栏项相对应,定义了页面模版中显 示的工具栏信息,包含工具条内部的按钮定义说明;
[0155] 所述数据操作区配置信息与所述功能模型中的数据操作区项相对应,包括对页面 数据展示区的定义,例如,常规的表单、表格等展示元素的定义,包含表单、表格内部所对应 的属性项;
[0156] 所述页面数据源关系配置信息与所述功能模型中的页面数据源关系项相对应,包 括对数据模型之间的关系定义;
[0157] 所述外部资源配置信息与所述功能模型中的外部资源项相对应,包括对外部资源 的定义或引用。
[0158] 参考图6,为本申请提供的一种软件开发方法实施例三的流程图,在所述步骤202 之后,在所述步骤203之前,所述方法还可以包括以下步骤:
[0159] 步骤S204 :将存储于预设服务器的软件开发平台加载至应用中间件。
[0160] 在满足客户需求的所述目标开发项目生成之前,通常会把建立有所述目标开发项 目的功能模型的软件开发平台存储于预设服务器中,客户在需要应用所述目标开发项目 时,首先将带有目标开发项目的功能模型的软件开发平台加载至应用中间件中,如web应 用,再在所述应用中间件中运行所述目标开发项目的功能模型,生成与所述配置文件中描 述的业务场景相对应的目标开发项目,对客户提供响应的服务。
[0161] 在本申请实施例的具体实现中,需要将带有所述目标开发项目的功能模型的软件 开发平台加载至某一应用中间件中,进行运行该功能模型构建得到所述目标开发项目,因 此,参考图7,为本申请实施例的部分流程图,所述步骤S204可以通过以下各个步骤实现 :
[0162] 步骤701 :接收项目调用请求,所述项目调用请求包括所述软件开发平台中的目 标开发项目的功能模型参数。
[0163] 在所述步骤701执行之前,客户登陆所述预设服务器,触发所述软件开发平台的 调用程序,生成项目调用请求,此时,本申请实施例对所述包括有所述软件开发平台中的目 标开发项目的功能模型参数的项目调用请求进行接收。例如,在实际实现时,由客户发送一 个HTTP请求到服务器,根据配置文件struts-congfig. xml中的配置信息,由具体的action 类接收该HTTP请求。
[0164] 步骤702 :依据所述功能模型参数,读取所述目标开发项目中的功能模型对象,由 所述功能模型对象调用其内部的业务逻辑类执行其业务逻辑方法。
[0165] 其中,所述功能模型参数包括功能模型的名称和动作标志。例如,action类根据 功能模型的名称与动作标志,加载功能模型对象,由功能模型对象依据内部注册的业务逻 辑注册名称调用具体的业务逻辑类,并根据所述动作标志执行其业务逻辑方法。其中,所述 业务逻辑类把执行所述业务逻辑方法取得的业务数据按照一定的命名规则存放在request 类中,并返回actionerrors对象,所述业务数据及所述actionerrors对象作为所述业务逻 辑类的调用结果。
[0166] 步骤703 :依据所述业务逻辑类的调用结果,启动应用中间件中预设的模版页面。
[0167] 例如,在action类取得所述业务逻辑类的调用结果,如所述业务数据和所述 actionerrors对象之后,根据struts-congfig. xml中的配置信息,跳转到所述应用中间中 的Jsp模版页面中。
[0168] 其中,上述步骤701至所述步骤703为所述目标开发项目在加载至应用中间件中 的视图准备阶段描述,对该视图准备阶段的切入点示例分析如图8所示,其中:
[0169] 1、用户通过浏览器中的页面URL访问请求项发送参数至structs控制器,如功能 模型名称、动作标志;
[0170] 2、加载功能模型对象;
[0171] 3、通过所述功能模型中的模型管理模块调用业务逻辑实现类;
[0172] 4、执行业务逻辑方法;
[0173] 5、返回业务数据集对象至structs控制器;
[0174] 6、返回业务数据集对象至应用中间件如web浏览器中启动的web页面。
[0175] 步骤704 :调用与所述功能模型对象中页面布局项相对应的页面构造器实现类, 由所述页面构造器实现类调用与所述数据操作区中每个数据区块相对应的数据块构造类。
[0176] 在实际应用中,在启动所述Jsp t旲版页面之后,Jsp t旲版页面开始调用具体的Tag 标签处理器,所述Tag标签处理器调用相应的页面构造器实现类,生成整个页面的显示风 格和样式,在所述页面构造实现类被触发调用时,会调用各个所述数据区块的构造实现类, 即所述数据块构造类。
[0177] 步骤705 :运行所述数据块构造类,依据所述数据操作区中各个数据区块的显示 组件调用属性控件构造类,生成所述目标开发项目的显示内容,将所述显示内容返回至所 述模版页面进行展示。
[0178] 在实际应用中,调用所述数据块构造类时,由所述数据块构造类根据具体数据区 块的显示组件,调用属性空间构造类,完成最小子集页面的构造,而各级构造类(构造器)封 装所有子集页面的显示元素,生成页面完整的HTML内容,返回所述Jsp模版页面,将所述 HTML内容在所述Jsp模版页面中进行展示。
[0179] 所述步骤704与所述步骤705为所述目标开发项目在加载至应用中间件中的视图 展示阶段描述,对该视图展示阶段的切入点示例分析如图9所示,其中:
[0180] 1、所述Jsp页面调用具体的Tag标签处理器;
[0181] 2、所述Tag标签处理器调用相应的页面构造实现类,即调用页面构造器;
[0182] 3、在所述页面构造实现类中,调用数据块构造类,即数据块构造器;
[0183] 4、执行所述数据块构造类,调用属性空间构造类;
[0184] 5、返回所述属性空间构造类输出的子集页面至所述数据块构造类;
[0185] 6、所述数据块构造类将所有的子集页面进行拼装,生成页面完整的Html内容;
[0186] 7、返回所述Html内容至Tag标签处理器;
[0187] 8、返回所述web页面进行展示。
[0188] 在上述本申请的各个实施例的实际实现时,所述配置文件以可扩展标记语言XML 标准编写实现。
[0189] 需要说明的是,本申请实施例中的功能模型时对客户所参与的业务场景的整体定 义,包含了业务操作对象、操作时间及不同页面流的定义,每个页面流对应功能模型中的一 部分进行处理描述,包含标题、处理数据、展示效果、业务逻辑引用及操作时间。
[0190] 以下为从所述软件开发平台的技术架构的各层面实现机制上,对本申请给予功能 模型的软件开发方法即快速变成技术的实现方式进行阐述,其中,由设置于所述软件开发 平台中的数据库对项目开发过程中的数据处理提供支持:
[0191] 如图10所示,所述软件开发平台中的展示层负责页面展示逻辑的封装,主要由 JSP模板、Tag标签、Π样式、JS工具类库、页面构造器、页面构造器、辅助构造器、数据区构 造器和控件构造器组成。
[0192] JSP模板:即为JSP页面,根据业务需求,将各级构造器所生成的HTML片段进行封 装组合,并附上页面公共JSP语句,及页面样式脚本;
[0193] Tag标签:是对后端Java构造器的封装;根据不同类型构造器,对Tag标签进行分 类;它主要由JSP模板进行引用,通过标签参数的指定,完成特定构造器的调用;
[0194] Π样式:就是将修饰某一类段落的一组参数,其中包括如字体类型、字体大小、字 体样式、对齐方式等,命名为一个特定的段落格式名称。通常,将这个名称称为样式;
[0195] JS工具类库:JS工具类库主要负责前端页面的属性数据校验,提供一些控件的事 件处理默认函数,及控件的数据加载及展示控制工具函数等;
[0196] 页面构造器:完成页面除JSP模板之前,顶层页面布局、样式的构造和引入;并负 责对数据区构造器、辅助构造器的调用;
[0197] 辅助构造器;主要完成一些公共的页面元素构造,例如:系统异常的页面构造、操 作提醒,及其他外部资源的构造等;
[0198] 数据区构造器:完成数据区的页面元素构造,例如表单、表格等页面元素的构造; 并负责对控件构造器的调用;
[0199] 控件构造器:是页面元素最小集合的构造,例如:控件。
[0200] 如图11所示,所述软件开发平台中的控制层负责前端请求的捕获,且对请求进行 处理,最终反馈请求处理结果,主要包含了请求接入、协议转换、业务映射调用、请求响应、 安全认证、日志记录、权限验证及本地化处理等模块:
[0201] 请求接入:处理程序接收来自Web服务器的HTTP Post或Get请求,并从请求中检 索相关参数;
[0202] 协议转换:根据不同的请求类型,及请求参数,转换成业务逻辑层所能识别的请求 参数或请求对象;
[0203] 业务映射调用:映射请求到指定的业务逻辑实现类,完成调用;
[0204] 请求响应:获取业务逻辑类的处理结果,并约定的协议转换返回给前端页面或页 面请求;
[0205] 安全认证:包含了系统用户认证、IP地址访问控制等;
[0206] 日志记录:主要包含了系统用户登录日志,及系统异常或业务校验的错误信息的 记录等;
[0207] 权限验证:包含了功能模型授权验证、数据记录级权限验证及数据字段级权限控 制等;
[0208] 本地化处理:通过本地描述文件的方式,实现本地化处理。
[0209] 如图12所示,所述软件开发平台中的业务逻辑层负责向控制层提供各类服务,完 成对页面请求的实际操作或响应,并形成操作结果,返回给控制层。它主要包含了业务逻 辑、辅助逻辑、代码逻辑和校验逻辑四部分:
[0210] 业务逻辑:主要针对某一类业务操作模式,而实现了通用的逻辑方法;
[0211] 辅助逻辑:主要针对XmlHttp的各种请求实现了通用的逻辑方法;
[0212] 代码逻辑:主要针对各种组合形式的代码模型,而实现的通用的逻辑方法;
[0213] 校验逻辑:主要针对页面数据合法性,及模型权限合法性等方面实现了逻辑方法。
[0214] 如图13所示,所述软件开发平台的系统层为业务逻辑层或控制层提供系统级或 应用级的帮助,主要包含了应用初始化、模型缓存、模型管理和授权管理等模块:
[0215] 应用初始化:负责系统加载时,系统环境变量的读取和缓存;
[0216] 模型缓存:负责在非调试模式下对所有配置文件的加载和缓存,并为业务逻辑提 供统一服务调用;
[0217] 模型管理:针对各类模型文件,提供默认加载或操作接口;
[0218] 授权管理:定义框架所需的用户授权或模型授权的认证标准接口,并提供了默认 实现。
[0219] 参考图14、其示出了本申请提供的一种软件开发装置实施例四的结构示意图,所 述装置应用于软件开发平台,所述软件开发平台设置有能够建立功能模型的功能模型模 版,所述装置包括:
[0220] 文件获取单元1401,用于获取配置文件;
[0221] 其中,所述配置文件包括目标开发项目的标题配置信息、页面布局配置信息、业务 逻辑配置信息、数据操作区配置信息、页面数据源关系配置信息、工具栏配置信息及外部资 源配置信息。
[0222] 在本申请实施例中,项目团队中的开发人员的业务功能开发主要围绕在所述配置 文件的编写工作上,通过所述配置文件中的标题配置信息、页面布局配置信息、业务逻辑配 置信息、数据操作区配置信息、页面数据源关系配置信息、工具栏配置信息及外部资源配置 信息,来构建目标开发项目的业务场景的页面数据、展示风格、页面操作和业务逻辑。
[0223] 需要说明的是,所述软件开发平台的技术架构由展示层、控制层、业务逻辑层、数 据持久层及、模型层和系统层,对上述各层面实现机制的说明请参考本申请方法实施例,再 次不再详细描述。
[0224] 模型建立单元1402,用于在所述软件开发平台中建立与所述配置文件相对应的功 能丰吴型;
[0225] 其中,所述功能模型包括标题项、页面布局项、业务逻辑项、数据操作区项、页面数 据源关系项、工具栏项及外部资源项。
[0226] 需要说明的是,所述模型建立单元1402具体可以由以下方式实现:
[0227] 依据所述配置文件中的标题配置信息、页面布局配置信息、业务逻辑配置信息、数 据操作区配置信息、页面数据源关系配置信息、工具栏配置信息及外部资源配置信息,在所 述软件开发平台中建立与所述配置文件相对应的功能模型。
[0228] 需要说明的是,所述模型建立单元1402与所述文件获取单元1401相连接。
[0229] 项目构建单元1403,用于运行所述功能模型,生成与所述配置文件中描述的业务 场景相对应的目标开发项目。
[0230] 需要说明的是,所述项目构建单元1403与所述模型建立单元1402相连接。
[0231] 由上述方案中可以看出,本申请提供的一种软件开发装置实施例四,应用于设置 有功能模型模版的软件开发平台,通过开发人员编写完配置文件之后,获取配置文件,该配 置文件所包括的各项配置信息描述出开发人员需要的目标开发项目的业务场景,如标题配 置信息、页面布局配置信息、业务逻辑配置信息、数据操作区配置信息、页面数据源关系配 置信息、工具栏配置信息及外部资源配置信息,在获取到该配置文件之后,在所述软件开发 平台中建立与所述配置文件相对应的功能模型,运行该功能模型,生成与所述配置文件中 描述的业务场景相对应的目标开发项目。本申请实施例在实现项目开发的过程中,开发人 员只需掌握配置文件的编写工作,而对于文件的编写工作的学习成本明显要低于现有技术 中需要开发人员熟练掌握多种技术框架的应用开发技能的学习成本,更加无需特定的架构 师对技术框架进行设计,同时,本申请开发得到的项目是与用户所要求的业务场景相对应 的项目,直接满足于用户需求,无需再次关于项目的业务场景进行重复设计,因此,本申请 实施例不仅降低了项目开发的人工成本,还在一定程度上节省了软件项目开发的流程,缩 短了项目的开发周期。
[0232] 参考图15,其示出了本申请提供的一种软件开发装置实施例五的部分结构示意 图,其中,所述模型建立单元1402包括:
[0233] 模型初始化子单元1421,用于在所述软件开发平台中建立一个与所述配置文件的 文件名称相对应的功能模型对象。
[0234] 如图5所示,为在实际应用中所述软件开发平台中的注册界面示例图。在图5中, 注册的功能模型的注册名与所述标题配置信息相对应。
[0235] 逻辑配置子单元1422,用于根据所述配置文件中的业务逻辑配置信息项,设置所 述功能模型对象中所要加载并调用的业务逻辑实现类名称。
[0236] 需要说明的是,所述逻辑配置子单元1422与所述模型初始化子单元1421相连接。
[0237] 页面配置子单元1423,用于根据所述配置文件中页面布局配置信息,设置功能模 型对象中所要加载并调用的页面布局类和风格构造类名称;,并依据所述工具栏配置信 息,设置功能模型对象中所要加载并调用的工具条及按钮构造类名称。
[0238] 需要说明的是,所述页面配置子单元1423与所述模型初始化子单元1421相连接。
[0239] 数据配置子单元1424,用于根据所述配置文件中数据操作区配置信息、页面数据 源关系配置信息及外部资源配置信息,依次设置所述功能模型对象中的数据操作区项、页 面数据源关系项及外部资源项。
[0240] 需要说明的是,所述数据配置子单元1424与所述模型初始化子单元1421相连接。
[0241] 需要说明的是,在所述模型初始化子单元1421运行完成之后,所述逻辑配置子单 元1422、所述页面配置子单元1423和所述数据配置子单元1424可以同时运行,还可以以某 一预设的顺序运行,最终得到所述功能模型。
[0242] 参考图16,为本申请提供的一种软件开发装置实施例六的结构示意图,其中,所述 装置还包括:
[0243] 平台加载单元1404,用于在所述模型建立单元1402建立所述功能模型之后,在所 述项目构建单元1403生成所述目标开发项目之前,将存储于预设服务器的软件开发平台 加载至应用中间件。
[0244] 需要说明的是,所述平台加载单元1404分别与所述模型建立单元1402和所述项 目构建单元1403相连接。
[0245] 在满足客户需求的所述目标开发项目生成之前,通常会把建立有所述目标开发项 目的功能模型的软件开发平台存储于预设服务器中,客户在需要应用所述目标开发项目 时,首先将带有目标开发项目的功能模型的软件开发平台加载至应用中间件中,如web应 用,再在所述应用中间件中运行所述目标开发项目的功能模型,生成与所述配置文件中描 述的业务场景相对应的目标开发项目,对客户提供响应的服务。
[0246] 参考图17,为本申请实施例六的部分结构示意图,所述平台加载单元1404包括:
[0247] 请求接收子单元1441,用于接收项目调用请求,所述项目调用请求包括所述软件 开发平台中的目标开发项目的功能模型参数。
[0248] 在所述请求接收子单元1441运行之前,客户登陆所述预设服务器,触发所述软件 开发平台的调用程序,生成项目调用请求,此时,本申请实施例对所述包括有所述软件开发 平台中的目标开发项目的功能模型参数的项目调用请求进行接收。例如,在实际实现时,由 客户发送一个HTTP请求到服务器,根据配置文件struts-congfig. xml中的配置信息,由 具体的action类接收该HTTP请求。
[0249] 对象加载子单元1442,用于依据所述功能模型参数,读取所述目标开发项目中的 功能模型对象,由所述功能模型对象调用其内部的业务逻辑类执行其业务逻辑方法。
[0250] 需要说明的是,所述对象加载子单元1442与所述请求接收子单元1441相连接。
[0251] 其中,所述功能模型参数包括功能模型的名称和动作标志。例如,action类根据 功能模型的名称与动作标志,加载功能模型对象,由功能模型对象依据内部注册的业务逻 辑注册名称调用具体的业务逻辑类,并根据所述动作标志执行其业务逻辑方法。其中,所述 业务逻辑类把执行所述业务逻辑方法取得的业务数据按照一定的命名规则存放在request 类中,并返回actionerrors对象,所述业务数据及所述actionerrors对象作为所述业务逻 辑类的调用结果。
[0252] 页面启动子单元1443,用于依据所述业务逻辑类的调用结果,启动应用中间件中 预设的模版页面。
[0253] 需要说明的是,所述页面启动子单元1443与所述对象加载子单元1442相连接。
[0254] 例如,在action类取得所述业务逻辑类的调用结果,如所述业务数据和所述 actionerrors对象之后,根据struts-congfig. xml中的配置信息,跳转到所述应用中间中 的Jsp模版页面中。
[0255] 其中,上述请求接收子单元1441至所述页面启动子单元1443为所述目标开发项 目在加载至应用中间件中的视图准备阶段描述,对该视图准备阶段的切入点示例分析如图 8所示。
[0256] 构造类调用子单元1444,用于调用与所述功能模型对象中页面布局项相对应的页 面构造器实现类,由所述页面构造器实现类调用与所述数据操作区中每个数据区块相对应 的数据块构造类。
[0257] 需要说明的是,所述构造类调用子单元1444与所述页面启动子单元1443相连接。
[0258] 在实际应用中,在启动所述Jsp t旲版页面之后,Jsp t旲版页面开始调用具体的Tag 标签处理器,所述Tag标签处理器调用相应的页面构造器实现类,生成整个页面的显示风 格和样式,在所述页面构造实现类被触发调用时,会调用各个所述数据区块的构造实现类, 即所述数据块构造类。
[0259] 内容展示子单元1445,用于运行所述数据块构造类,依据所述数据操作区中各个 数据区块的显示组件调用属性控件构造类,生成所述目标开发项目的显示内容,将所述显 示内容返回至所述模版页面进行展示。
[0260] 需要说明的是,所述内容展示子单元1445与所述构造类调用子单元1444相连接。
[0261] 在实际应用中,调用所述数据块构造类时,由所述数据块构造类根据具体数据区 块的显示组件,调用属性空间构造类,完成最小子集页面的构造,而各级构造类(构造器)封 装所有子集页面的显示元素,生成页面完整的HTML内容,返回所述Jsp模版页面,将所述 HTML内容在所述Jsp模版页面中进行展示。
[0262] 其中,所述构造类调用子单元1444与所述内容展示子单元1445为所述目标开发 项目在加载至应用中间件中的视图展示阶段描述,对该视图展示阶段的切入点示例分析如 图9所示。
[0263] 在上述本申请的各个实施例的实际实现时,所述配置文件以可扩展标记语言XML 标准编写实现。
[0264] 需要说明的是,本申请实施例中的功能模型时对客户所参与的业务场景的整体定 义,包含了业务操作对象、操作时间及不同页面流的定义,每个页面流对应功能模型中的一 部分进行处理描述,包含标题、处理数据、展示效果、业务逻辑引用及操作时间。
[0265] 所述软件开发平台采用XTHML标准作为所述功能模型的基础实现技术,从而提供 业务场景功能的灵活配置。由所述功能模型中多个项,如标题项、业务逻辑项、页面布局项、 数据操作区项、页面数据源关系项、工具栏及外部资源项,主要分为业务逻辑定义、页面操 作定义、页面数据定义、展示风格定义和页面流定义。其中,上述各种定义请参考本申请方 法实施例内容,再次不再详细阐述。
[0266] 需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重 点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
[0267] 最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将 一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作 之间存在任何这种实际的关系或者顺序。而且,术语"包括"、"包含"或者其任何其他变体 意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括 那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或 者设备所固有的要素。在没有更多限制的情况下,由语句"包括一个……"限定的要素,并 不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0268] 以上对本发明所提供的一种软件开发方法及装置进行了详细介绍,本文中应用了 具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本 发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体 实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的 限制。
【权利要求】
1. 一种软件开发方法,其特征在于,应用于软件开发平台,所述软件开发平台设置有能 够建立功能模型的功能模型模版,所述方法包括: 获取配置文件,所述配置文件包括目标开发项目的标题配置信息、页面布局配置信息、 业务逻辑配置信息、数据操作区配置信息、页面数据源关系配置信息、工具栏配置信息及外 部资源配置信息; 在所述软件开发平台中建立与所述配置文件相对应的功能模型; 其中,所述功能模型包括标题项、页面布局项、业务逻辑项、数据操作区项、页面数据源 关系项、工具栏项及外部资源项; 运行所述功能模型,生成与所述配置文件中描述的业务场景相对应的目标开发项目。
2. 根据权利要求1所述的方法,其特征在于,所述在所述软件开发平台中建立与所述 配置文件相对应的功能模型,包括: 在所述软件开发平台中建立一个与所述配置文件的文件名称相对应的功能模型对 象; 根据所述配置文件中的业务逻辑配置信息项,设置所述功能模型对象中所要加载并调 用的业务逻辑实现类名称; 根据所述配置文件中页面布局配置信息,设置所述功能模型对象中所要加载并调用的 页面布局类和风格构造类名称,并依据所述工具栏配置信息,设置所述功能模型对象中所 要加载并调用的工具条及按钮构造类名称; 根据所述配置文件中数据操作区配置信息、页面数据源关系配置信息及外部资源配置 信息,依次设置所述功能模型对象中的数据操作区项、页面数据源关系项及外部资源项。
3. 根据权利要求1所述的方法,其特征在于,在所述软件开发平台中建立与所述配置 文件相对应的功能模型之后,在所述运行所述功能模型,生成与所述配置文件中描述的业 务场景相对应的目标开发项目之前,所述方法还包括: 将存储于预设服务器的软件开发平台加载至应用中间件。
4. 根据权利要求3所述的方法,其特征在于,所述将存储于预设服务器的软件开发平 台和目标开发项目加载至应用中间件中,包括: 接收项目调用请求,所述项目调用请求包括所述软件开发平台中的目标开发项目的功 能模型参数; 依据所述功能模型参数,读取所述目标开发项目的功能模型对象,由所述功能模型对 象调用其内部的业务逻辑类执行其业务逻辑方法; 依据所述业务逻辑类的调用结果,启动应用中间件中预设的模版页面; 调用与所述功能模型对象中页面布局项相对应的页面构造器实现类,由所述页面构造 器实现类调用与所述数据操作区中每个数据区块相对应的数据块构造类; 运行所述数据块构造类,依据所述数据操作区中各个数据区块的显示组件调用属性控 件构造类,生成所述目标开发项目的显示内容,将所述显示内容返回至所述模版页面进行 展示。
5. 根据权利要求1所述的方法,其特征在于,所述配置文件以可扩展标记语言XML标准 编写实现。
6. -种软件开发装置,其特征在于,应用于软件开发平台,所述软件开发平台设置有能 够建立功能模型的功能模型模版,所述装置包括: 文件获取单元,用于获取配置文件,所述配置文件包括目标开发项目的标题配置信息、 页面布局配置信息、业务逻辑配置信息、数据操作区配置信息、页面数据源关系配置信息、 工具栏配置信息及外部资源配置信息; 模型建立单元,用于在所述软件开发平台中建立与所述配置文件相对应的功能模型; 其中,所述功能模型包括标题项、页面布局项、业务逻辑项、数据操作区项、页面数据源 关系项、工具栏项及外部资源项; 项目构建单元,用于运行所述功能模型,生成与所述配置文件中描述的业务场景相对 应的目标开发项目。
7. 根据权利要求1所述的装置,其特征在于,所述模型建立单元包括: 模型初始化子单元,用于在所述软件开发平台中建立一个与所述配置文件的文件名称 相对应的功能模型对象; 逻辑配置子单元,用于根据所述配置文件中的业务逻辑配置信息项,设置所述功能模 型对象中所要加载并调用的业务逻辑实现类名称; 页面配置子单元,用于根据所述配置文件中页面布局配置信息,设置功能模型对象中 所要加载并调用的页面布局类和风格构造类名称;,并依据所述工具栏配置信息,设置功 能模型对象中所要加载并调用的工具条及按钮构造类名称; 数据配置子单元,用于根据所述配置文件中数据操作区配置信息、页面数据源关系配 置信息及外部资源配置信息,依次设置所述功能模型对象中的数据操作区项、页面数据源 关系项及外部资源项。
8. 根据权利要求6所述的装置,其特征在于,还包括: 平台加载单元,用于在所述模型建立单元建立所述功能模型之后,在所述项目构建单 元生成所述目标开发项目之前,将存储于预设服务器的软件开发平台加载至应用中间件。
9. 根据权利要求8所述的装置,其特征在于,所述平台加载单元包括: 请求接收子单元,用于接收项目调用请求,所述项目调用请求包括所述软件开发平台 中的目标开发项目的功能模型参数; 对象加载子单元,用于依据所述功能模型参数,读取所述目标开发项目的功能模型对 象,由所述功能模型对象调用其内部的业务逻辑类执行其业务逻辑方法; 页面启动子单元,用于依据所述业务逻辑类的调用结果,启动应用中间件中预设的模 版页面; 构造类调用子单元,用于调用与所述功能模型对象中页面布局项相对应的页面构造器 实现类,由所述页面构造器实现类调用与所述数据操作区中每个数据区块相对应的数据块 构造类; 内容展示子单元,用于运行所述数据块构造类,依据所述数据操作区中各个数据区块 的显示组件调用属性控件构造类,生成所述目标开发项目的显示内容,将所述显示内容返 回至所述模版页面进行展示。
10. 根据权利要求6所述的装置,其特征在于,所述配置文件以可扩展标记语言XML标 准编写实现。
【文档编号】G06F9/44GK104111826SQ201310138921
【公开日】2014年10月22日 申请日期:2013年4月19日 优先权日:2013年4月19日
【发明者】张仁信 申请人:杭州新世纪电子科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1