44
信信信 信信信信 OpenExpressApp 周周周 zhoujg.cnblogs.com

信息系统开发平台OpenExpressApp

  • Upload
    zhoujg

  • View
    49

  • Download
    3

Embed Size (px)

DESCRIPTION

 

Citation preview

Page 1: 信息系统开发平台OpenExpressApp

信息系统开发平台OpenExpressApp

周金根zhoujg.cnblogs.com

Page 2: 信息系统开发平台OpenExpressApp

我是这样偷着做架构的Bad artists copy;Good artist steal -毕加索

• 找到抄袭源• 主题抄袭,求同存异

• 组合抄袭• 由抄到偷• 不断修改

Page 3: 信息系统开发平台OpenExpressApp

问题

Company Logo

开发方法?

可维护?

定制化能力?

开发效率?

产品质量?

Page 4: 信息系统开发平台OpenExpressApp

本节内容• Not 如何实现和使用这个平台

• Is 平台的理解• Is OpenExpressApp 的由来和总体架构• Is OpenExpressApp的功能介绍

Page 5: 信息系统开发平台OpenExpressApp

目录• 什么是平台和架构• 相关方法• OpenExpressApp的由来• OpenExpressApp介绍

Page 6: 信息系统开发平台OpenExpressApp

系统平台

Page 7: 信息系统开发平台OpenExpressApp

开放平台

Page 9: 信息系统开发平台OpenExpressApp

目录• 什么是平台• 相关方法• OpenExpressApp的由来• OpenExpressApp介绍

Page 10: 信息系统开发平台OpenExpressApp

山寨完全自己做 完全用别人的 组合扩展

平台如何产生

Page 11: 信息系统开发平台OpenExpressApp

不同复用层次

思想

Page 12: 信息系统开发平台OpenExpressApp

OpenExpressApp平台Roadmap

开发平台是在系统平台之上,提供在开发方法指导下,通过 开发工具、辅助工具,基于框架、引擎以及内置的模块等一套支持软件开发生命周期的完整开发环境来构造软件,以期在统一平台下能够快速高质量的提供产品。

Page 13: 信息系统开发平台OpenExpressApp

软件=商业+架构+流程+组织BAPO

Page 14: 信息系统开发平台OpenExpressApp

商业 :业务领先模型

Page 15: 信息系统开发平台OpenExpressApp

流程

基于单项目开发 基于产品线开发

Page 16: 信息系统开发平台OpenExpressApp

架构

Page 17: 信息系统开发平台OpenExpressApp

技术方法

Page 18: 信息系统开发平台OpenExpressApp

代码 模型

Page 19: 信息系统开发平台OpenExpressApp

以独立技术为中心 以业务集成平台为中心

Page 20: 信息系统开发平台OpenExpressApp

目录• 什么是平台• 相关方法• OpenExpressApp的由来• OpenExpressApp介绍

Page 21: 信息系统开发平台OpenExpressApp

Domain-Specific ModelingMetacase: The world's leading supplier of Domain-Specific Modeling (DSM) environments.

Page 22: 信息系统开发平台OpenExpressApp

MetaEdit+

MetaEdit+是全球 DSM领域内著名的产品,它能够带来以下好处:  

• 缩短上市时间,开发生产力能够提高 5-10倍• 开发人员可以集中设计和关注业务功能,而不必用代码去写所有方面的内容 

• 由于使用的是经过验证的工具,产品质量显著提高 

• 可以完全控制模型和代码生成,而不像MDA方法模型和代码生成固定,不便于特定领域开发

Page 23: 信息系统开发平台OpenExpressApp

Domain-Specific ModelingMetacase: The world's leading supplier of Domain-Specific Modeling (DSM) environments.

Page 24: 信息系统开发平台OpenExpressApp

DevExpress eXpressApp Framework是一种快速业务开发平台。

• 一个架构• XPO,一个 ORM• AutoUI, 自动生成界面• 模块化架构• 基础类库• 基于角色的安全实现• 数据验证• 本地化支持• 报表• 与 Visual Studio IDE 继承

.NET Application Framework - DevExpress eXpressApp Framework™

Page 25: 信息系统开发平台OpenExpressApp

CSLA (Component-based, Scalable Logical Architecture)

