从需求分析走向概要设计_第1页
从需求分析走向概要设计_第2页
从需求分析走向概要设计_第3页
从需求分析走向概要设计_第4页
从需求分析走向概要设计_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、从需求分析走向概要设计王青 2007-07-28在软件过程中,需求分析和概要设计是两个极其重要的阶段。需求分析是概要设计的依据,而设计则 是需求自然的逻辑延续。从需求分析走向概要设计,就是我们从待解决问题的领域走向解决方案的领域, 也就是我们从客观的现实世界走向主观的计算机待建系统世界的过程。为了使得大家对这一过程的目的、 原则和具体工作有较为清楚的认识,特阐述以下内容与大家讨论。凡以下之内容,均系一家之言,不妥之 处,敬请指正。软件工程的方法学方法学是指导我们解决问题的原则,它是我们对于具体问题解决方案的哲学基础,是我们思考问题, 解决问题的方式方法。下面的一些方法学是软件工程的理论基础和逻

2、辑起点,它们在软件工程的具体方法、 规则和关键活动域中都有体现。了解这些方法论,有助于我们加深对软件工程的理解;同时在我们优化软 件工程的活动中,对它们的了解和应用更会使我们的工作事半功倍。分治法:将大的问题分解为小的问题,从而缩小问题的规模,降低问题的复杂度,减少风险。逻辑完整性:所有的活动和所有的制品,都有其逻辑上的起点和支撑点;同时,也都有其逻辑上相应 的结果。可管理:所有的活动和制品都应当能够被控制和调整。文档化(documented):将不可见的活动和思维成果外化为具体的文档。敏捷与MDA:敏捷的原则在于够用就好;而MDA立足于用模型取代部分文档,增强设计的可追溯性 与可重构性。软件

3、工程的这些方法学于实践当中体现为软件过程,而软件过程的实施则依靠管理和组织的保障,在 此限于篇幅不再赘述。需求分析的制品需求分析的过程是对现实世界中的待解决问题的建模过程,同时也是深入剖析待建系统的过程。它的 成果通常包括:一组Use Case:通过对前置条件、后置条件和事件流的描述来清楚的界定系统使用者对于系统的 功能性需求。Domain Model:明确待建系统中的业务实体以及它们之间的关系SRS/ARS (Software/Application Requirements Specification):综述待建系统的目的、功能性需求、 接口/界面需求、约束以及非功能性需求。概要设计的制品

4、概要设计就是在需求分析成果的基础之上,运用软件设计的原则、模式、惯例和经验,提出问题的解 决方案,并明确界定待建系统的结构、接口和界面。在概要设计结束时,待建系统的技术架构、部署图、 组件的划分、各个组件的外部接口、用户界面(静态原型X持久化方案等设计要点都已经确定,系统的表 示层,业务逻辑层和数据层的解决方案也已经明确。我们通常用下面的这些制品来描述我们概要设计的结 果:全局制品Physical Architecture Diagram系统的物理结构,包括网络环境和服务器分布:Validator图表1系统物理架构图Technical Architecture Diagram系统的层次结构,以

5、及各层次所使用的具体技术:Installation Package Directory系统安装包的目录结构:More entries are omitted for clarifying土J1 srcL 1buildV一,艮_IIImgsclWEE3-INFrescurceIIuseruser, %X图表3系统安装包目录结构Deployment Diagram系统中的各个模块的部署情况:pc clientClientBrokerErrtryLanguage=ASP.NetBrokerEiitry.Corifig|pc serverQuoteServervendorFastQuoteVersio

6、n=3.6, Language=N/A, VendorName=QuoteMaster, Inc.PortfolioserverIPortfolio CalculatorLanguage=C#.Net)PorfolioT radelntegrator(Lariguage=C#.NetTradeEntryServerTradeErrtryi I i (VendorName=SuperTradeEntiy,IIVersion=1.0,Language二VB 6.0databaseServerBrokerageDB(Version=7.0, Vendor=Microsoft, Name=SQL S

7、eiverPortfolioDBIriterfaceLanguage=C#.Net)vendorIIS1 VendoiName=MicrosoftlVersion=6.0)图表4系统模块部署图表示层制品(针对Web Application)Sitemap图示待建系统界面由哪些页面构成,以及它们间的层次与导航关系:Static- Prototype一组静态html页面用以说明定义待建系统的最终用户界面,参考附件:prototype.zip其它虽然表示层的技术相对简单,但是如果用户有RIA(Rich Internet Application)方面的需求,则通常需 要在客户端实现一些较为复杂的逻辑(

8、表示逻辑不是业务逻辑!);此时我们应该对这些需求进行设计,用 到的制品类似于在下面的业务逻辑层和数据层中罗列的制品;但是,必须注意到客户端技术的特殊性,例 如:脚本语言和沙箱模式。业务逻辑层制品Components Diagram系统中各个包中所有的公有类图表6组件图Component Interface Diagram系统中每个包的对外接口Component Requirements Specification组件需求规格说明书,用以明确每一个组件的设计需求,作为下阶段详细设计的一个重要输入,参见附件:CRS example.docSequence Diagrams时序图,针对每个用例,图示

