SDL软件设计技术.ppt

  1. 1、本文档共304页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
1.SDL 概述 SDL语言是CCITT推荐的规格与描述性语言(Specifical and Description Language),是一种用来说明和描述系统的国际通用的标准化语言。它将简明的图形与固定的格式结合起来,使开发人员可以将规范与协议以一种清晰而明确的格式描述出来。这种简洁有效的描述语言能够极大地加速标准与协议的开发制定过程。 2.SDL开发的优点 1)开发周期可以缩短40%~75%; 2)可以明显改善软件质量; 3)作为正式规范描述语言,可以提高质量在10%~15%。 4)可以大幅降低系统的差错率。 5)可以快速原型化,验证实现是否满足需求,并在开发的早期进行测试,即使系统未完全实现。 6)对系统图形化、直观、易于维护。 3.工具支持 目前最流行的支持SDL语言的开发工具是瑞典公司Telelogic提供的TAU开发套餐,此工具被全球客户广泛验证。 Telelogic TAU工具是行业公认的用于实时及其他先进软件开发和测试的可视化软件环境。它可在开发环境中实现仿真、测试、执行、自动代码生成、早期错误检测及最小化后期开发维护扥功能。 6.远端过程 在进程集内定义的过程申明成“可出口的”(exported),允许其他进程的进程实例来调用,这就是远端过程。 远端过程调用就是调用其他进程集中定义的远端过程。 为方便,把发出远端过程调用命令的进程称为“客户端”,把定义该过程的进程称为“服务器端“。 5.如何用SDL进行开发 使用SDL开发主要由以下步骤构成: 1)进行系统需求分析,确定系统需求。 需求阶段包括标识构造系统所需的所有需求:首先,考虑来自客户的需求:低成本、可靠性、确定性等;其次,考虑来自环境的需求:将来的扩展、用户、技术等。 确定需求之后,利用UML(Unified Modeling Language,标准建模语言)对系统需求进行建模,对需求进行细化。 实例:基于SDL的自动售票系统 1、目标系统实现的功能 ①购票过程自动化,中间无需人工介入。 ②系统根据输入的目的地信息(此时已知始发),及用户输入的购票数量,计算出所需支付的金额,并显示给用户。 ③用户根据显示的金额,输入钱币,若成功,则返回车票以及找回的余额。转⑤ ④若输入的钱币金额不足,则系统退还用户投入的全部钱币。 ⑤系统等待下一位顾客的使用。 10.电信软件设计举例 例:设计一个微型电话交换机软件系统。 微型电话交换机的硬件结构如下图所示, 1.需求分析 从交换机的工作过程可知,交换机的工作可以分为两类:与硬件有关的工作和与硬件无关的工作。 与硬件有关的工作包括:用户摘挂机检测、DTMF收号 、交换网络控制、振铃控制等。 与硬件无关的工作包括:号码分析、地址翻译、用户状态管理、呼叫处理等。 话机振铃时间不超过60s,听拨号音时间不超过10s,听回铃音不超过60s,听忙音时间不超过40s,听空号音不超过40s; 用户输入号码时,两位号码之间的间隔不超过20s。 2.软件结构设计 本交换机的软件采用分层结构,可以分为两层:应用层和接口层。接口层负责与硬件有关部分的工作,完成以下功能: 用户摘挂机检测,上报用户状态(摘机或挂机); DTMF收号,上报收到的号码; 音信号连接或断开; 振铃控制或停振铃; 话机连接和释放。 3.消息定义 用户在话机上的操作通过接口层处理后形成内部消息送到应用层,应用层对硬件电路的操作以消息的形式发给接口层,由接口层来完成对这些的操作。 4.概要设计 概要设计的任务是根据需求分析,采用SDL语言给出系统的结构设计,划分功能模块,给出模块间接口定义,定义主要的数据结构,设计主要算法等。 2.系统图设计 本系统只考虑应用层的软件设计。 本交换机的功能比较简单,可以只用一个功能块来实现应用层的功能。把接口层视为SDL系统的环境。 3.功能块设计 (一)设计思路 考虑到本功能块比较简单,不需要再划分子功能块。直接定义进程集以及进程间的信号交互关系。 在分层结构中,一般在每一层都会设计一个接口,用来接收下层发来的信息,然后分发给不同的进程(或任务)来处理,所以,应用层软件,至少需要设计一个进程来负责接受接口层的消息,并负责消息的分发。这样的进程只能有一个进程实例,否则接口层不知道该把消息发到哪个进程实例。 在交换机中,有一些数据是公用的,需要有进程来管理这些数据。由于数据是唯一的,管理进程最好也是唯一的。 4 进程设计 1.管理进程设计 管理进程完成以下功能: 收到摘机(off_ hook)消息,判断用户是否空闲,是,则创建主叫进程,否则向被叫进程转发摘机消息。 收到主叫进程发出的占用请求信号(seizure_req ),判断被叫用户是否空闲,是,则创建被叫进程,向被叫进程转发占用指示;否则向主叫进程转回占用

文档评论(0)

***** + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档