1. 首页 > 电脑手机 >

概要设计的方法(概要设计的方法有哪些)

系统概要设计怎么写?

软件文档中概要设计也称“总体设计”,是开发人员在明确用户需求(要什么)后对系统的一个总体考虑(明确系统目标、设计原则,初步考虑数据库设计和功能设计),关于这方面有相关标准(概要设计说明书(GB8567-88))。

概要设计的方法(概要设计的方法有哪些)概要设计的方法(概要设计的方法有哪些)


在具体实践中可以按下列提纲撰写内容:

1.引言

1.1编写目的

[说明编写这份概要设计说明书的目的,指出预期的读者。]

1.2背景

a.[待开发软件系统的名称;]

b.[列出本项目的任务提出者、开发者、用户。]

1.3定义

[列出本文件中用到的专门术语的定义和外文首字母组词的原词组。]

1.4参考资料

[列出有关的参考资料。]

2.总体设计

2.1需求规定

[说明对本系统的主要的输入输出项目、处理的功能性能要求。包括]

2.1.1系统功能

2.1.2系统性能

2.1.2.1精度

2.1.2.2时间特性要求

2.1.2.3可靠性

2.1.2.4灵活性

2.1.3输入输出要求

2.1.4数据管理能力要求

2.1.5故障处理要求

2.1.6其他专门要求

2.2运行环境

[简要地说明对本系统的运行环境的规定。]

2.2.1设备

[列出运行该软件所需要的硬设备。说明其中的新型设备及其专门功能。]

2.2.2支持软件

[列出支持软件,包括要用到的作系统、编译(或汇编)程序、测试支持软件等。]

2.2.3接口

[说明该系统同其他系统之间的接口、数据通信协议等]

2.2.4控制

[说明控制该系统的运行的方法和控制信号,并说明这些控制信号的来源。]

2.3基本设计概念和处理流程

[说明本系统的基本设计概念和处理流程,尽量使用图表的形式。]

2.4结构

[给出系统结构总体框图(包括软件、硬件结构框图),说明本系统的各模块的划分,扼要说明每个系统模块的标识符和功能,分层次地给出各模块之间的控制与被控制关系。]

2.5功能需求与系统模块的关系

[本条用一张矩阵图说明各项功能需求的实现同各模块的分配关系。]

2.6人工处理过程

[说明在本系统的工作过程中不得不包含的人工处理过程。]

2.7尚未解决的问题

[说明在概要设计过程中尚未解决而设计者认为在系统完成之前必须解决的各个问题。]

3.接口设计

3.1用户接口

[说明将向用户提供的命令和它们的语法结构,以及相应的回答信息。]

[说明提供给用户作的硬件控制面板的定义。]

3.2外部接口

[说明本系统同外界的所有接口的安排包括软件与硬件之间的接口、本系统与各支持系统之间的接口关系。]

3.3内部接口

[说明本系统之内的各个系统元素之间的接口的安排。]

4.运行设计

4.1运行模块组合

[说明对系统施加不同的外界运行控制时所引起的各种不同的运行模块组合,说明每种运行所历经的内部模块的支持软件。]

4.2运行控制

[说明每一种外界的运行控制的方式方法和作步骤。]

4.3运行时间

[说明每种运行模块组合将占用各种资源的时间。]

5.系统数据结构设计

[不涉及软件设计可不包含]

5.1逻辑结构设计要点

[给出本系统内软件所使用的每个数据结构的名称、标识符以及它们之中每个数据项、记录、文卷和系的标识、定义、长度及它们之间的层次的或表格的相互关系。]

5.2物理结构设计要点

[给出本系统内软件所使用的每个数据结构中的每个数据项的存储要求,访问方法、存取单位、存取的物理关系、设计考虑和保密条件。]

5.3数据结构与程序的关系

[说明各个数据结构与访问这些数据结构的各个程序之间的对应关系。]

6.系统出错处理设计

6.1出错信息

[用一览表的方式说明每种可能的出错或故障情况出现时,系统输出信息的形式、含意及处理方法。]

6.2补救措施

[说明故障出现后可能采取的变通措施。]

6.3系统维护设计