9、系统如何实现这个用例,满足用户的需求Pay for Component Sequence Diagram:tHirgnEritnu:UserT1 1:1: payForComponerit nu:nu:nu:nu:nu:nu.2: p ayF o rC o rn p o n e nt(s a I e I d s): :7: payment(J: setSale(sale)For each saleld in shields: 3: retrieveSale(saleld):4: sale:5: := P aye rne r;itQ:9: confirm Payment114 i 8: disp

10、layPayrnent0: confirmPayrnent(f:iayrnentldj1: retrieveAccountByUfcer(userld)2: ere ate P ayrn e nt(p ayri e nt)13: payment14: setBalance(newB削ance) 15: setPaid(tnje) ;1 b: upd ateFayment(p凯n日nt) 1 7: updateA:count(acfount)18: account19: account 20: di splay Res utt数据层制品Entity Relationship Diagram数据库

11、设计的ER图:dlEnl% dlenljd:lnfeoer NOT NULLrane:MOT NULLC*.K1.1) cofnpa-tfjd:InEger MOT NULL(FK) OEalcri_|1afe:dablme loseccnl KOT NULL oEaicTLUfer:not null m1l13lcnjlaiE:dak!Ime jw Ioseoool IOT MULL m1l13la-|_u$er:uarat6zlir :fmdllnl PBliTiEnLtmsjd: INTBOERfFIQ0 PBjTTiEnLfeims Jd:defolplon: VARjC DAI0 1

12、Jilll_BnkYJd:lnfeger NOT NULLcoffipawJd:InhQer NOT MULLfFiqn畦 o::IECUO:ieaEr HUT NULLLCEI_K8JllrariE: ui-J-ath+j pa$oode:incTatS*) NOT MULLgK1.1)mcdliolccuiaE:daeime 霏io$eocrd hot mull(nBH5_ur:mcro*) not nullsEsTacinfeDera=liE:fmdllnlpqvnenLtermsJd: INTBOER(nqilEil_prdEcl华 dlen|Jd:lnfeDer MOT MULL(F

13、iq 娠 DrdecUd: Infeaer IOT MULLtFIQ热 lme_EnkyJd:lnfeaer NOT MULLootnpavjiiunfeger NOT NULL(FQLA e)pen;e_enkyjd:Integer MOT NULLownpwJd Unfeaer NOT MULL(FiqF印 EiE_EnryA u5Er_aoc(xriUdilnfeoer MOT MULLprolecUd Jnfeger NOT NULL(FKJnz3lcri_ti3te: data Ime wo,HNlmjusur: nbE后NCmolllolcnjlale:dat Ime jes lo

14、seccol MOT NULL mlll3lcrLat6*j MOT MULLoofripa-tiJd:InEger NOT MULL(FK) roriE:iacrar(zs6)hot null 心 WgmrQS*) not null ivLdale: dataIme 3* loeccrd NOT NULL erd dafe:dabIme wa- Ioseocnl MOT MULLnndecLrTi3-iqEr气 pEeuUd:InMger MOT MULLfFiq& u;er_aooxnuii:in/ger mot nullcfk)1OEalorulafe:dabIme ea* bseoor

15、d MOT NULL acai cruder: mdnartS NOT NULL mcdllolcculale:dafeime 罪a* tofeocm NOT NULL er:mcTats*) NOT MULLs toljlaie:dataIme 定a* toeocrdEnj_dBh:d3fcltnE 3* toseconir图表9数据库设计ER图DDL Script数据定义脚本:根据技术架构中选定的数据库管理系统,将ER图具体化为sql脚本文件,参见附件creat db.sqlCommunication Data Schema数据交换schema,系统与其它系统交换业务数据的时候(EDI)需要的数据模式,依据所利用的数据描述 技术的不同而不同,通常是XML的schema,也就是xsd文件,参考附件:C-Schema example.xsd在工程实践当中为了查阅和评审的方便,我们通常将所有上述制品集中于概要设计(High Level Design Specification)和数据字典(Data Dictionary)文档中,并同时分别独立保留和管理每份制品。其它概要设计阶段的制品测试工作域制品Test Plan测试计划,参考附件:T

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论