博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
报表引擎 -架构描述
阅读量:5274 次
发布时间:2019-06-14

本文共 1076 字,大约阅读时间需要 3 分钟。

介绍

本文档是报表平台的技术架构描述,文中会描述主要的设计思路和设计决策。

架构目标和约束

报表平台作为独立的公共服务产品,可以简单的集成到各产品的报表应用

可维护性和可扩展性

  • 扩展运算与分页独立实现,代码更易于维护
  • 扩充表达式可以提高报表的运算能力
  • 在此报表引擎上可以构建多维分析应用

可用性

  • 能适用于上万条记录的报表数据量
  • 适用于Web页面显示

易用性

  • 针对技术人员,提供类似Excel编辑设计器
  • 对多维分析提供专用设计器
  • 其他情况下,需要再行开发设计器

实现约束

  • 采用XXX实现
  • 使用与XXX相同的表达式引擎和类似的表达式语法
  • 采用XXX作为显示组件

架构表现

文档描述了系统的主要模型,包括:

  • : 从系统外部角度表现重要的参与者和用例
  • :以平台独立性提炼用例重要分析元素和用例的分析实现
  • :从平台方面描述部署结构、设计元素结构等

用例模型从外部系统的角度描述了系统的行为。

用例模型

  • 应用用例:描述用户如何与系统交互以实现预期的功能

2009111510312839.gif

用例

描述

基本要求

设计报表

报表设计人员通过这个用例设计一张报表

通过提供的报表设计器进行报表定义

浏览报表

使用者通过此用例查看报表数据

查看前有些报表需要输入参数

预览打印报表

使用者通过此用例以分页方式查看报表,并可以打印报表

  

填报

使用者通过此用例进行业务数据的输入

对于上报可能需要自动汇总功能

多维分析

数据分析人员通过此用例可以从多维度分析数据

专有的多维报表设计器,查看报表时提供交互功能

  • 基础结构用例:描述应用用例的每一步如何添加诸如可用性、可靠性、性能、容错性等质量属性
  • 扩展用例

分析模型

架构性重要分析元素

2009111510321061.jpg

描述

基本要求

扩展运算引擎

对设计的报表通过模型扩展并进行运算,生成完整的最终报表

需要注意扩展和运算的效率

分页引擎

把最终报表通过分页引擎和分页规则生成多页报表

  

数据源

提供给报表的数据来源

外部定义数据源程序集,实现特定接口

表达式引擎

实现报表运算中定义的表达式

可以扩充表达式增加报表的运算能力

报表元数据

报表的定义描述文件

报表文件以XML方式存储

设计器

对报表提供统一的表格式设计器,对多维分析提供专有设计器

使用ViewGrid控件

打印预览

以分页方式浏览数据

实现轻量级预览控件,减少系统资源

架构性重要用例实现

设计模型

设计元素

2009111510325768.gif

部署结构

2009111510332689.gif

组件结构

2009111510334997.gif

更多内容:productView-pdf_46x35.gif 

 

欢迎转载,转载请注明:转载自 [ ]

转载于:https://www.cnblogs.com/zhoujg/archive/2009/11/15/1603285.html

你可能感兴趣的文章
live555学习笔记6-建立RTP会话
查看>>
[选择性翻译][HDP Ambari 2.2.2安装使用说明][2]
查看>>
canvas坐标操作
查看>>
shell 基础
查看>>
vue跨域代理配置
查看>>
NuxtJS实战,一个博客系统
查看>>
修改默认的undo_retention参数设置
查看>>
Dapper 仓储接口类 实现总结
查看>>
参数错误。 (异常来自 HRESULT:0x80070057 (E_INVALIDARG))
查看>>
shell简单用法笔记(一)
查看>>
后缀数组学习与练习(入门向)
查看>>
python第一课————软件安装及“hello,world”程序编写
查看>>
面试汇总,每次的面试,都会使我更进一步。
查看>>
Oracle 查询用户和删除用户
查看>>
SilverLight之旅(3)
查看>>
若有恒,何必三更眠五更起;最无益,莫过一日曝十日寒
查看>>
[na]office 2010 2013卸载工具
查看>>
OpenFlow Switch
查看>>
Redis笔记-Sentinel哨兵模式
查看>>
java 多线程
查看>>