摘要:2016下半年软考软件设计师报名即将开始,同学们是否在学习过程中遇到了一些困难,下面由希赛软考学院为打算参加下半年考试的你们准备了一些软件设计师教程知识点精讲之软件工程详细设计,希望对大家有所帮助。
2016下半年软考软件设计师报名即将开始,同学们是否在学习过程中遇到了一些困难,下面由希赛软考网为打算参加下半年考试的你们准备了一些软件设计师教程知识点精讲之软件工程详细设计,希望对大家有所帮助。
详细设计的基本任务:
(1)为每个模块进行详细的算法设计。用某种图形、表格、语言等工具将每个模块处理过程为每个模块进行详细的算法设计。为每个模块进行详细的算法设计的详细算法描述出来。
(2)为模块内的数据结构进行设计。对于需求分析、概要设计确定的概念性的数据类型进行为模块内的数据结构进行设计。为模块内的数据结构进行设计确切的定义。
(3)对数据结构进行物理设计,即确定数据库的物理结构。物理结构主要指数据库的存储记对数据结构进行物理设计,对数据结构进行物理设计即确定数据库的物理结构。录格式、存储记录安排和存储方法,这些都依赖于具体所使用的数据库系统。
(4)其他设计:根据软件系统的类型,还可能要进行以下设计:
①代码设计。为了提高数其他设计:其他设计根据软件系统的类型,还可能要进行以下设计:代码设计。据的输入、分类、存储、检索等操作,节约内存空间,对数据库中的某些数据项的值要进行代码设计。
②输入输出格式设计。输出格式设计。人机对话设计。对于一个实时系统,用户与计算机频繁对话,因此要进行对话方式、内容。
③人机对话设计。格式的具体设计。
(5)编写详细设计说明书。
(6)评审。对处理过程的算法和数据库的物理结构都要评审。
结构化程序设计方法:
详细设计是软件设计的第二阶段,主要确定每个模块具体执行过程,也称“过程设计”,详细设计的目标不仅是逻辑上正确地实现每个模块的功能,并使设计出的处理过程清晰易读。过程设计中采用的典型方法是结构化程序设计(简称SP)方法,最早是由E.W.Dijkstra在60年代中期提出的,它是实现详细设计目标的关键技术之一。
结构化程序设计方法的基本要点是:
采用自顶向下
1.采用自顶向下,逐步求精的程序设计方法在需求分析,概要设计中,都采用了自顶向下,逐层细化的方法。在需求分析,概要设计中,都采用了自顶向下,逐层细化的方法。
2.使用三种基本控制结构构造程序任何程序都可由顺序、选择、重复三种基本控制结构构造。
主程序员组的组织形式指开发程序的人员组织方式应采用由一个主程序员(负责全部技术活动)、一个后备程序员(协调、支持主程序员)和一个程序管理员(负责事务性工作,如收集、记录数据,文档资料管理等)三个为核心,再加上一些希赛网(如通信希赛网、数据库希赛网)、其他技术人员组成小组。
详细设计描述法:
详细描述处理过程常用三种工具:图形、表格和语言。本节主要介绍结构化程序流程图、盒图和问题分析图三种图形工具。它是使用最广泛的一种描述程序逻辑结构的工具。
程序流程图
程序流程图又称为程序框图,PAD图PAD图指问题分析图(ProblemAnalysisDiagram),是日本日立公司于1979年提出的一种算法描述工具,它是一种由左往右展开的二维树型结构。
过程设计语言
过程设计语言(Problem Design Language,简称PDL),也称程序描述语言(Problem过程设计语言(Problem Design Language,简称PDL),也称程序描述语言(Problem Language),又称为伪码。它是一种用于描述算法设计和处理细节的语言。Descripition Language),又称为伪码。它是一种用于描述算法设计和处理细节的语言。
表示的程序结构一般有以下几种:
用PDL表示的程序结构一般有以下几种:
(1)顺序结构:采用自然语言描述。
(2)选择结构:
1、IF-ELSE 结构 IF 条件 IF 条件 处理 S1 或 处理 S ELSE 处理 S2 ENDIF ENDIF
2、IF-ORIF-ELSE 结构 IF 条件 1 处理 S2 ORIF 条件 2 处理 S2 . . . ELSE 处理 Sn ENDIF
3、CASE结构CASE OF CASE
(1)处理S1 CASE
(2) 处理 S2 . . . ELSE 处理 Sn ENDCASE
(3)重复结构:
1、FOR 结构 FOR i=1 TO n 循环体 ENDFOR
2、WHILE结构WHILE条件循环体ENDWHILE
3、UNTIL结构REPEAT循环体UNTIL条件
(4)出口结构:
1、ESCAPE结构(退出本层结构)WHILE条件处理S1ESCAPELIF条件处理S2ENDWHILEL:……
2、CYCLE 结构(循环内部进入循环的下一次) L:WHILE 条件 处理 S1 CYCLE L IF 条件 处理 S2 ENDWHILE
(5)模块定义与调用:
1、模块定义 PROCEDURE 模块名(参数) .. RETURN END
2、模块调用CALL模块名(参数)
(6)数据定义:
DECLARE属性变量名……属性有:字符、整型、实型、双精度、指针、数组、结构等类型。
(7)输入/输出:输入GET(输入变量表)PUT(输出变量表)
现以xx系统主控模块详细设计为例,说明如何用PDL来描述。PROCEDURE模块名()PROCEDURE模块名(清屏;清屏;系统用户界面;显示xx系统用户界面;PUT(“请输入用户口令:PUT(“请输入用户口令:”);GET(password);GET(password);>系统口令IFpassword系统口令提示警告信息;提示警告信息;退出运行ENDIF显示本系统主菜单;显示本系统主菜单;WHILE(true)ABC;接收用户选择ABC;ABC=“退出”IFABC=“退出”Break;Break;ENDIF调用相应下层模块完成用户选择功能;调用相应下层模块完成用户选择功能;ENDWHILE
清屏;RETURNEND从以上例子可以看到PDL的总体结构与一般程序完全相同。外语法同相应程序语言一致,内语法使用自然语言,易编写,易理解,也很容易转换成源程序。
Jackson方法
Jackson方法是面向数据结构的设计方法。Jackson方法定义了一组以数据结构为指导的映射过程,它根据输入、输出的数据结构,按一定的规则映射成软件的过程描述,即程序结构程序结构Jackson设计步骤Jackson方法一般通过以下五个步骤来完成设计:
分析并确定输入数据和输出数据的逻辑结构并用Jackson结构图来表示这些数据结构。分析并确定输入数据和输出数据的逻辑结构,结构图来表示这些数据结构。
(1)分析并确定输入数据和输出数据的逻辑结构,
(2)找出输入数据结构和输出数据结构中有对应关系的数据单元。找出输入数据结构和输出数据结构中有对应关系的数据单元
(3)按一定的规则由输入输出的数据结构导出程序结构。
(4)列出基本操作与条件并把它们分配到程序结构图的适当位置。
(5)用伪码写出程序。
希赛软考网,拥有十四年软考培训经验,希赛网一直坚持自主研发,将丰富的软考培训经验有效融入教程研发过程,自成体系的软考在线题库(软考历年真题)、软考培训教材和软考视频教程,多样的培训方式包括在线辅导、面授、和,使考生的学习更具系统性,辅导更具针对性。采用全程督学机制,,软考平均通过率在全国。
软考备考资料免费领取
去领取