• 1999年开始编写的基于 .Net的一套 N-tier分布式框架。•   持部署为单机、局域网和广域网• 允许生成面向对象的业务层来封装业务逻辑和数据• n层撤销功能• 跟踪违反业务规则以确定某个对象是否有效• 跟踪某个对象的数据是否发生了改变(是否“变脏”?)• 支持对于子对象的基于强类型的集合• 针对 UI开发人员的一种简单抽象模型• 对于Windows Forms、WPF和Web Forms中数据绑定的支持• 表驱动的安全机制• 其他各种特性

Page 26: 信息系统开发平台OpenExpressApp

Composite WPF and Silverlight

Page 28: 信息系统开发平台OpenExpressApp

Mendix

Page 29: 信息系统开发平台OpenExpressApp

目录• 什么是平台• 相关方法• OpenExpressApp的由来• OpenExpressApp介绍

Page 30: 信息系统开发平台OpenExpressApp

OpenExpressApp平台Roadmap

开发平台是在系统平台之上,提供在开发方法指导下,通过 开发工具、辅助工具,基于框架、引擎以及内置的模块等一套支持软件开发生命周期的完整开发环境来构造软件,以期在统一平台下能够快速高质量的提供产品。

Page 31: 信息系统开发平台OpenExpressApp

架构总体思想• 基于单项目开发 - 基于产品线开发• 以独立技术为中心  - 以业务集成平台为中心

• 代码 - 模型• 面向数据库开发  -  面向对象

Page 33: 信息系统开发平台OpenExpressApp

Domain-Specific Modeling

Page 34: 信息系统开发平台OpenExpressApp

企业架构1月 20日 星期三

Page 35: 信息系统开发平台OpenExpressApp

当前进展• C/S(WPF)分布式框架已完成,已在

GIX4应用

Page 36: 信息系统开发平台OpenExpressApp

OpenExpressApp 框架

Page 37: 信息系统开发平台OpenExpressApp

架构的定义• 最高层次的系统分解• 系统中不易改变的决定

• 架构是一种主观上的东西,是专家级项目开发人员对系统设计的一些可共享的理解

• 架构通常指产品组成部分的大粒度的组成部分的设计,架构师在特定方法下,在经验和直接下进行系统、企业或者软件的分解,形成大粒度的组成元素。在《软件构架实践》中定义软件架构是系统的一个(或多个)结构,它由软件元素、元素的外部可见属性以及它们之间的关系组成。

• 架构是针对某种特定目标系统的具有体系性的、普遍性的问题而提供的通用的解决方案。

• 架构往往是对复杂系统的一种共性的体系抽象。• 架构让我们能够正确、合理地理解、设计和构建复杂的系统。

Page 38: 信息系统开发平台OpenExpressApp

演示

Page 39: 信息系统开发平台OpenExpressApp

下一步工作• 在应用中不断完善 C/S框架• 实现元模型引擎,增加建模工具

Page 40: 信息系统开发平台OpenExpressApp

Metametamodel

Object RoleRelationship

Metamodel

Object X Object Y

Model

InstanceOf

System in operation

Customer instance

InstanceOf

Object X ”customer”

InstanceOf

Relationship instance

InstanceOf

GOPRR

Method(ology)ConceptsRulesSymbolsReports

Product specifications

PropertyGraph

Model architecture in MetaEdit+

Object Y ”name”

Page 41: 信息系统开发平台OpenExpressApp

41

ConceptsGraphObjectPropertyRoleRelationship

MetaEdit+ has own tool for each metamodeling concept

Metamodeling concepts of GOPRR

Page 42: 信息系统开发平台OpenExpressApp

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

Page 43: 信息系统开发平台OpenExpressApp

43

Concepts Symbols

GeneratorsRules1 2 3 4

Steps for implementing DSM

Page 44: 信息系统开发平台OpenExpressApp

功能参考• OpenExpressApp架构-一个信息系统的平台 • 订单示例 • 总体架构的由来 • 平台学习必备知识 • 代码目录说明 • 应用模型ApplicationModel • 内置支持的模块类型 • 内置支持的属性编辑方式 • 内置支持的列表编辑方式 • 理解核心元素ObjectView • AutoUI自动生成界面 • Command扩展机制• 支持列表分组(Group)• 如何部署OEA应用• 配置CSLA的WCF数据门户代理• CSLA约定及框架约定• CSLA类库编写• 数据懒加载• 模型相关Attribute介绍• 性能相关• 支持差异保存• 支持WPF主题样式• 支持勾选视图 • 用户权限模块设计 • 使用CSLA类库实现用户管理 • 功能权限