当前位置: 首页 > 专利查询>怯肇乾专利>正文

一种网络系统软件体系框架及其实现方法技术方案

技术编号:7917512 阅读:135 留言:0更新日期:2012-10-25 02:23
本发明专利技术提供一种网络系统软件体系框架,包括领域模型层:展现业务领域的行为逻辑、业务处理状态以及实现业务的规则;表现层:向用户显示数据信息,接收干预反馈;服务层:封装“领域模型层”业务,通过网络或接口向“表现层”暴露粗粒度的逻辑业务服务;基础框架层:为“服务层”和“表现层”应用程序的数据存取提供服务。本发明专利技术还提供所述框架的实现方法。通过“领域驱动设计”思想的运用和新软件设计技术的组合,本发明专利技术把系统软件设计直接集中到“业务行为逻辑实现”和“前端页面丰富”方面,加之“软件体系及其代码自动发生”手段,为企业应用系统软件的开发设计提供简便快速高效化。

【技术实现步骤摘要】

本专利技术展现了,主要用于信息技术IT(InformationTechnology)行业各种类型的企业应用网络系统软件的快速高效开发设计,应用领域包括各类物联网系统、车联网系统、医疗/交通/安防监控系统、智能家居系统、电子商务/政务系统、购物消费/查询支付系统、金融证券交易系统、企业/部门管理系统、网络教育系统、工农业过程检测控制系统、航天测控系统、军事指挥/设备监控系统等方面。
技术介绍
一般的Web浏览器企业应用网络软件系统,常常采用业务数据库与浏览器B/服务器S (Brower/Server)三层软件架构的形式,虽然易于进行软件设计和编程实现,但是维护和升级起来十分麻烦,很多时候不得不重新做起来,更别提系统扩展了。这种体系,概念混淆,术语混乱,框架与模式僵化,设计与代码编制很难理解,数据库构造工作量大,结构化查·询语言SQL (Structured Query Language)运用繁琐,编程工作繁重,软件制作效率低下,对于小中型企业系统还勉强凑合,对于中大型企业系统就根本行不通了。现代Web浏览器企业网络软件系统设计,迫切需要高效、实用、架构简单、易于实现、编程高度自动化、无关数据库设计的多层次通用性系统软件体系。本专利技术灵活运用“领域驱动设计DDD (Domain Drive Design) ”的编程思想,合理组合新出现的现代软件设计工具,通过系统软件体系架构工具的设计及其快速交互应用,实现了上述现代Web浏览器企业网络系统软件设计的迫切需求,能够迅速使项目软件设计集中到具体的“业务行为逻辑实现”和“前端页面丰富”方面,以软件自动架构的方式,保证了系统软件设计的极大简化高效和运行的最大稳定可靠,同时最低化维护成本并最强化系统的可扩展性。
技术实现思路
I系统软件体系框架设计根据领域驱动设计DDD的思想,综合运用新出现的现代软件设计工具插件,采用分层架构的做法,围绕具体的业务逻辑,面向对象进行分析与设计,可以建立如图I所示的以具体应用逻辑业务领域为中心的四层基本典型Web浏览器企业应用网络软件系统框架懸。四层基本系统软件层次从上到下依次是表现层、服务层、领域模型层和基础框架层。表现层(Presentation Layer)主要通过友好的用户界面UI (User Interface)向用户展示系统软件体系必要的数据信息,同时接收用户的输入干预反馈。服务层(Service Layer)提供对“领域模型层”业务的封装,通过网络或接口向“表现层”暴露粗粒度的逻辑业务服务。领域模型层(Domain Model Layer)主要是展现业务领域的行为逻辑、业务处理状态以及实现业务的规则,同时也包含了领域对象的状态信息。领域模型层是整个应用程序的核心部分,它可以包含的概念和内容有实体(Entities)、“值”对象(Value Objects)、领域服务(Domain Services)、仓储契约 / 接口(Repository Contracts/Interfaces)等。基础框架层(Infrastructure Layer)为“服务层”和“表现层”内的应用程序的数据存取提供服务,它可以是应用程序本身的“持久化访问”机制,也可以是外部系统提供数据访问的Web浏览服务(Web Service),等。它提供了能被其它各层访问的通用技术框架,比如异常的捕获与处理、日志、认证、授权、验证、跟踪、监视、缓存之一或组合。这些操作通常会横向散布在应用程序的各个层面,面向方面编程AOP (Aspect Oriented Programming)关注的就是如何在不影响对象本身处理逻辑的基础上来实现这些横向的却又必不可少的功能点。应用实践中通过具体使用一些流行的拦截(Interception)框架(如MicrosoftUnity> Castle DynamicProxy等)可以方便地实现AOP思想。按照领域驱动设计的思想,领域模型通常建立在服务层中,这样能够更好地应对复杂与不断扩展的大型企业软件应用需求,然而实际应用中更多的是繁琐并不特别复杂的 业务领域行为逻辑,把“领域模型”独立一层,既保持了领域驱动设计的“复杂应对与业务扩展”的优势,又可以加速软件体系的运行效率。一般说来,对于中小企业的软件开发应用,这四个层次就足够了 ;对于业务领域的拓展和中大企业的软件开发应用,还可以对“应用领域内业务逻辑行为的类型”细化,进一步把“领域模型层”展开为若干个层次,将基本的四层框架扩展N层框架。如此,整个软件框架模型,能大能小,适应性更强大。此外,还可以在基础框架层采用“依赖注入IoC(Inversion of Control) ”(通常称为“控制反转”)、工作单元(Unit of Work)、缓冲操作(Cache Manager/Process)等软件技术,使“领域模型层”上连服务接口 /下接仓储进而通过实体框架(EntityFramework)、Hibernate等通信数据库,在“服务层”选用窗口通信基础WCF(WindowsCommunication Foundation)、“服务分层架构”Spring等技术,在“表现层”采用“窗口展现基础 WPF”(Windows Presentation Foundation)、“快速 Web 应用”Struts II 等技术,更进一步规范编程,实现软件框架代码编制的大部分自动架构,提高软件的执行效率,做到既用数据库又与数据库无关,减少人工编程带来的多数负面影响。选用这种Web浏览器企业应用网络系统软件模型,系统软件项目设计就可以集中到具体的“业务行为逻辑实现”和“前端页面丰富”上面了。在此基础上更进一步,结合ActiveX或者Applet技术,进行“瘦客户端应用”,“本地化” “服务层”的服务,还可以最大限度地简化设计、测试、部署及维护等各个环节。2新软件体系科技说明2. I框架模型的技术应用架构的新软件体系,采用的主要新技术如下I)数据库动杰牛成技术和ORM框架对于C#_ASP. NET应用,在“基础框架层”内采用新版的实体框架EntityFramework4. I持久化访问技术,进行code-first/model-first编程,实现数据库从代码生成,大大提升开发阶段数据库应对业务的变化能力;对于Java_J2EE应用,在“基础框架层”内采用类似的Hiberate-Ant-xDoclet持久化访问技术。同时在“基础框架层”内采用“目标对象映射ORM”(Object Relational Mapping)框架,隐藏数据访问的细节,使数据库交互变得简单易行,并且完全不用考虑具体的SQL语句应用,从而实现快速开发,避免因SQL操作而引发的各种人为问题。数据库动态生成技术的采用和ORM框架的特点,达到了 实际数据库因业务逻辑从代码自动生成。2)常用程序代码的自动发生与实现常用程序代码段或文件,如简单静态“増/查/改/删CRUD”用户界面,可以由具体实际的“领域模型层”通过“表现层”的人机交互界面,及其相应“服务层”的服务,结合一些自动代码产生工具,快速得到。自动产生简单静态“増/查/改/删CRUD”用户界面,对于Java-J2EE 的 Eclipse-SSH/I 开发应用,可以米用 本文档来自技高网
...

【技术保护点】
一种网络系统软件体系框架,其特征在于,构造了一个四层基本软件框架结构:表现层、服务层、领域模型层和基础框架层,其中“领域模型层”是核心层,独立于服务层外:●领域模型层:展现业务领域的行为逻辑、业务处理状态以及实现业务的规则,同时含有领域对象的状态信息;●表现层:通过用户界面向用户显示系统软件体系的数据信息,同时接收用户输入的干预反馈;●服务层:提供对“领域模型层”的业务封装,并通过网络或接口向“表现层”暴露粗粒度的逻辑业务服务;●基础框架层:为“服务层”和“表现层”内应用程序的数据存取提供服务,它是应用程序的“持久化访问”机制,或者为外部系统提供数据访问的网络浏览服务。

【技术特征摘要】

【专利技术属性】
技术研发人员:怯肇乾
申请(专利权)人:怯肇乾
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1