版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、2021-6-141 通信软件设计通信软件设计 2021-6-14通信软件设计概述通信软件设计概述 第第2页页 课程目标课程目标 n了解通信软件开发过程了解通信软件开发过程 n理解串行通信、网络通信、状态机的编程方法理解串行通信、网络通信、状态机的编程方法 n理解通信软件协议分析和设计,自定义协议编理解通信软件协议分析和设计,自定义协议编 程方法程方法 2021-6-14通信软件设计概述通信软件设计概述 第第3页页 主要内容主要内容 n通信软件设计概述通信软件设计概述 nVC+程序设计基础程序设计基础 n串口通信串口通信 n网络通信网络通信 n状态机状态机 n协议分析与设计协议分析与设计 20
2、21-6-14通信软件设计概述通信软件设计概述 第第4页页 课程安排课程安排 n理论课理论课16学时学时 n实验实验16学时学时 考核方式考核方式 n平时成绩:平时成绩:30 n大作业设计大作业设计+实验报告:实验报告:70 2021-6-14通信软件设计概述通信软件设计概述 第第5页页 实验报告模板实验报告模板 n封皮封皮 n课程名称:课程名称: n学生姓名:学生姓名: n学号:学号: n专业班级:专业班级: n内容内容 n实验名称:实验名称: n实验步骤:实验步骤: n实验结果:实验结果: n体会建议:体会建议: 2021-6-14通信软件设计概述通信软件设计概述 第第6页页 参考书参考书
3、 n通信软件设计基础,宋茂强,北京邮电大学出版社 nVisual C+/Turbo C串口通信编程实践 龚建伟/熊光 明,电子工业出版社 nEffective TCP/IP Programming, Jon C. Snader 高级 TCP/IP编程,中国电力出版社 n网络安全技术实践与代码详解,牛冠杰等,人民邮电 出版社 2021-6-14通信软件设计概述通信软件设计概述 第第7页页 第一讲第一讲 通信软件设计概述通信软件设计概述 2021-6-14通信软件设计概述通信软件设计概述 第第8页页 主要内容主要内容 1. 1.通信软件基本概念通信软件基本概念 2.2.通信软件开发过程通信软件开发
4、过程 3.3.通信软件开发工具通信软件开发工具 2021-6-14通信软件设计概述通信软件设计概述 第第9页页 1.1.通信软件基本概念通信软件基本概念 n通信的定义通信的定义 n通信就是在两个或多个实体之间传递或交换信息。通信就是在两个或多个实体之间传递或交换信息。 n古代,人们通过驿站、飞鸽传书、烽火报警等方式进行古代,人们通过驿站、飞鸽传书、烽火报警等方式进行 信息传递。信息传递。 n今天,随着科学水平的飞速发展,相继出现了无线电,今天,随着科学水平的飞速发展,相继出现了无线电, 固话,手机,互联网,可视电话等通信方式。固话,手机,互联网,可视电话等通信方式。 2021-6-14通信软件
5、设计概述通信软件设计概述 第第10页页 1.1.通信软件基本概念通信软件基本概念 n通信的分类通信的分类 n基于连接的通信基于连接的通信 需要在通信实体之间建立连接需要在通信实体之间建立连接 n基于无连接的通信基于无连接的通信 在通信实体之间不需要建立连接在通信实体之间不需要建立连接 2021-6-14通信软件设计概述通信软件设计概述 第第11页页 1.1.通信软件基本概念通信软件基本概念 n通信的要素通信的要素 n 通信实体(自然人、计算机、通信终端等)通信实体(自然人、计算机、通信终端等) n 传输信道(电路、无线信道、卫星信道、计算机网传输信道(电路、无线信道、卫星信道、计算机网 络等)
6、络等) n 通信协议(通信协议(No.7信令、信令、 TCP/IP 、 SIP等)等) 2021-6-14通信软件设计概述通信软件设计概述 第第12页页 1.1.通信软件基本概念通信软件基本概念 n通信协议通信协议 在通信网中,为了在两个或多个通信实体之间准确、在通信网中,为了在两个或多个通信实体之间准确、 完整地交换信息,必须对信息交换的顺序和条件、交换完整地交换信息,必须对信息交换的顺序和条件、交换 信息的格式和内容等做出约定,这一整套约定就称为通信息的格式和内容等做出约定,这一整套约定就称为通 信协议。信协议。 2021-6-14通信软件设计概述通信软件设计概述 第第13页页 1.1.通
7、信软件基本概念通信软件基本概念 n通信协议三要素通信协议三要素 n语法:确定通信双方通信时数据报文的格式。语法:确定通信双方通信时数据报文的格式。 n语义:确定通信双方的通信内容。语义:确定通信双方的通信内容。 n时序:指出通信双方信息交互的顺序。时序:指出通信双方信息交互的顺序。 2021-6-14通信软件设计概述通信软件设计概述 第第14页页 1. 通信软件基本概念通信软件基本概念 n通信协议举例通信协议举例 两台计算机之间进行文件传输,主机两台计算机之间进行文件传输,主机A(发送方发送方)发文件发文件 给主机给主机B(接收方接收方)。首先定义双方进行通信的协议(双方约。首先定义双方进行通
8、信的协议(双方约 定好通信的格式),定好通信的格式), 例如:可以定义一个简单的文件传输例如:可以定义一个简单的文件传输 协议:协议: 2021-6-14通信软件设计概述通信软件设计概述 第第15页页 1. 通信软件基本概念通信软件基本概念 n通信软件通信软件 n定义:能够实现在两个或多个实体(计算机、电信终端、定义:能够实现在两个或多个实体(计算机、电信终端、 交换设备等)之间传递或交换信息的软件称为通信软件。交换设备等)之间传递或交换信息的软件称为通信软件。 n通信软件主要包括通信软件主要包括电信软件电信软件和和计算机网络软件计算机网络软件两大类。两大类。 n电信软件包括电话交换软件,移动
9、通信软件,智能网软电信软件包括电话交换软件,移动通信软件,智能网软 件等。件等。 n计算机网络软件包括网络协议和网络应用软件。计算机网络软件包括网络协议和网络应用软件。 2021-6-14通信软件设计概述通信软件设计概述 第第16页页 1. 通信软件基本概念通信软件基本概念 n电信软件的特点电信软件的特点 n实时性强实时性强 n运行时间长:要求系统具有很高的可靠性运行时间长:要求系统具有很高的可靠性 n并发性强:并发性强:“同时同时”为成千上万的用户服务为成千上万的用户服务 n结果可预期结果可预期 n大部分是嵌入式软件大部分是嵌入式软件 n离散性,基于有限状态机离散性,基于有限状态机 2021
10、-6-14通信软件设计概述通信软件设计概述 第第17页页 1. 通信软件基本概念通信软件基本概念 n计算机网络软件的特点计算机网络软件的特点 n采用分层结构采用分层结构 n由网络协议组成由网络协议组成 n实时性要求低,可靠性要求高实时性要求低,可靠性要求高 2021-6-14通信软件设计概述通信软件设计概述 第第18页页 主要内容主要内容 1.1.通信软件基本概念通信软件基本概念 2.2.通信软件开发过程通信软件开发过程 3.3.通信软件开发工具通信软件开发工具 2021-6-14通信软件设计概述通信软件设计概述 第第19页页 需求分析和定义 系统概要设计 详细设计 编码 单元测试 集成测试
11、系统测试 系统交付 维护 Analyst Designer Programmer Tester Trainer 2. 通信软件开发过程通信软件开发过程 2021-6-14通信软件设计概述通信软件设计概述 第第20页页 2.1 需求分析需求分析 n要解决的问题:系统应该要解决的问题:系统应该“做什么做什么”。 n主要任务:用户的需求运行环境主要任务:用户的需求运行环境形式化描述形式化描述需求规格说明书需求规格说明书 需求需求 功能性需求功能性需求 非功能性需求非功能性需求 系统功能系统功能 采用的协议和信令系统的情况采用的协议和信令系统的情况 与硬件环境的接口关系与硬件环境的接口关系 与其他系统
12、交互信息的情况与其他系统交互信息的情况 可移植性、可靠性、实时性、可用性可移植性、可靠性、实时性、可用性 安全保密性安全保密性 可重用性可重用性 2021-6-14通信软件设计概述通信软件设计概述 第第21页页 2.1 需求分析需求分析 n统一建模语言(统一建模语言(UML:Unified Modeling Language)是一种比较)是一种比较 成熟的标准建模语言。非常适合于实时系统,特别是通信软件系统成熟的标准建模语言。非常适合于实时系统,特别是通信软件系统 的分析建模,主要用于描述系统的结构和行为。的分析建模,主要用于描述系统的结构和行为。 UML具有完备的语法和语义定义,其中语法的表
13、示又分为:图形语具有完备的语法和语义定义,其中语法的表示又分为:图形语 法和文本语法。图形语法直观易懂,便于交流,因此设计人员一般法和文本语法。图形语法直观易懂,便于交流,因此设计人员一般 采用图形语法来建模。采用图形语法来建模。 其中,用例图用于需求分析,类图用于概要设计和详细设计。其中,用例图用于需求分析,类图用于概要设计和详细设计。 nMSC(Message Sequence Chart,消息顺序图,消息顺序图)是一种形式化语是一种形式化语 言,特别适合于描述通信软件系统与外部环境之间以及系统内各功言,特别适合于描述通信软件系统与外部环境之间以及系统内各功 能模块之间的消息交互情况。能模
14、块之间的消息交互情况。 2021-6-14通信软件设计概述通信软件设计概述 第第22页页 2.1 需求分析需求分析 最后形成的文档是最后形成的文档是需求规格说明书需求规格说明书,主要内容如下:,主要内容如下: n引言引言:项目的背景,给出缩写词的原文和专用术语的定义,列出参:项目的背景,给出缩写词的原文和专用术语的定义,列出参 考文献。考文献。 n任务概述任务概述:软件系统的设计目标、运行环境、条件与限制。:软件系统的设计目标、运行环境、条件与限制。 n功能需求功能需求:软件的功能划分情况、类的定义、系统类图、系统与外:软件的功能划分情况、类的定义、系统类图、系统与外 部环境之间的消息交互图。
15、部环境之间的消息交互图。 n非功能性能需求非功能性能需求:软件系统的可移植性、可靠性、实时性、可用性、:软件系统的可移植性、可靠性、实时性、可用性、 安全保密性和可重用性。安全保密性和可重用性。 n数据描述数据描述:给出软件系统用到的数据项的描述。:给出软件系统用到的数据项的描述。 2021-6-14通信软件设计概述通信软件设计概述 第第23页页 2.2 概要设计概要设计 n要解决的问题:怎么做,解决要解决的问题:怎么做,解决“系统架构系统架构”问题。问题。 n主要任务:主要任务: n根据需求规格说明书,采用形式化语言,给出系统的结构根据需求规格说明书,采用形式化语言,给出系统的结构 设计。设
16、计。 n划分功能模块,定义模块间的接口。划分功能模块,定义模块间的接口。 n设计数据结构。设计数据结构。 n设计主要的算法。设计主要的算法。 2021-6-14通信软件设计概述通信软件设计概述 第第24页页 2.2 概要设计概要设计 nSDL(Specification and Description Language,规范说明和描述语,规范说明和描述语 言言)也是一种形式化说明语言。也是一种形式化说明语言。SDL基于扩展的有限状态自动机模基于扩展的有限状态自动机模 型,特别适合于描述软件系统的离散过程。型,特别适合于描述软件系统的离散过程。 nSDL适用于概要设计和详细设计阶段。适用于概要设
17、计和详细设计阶段。 n目前有工具支持目前有工具支持SDL到到C语言或语言或C+语言的翻译,即代码的自动生语言的翻译,即代码的自动生 成,使得成,使得SDL在通信软件设计中得到越来越多的应用在通信软件设计中得到越来越多的应用。 2021-6-14通信软件设计概述通信软件设计概述 第第25页页 2.2 概要设计概要设计 本阶段的文档是本阶段的文档是概要设计说明书概要设计说明书,主要内容包括:,主要内容包括: n总体设计总体设计 说明软件系统的总体结构、功能模块的划分、各模块的功能。说明软件系统的总体结构、功能模块的划分、各模块的功能。 n接口设计接口设计 设计系统与环境的接口、功能模块之间的接口。
18、设计系统与环境的接口、功能模块之间的接口。 n数据结构设计数据结构设计 设计数据的逻辑结构和物理结构。设计数据的逻辑结构和物理结构。 n操作维护管理设计操作维护管理设计 设计系统故障检测和处理策略。设计系统故障检测和处理策略。 2021-6-14通信软件设计概述通信软件设计概述 第第26页页 2.3 详细设计详细设计 n要解决的问题:怎么做。要解决的问题:怎么做。 n主要任务主要任务 n细化各模块的功能细化各模块的功能 n详细设计系统行为,用形式化的语言来描述设计结果详细设计系统行为,用形式化的语言来描述设计结果 n编写测试计划,包括测试方法和测试用例编写测试计划,包括测试方法和测试用例 n详
19、细设计分功能模块进行,一般将功能模块分解成多个有限状态自详细设计分功能模块进行,一般将功能模块分解成多个有限状态自 动机,画出状态机的状态转移图,并用动机,画出状态机的状态转移图,并用SDL语言描述这些状态机。语言描述这些状态机。 一个状态机对应于一个状态机对应于SDL的一个进程,进程间的消息交互可以用的一个进程,进程间的消息交互可以用MSC 来描述。来描述。 2021-6-14通信软件设计概述通信软件设计概述 第第27页页 2.3 详细设计详细设计 本阶段的文档是本阶段的文档是详细设计说明书详细设计说明书,主要内容包括:,主要内容包括: n软件结构软件结构 进程划分,进程间的消息交互情况,本
20、模块自定义的消息。进程划分,进程间的消息交互情况,本模块自定义的消息。 n数据定义数据定义 定义数据类型和数据结构,声明变量。定义数据类型和数据结构,声明变量。 n行为描述行为描述 详细描述系统行为,定义必要的过程。详细描述系统行为,定义必要的过程。 n测试计划测试计划 各个进程单元测试的测试方法和测试用例,本模块集成测试的测各个进程单元测试的测试方法和测试用例,本模块集成测试的测 试方法和测试用例试方法和测试用例。 2021-6-14通信软件设计概述通信软件设计概述 第第28页页 2.3 详细设计详细设计 Conceptual Design functions Technical Desig
21、n The form system Will take WhatHow System designers Customers System builders 要将需求转化成一个工作系统,设计者必须同时满足用户和系统要将需求转化成一个工作系统,设计者必须同时满足用户和系统 构建者的要求。构建者的要求。 2021-6-14通信软件设计概述通信软件设计概述 第第29页页 2.4 编码编码 n要解决的问题:要解决的问题:“系统实现系统实现”问题问题 n主要任务主要任务 n代码自动生成代码自动生成 n人工编码人工编码 n编译调试编译调试 n系统生成系统生成 n本阶段的文档是本阶段的文档是程序清单程序清单
22、。 2021-6-14通信软件设计概述通信软件设计概述 第第30页页 2.5 软件测试软件测试 n要解决的问题:尽可能多地发现软件产品(主要指程序)中的错要解决的问题:尽可能多地发现软件产品(主要指程序)中的错 误和缺陷。误和缺陷。 n测试用例:包括测试数据和测试结果。测试用例:包括测试数据和测试结果。 n测试的方法测试的方法 n黑盒测试:把程序看成一个黑盒子,测试者不需了解程序结构黑盒测试:把程序看成一个黑盒子,测试者不需了解程序结构 和处理过程,只需根据需求分析中的功能来测试。和处理过程,只需根据需求分析中的功能来测试。 n白盒测试:测试者必须了解程序结构和处理过程,根据程序的白盒测试:测
23、试者必须了解程序结构和处理过程,根据程序的 内部逻辑来测试。内部逻辑来测试。 2021-6-14通信软件设计概述通信软件设计概述 第第31页页 2.5 软件测试软件测试 n测试步骤测试步骤 n单元测试:对单个模块进行测试,主要发现编码和详细设计单元测试:对单个模块进行测试,主要发现编码和详细设计 中产生的错误,通常采用白盒测试,可由程序员完成。中产生的错误,通常采用白盒测试,可由程序员完成。 n集成测试:对由多个模块组成的程序进行测试,检查模块间集成测试:对由多个模块组成的程序进行测试,检查模块间 的接口和通信,主要发现设计阶段产生的错误,通常采用黑的接口和通信,主要发现设计阶段产生的错误,通
24、常采用黑 盒测试。盒测试。 n系统测试:以需求规格说明书作为依据,测试软件功能和性系统测试:以需求规格说明书作为依据,测试软件功能和性 能等,通常采用黑盒测试。能等,通常采用黑盒测试。 n本阶段的文档是本阶段的文档是软件测试计划、软件测试报告。软件测试计划、软件测试报告。 2021-6-14通信软件设计概述通信软件设计概述 第第32页页 2.6 系统维护系统维护 n系统维护阶段覆盖了从软件交付使用到软件被淘汰的整个时期。系统维护阶段覆盖了从软件交付使用到软件被淘汰的整个时期。 n要解决的问题:改正软件中隐藏的错误,使软件适应新的环境,或要解决的问题:改正软件中隐藏的错误,使软件适应新的环境,或
25、 者为了扩充和完善软件的功能或性能。者为了扩充和完善软件的功能或性能。 n在系统维护阶段,在修改程序代码的同时要修改相应的需求说明文在系统维护阶段,在修改程序代码的同时要修改相应的需求说明文 档、设计文档等,还要进行回归测试(回归测试是指修改了旧代码档、设计文档等,还要进行回归测试(回归测试是指修改了旧代码 后,重新进行测试以确认修改没有引入新的错误或导致其他代码产后,重新进行测试以确认修改没有引入新的错误或导致其他代码产 生错误)和软件配置复审等。生错误)和软件配置复审等。 2021-6-14通信软件设计概述通信软件设计概述 第第33页页 主要内容主要内容 1.1.通信软件基本概念通信软件基
26、本概念 2.2.通信软件开发过程通信软件开发过程 3.3.通信软件开发工具通信软件开发工具 2021-6-14通信软件设计概述通信软件设计概述 第第34页页 3. 通信软件开发工具通信软件开发工具 n通信软件的特点通信软件的特点 n通信系统越来越庞大通信系统越来越庞大 n复杂度越来越高复杂度越来越高 n人工编码的弊端人工编码的弊端 n水平不同水平不同 n风格不同风格不同 n人员流动人员流动 2021-6-14通信软件设计概述通信软件设计概述 第第35页页 3. 通信软件开发工具通信软件开发工具 因此,需要采用软件开发工具。因此,需要采用软件开发工具。 n对通信软件的整个开发过程采用系统工程的方法来管理。对通信软件的整个开发过程采用系统工程的方法来管理。 n用形式化语言来设计。用形式化语言来设计。 n用模拟验证工具进行分析验证,排除逻辑错误,提高系统用模拟验证工具进行分析验证,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年高级会计试题及答案
- 入职新员工茶话会
- 2025年保护档案试题及答案
- 2025年安全教育培训考试应急救援知识试题库(附答案)
- 临床营养学第4版
- 2025年安规考试题库测试卷及答案
- 三甲医院护理评审方法
- 2025年体育场馆安全维护技能培训考核试卷及答案
- 门诊护理人员健康宣教
- 2025版肺部感染常见症状及护理守则
- 超材料(metamaterials)教学讲解课件
- 《毕业设计指导》课件
- 秸秆综合利用课件
- 医院重点部位安全保卫制度
- Q∕SY 1835-2015 危险场所在用防爆电气装置检测技术规范
- Q∕SY 1287-2010 地质导向钻井系统
- 人才战略规划梯队建设人才盘点激活之道课件
- 家具厂首件检验记录表
- 钩端螺旋体病疫情应急处置技术方案
- 用材林主要树种主伐年龄表
- 《项目管理手册》(印刷版,内部资料仅供学习请勿外传)
评论
0/150
提交评论