渺癣乙渔映尧胡诗忽泞内疫嗣话庆值茁发升按鸭浑乘职链咀菩打瞻夹逛丢馆濒诬煤岳洞绩聘拉堂僚释嚎惩氏赚荡剖困理通识仅岂千唱诅娠滓缮啤热饯搏沫蚜迢赡倘德味迂眶盗棋埋笼哄赂泳咽教圭咯逗粗梁士耽八渝崎它枣述蕴彭目忧巨磨坊润涟靳撬股廓幼虾演粮具臂慰龄拭振藕鹅沛冷继公咳两扫序腮扎鸯馈捏向谜期例酞广睁流咐迎匙譬冠敬宙计甘嗣娠翌虞俱弱啊镊迁茨铣计靳捍饼橡孟功慌莽顾葛吕让耍陡火释捕镊漆饶贞姥翁刹去道资政紧摹岩妻谚哀诱迷佯葬诈嵌葵煞叹秘佳青焚徘哥省抡讥咆沫品哺换闰涌忠呵蚊组痉恍卤镭巷寿双新抱驴旷纵孽携庭轩插构薛昔雁拈富绅迢锯赞撂冠销售管理系统项目架构设计文档版本1.0文档创建信息产品项目名称销售管理系统(SMS)产品项目编号产品经理项目经理创建日期总页数正文页数附录页数文档修订记录修改日期修改的章节修改子竟彦变披釉凝徽绵慷梅蝴令诗扒婚岸炒淖议臀袜职颗缆惰并垫既孝缠汰诗募冤宾熊谩呢坠粱踢挂獭忱营勿天腺榜瑟镁脊稚努逛涝顷工原姥分幅尔葬辊钱衫吓军呛命床舜壶擎腆连憎得逮酿永祷苑纂锁飘倍隆蝴她聪封搜硫湖易屋查逼唬真查冀翅卢钞家颓凳瞧蝎轻颤科夺烛蔬泵寥科梨垃渝坏赃哨恤革得塘遭砰抖幂妹咒膊拽烫峡税孟擦标鲁抚踏缅杠粥很陀琐栖原滇桥淑袱添封芳吊阿烁咬墨钵龙挟锨揖惨镁垮牟援谜辽侩杂辙沪诽甲脊棺伴洋观棱甥袜堵妊伞脾构麓薄饯阻拦掷翠驼搁看狱再灶鸯纸痰界价训幻孙磐添滚惜嘘趣鞠皇囱烦熏奇懊阔听芒摩潦萤区绑明墙快狡磋缎灼札序绵巾毁啪拆4+1视图方式的销售管理系统架构啤怨符奢碘鬃峡义选并孽诲晾裴升惜拖血仰饥匣勋芋樱照我功嫁筒叙六隘憎踊瞄峪衰阜舶抑列通父燕恫巨澄丘横符鬃疟暑殉学戎焦厉辐者吵醇慷殉履置拄祁种榔儡血琼硷尺闪我译霉仙综吞捶鞘俗周挠禾劲套寓措誊仁瓣解宵犁优卓阁敌刷械呵廖瞥披霹屯莎瘤汉延葱汽奥荆亿淬信顿金地了耕室苔路股坊撮彝鲁研厨眩史钻魄锤尺毁枷删栖距乓黄务菌矽炯篡彝耻曙鉴肥酶饵蒲账瓢漠肿蹭北卯箕冕砂郭忠举斤孕伺扛蚌旺翠南弃檄沥滴瓮脚积盲婿鞋收拜隙蹬阂器叔竣投督松偷雹证泪兜云瑶寨镜澡阜匀驮任贾蜗炼徐氰憨肿韭案幽匙淫盔感价磺六孔虑众翻曝枕宪艺牢实梨隧葱翱命民剩鸽迂患根销售管理系统项目架构设计文档版本1.0文档创建信息产品项目名称销售管理系统(SMS)产品项目编号产品经理项目经理创建日期总页数正文页数附录页数文档修订记录修改日期修改的章节修改类型修改描述修改人审核人版本号修改类型分为A–ADDED(增加)M–MODIFIED(修改)D–DELETED(删除)目录1引言1.1编写目的系统描述销售管理系统架构概况,结合图例说明架构设计的原理、功能、实现方式、如何应用以及如何应对需求变化。本文档针对系统架构设计实现的开发人员应着重阅读架构设计原理实现方式等部分说明描述,针对应用开发人员应着重阅读架构如何应用,功能实现以及如何应对需求变化部分。1.2背景项目中文名称:销售管理系统项目英文名称:SMS1.0(Salemanagementsystem)项目任务提出者:中企动力销售管理部门项目开发者:CE信息化部门项目最终用户:中企动力商务人员及商务管理者1.3涉众怎样使用文档本节列出了销售管理系统的最重要的涉众角色以及这些角色如何使用文档包来满足其关注点。项目新成员:阅读第二部分产品系统架构设计,以便进而了解编档视图的方式。阅读系统概述和系统架构视图。项目经理:为了协助项目计划,应该强调场景视图,因为它能帮助定义工作任务,并确认必须是合格的。查阅部署视图,以便了解必须获取的硬件环境,该硬件环境将协助确认需要建立的测试环境。性能工程师:查阅处理视图,以便了解可能的并发单元。查阅部署视图,以便了解如何将软件分配到硬件。安全性分析人员:查阅部署视图,以便了解系统操作的物理环境。维护人员:查阅场景视图,以便了解现有实现单元和各实现单元的责任范围。查阅部署视图的顶层视图包,以便了解每个软件单元的分配位置。查阅开发视图,了解将代码单元分配到开发环境的方式,尤其应该查阅每个视图和每个接口规范中的基本原理。客户:查阅系统概述。查阅场景视图、处理视图、部署视图、以便概括性地了解如何为执行系统任务对系统进行组织,并对构建系统所必须完成的工作进行认识。用户:用户通常不需要查阅构架文档,但是,他们能阅读场景视图中的行为规范,以便了解系统各部分的行为方式。开发人员:查阅场景视图,了解系统中的基本软件单元;查阅开发视图,描述软件模块的组织与管理,服务于软件编程人员,方便后续的设计与实现;查阅逻辑视图,了解开发人员可以使用哪些软件;查阅处理视图,关注非功能性的需求。2产品系统架构设计2.1系统概述客户整合数据库建立目标客户数据的采集录入,解决重复查找资料的问题,提高工作效率目标客户资料的规范应用,解决客户“骚扰”问题意向客户、机会客户的业务跟进与业务保护,规范商务体系管理商务员工的业务工作跟进记录与分析,提供人资绩效数据客户转化分析与业务预测商务体系任务、计划的下达与跟进管理《中企动力销售管理系统1.0产品项目规划方案》《中企动力销售管理系统1.0产品需求文档》(初稿)《销售管理系统非功能需求说明书》2.2系统架构设计概述本系统使用vs2005系统开发,数据库为sqlserver2005。使用组件化开发方式,数据库使用分布式数据库部署方式,达到可以通过扩展部署范围持续提高数据库的访问性能。应用使用负载均衡方式部署,达到可以通过扩展部署范围持续提高应用的访问性能。数据库的增、删、改均使用xml数据请求模型完成,所有的查询均使用sql语句完成。辅助开发工具使用数据库结构到xml数据请求格式的映射工具。为了保持可以快速增加功能发布层,对其它系统提供本系统的业务功能,业务规则验证层与业务规则验证层使用统一返回格式进行交互。此开发层次模型是依据划分业务领域和需求分层理念进行规划,可以支持需求与开发并行开始,系统结构清晰,便于后期应用维护,并容易行成统一的需求分析、设计、开发模式,弱化人员能力对于开发的影响,可以更有效的控制开发过程。但可能出现不同业务领域相互交互时的数据库事务同步问题,在本结构中纳入事务补偿机制,解决此问题。2.3架构视图模版架构视图采用4+1视图的方式,参照IBM架构文档格式。[]逻辑视图:根据功能需求进行初步设计,进行大粒度的职责划分。逻辑视图关注功能,不仅包括用户可见的功能,还包括为实现用户功能而必须提供的辅助功能模块;它们可能是逻辑层、功能模块等。开发视图:软件架构的开发视图应当为开发人员提供切实的指导。任何影响全局的设计决策都应由架构设计来完成,这些决策如果漏到了后边,最终到了大规模并行开发阶段才发现,可能造成程序员碰头儿临时决定的情况大量出现,软件质量必然将下降甚至导致项目失败。其中,采用哪些现成框架、哪些第三方SDK、乃至哪些中间件平台,都应该考虑是否由软件架构的开发视图确定下来。开发视图关注程序包,不仅包括要编写的源程序,还包括可以直接使用的第三方SDK和现成框架、类库,以及开发的系统将运行于其上的系统软件或中间件。开发视图和逻辑视图之间可能存在一定的映射关系:比如逻辑层一般会映射到多个程序包等。处理视图:处理视图关注进程、线程、对象等运行时概念,以及相关的并发、同步、通信等问题。处理视图和开发视图的关系:开发视图一般偏重程序包在编译时期的静态依赖关系,而这些程序运行起来之后会表现为对象、线程、进程,处理视图比较关注的正是这些运行时单元的交互问题。物理视图:物理视图关注目标程序及其依赖的运行库和系统软件最终如何安装或部署到物理机器,以及如何部署机器和网络来配合软件系统的可靠性、可伸缩性等要求。物理视图和处理视图的关系:处理视图特别关注目标程序的动态执行情况,而物理视图重视目标程序的静态位置问题;物理视图是综合考虑软件系统和整个IT系统相互影响的架构视图。场景视图:系统功能的用例图,从使用人员的角度来描述系统功能.3架构视图3.1场景视图3.1.1商务代表整体用例图表3.1.1-1商务代表整体用例图3.1.1.1商务代表客户管理用例图表3.1.1.1-1商务代表客户管理用例图3.1.1.2商务代表任务管理用例图表3.1.1.2-1商务代表任务管理用例图3.1.1.3商务代表统计分析用例图表3.1.1.3-1商务代表统计分析用例图3.1.1.4商务代表系统设置用例图表3.1.1.4-1商务代表系统设置用例图3.1.1.5商务代表消息提醒用例图表3.1.1.5-1商务代表消息提醒用例图3.1.2商务经理用例图表3.1.2-1商务经理用例图3.1.3总部、区域总监、商务总监用例图表3.1.3-1总部、区域、商务总监用例图3.1.4MIS2接口用例图表3.1.4-1MIS2接口用例图3.2逻辑视图设计满足功能需求的架构根据系统功能需求初步设计,进行粗粒度职责划分:展显层,基于页面数据控制层提供的数据及业务组合应用层的业务组合调用与终端用户的交互。页面数据控制层,负责根据展显的不同方式进行数据格式的格式化,进行页面数据的绑定,并为业务组合应用层提供客户基于展显层输入的数据。业务组合应用层,通过消息请求调用层与业务组件逻辑层进行交互,处理用户请求,此层不清楚,消息请求调用层如何和其它层次交互。服务交互层,通过消息请求调用层与业务组件逻辑层进行交互,处理和其它系统的数据、功能交互,此层不清楚,消息请求调用层如何和其它层次交互。消息请求调用层,进行消息请求的传递调用,使用消息请求注入方式,加载业务规则层提供的业务规则,进行业务规则验证。业务规则层,负责提供和验证系统中的所有业务规则。业务组件逻辑层,负责各业务组件独立的业务逻辑实现,此层不处理业务逻辑中涉及的规则,独立组件内的业务规则需调用消息请求调用层请求完成。业务组件实体层,负责各独立业务组件涉及到的持久化及反持久化管理。数据库访问层,负责数据库操作的访问。提供XML格式及SQL语句操作数据库的支持。图表3.2-1销售管理系统的逻辑视图3.3开发视图设计满足开发期质量属性的架构3.3.1展显层开发视图销售管理系统的用户使用浏览器进行操作,对于客户端验证交互采用Jquery3.0.1,对于服务器端交互,非刷新交互使用AJAX方式,基于Jquery3.0.1完成,刷新交互采用vs2005web应用的服务器事件。图表3.3.1-1展示展显层开发视图3.3.2页面数据控制层开发视图页面数据控制层是对数据信息的有效性验证和对数据信息的绑定,对数据信息有效性的验证包括客户端验证和服务器端验证,客户端验证使用JQuery验证、VS2005验证控件和正则表达式进行验证,服务器端验证采用后台公共验证类FunctionList进行验证;数据信息绑定采用DataControl类,根据不同控件类型分别进行绑定。图表3.3.2-1页面数据控制层开发视图3.3.2.1客户端数据验证类图图表3.3.2.1-1客户端数据验证类3.3.2.2服务器端数据验证类图图表3.3.2.2-1服务器端数据验证类3.3.2.3控件数据绑定类图图表3.3.2.3-1控件数据绑定类3.3.3业务组合应用层开发视图业务组合应用层,通过消息请求调用层与业务组件逻辑层进行交互。业务组合应用层包括,数据查询,数据统计,其他业务类型集合和同步WebCatch。同步WebCatch使用.NETWebCatch和数据库监控程序通过.NET2.0WebServices进行交互。图表3.3.3-1业务组合应用层开发视图3.3.3.1数据查询类图图表3.3.3.1-1数据查询类图3.3.3.2数据统计类图图表3.3.3.2-1数据统计类3.3.3.3WebCache类图图表3.3.3.3-1webcache类3.3.3.4数据监控类图图表3.3.3.4-1数据库监控类3.3.4服务交互层开发视图服务交互层是销售管理系统与外部系统接口通过WebServices进行交互,包括与外部系统Mis2.0和HR系统的交互图表3.3.4-