[说明为了系统维护的方便而在程序内部设计中作出的安排,包括在程序中专门安排用于系统的检查与维护的检测点和专用模块。]

概要设计是一个设计师根据用户交互过程和用户需求来形成交互框架和视觉框架的过程,其结果往往以反映交互控件布置、界面元素分组以及界面整体板式的页面框架图的形式来呈现。这是一个在用户研究和设计之间架起桥梁,使用户研究和设计无缝结合,将对用户目标与需求转换成具体界面设计解决方案的重要阶段。 [1]

概要设计的主要任务是把需求分析得到的系统扩展用例图转换为软件结构和数据结构。设计软件结构的具体任务是:将一个复杂系统按功能进行模块划分、建立模块的层次结构及调用关系、确定模块间的接口及人机界面等。数据结构设计包括数据特征的描述、确定数据的结构特性、以及数据库的设计。显然,概要设计建立的是目标系统的逻辑模型,与计算机无关。

(1)层次图。层次图用来描绘软件的层次结构。一个矩形框代表一个模块,方框间的连线表示调用关系。如图,顶层的方框代表正文加工系统的主控模块,它调用下层模块,完成正文加工的全部功能。第二层的每个模块完成正文加工的一个主要功能。

(2)HIPO图。HIPO图是IBM公司发明的“层次图加输入/处理/输出图”。层次图加上编号称为H图。在层次图的基础上,除顶层的方框之外,其余每个方框都加了编号。层次图中每一个方框都有一个对应的IPO图(表示模块的处理过程)。每张IPO图应增加的编号与其表示的(对应的)层次图编号一致。IPO图是输入/加工/输出图的简称。

(3)结构图。结构图是Yordon提出的进行软件结构设计的工具,结构图和层次图类似,一个方框代表一个模块,框内注明模块的名字或主要功能。方框之间的直线(箭头)表示模块的调用关系。用带注释的箭头表示模块调用过程中来回传递的信息,尾部是空心的,表示传递的是数据,实心的表示传递的是控制。

什么是软件概要设计?该阶段的基本任务是什么

一、概论1、编写目的2、编写背景3、对系统的大致描述二、业务概述和逻辑设计1、对系统几大主体的描述2、对系统几大业务流程描述3、用UML对其进行总体描述三、技术架构在此章决定使用那种技术体系,具体的技术有那些,描述他们之间是怎么协同运作...

常见的软件概要设计方法有3大类

常见的软件概要设计方法有3大类如下:

1、工厂方法模式工厂方法模式的创建是因为简单工厂模式有一个问题,在简单工厂模式中类的创建依赖工厂类,如果想要拓展程序,必须对工厂类进行修改,这违背了开闭原则,所以就出现了工厂方法模式,只需要创建一个工厂接口和多个工厂实现类。

2、抽象工厂模式抽象工厂模式是提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类。区别于工厂方法模式的地方,工厂方法模式是创建一个工厂,可以实现多种对象;而抽象工厂模式是提供一个抽象工厂接口,里面定义多种工厂,每个工厂可以生产多种对象。

3、单例模式单例模式能保证一个类一个实例,并提供一个访问它的全局访问点,同时在类内部创造单一对象,通过设置权限,使类外部无法再创造对象。单例对象能保证在一个JVM中,该对象只有一个实例存在。

4、建造者模式建造者模式是将一个复杂的构建与其表示相分离,使得同样的构建过程可以创建不同的表示。在程序当中就是将一些不会变的基本组件,通过builder来进行组合,构建复杂对象,实现分离。

5、原型模式:原型模式是用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。其实就是将对象了一份并返还给调用者,对象需继承Cloneable并重写clone方法。原型模式的思想就是将一个对象作为原型,对其进行、克隆,产生一个和原对象类似的新对象。

如何做概要设计?

