《HS系统开发模式介绍》由会员分享,可在线阅读,更多相关《HS系统开发模式介绍(16页珍藏版)》请在金锄头文库上搜索。
1、HS系统开发模式文档类别管理规范文档编号T03-00003-050205来源部门技术部研发部门应用范围技术部保密级别修订历史记录日期版本说明作者2005-3-221.2修订01:将BD对象的维护接口将自身往DA传递,更新为传递直接参数,即传递需要的数据属性参数。董应群2005-2-51.0Create董应群目 录1、目的22、系统命名空间的命名体系23、系统中的对象数据组织模式44、系统中的对象数据的处理方式55、HS信息处理模式原理图116、对象数据类基本接口127、DS层信息处理模式138、UI层的检测逻辑实现规则149、代码示例151、 目的1.1 规范化系统的开发模式;1.2 规范化系
2、统中对象的组织;1.3 提高系统的开发效率;1.4 提高系统的维护效率;1.5 降低系统的BUG率。2、 系统命名空间的命名体系在HS环境中进行对象和工具集的再次组合的体系。便于合理地组织各类对象和个性化工具集合。2.1 基本命名体系所有的HS环境中的对象和工具全部在Hotsales命名空间下。按如下形式进行展开:Hotsales.子系统命名空间/全局共享层次空间.下级子系统命名空间/系统对象逻辑层次命名空间2.2 全局共享层次命名空间2.2.1 Hotsales.SystemFramework /全局系统框架命名空间,在子系统中也可以提供自己的系统框架命名空间。2.2.2 Hotsales.
3、Common /全局系统工具集合命名空间,在子系统中也有自己的通用工具集合命名空间。2.3 系统对象逻辑层次命名空间具体层次描述见“T03-00005HS软件系统的实现规则.doc”层名命名标识层描述备注业务外观层BusinessFacadeBusinessFacadeBF提供业务处理的集成化接口,起UI层和业务逻辑处理层的交互代理。业务规则层BusinessRuleBusinessRulesBR系统中个性化业务逻辑处理中心采用复数形式业务数据对象层BusinessDataBusinessDataBD系统中业务数据的对象层具体子系统的通用层CommonCommonCM系统中的工具集合体数据访问
4、层DataAccessDataAccessDA系统中数据访问层,是对象化数据与关系型数据的交互代理。数据存储层DataStoreDataStoreDS数据处理层,提供存储过程处理/访问数据,甚至包含部分业务逻辑的处理。在DB中实现系统框架层SystemFrameworkSystemFrameworkSF系统框架层,提供系统配置信息的处理系统通用层SystemCommonSystemCommonSC系统通用工具集合Web层WebWebUI系统中用户接口,提供页面逻辑的处理,结合业务逻辑进行部分离散业务逻辑的处理。服务器端处理工具ServerSS各类自动化性质的工具的服务器端处理工具集合Web方式
5、提供的服务HttpProviderHP采用WEB方式提供服务的工具集合2.4 HS的所有系统中各子系统命名空间总揽该信息需要与“F05-00006系统架构.xls”中的命名空间保持一致。子系统名称及编号、代号命名空间头部备注人事管理 M01、HotHRHotsales.HR目前主要包含企业组织结构、人员系统管理 M02、HotUM*Hotsales.System系统体系结构、权限等管理业务处理 M03、HotBizHotsales.Business销售订单(业务)、合同管理销售管理M45 SaleManageM04、HotSaleClewHotsales.SaleManageHotsales.
6、SaleManage.ClewHotsales.SaleManage.Chance销售线索、销售机会M05、HotSaleChance客户管理 M06、HotCustomerHotsales.CustomerInfo客户资料管理(涉及全面客户资料:客户、供应商等)服务与支持 M07、HotServiceHotsales.Service服务与支持财务管理 M08、HotFinanceHotsales.Finance财务管理办公基础辅助工具T00T01、HotSMSHotsales.OA.SMS短信服务提醒服务(通过内部消息、短信、邮件来实现)内部消息服务系统事件工作流(目前主要涉及到审批流和审批
7、工具)工作计划(包含计划安排,同时调用提醒工具)邮件工具(群发、定向发送)T02、HotREMINDHotsales.OA.RemindT03、HotMESSAGEHotsales.OA.MessageT04、HotSEHotsales.OA.SystemEventT05、HotWFHotsales.OA.WorkFlowT06、HotWPHotsales.OA.WorkPlanT07、HotMailerHotsales.OA.MailerT08、HotGTaskHotsales.OA.GeneralTaskT09 HotFaxHotsales.OA.Fax传真管理中心内部交流T20、HotA
8、dviceHotsales.OA.AdviceCenter建议中心T21、HotNewsHotsales.OA.NewsCenter新闻中心T22、HotbbsHotsales.OA.BBSBBS产品管理 M09、HotProdHotsales.Product产品管理市场管理 M10、HotMarkHotsales.Marketing市场管理系统设置 M30、SysSetupHotsales.SysSet系统设置管理系统框架 T90、HotSystemFrameworkHotsales.SystemFramework系统框架通用工具 HotCRMCommonHotsales.Common通用工
9、具编号规则:1、 M开头,企业信息化管理系统2、 P开头,企业信息化生产过程管理信息系统,车间生产管理、生产跟踪3、 E开头,企业信息化工程技术子系统,如,CAD、CAPP等4、 T开头,企业信息化工具系统5、 S开头,企业信息化管理集成系统2.5 HS体系中的商用系统代码集成商用系统编号代号名称S01HotCRM客户关系管理系统3、 系统中的对象数据组织模式3.1 系统中特定对象数据采用两类数据对象进行封装和传递。3.1.1 存放单一对象信息的特定对象数据,采用实际的对象,对象的属性是该对象对应的HSF规范视图的所有属性和特定大字节属性(具体定义见“T03-00007HS DB管理规范.do
10、c”)。命名规范为:XXData3.1.2 存放多个对象信息的对象集合数据,采用DataTable对象来存储该对象集的列表数据。其中不能包含特定的大字节属性。命名规范为:XXTable3.2 用于UI显示的信息传输模式所谓信息传输模式:指函数参数的类型范围。在UI中显示的信息仅仅来源于两类信息载体,DataTable和特定的对象。3.2.1 用于数据表格/DataGrid、下拉列表框、列表框、控件数组等信息显示,采用通用DataTable作为信息的载体进行信息的传输。信息的传输方向:“DSUI”;3.2.2 用于非上述页面元素的显示,采用特定的对象作为信息的载体进行信息的传输。信息传输方向“D
11、SUI”3.2.3 特定统计性质的数据的显示,可能来源于DataTable或特定的函数参数,甚至函数的返回值。3.3 非UI显示(逻辑处理需要)的信息传输模式用于逻辑处理需要进行信息的获取,可以根据需要进行信息的传递,但一般采用“用于UI显示的信息传输模式”。特殊情况根据需要用户可以自行决定信息传输模式。4、 系统中的对象数据的处理方式4.1 系统中任何对象都对应一个对象数据类,所有特定对象信息的传输是通过该类的对象进行传输的。该对象的属性是该对象对应的数据表的所有属性,和该数据表对应的视图扩充过来的属性。4.2 与特定对象相关的类及其基本功能假设对象名为Object。层次类名功用Busine
12、ssFacadeObjectSystem提供UI需要的所有个性化接口,包含简单的参数规范性检测。一般没有属性,纯粹的方法封装体。BusinessRulesObject提供个性化业务逻辑处理引擎。没有参数检测。一般没有属性,纯粹的方法封装体。BusinessDataObjectData提供当前对象的个性化属性封装体。属性范围:该对象对应的数据表的所有属性,和该数据表对应的视图扩充过来的属性。提供基于编号的属性获取接口,集成到类的初始化方法中。同时提供基于独立命名的基本信息维护接口(新建、基于主键的修改)CommonObjectTool与特定子系统相关的通用工具封装体。一般没有属性,纯粹的方法封装
13、体。DataAccessObjects提供与特定对象相关的数据表的访问接口。系统通过该层连接远程DB,执行DS层的SP,进行系统需要的数据处理。4.3 特定对象的个性化类4.3.1 系统中将提供基本属性和控制属性。在所有的属性获取接口中需要自己再生成SQL代码片段,应全面防止注入式SQL病毒。4.3.2 属性提供了该对象对应的数据表的所有属性,和该数据表对应的视图扩充过来的属性。即该对象对应的视图的所有属性和大字节属性。某些类还提供了个别特殊的统计属性,这些属性的设置需要通过非编号的扩展信息获取接口来进行信息的设置。定义属性的时候需要初始化属性,根据不同的类型进行如下初始化n 数值类型:初始化
14、为“0”n 字符型:初始化为“”n 日期型:初始化为“1990-1-1”n 引用型:初始化为“null”4.3.3 构造函数系统提供了基于配置的属性初置构造函数,即提供通过编号和XML文件配置的初始化类时应该设置的属性值。如果用户提供的构造函数和扩展函数中编号没有定义,则统统默认为“2”。即指定了无效的编号,则初始化为全部视图属性。基本编号:内置的构造函数编号n 0:空对象,初始化一个空对象,不从DS层获取任何信息。用于创建和修改对象信息时使用。n 1:全部直接属性,获取所有视图/数据表中有对应字段的属性,含大字节属性。n 2:全部视图属性,获取所有视图属性,不含大字节属性。这是默认方式,即无参构造函数默认采用该编号。n 3:名称属性,仅仅ID属性和名称/描述属性。n 4:大字节属性,仅仅ID属性和所有大字节属性。n 5:其它属性,仅仅ID属性和其它非视图/数据表属性。扩展编号:又称配置编号,基于配置文件的信息获取接口。配置文件参见“T03-00010系统属性设置配置策略.doc