sdl软件设计技术

上传人:aa****6 文档编号:50975599 上传时间:2018-08-12 格式:PPT 页数:304 大小:1.77MB
返回 下载 相关 举报
sdl软件设计技术_第1页
第1页 / 共304页
sdl软件设计技术_第2页
第2页 / 共304页
sdl软件设计技术_第3页
第3页 / 共304页
sdl软件设计技术_第4页
第4页 / 共304页
sdl软件设计技术_第5页
第5页 / 共304页
点击查看更多>>
资源描述

《sdl软件设计技术》由会员分享,可在线阅读,更多相关《sdl软件设计技术(304页珍藏版)》请在金锄头文库上搜索。

1、SDL软件设计技术 SDL软件设计技术SDL软件设计技术 一 通信软件1.通信软件的特点什么是通信软件?凡是用来实现两个或多个 实体(计算机,电信终端,交换设备等)之间相互 通信的软件都可称为通信软件。通信软件主要有 两大类:电信软件和计算机网络软件。电信软件主要包括:电话交换软件、移动通 信软件、智能网软件等。 网络软件主要包括:各种网络协议和网络应 用软件。SDL软件设计技术 电信软件和计算机网络软件的特点不尽相 同,电信软件具有以下特点:(1)实时性强电信软件系统属于实时系统,系统对外部事 件能做出及时响应,如电话交换机用户在任何时 刻拿起话机都能听到拨号音(300ms以内),用户 拨完

2、号码后,系统就会马上为其找到被叫,如果 被叫空闲,就可接通被叫(向被叫振铃,向主叫 用户送同铃音)。被叫摘机后,双方即可通话。(2)运行时间长电信软件系统一旦投人运行,就要一直运行 下去,除非发生故障。因而要求系统具有很高的 可靠性。SDL软件设计技术 (3)并发性强电信软件系统能够“同时”为成千上万的用户 服务,必须具有很强的并发处理能力。(4)结果可预期用户在接受电信软件系统提供的服务时,对其 结果是可预期的,如电话用户拿起话机应该听到拨 话音(作为主叫时)或可以与对方通话(作为被叫时) ,如果不是这样,说明系统出故障了,用户只好挂 机。用户拨完一号码后,可以听到回铃音(被叫空 闲)或忙音

3、(被叫忙)或空号音(号码错)或相应的语 音提示。否则可认定系统发生故漳了。(5)离散性电信软件系统是离散系统,支持离散事件, 系统行为可以用有限状态机来描述。SDL软件设计技术 网络软件具有以下特点:(1)网络软件采用分层结构,如TCP/IP协议 栈把计算机网络分成四层。即应用层、传输层、 网络层和数据链路层,上下层之间通信采用原语 形式,每层使用不同的协议。(2)网络软件实时性要求较低而可靠性要求 高。网络技术的发展趋势是电信与计算机网络的 融合。如VoIP就是利用IP来承载语音信息;软交 换就是利用计算机网络来取代传统电话交换机, 实现语音和多媒体信息的交换;XDSL技术则是利 用现有电话

4、网络承载宽带业务。SDL软件设计技术 2. 通信软件的开发过程与开发其他软件一样,开发通信软件也需 要经历以下阶段: 需求分析; 概要设计; 详细设讨; 编码; 单元测试; 集成测试; 系统测试; 运行维护。SDL软件设计技术 (1)需求分析 需求分析的主要任务是把用户对软件产品的 需求和软件产品的运行环境搞清楚,经过对要求和 环境的分析,采用某种形式化语言对需求进行描述 ,最后形成需求规格说明书。 用户的需求分为功能性需求和非功能性需求 。 对于通信软件而言,功能性需求主要包括:软 件系统应其有的功能、采用协议或信令系统的情况 、与硬件环境的接口关系、与其他系统交互信息的 情况等。 非功能性

5、需求主要包括:软件的可移植性、可 靠性、实时性、可用性、安全保密和可重用性等。SDL软件设计技术 在需求分析阶段,可以采用对象建模技术 (OMT)把分析结果抽象成不同的对象,并描述对象 之间的关系。统一建模语言 UML是一种比较成熟 的标准建模语言。非常适合于实时系统、特别是 通信软件系统的分析建模。UML具有完备的语法和 语义定义,具有两种语法表示:图形语法和文本语 法。图形语法直观易懂,便于交流,设计人员一 般采用图形语法来建模。UML的主要内容可归纳为 静态建模机制和动态建模机制。静态建模机制主要用来构造系统的结构。而 动态建模机制主要用来描述系统的行为。SDL软件设计技术 由于通信软件