概要设计的目标是描述软件模块的外观以及处理逻辑。模块对外暴露的服务接口,以及需要引用的接口,接口标识,接口的访问协议,接口描述都属于模块的外观,其他的模块通过这些接口和模块打交道,自然需要在概要设计阶段对接口做细致的刻画,初此之外,对于关键的模块,外观还应该说明模块的非功能属性,比如并发处理能力,数据吞吐量以及接口调用的反馈时长等等。处理逻辑是指模块从输入到输出的转换过程,描述其转换算法。无论通过何种图例和表现形式,只要能够清晰地说明模块外观和处理逻辑描述,就是好的概要设计。 概要设计过程一般包括四块内容,这四块内容都是围绕着外观和处理逻辑这两个目标进行。部分是模块划分,把架构设计中划分的业务模块按照开发模式迭代细化,拆分成符合高内聚低耦合的功能模块。第二部分是接口描述,重点要放在刻画模块内外部交互的接口形式。第三个部分是模块的逻辑描述,一个部分逻辑模型设计,包括数据库的逻辑模型设计以及值对象的概要说明。 模块划分 模块划分的粒度很难确定,不同的设计师会用不同的划分策略,相同的一组功能聚集有人会分为2个功能模块,有的人可能划分为4个或者更多。模块的粒度越大,对模块的维护成本就越大,因为修改模块的任何一个点,都有可能更新整个模块;而且越难以解决模块复杂耦合的问题,随着产品的维护,模块内的耦合会越来越严重,有些是因为新的需求引起模块内联系的增加,而有些是缺少硬约束下采用直接的方式修改代码造成的。当然也不是模块划分的越小越好,因为小粒度的模块虽然降低了模块自身的维护成本,但过多的模块会增加模块间关系维护的成本以及系统管理的复杂性。 通常来看,模块划分要符合开闭原则和高内聚和低耦合的原则。开闭原则强调的是维护频度不同的功能不要放在同一个模块内,比如有些需要本地化的功能可以通过接口和实现分离的方式划分为业务模块和二次接口实现模块。高内聚和低耦合的原则强调的是把内部关联紧密和外部交互比较单一的功能划分成一个模块。 同时鉴于模块划分的重要性,建议尽可能把模块划分的工作前移到架构设计阶段,一方面架构设计团队的整体素质比较高,另外一方面架构设计师更能够站在全局的视角合理地划分模块。 接口描述 接口描述应该清晰地说明接口的类型,访问方式,接口的入参和出参。通常在概要设计阶段不考虑物理实现,不需要描述的非常详细,之所以如此关照接口,原因在于通过清晰的接口描述为流程逻辑和后面的详细设计建立一个硬约束。模块内的数据流和控制流的入口和出口都能限定在这个约束之内,方便评审的时候能及时发现设计中存在的问题。 逻辑描述 逻辑描述的目标是说清楚从输入到输出的转换过程。根据不同的模块的特点,可以选用不同的描述形式,对于以数据流为主的模块,可以使用数据流图,控制比较复杂的可以使用数据流图或者IPO图,而对于规范使用UML的项目可以考虑使用活动图。 可能有人会很疑惑在设计中没有谈到是用面向对象方法还是结构化的方法,这可是关键的方问题。确实,软件研发的坛子里面除了哪种语言更好的话题以外,容易挑起纷争的就是结构化分析与设计和面向对象分析与设计之争了。我在这里不做结论,只做一个评说。结构化分析设计出现的比较早,那时候软件的主要使用场景更多是科学计算或者自动化控制,典型的特点是用户交互界面简单,更多是批处理的作业方式,更多关注程序的处理过程是否正确高效。随着PC机时代的到来,人机交互界面在软件中占有越来越重要的地位,原来的一套软件只有一个作员,而现在可能有很多的使用者,为了清楚地描述不同人群对软件的诉求,业务用例应运而生,这就是面向对象的起点。不同的基因决定了他们各擅道场,一个擅长于后台计算的产品设计,另一个长于面向客户服务的产品设计。 在设计中,我们可以根据需求把两者的特点灵活地结合在一起,比如算法密集的处理模块,我们可以采用数据流图,而对于和外部交互比较复杂的模块,可以引入用例图标识模块支持的使用场景。 逻辑模型的设计 逻辑模块的设计主要是数据库的设计和值对象的设计。对于数据库的逻辑模型,可以统一设计,模块中添加引用。也可以在模块中针对所引用的库表独立描述。这两种方式都可以,如果库表结构比较复杂的建议统一建模,而比较简单的模型可以采用分开描述,提升模块设计的可读性。数据库建模现在已经比较成熟,这里不再多说。 模块的输入输出,以及中间的数据对象,我们统称为值对象,在概要设计阶段的重点是描述值对象的关键属性。需要注意的一点是值对象要和处理逻辑对应起来,特别是处理逻辑中的数据流,出口入口数据,都要在值对象上加以描述。

