- 1、本文档共83页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第6章 软件项目设计阶段的知识和管理; 需求分析解决“做什么”,系统设计则确定“如何做”。
6.1 系统设计是软件项目成败的关键
系统设计基于需求分析的成果,对系统做深层次的分析,从而得出一系列行之有效的系统实现方案,使整个项目在逻辑上和物理上能够得以实现。
系统设计是获取高质量、低耗费、易维护的软件系统的最为核心的环节。没有或缺乏软件设计的工程只能是一个不稳定的、甚至是失败的软件系统。;6.2 设计阶段的目标和任务
系统设计是一个??系统的需求规格转换成软件系统的说明过程。
系统设计的最终目标是要完成对“软件项目交付成果如何架构”的准确回答。
任务包括构建系统框架,设计系统功能,描述系统流程,建立系统的数据模型、接口模型及界面模型,形成系统的逻辑结构,告诉程序员软件系统应该“怎样做”。; 软件设计一般分为概要设计和详细设计两大步骤。
概要设计是根据需求分析内容确定软件系统的总体框架,定义系统的初始模型。
详细设计是在概要设计的基础上做进一步细化的工作,规划出系统的运行结构、功能结构、信息模型、过程模型和集成接口结构,并详细到系统编码阶段的各个类、函数、变量等对象的结构定义、流程定义和实现方案。;6.3 系统设计阶段的团队管理和技能要求
系统设计团队是软件项目各个阶段中对技术要求最高的组织之一,并在项目经理的直接领导和协调下开展工作。
主要团队成员包括:体系结构设计师、系统设计员、数据库设计员、用户界面设计员、质量管理员和配置管理员。
; 体系结构设计师负责系统的总体规划和集成接口设计。
系统设计员负责完成子系统、子模块,以及系统构件的规划与设计。
数据库设计员负责整个系统的概念数据模型,以及物理数据的设计。
用户界面设计员负责系统与用户交互的界面风格、整体布局及美化设计。
质量管理员负责组织设计结果的质量评审工作。
配置管理人员进行设计阶段的配置管理,并将设计阶段成果纳入软件配置管理。
; 他们之间的工作关系如下图所示。
;6.3.1体系结构设计师职责与技术素质要求
是系统设计团队中的关键人物,其职责是领导设计组成员开展系统设计任务,协调和管理系统设计团队内部的各项工作,并参与整个项目各个阶段的沟通与协调工作。
主要工作包括:
(1)初步定义一组在构架方面具有重要意义的元素,作为系统设计的工作基础。
(2)初步定义系统的分层与组织结构。
(3)提供从分析活动到设计活动的自然转移——从分析结果中确定适当的设计元素,从相关分析机制中确定适当的设计机制。; (4)维持体系结构???一致性和完整性,确保当前迭代所确定的新设计元素与先前已有的设计元素可以集成;在设计过程中尽可能早地充分利用现有的构件和设计元素。
(5)描述系统运行时的组织以及部署体系结构时的组织。
(6)设计实施模型,以实现设计与实施间的平稳转移。
注意:体系结构架构工作一般由技能互补人员组成的小型团队来完成。团队应由具有丰富相关领域设计经验的成员组成;???时,体系结构设计团队不能由大规模的团队组成。;6.3.2子系统设计员的职责与技能要求
子系统设计员是整个设计阶段任务得以顺利完成的核心成员,他们常常是一个协作的团队,而不是一个人。是在体系结构设计师的声接领导和协调下开展工作。
主要完成的任务是:
(1)将系统结构提供的行为说明转换为可作为设计基础的一组元素。
(2)通过制定设计元素如何实现其行为要求,改进设计元素的定义。
(3)将设计元素作为模块来实施。
(4)测试所实施的模块,以核实构件/单元级别上的功能和需求满足情况。 ; 注意:
①负责设计子系统的个人或团队应当熟悉本系统所采用的开发语言,并具备在系统所使用的算法或技术方面的专业技能。
②负责子系统的个人或团队更应是多面手,能够合理划分设计元素间
文档评论(0)