《信息系统开发平台openexpressapp》由会员分享,可在线阅读,更多相关《信息系统开发平台openexpressapp(44页珍藏版)》请在金锄头文库上搜索。
1、信息系统开发平台OpenExpressApp,周金根 ,我是这样偷着做架构的,Bad artists copy;Good artist steal 毕加索 找到抄袭源 主题抄袭, 求同存异 组合抄袭 由抄到偷 不断修改,问题,Company Logo,开发方法?,可维护?,定制化能力?,开发效率?,产品质量?,本节内容,Not 如何实现和使用这个平台 Is 平台的理解 Is OpenExpressApp 的由来和总体架构 Is OpenExpressApp的功能介绍,目录,什么是平台和架构 相关方法 OpenExpressApp的由来 OpenExpressApp介绍,系统平台,开放平台,开发
2、平台,目录,什么是平台 相关方法 OpenExpressApp的由来 OpenExpressApp介绍,山寨,完全自己做,完全用别人的,组合,扩展,平台如何产生,不同复用层次,思想,OpenExpressApp平台Roadmap,开发平台是在系统平台之上,提供在开发方法指导下,通过 开发工具、辅助工具,基于框架、引擎以及内置的模块等一套支持软件开发生命周期的完整开发环境来构造软件,以期在统一平台下能够快速高质量的提供产品。,软件商业架构流程组织 BAPO,商业:业务领先模型,流程,基于单项目开发,基于产品线开发,架构,技术方法,代码 模型,以独立技术为中心 以业务集成平台为中心,目录,什么是平
3、台 相关方法 OpenExpressApp的由来 OpenExpressApp介绍,Domain-Specific Modeling,Metacase: The worlds leading supplier of Domain-Specific Modeling (DSM) environments.,MetaEdit+,MetaEdit+是全球DSM领域内著名的产品,它能够带来以下好处: 缩短上市时间,开发生产力能够提高5-10倍 开发人员可以集中设计和关注业务功能,而不必用代码去写所有方面的内容 由于使用的是经过验证的工具,产品质量显著提高 可以完全控制模型和代码生成,而不像MDA方法模
4、型和代码生成固定,不便于特定领域开发,Domain-Specific Modeling,Metacase: The worlds leading supplier of Domain-Specific Modeling (DSM) environments.,DevExpress eXpressApp Framework是一种快速业务开发平台。 一个架构 XPO,一个ORM AutoUI, 自动生成界面 模块化架构 基础类库 基于角色的安全实现 数据验证 本地化支持 报表 与Visual Studio IDE 继承,.NET Application Framework - DevExpress
5、 eXpressApp Framework,CSLA (Component-based, Scalable Logical Architecture),1999年开始编写的基于.Net的一套N-tier分布式框架。 持部署为单机、局域网和广域网 允许生成面向对象的业务层来封装业务逻辑和数据 n层撤销功能 跟踪违反业务规则以确定某个对象是否有效 跟踪某个对象的数据是否发生了改变(是否“变脏”?) 支持对于子对象的基于强类型的集合 针对UI开发人员的一种简单抽象模型 对于Windows Forms、WPF和Web Forms中数据绑定的支持 表驱动的安全机制 其他各种特性,Composite WP
6、F and Silverlight,润乾报表,类 Excel 报表设计模型 非线性报表模型 多源填报模型 强关联语义模型,Mendix,目录,什么是平台 相关方法 OpenExpressApp的由来 OpenExpressApp介绍,OpenExpressApp平台Roadmap,开发平台是在系统平台之上,提供在开发方法指导下,通过 开发工具、辅助工具,基于框架、引擎以及内置的模块等一套支持软件开发生命周期的完整开发环境来构造软件,以期在统一平台下能够快速高质量的提供产品。,架构总体思想,基于单项目开发 基于产品线开发 以独立技术为中心 以业务集成平台为中心 代码 模型 面向数据库开发 面向对
7、象,产品线工程,软件工厂方法 四个主要方法原则 可变性管理 商业驱动 架构驱动 两阶段生命周期 三大基本活动 核心资产开发 产品开发 管理 BAPO之商业 BAPO之架构,Domain-Specific Modeling,企业架构,1月20日 星期三,当前进展,C/S(WPF)分布式框架已完成,已在GIX4应用,OpenExpressApp框架,架构的定义,最高层次的系统分解 系统中不易改变的决定 架构是一种主观上的东西,是专家级项目开发人员对系统设计的一些可共享的理解 架构通常指产品组成部分的大粒度的组成部分的设计,架构师在特定方法下,在经验和直接下进行系统、企业或者软件的分解,形成大粒度的
8、组成元素。在软件构架实践中定义软件架构是系统的一个(或多个)结构,它由软件元素、元素的外部可见属性以及它们之间的关系组成。 架构是针对某种特定目标系统的具有体系性的、普遍性的问题而提供的通用的解决方案。 架构往往是对复杂系统的一种共性的体系抽象。 架构让我们能够正确、合理地理解、设计和构建复杂的系统。,演示,下一步工作,在应用中不断完善C/S框架 实现元模型引擎,增加建模工具,Metametamodel,Object,Role,Relationship,Metamodel,Object X,Object Y,Model,InstanceOf,System in operation,Custom
9、er instance,InstanceOf,Object X ”customer”,InstanceOf,Relationship instance,InstanceOf,GOPRR Method(ology) Concepts Rules Symbols Reports Product specifications,Property,Graph,Model architecture in MetaEdit+,41,Concepts Graph Object Property Role Relationship MetaEdit+ has own tool for each metamode
10、ling concept,Metamodeling concepts of GOPRR,42,Apply in software production,MetaEdit+ delivers immediately the method to your team (editors, reports, multi-user, multi-platform, etc) Prototype your design; refine and iterate,43,Concepts,Symbols,Generators,Rules,1,2,3,4,Steps for implementing DSM,功能参考,OpenExpressApp架构一个信息系统的平台 订单示例 总体架构的由来 平台学习必备知识 代码目录说明 应用模型ApplicationModel 内置支持的模块类型 内置支持的属性编辑方式 内置支持的列表编辑方式 理解核心元素ObjectView AutoUI自动生成界面 Command扩展机制 支持列表分组(Group) 如何部署OEA应用 配置CSLA的WCF数据门户代理 CSLA约定及框架约定 CSLA类库编写 数据懒加载 模型相关Attribute介绍 性能相关 支持差异保存 支持WPF主题样式 支持勾选视图 用户权限模块设计 使用CSLA类库实现用户管理 功能权限,