电脑桌面
添加蚂蚁七词文库到电脑桌面
安装后可以在桌面快捷访问

05定制化技术设计说明书_模板(for V10.0).docx

05定制化技术设计说明书_模板(for V10.0).docx_第1页
1/15
05定制化技术设计说明书_模板(for V10.0).docx_第2页
2/15
05定制化技术设计说明书_模板(for V10.0).docx_第3页
3/15
XXXX客户名称XXXX项目定制化技术设计说明书修订记录Ver.No日期编制/修订审核批准修改的章节号目录1.文档简介.31.1.目的..31.2.范围..31.3.适用对象..32.设计目标和约束.33.业务场景、需求分析.43.1.概述..43.2.场景1(如果没有,请删除).44.功能设计.54.1.概述..54.2.总体设计..64.2.1.模块划分/包间关系(可选).64.2.2.系统接口-与外部..64.2.3.系统接口-系统内部模块间..74.2.4.域模型(包内部类图)..74.2.5.状态图(可选)..94.3.子设计1-XXX(若没有,请删除).94.4.重要业务流程实现(可选)..95.部署.106.数据模型.106.1.概述..106.2.数据模型..106.2.1.概念模型(可选)..106.2.2.逻辑模型..116.2.3.物理模型..116.3.数据库性能指标(可选)..126.4.数据性能估算模型(可选)..126.4.1.表空间估算..126.4.2.UNDO估算.126.4.3.TPS估算..126.4.4.SQL语句性能估算.127.其它.127.1.规模分析及实现(可选)..131/17.2.性能分析及实现(可选)..132/11.文档简介1.1.目的[What:本节定义此软件构架文档在整个项目文档中的作用或目的,并对此文档的结构进行简要说明。]此文档从构架方面对XX系统进行综合概述,记录并表述已在构架方面对目标系统作出的重要决定。此文档针对XX系统的《需求规格说明书》进行业务架构建模,并对后续的设计和开发工作提供指导和参照。。1.2.范围[What:简要说明此文档的工作范围,明确说明不处理的内容]本文档主要涉及XXXX(如:上述需求文档中描述的需求),包括:权限授予权限验证。。。本文档不涉及以下内容:权限定义。。。1.3.适用对象本文档适用于:系统设计师(主):遵循本文档进行详细设计需求工程师:根据本文档中描述的架构模型评估需求满足度开发工程师:参考,对即将实现的系统获取全局性的设计指导2.设计目标和约束[What:说明对构架具有某种重要影响的软件需求和目标,例如,安全性、保密性、市售产品的使用、可移植性、发布和重新使用。它还要记录可能适用的特殊约束:设计与实施策略、旧代码等。1/11对于XXX产品的子系统,本节说明对构架具有某种重要影响的软件需求和目标,例如功能性目标、可移植性、性能目标,发布目标和旧系统的升级目标等,旧系统对新功能的影响。[How:对于CDT及DataTask等外围工作类产品的子系统,需对所有的问题进行说明。]目标:满足XXXV2.0的需求规划。性能上比v4.0提升3倍约束:与XXXV1.0已FI系统模块兼容3.业务场景、需求分析[What:本节列出用例模型中的一些用例或场景,这些用例或场景应体现最终系统中重要的、核心的功能;或在构架方面的涉及范围很广(使用了许多构架元素);或强调或阐明了构架的某一具体的细微之处。在概述中,对系统级的业务场景进行分析和描述,在后续小节中,对关键、接口、复杂逻辑性等部分的业务场景进行描述][How:通常用以下各种方式来描述并分析业务场景:用例(用例图及用例描述,DFD,流程图或活动图。也可以使用其它的需求分析技术。根据《XX需求规格说明书》的描述,其主要业务场景概括如下:。。。[How:此处最好用图、表格来说明]分析后,总结如下:。。。3.1.概述[What:本节通过系统级用例(场景)实现来阐述软件的总体实际工作方式,并解释不同的设计模型元素如何促成其功能的实现。]3.2.场景1(如果没有,请删除)[What:本节及后续小节通过分别描述一个系统内的关键、接口、复杂逻辑用例的用例视图,并指出这个关键用例在整个系统用例中所处的地位,起的作用。]2/11示例:4.功能设计[What:本节说明设计模型在构架方面具有重要意义的部分,例如设计模型被分解为多个子系统和包。而每个重要的包又被分解为多个类和类实用程序。][How:应该介绍那些在构架方面具有重要意义的类,并说明它们的职责,以及几项非常重要的关系、操作和属性。]4.1.概述[What:本节中要描述实现的总体思路]3/11[What:也可包括本系统中的项目及包的划分及命名。]4.2.总体设计示例:1、合同管理包括合同的新增、修改保存、提交审核、生成付款计划、删除付款计划;2、已审核的合同,根据已生成的付款计划,根据摊销方案一次性生成所有租金结算数据;3、根据已生成的付款计划,下推付款单给出纳系统,下推实物卡片;4、每月根据租金结算相应的数据生成凭证;4.2.1.模块划分/包间关系(可选)[What:对于每个重要的包和项目,都用一个小节来加以说明,其中应包括该包的名称、简要说明以及显示该包中所有重要的类和包的图。][How:包图对于大粒度的子系统或者模块适用,对于最小粒度的模块本节可选。]无(最明细模块,无须)。4.2.2.系统接口-与外部[What:本节描述一个模块的关键对外接口及其与其它模块的依赖关系。]示例:接口名称:setBarcodeAttachQuantity请求方式:HTTP标准的POST请求头:携带accessToken,由6登录接口获取。即先调登录接口获取到token后,再携带accessToken调用苍穹提供给国信影像的接口参数格式:Json格式接口提供方:金蝶云苍穹接口提供方:道可维斯影像4/11请求路径:/ierp/kapi/app/sys/setAttachmentQuantity功能介绍:在影像上传到服务器之后,调用该接口去通知金蝶云·苍穹系统“影像已上传”传入参数样例:{"barcode":"KDKDC-02-20190328-03096","quantity":5,"type":"1","scanuserid":"123456"}参数说明:名称类型是否必填参数描述barcodeStringY单据编码quantityIntY发票数量typeStringY类型,1/报账,2/合同,默认为报账单scanuseridStringY上传影像用户账号返回参数样例:失败:{"data":{"code":"0","message":"失败说明"},"state":"success"}成功:{"data":{"code":"1","message":"说明"},"state":"success"}4.2.3.系统接口-系统内部模块间[What:本节描述一个模块的内部模块间接口及相互依赖关系。][How:包图对于大粒度的子系统或者模块适用,对于最小粒度的模块本节可选。]无(最明细模块,无须)。5/114.2.4.域模型(包内部类图)[What:本节描述一个模块的关键领域对象及其相互关系。对于该包中的每个重要类,应包括其名称、职责和(可选)主要属性与操作的说明。]示例:规则:1.定义IAmortiAlgothm接口、抽象类AbstractAmortiAlrithm、摊销方案一实现类AmortiSchemeFirst、摊销方案二实现类AmortiSchemeThird;beforeGenerate:实现加载合同的基础数据到内存;在AbstractAmortiAlgorithm中统一实现;generateSettleData:在AbstractAmortiAlgorithm中做一个空实现,具体实现方案根据摊销方案在子类中覆盖即可,即AmortiSchemeFirst覆盖该方法实现,实现摊销方案一个具体逻辑,AmortiSchemeThird覆盖该方法实现,实现摊销方案三个具体逻辑;afterGenerate:对generateSettleData生成的数据作校验或其他扩展操作;insertSettleData:把生成的结算数据插入数据库,在AbstractAmortiAlgorithm统一实现;rentSettle(LongleaseContractId):在在AbstractAmortiAlgorithm统一实现;伪代码具体为:rentSettle(LongleaseContractId){beforeGenerate();generateSettleData();afterGenerate();6/11insertSettleData();}2.AmortiAlgorithmFactory根据参数settlePeroidSysPara决定返回IAmortiAlgorithm接口的具体实现类;3.摊销方案的内含报酬率使用poii-4.1.2.jar如下类的方法生成:org.apache.poai.ss.formuola.functions.Irrpublicstaticdoubleirr(double[]income)4.2.5.状态图(可选)[What:本节描述一个模块的关键状态及状态的转换。][How:对于没有状态或者状态转换的模块,本节可选。]示例:说明:1.状态前面是中文提示,括号里的字幕为数据库存储值;2.保存逻辑:租赁合同、付款计划入库;单据状态为暂存;3.提交逻辑:租赁合同、付款计划入库;单据状态为已提交;4.撤销逻辑:租赁合同单据状态为暂存,业务状态不变;5.审核逻辑:租赁合同单据状态为已审核;6.反审核逻辑:租赁合同单据状态为暂存;4.3.子设计1-XXX(若没有,请删除)[What:对于上述总体架构中,复杂的组成部分逐个展开。][How:其目录结构应与4.1总体架构相同]7/114.4.重要业务流程实现(可选)[利用上述组件模型,体现某个重要的业务流程是如何实现的。][通常使用SequenceDiagram来表述;对于注重数据的系统,可以使用DFD图来表述]5.部署[What:本节说明用来部署和运行该软件的一种或多种物理网络(硬件)配置。它是部署模型的视图。对于每种配置,它至少应该指出用来执行该软件的物理节点(计算机、CPU)及其互连情况(总线连接、LAN连接、点到点连接等)。另外还要包括进程视图各进程到物理节点的映射。][How:本节对于外围工具及需要单独运行的系统为必选项,对于XXX功能部件不需要。]6.数据模型[What:从数据库角度对数据进行建模,包括概念模型、逻辑模型、物理模型。其中逻辑模型和部分物理模型内容通常用数据模型图来统一体现。][How:从不同的角度描述业务数据在数据库的体现,数据特征及属性,数据的存取模式和访问方式等。]6.1.概述[What:本小节描述数据在数据库中是如何实现,怎样展现的。][How:>对关系数据库,用CDM来体现数据的概念结构,用PDM来体现数据的逻辑结构和部分物理结构。>对非关系数据库(如XML、文本文件、EXCEL文件),应表达主体结构,必要时应补充示例格式。]6.2.数据模型6.2.1.概念模型(可选)[What:本小节通过对信息世界的管理对象、属性及联系等信息的描述来进行数据概念建模。以此用来说明数据库将反映的现实世界中的实体、属性和它们之间的关系等的原始数据形式,包括各数据项、记录、系、文卷的标识符、定义、类型、度量单位和值域,并建立数据库的每一幅用户视图。概念模型要求:较强的语义表达能力,能够方便、直接地表达应用中的各种语义知识。8/11应该简单、清晰、易于用户理解,便于用户与数据库设计人员之间进行交流。概念模型包括:实体、属性、联系等。][How:概念模型用EER(扩展实体关系图)视图来描述。]6.2.2.逻辑模型[What:逻辑建模是把现实世界或概念模型中的原始数据进行分解、合并后重新组织起来的数据库全局逻辑结构,包括所确定的关键字和属性、重新确定的记录结构和文卷结构、所建立的各个文卷之间的相互关系,并形成本数据库的数据库管理员视图。本节描述一个模块的关键数据对象及其关系,以及由此关键对象产生的数据操作。本节重要关注的是数据在数据库中的表现形式及相关约束。逻辑模型包括:表、关系、约束、视图、对象、过程包等。][How:逻辑模型用PDM视图来描述。]6.2.3.物理模型[What:本节的目的是建立系统程序员视图,包括:1.确数据访问方式及存取策略。2.确立数据库对象设计的通用参数。3.针对特殊对象的详细参数设计。数据访问方式及存取策略的具体参考内容:1.确定数据的存储结构:考虑存取时间、存储空间利用率和维护代价三方面的因素,定义合理的数据冗余规则,比如定义一个数据冗余表,在一个表中最多冗余3个字段等。2.设计数据的存取路径:考虑建立索引的规则,比如一个表的最多索引数,复合索引最多列数,是否考虑使用聚簇索引等。3.确定数据的存取位置:为了提高系统性能,数据应该根据应用情况将易变部分与稳定部分、经常存取部分和存取频率较低部分分开存放。4.确定系统的参数配置:考虑是否修改数据库系统参数来提高存储、计算、查询等方面的性能。比如修改并行参数提高查询性能,修改优化器策略来适应不同的应用等。数据库对象设计的通用参数:1.表空间的设计(包括表空间的划分规则)。2.Table的设计。3.视图的设计。4.索引的设计。5.……特殊对象的详细参数设计:9/111.特殊表的设计:比如调整该表的具体参数,比如为了提高查询性能,可以提高该表的并行度;为了更好的Update性能,调整该表的pctfree参数等等。2.特殊表空间的设计:比如该表空间只存放只读数据,那么可以将该表空间调整为只读属性以提高性能;该表空间存放极高频度的Update、Delete操作表,那么可以调整它的段、区等参数。3.UNDO空间的重新设计:在某些情况下,默认的UNDO表空间可能不能满足性能要求,比如大数据量迁移、特大事务等,这时候可能需要我们重新设计UNDO表空间以满足需求。4.……]示例:数据库设计见相应的PDM文档;具体表名为t_fa_lease_contqract、t_fa_lerase_pay_plan索引:针对合同下查结算数据的索引:索引名:IDX_FA_LEASECONTRRACT_ORGDATE,字段:FORGID,FLEASESSTARTDATE针对列表查询建立的索引:索引名:IDX_FA_REANTSETTLE_ORG_DATE,列FORGID,FSETTLEADATE;6.3.数据库性能指标(可选)[What:确立数据库性能指标,确保数据库系统设计符合客户需求。数据库性能指标包括:数据库系统性能指标、用户定义的性能指标;]6.4.数据性能估算模型(可选)6.4.1.表空间估算[What:建立表空间估算模型,以便给表空间的规划及创建提供参考依据。]6.4.2.UNDO估算[What:建立UNDO空间估算模型,以便给UNDO空间的重新设计提供参考依据。]6.4.3.TPS估算[What:建立TPS估算模型,以便给确立数据库整体的响应时间及确立具体的事务响应时间提供参考依据。]10/116.4.4.SQL语句性能估算[What:建立SQL语句估算模型,以便给SQL语句的调整提供参考依据。]7.其它[What:说明软件中会对架构产生影响的其它特征,例如规模、性能、质量等。]7.1.规模分析及实现(可选)[How:对于需要单独部署的工具类产品,需要描述用户的级别,数量,日常及特殊操作的性质,操作并发的数量级,以及DB中数据量可能达到的数据级,并说明为了满足这些特性在软件构架上采用了哪些措施]数据量分析表数据表1数据量计算公式数据量等级[可选等级包括:小(1万以下)、一般(1万~100万)、大(100万~1000万)、巨大(1000万以上)]解决方案[可能的解决方案包括(但不限于):a.由于数据量较小或者一般,无需特别处理。b.针对某些常用查询字段建立索引。c.数据表拆分。d.数据转储。][How:对于XXX功能性系统,需要对每一个重要功能对以上情况进行分析和说明]7.2.性能分析及实现(可选)[What:对于XXX功能产品,参照XXX产品统一的性能指标求,对需要进行特别关注和说明的功能点进行说明。对性能指标需要单列和调整的功能点分析原因。并说明为了达到性能的指标在系统架构上采取的措施][What:对于XXX外围工作类产品,根据单项产的性能指标说明为了达到性能的指标在系统架构上采取的措施]11/11

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

05定制化技术设计说明书_模板(for V10.0).docx

确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息
QQ群
  • 答案:my7c点击这里加入QQ群
支持邮箱
微信
  • 微信