结构化设计方法又称为概要设计

结构化设计方法是概要设计的一种方法。结构化设计(structured design,SD)方法是一种面向数据流的设计方法,它可以与结构化分析方法衔接。结构化设计方法采用结构图(structure chart,SC)来描述系统的模块结构。

什么是概要设计

问题一:什么是概要设计? 在需求明确、准备开始编码之前,要做概要设计,而详细设计可能大部分公司没有做,有做的也大部分是和编码同步进行,或者在编码之后。因此,对大部分的公司来说,概要设计文档是的设计文档,对后面的开发、测试、实施、维护工作起到关键性的影响。

问题二:概要设计与详细设计有什么区别 在软件的总体设计中,完成了数据和系统结构的设计。已将系统划分成为多个模块,并将它们按照一定的原则组装起来,也确定了每个模块的功能及模块与模块之间的外部接口。在理想情况下,详细设计是软件设计的第二阶段。在这个极端,由于开发系统内外的人员理论上都使用一种自然语言,因此设计说明是用自然语言。很清楚,这个阶段必须定义过程的细节。

问题三:概要设计主要描述哪些内容 一、概论1、编写目的2、编写背景3、对系统的大致描述二、业务概述和逻辑设计1、对系统几大主体的描述2、对系统几大业务流程描述3、用UML对其进行总体描述三、技术架构在此章决定使用那种技术体系,具体的技术有那些,描述他们之间是怎么协同运作的。四、功能模块设计描述系统有那些主要功能,这些功能应该用何种技术,大致是如何实现的五、接口设计六、应急系统设计七、安全设计描述系统应该具有的安全级别,以及达到此安全等级的所采用的技术措施八、运行环境设计从硬件网络方面描述概要设计的目的就是希望一个从来没有接触过的人一看就能从各个方面都对系统的作用,功能,实现方面有一个大概了解,并为以后的各类详细设计文档提供一个指引和方向。

问题四:概要设计和详细设计的区别 详细设计就要到各个公位置的设计图,概要设计就相当于方案设计,整体的大概设计,这样的话一些具 置的设计就没有

问题五:需求分析书 和 概要设计书 有什么区别 需求分析--产生 软件功能规格说明书,需要确定用户对软件的需求,要作到明确、无歧义。不涉及具体实现方法。用户能看得明白,开发人员也可据此进行下面的工作(概要设计)

概要设计--产生 软件概要设计说明书,说明系统模块划分、选择的技术路线等,整体说明软件的实现思路。并且需要指出关键技术难点等。

问题六:概要设计的定义 列出本文件中用到的专门术语的定义和外文首字母组词的原词组。

问题七:概要设计和详细设计的区别与联系 概要设计的主要任务是把需求分析得到的系统扩展用例图转换为软件结构和数据结构。设计软件结构的具体任务是:将一个复杂系统按功能进行模块划分、建立模块的层次结构及调用关系、确定模块间的接口及人机界面等。数据结构设计包括数据特征的描述、确定数据的结构特性、以及数据库的设计。显然,概要设计建立的是目标系统的逻辑模型.

详细设计是软件工程中软件开发的一个步骤,就是对概要设计的一个细化,就是详细设计每个模块实现算法,所需的局部结构。在详细设计阶段,主要是通过需求分析的结果,设计出满足用户需求的嵌入式系统产品。

问题八:什么是软件概要设计?该阶段的基本任务是什么 Boehm:运用现代科学技术知识来设计并构造计算机程序及为开发、运行和维护这些程序所必需的相关文件资料。 IEEE在软件工程术语汇编中的定义:软件工程是:1.将系统化的、严格约束的、可量化的方法应用于软件的开发、运行和维护,即将工程化应用...

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至836084111@qq.com 举报,一经查实,本站将立刻删除。

联系我们

工作日:9:30-18:30,节假日休息