6、的特殊性,在需求分析阶段 ,除了要描述系统的结构和系统行为以外,还需 要对系统与应用环境之间交互信息的情况以及系 统组件之间交换信息的情况进行描述。Msc(消息 顺序图)是一种形式化语言,特别适合于描述通信 软件系统与外部环境之间以及系统内个功能模块 之间的消息交互情况。SDL软件设计技术 需求分析阶段的文档是需求规格说明书。需求规格说明书主 要包括以下内容:1引言说明本项目的背景,如项目的委托单位和开发单位、本软件系 统一与其他系统的关系等:给出缩写词的原文和专用术语的定义;列 出参考文献。(2任务概述说明本软件系统的设计目标、运行环境、条件与限制等。(3功能需求说明本软件系统的功能划分情况

7、、类的定义、系统类图、系统 与外部环境之间的消息(信号)交互图等。(4)性能需求说明本软件系统的可移植性、可靠性、实时性、可用性、安全 保密性和可重用性等。(5)数据描述给出本软件系统用到的数据项(包括静态数据和动态数据)的描 述。如果用到数据库,还要给出数据库的名称和库表结构等。SDL软件设计技术 (2)概要设计需求分析阶段解决了系统应该“做什么”的问 题,而概要设计和详细设计阶段就是要解决系统“ 如何做”的问题。概要设计的任务就是根据需求规 格说明书,采用合适的形式化语言给出系统的结构 设计,划分功能模块,给出模块间接口定义,定义 主要的数据结构,设计主要算法等。SDL软件设计技术 ITU

8、-T z.100建议中给出的SDL(规范说明和 描述语言)也是一种形式化语言,该语言基于扩展 的有限状态自动机(EFSM )模型,特别适合于描述 软件系统的离散过程。SDL既适用于概要设计阶段 ,也适用于详细设计阶段。由于已有工具支持SDL 到C语言或C +语言的翻译,即代码自动生成,使 得SDL语言在通信软件设计中得到越来越多的应用 。如果在设计阶段采用SDL.语言,则在概要设计阶 段需设计出SDL系统图(含功能块划分),给出必要 的信号(消息)定义,设计必要的进程类和功能块类 ,明确各功能块的功能等。SDL软件设计技术 本阶段的文档是概要设计说明书,概要设计说明 书的主要内容包括:(l)总

9、体设计说明软件系统的总体结构和功能模块划分情况 ,以及各模块的功能分配。(2)接口设计设计系统与环境的接口(包括软件接曰和硬件 接口)和各功能模块之间的接口。(3)数据结构设计设计数据的逻辑结构和物理结构,定义必要的 新的数据类型,说明静态数据的加载方法等。(4操作维护管理设计定义故障信息,设计系统故障监测和故障处 理策略,设计系统维护操作等。SDL软件设计技术 (3)详细设计概要设计完成后,系统功能已划分清楚,系统 结构也已确定。详细设计的任务就是细化各功能模 块的功能,详细设计系统行为,并用形式化语言来 描述设计结果。详细设计分功能模块进行,一般将 功能模块分解成多个有限状态自动机(FSM

10、 ),先画 出状态机的状态转移图,然后用SDL语言来描述这些 状态机。一个状态机对应SDL.的一个进程,进程间 的信号(消息)交互情况可用MSC来描述。对于一些复 杂的算法,可以定义过程来实现。编写测试计划也是详细设计阶段的任务,测试 计划包括测试方法的设计和测试用例的设计。SDL软件设计技术 本阶段的文档是详细设计说明书。详细设计说明书 的主要内容包括:(1软件结构说明进程划分情况和进程间的消息交互情况, 定义本模块内使用的消息。(2)数据定义定义本模块内使用和各进程内使用的数据类型 和数据结构,声明变量等。(3)行为描述用SDL进程图详细描述系统行为,定义必要的过 程,提供变量和过程的共享

11、机制。(4)测试计划设计各进程单元测试的测试方法和测试用例, 设计本模块集成测试的测试方法和测试用例。SDL软件设计技术 3.通信协议开发过程开发协议有两个含义:一是指为了满足新的通 信需求,研究开发新的协议,指定协议标准;二是 指在一个特定的应用环境下,实现某个已经成熟的 协议。对于第一个含义,开发协议的目标是形成新的 协议文本,重点是说明本协议应该具有什么功能, 其协议开发过程包括: 协议分析: 协议环境分析包括用户要求、通道性质、工作 模式等;SDL软件设计技术 协议功能分析,根据环境分析结果明确本协议 应具有的功能; 协议设计: 协议结构设计、协议机制设计 协议元素设计,设计服务原语,

12、PDU格式等; 形成协议文本,用自然语言描述协议结构即协议元 素之间的关系; 协议描述,用一种形式化语言来描述协议内容,包 括建议的软件系统结构、模块划分、系统应具有的 行为等; 协议验证,在开发环境下仿真运行协议软件,验证 协议的正确性。SDL软件设计技术 二、 规范说明和描 述语言SDLSDL软件设计技术 1.SDL 概述 SDL语言是CCITT推荐的规格与描述性 语言(Specifical and Description Language),是一种用来说明和描述系统的 国际通用的标准化语言。它将简明的图形 与固定的格式结合起来,使开发人员可以 将规范与协议以一种清晰而明确的格式描 述出来

13、。这种简洁有效的描述语言能够极 大地加速标准与协议的开发制定过程。SDL软件设计技术 ITU将SDL描述为“实时系统的特性描述语言 ”。绝大多数SDL概念有文本和图形两种表述形 式。由于缺乏某些范围内的高层结构和一些象C 语言的概念,SDL并非编程语言。SDL并不描述系 统发展进程。SDL具有两种不同的语法SDL/GR(图形表示 法)与SDL/PR(文本表示法),两者之间可以互相 转换。SDL中的数据定义只能采用文本表达方法 。SDL允许嵌入高级语言或者转换为高级语言, 如C、C+。在实际开发中,开发人员可以应用 SDL图形化表示法来描述系统,再由SDL工具将其 转化为C语言代码或者CHILL

14、源代码 ,最后嵌入 到实际开发环境中。SDL软件设计技术 SDL既可以用来说明一个系统所应该 具有的行为,也可以用来描述一个系统实 际具有的行为。因而,SDL可以用来制作以 下文档:需求说明、系统设计说明、系统设 计描述(结构设计和详细设计)、系统测试 说明等。SDL软件设计技术 SDL主要用于电信领域,描述实时、交 互式和分布式系统的行为,对于能用扩展 的有限状态机描述的系统都非常适用于用 SDL描述,如电话、用户电报、数据交换、 信令系统、信令系统与数据协议的互通等 。SDL软件设计技术 2.SDL开发的优点 1)开发周期可以缩短4075; 2)可以明显改善软件质量; 3)作为正式规范描述

15、语言,可以提高质量 在1015。 4)可以大幅降低系统的差错率。 5)可以快速原型化,验证实现是否满足需 求,并在开发的早期进行测试,即使系统 未完全实现。 6)对系统图形化、直观、易于维护。SDL软件设计技术 3.工具支持 目前最流行的支持SDL语言的开发工具是瑞 典公司Telelogic提供的TAU开发套餐,此 工具被全球客户广泛验证。 Telelogic TAU工具是行业公认的用于实时 及其他先进软件开发和测试的可视化软件 环境。它可在开发环境中实现仿真、测试 、执行、自动代码生成、早期错误检测及 最小化后期开发维护扥功能。SDL软件设计技术 TAU中包含了UML Suite、SDL S

16、uite、TTCN Suite 3个部分,可以融合UML、SDL、TTCN 等语言元素来构建面向实际目标环境的系 统。SDL软件设计技术 SDL把应用领域分为两部分:SDL系统和环 境,SDL系统是设计者关注的对象,系统以 外的部分都被视作环境,系统与环境之间 可以通过交换信号来通信,保证系统能对 外部事件作出反映。系统与环境的关系可 抽象成下图:环境SDL系统4.SDL系统行为SDL软件设计技术 SDL描述系统行为的基础是扩展的有限状态自动机 ,系统行为由系统内的所有进程实例对应的有限 状态机协同工作并通过与环境的交互来实现。 SDL 的每个进程实例就是一个有限状态机。进程 实例之间的通信由交换信号来实现,发送信号时 可以明确地给出目标地址。每个进程实例都有一 个私有存储空间记录该实例的状态和一些变量, 因而系统的所有进程实例可以并发地工作。 SDL系统与环境之间也能通信

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > PPT模板库 > 教育/培训/课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号