大型软件系统的开发介绍_ver2
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
系统概述
公共定义描述
消息定义
于忠德
2002年11月 于中国
第17页
大型软件系统的开发介绍 (Development of Large Software Systems)
接口设计 (cont’d) (cont d)
公共单元编码
单元名, 单元描述, 单元名 单元描述 单元值 数据名, 数据描述, 数据值域, 使用机制, 数据名 数据描述 数据值域 使用机制 保护机制 函数名1, 函数名n 函数名 …, 函数名
于忠德
2002年11月 于中国
第4页
大型软件系统的开发介绍 (Development of Large Software Systems)
1.1 软件开发的生命周期(cont d) 软件开发的生命周期(cont’d) (cont
技术支持
Design
系统测试 集成测试
系统升级 售后服务
Requirement
需求条目: 需求条目
RTP/RTCP基本需求条目 基本需求条目
RTP/RTCP包的字节顺序和对齐方式 包的字节顺序和对齐方式 RTP数据包格式 数据包格式 RTCP包结构与发送时间间隔 包结构与发送时间间隔 …… RTP使用 使用UDP偶数端口号,RTCP使用下一个连续的 偶数端口号, 使用 偶数端口号 使用下一个连续的 奇数端口号 RTP的端口号从 的端口号从5000以上开始选择 的端口号从 以上开始选择 RTP包没有长度域, RTP包依靠 包没有长度域, 包依靠UDP提供长度指示 包没有长度域 包依靠 提供长度指示 RTP包的处理 包的处理 RTCP包的处理 包的处理
于忠德
2002年11月 于中国
第15页
大型软件系统的开发介绍 (Development of Large Software Systems)
概要设计(cont d) 概要设计(cont’d) (cont
需求条目
语音任务与消息队列的创建 语音模块对象(object)的建立 语音模块对象 的建立 语音任务主进程函数完成如下的功能 语音模块的初始化 进入一个永久循环,进行消息分拣 进入一个永久循环, 接收消息的处理概述 消息分拣的原则 RTP会话管理 会话管理 RTP包的转发 包的转发 RTCP包的接收与发送 包的接收与发送 配置、跟踪监视、出错报告 配置、跟踪监视、 VOS时钟超时 时钟超时
功能区域1, 功能区域n 功能区域 …, 功能区域
功能区域描述, 数据结构描述,需求条目 功能区域描述 数据结构描述 需求条目
逻辑接口
功能区域X到功能区域 的接口 功能区域 到功能区域Y的接口 到功能区域
接口1, …, 接口n 接口 接口
第11页
于忠德
2002年11月 于中国
大型软件系统的开发介绍 (Development of Large Software Systems)
大型软件系统的开发介绍
(An Introduction to the Development of Large Software Systems, ver.02)
于忠德 2003年3月 年 月 中国成都 Zhongde Yu March 2003 Chengdu, China
大型软件系统的开发介绍 (Development of Large Software Systems)
1.1 软件开发的生命周期
市场调查 (Marketing Investigation) 需求分析 (Requirement Specification) 概要设计 (High-Level Design) 接口设计 (Interface Design) 详细设计 (Low-Level Design) 编码 (Coding / Implementation) 单元测试 (Unit Testing) 集成测试 (Integration Testing) 系统测试 (System Testing) 售后服务 (After-Sale Service)/系统升级 (System / Upgrade)/技术支持 (Technical Support) /
下图描述了语音处理模块与其它主要模块之间的关系:
接口卡驱动模块
1 3
语音处理模块 4 呼叫控制模块
2 5
网络接口模块
配置管理模块
跟踪监视模块
于忠德
2002年11月 于中国
第8页
大型软件系统的开发介绍 (Development of Large Software Systems)
需求分析 (cont’d) (cont d)
第9页
于忠德
2002年11月 于中国
大型软件系统的开发介绍 (Development of Large Software Systems)
需求分析 (cont’d) (cont d)
Octet 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17-n - Type M M M sequence number M M M timestamp M M M M M M O O contributing source identifiers (CSRC) O O O CSRC …… 一个RTP包头中最多可包含 个CSRC) 包头中最多可包含15个 (一个 包头中最多可包含 ) RTP包静荷(语音数据) 包静荷(语音数据) 包静荷 synchronization source identifier (SSRC) M 7 V=2 6 5 P 4 X PT 3 2 CC 1 0
系统概述
运行需求
需求分解
功能体描述, 功能体描述 需求条目
第7页
于忠德
2002年11月 于中国
大型软件系统的开发介绍 (Development of Large Software Systems)
需求分析 (cont’d) (cont d)
举例: 电话系统的 电话系统的语音处理模块 举例 IP电话系统的语音处理模块
PDRV VOICE CC CCFXS CCFXO CCH323 NET H245 Q931 RAS INFO ASN1 CFG DMM VOS, OAM / CLI
于忠德
2002年11月 于中国
第12页
大型软件系统的开发介绍 (Development of Large Software Systems)
第16页
于忠德
2002年11月 于中国
大型软件系统的开发介绍 (Development of Large Software Systems)
接口设计
接口设计 (Interface Design)
引言
目的, 目的 范围 系统体系结构, 子系统说明,子系统间接口机制 系统体系结构 子系统说明 子系统间接口机制 消息结构, 消息头, 通用规则, 消息结构 消息头 通用规则 公共参数定义 消息名, 方向, 消息名 方向 消息鉴别号 , 消息体
大型软件系统的开发介绍
1. 软件工程方面的考虑 2. 软件系统开发实例介绍 软件系统开发实例介绍
于忠德
2002年11月 于中国
第2页
大型软件系统的开发介绍 (Development of Large Software Systems)
1.软件工程方面的考虑 软件工程方面的考虑
1.1 软件开发的生命周期
Software Life Cycle Software Quality Assurance, SQA Software Dev Methodology
1.2 软件质量保证
1.3 软件开发的方法
于忠德
2002年11月 于中国
第3页
大型软件系统的开发介绍 (Development of Large Software Systems)
于忠德
2002年11月 于中国
第14页
大型软件系统的开发介绍 (Development of Large Software Systems)
概要设计(cont d) 概要设计(cont’d) (cont
功能区域1: 功能区域 :模块控制功能区域
功能区域描述
语音模块类 class VOIP_CVoice的定义 的定义 语音任务主进程函数 task_VOIPVMain() 语音模块的初始化 消息的分发 语音模块的配置、统计查询、跟踪监视、 语音模块的配置、统计查询、跟踪监视、出错信息报 告
可变长度
M
于忠德
2002年11月 于中国
第10页
大型软件系统的开发介绍 (Development of Large Software Systems)
概要设计
概要设计 (High-Level Design)
VERY IMPORTANT but VERY HARD! 引言
目的, 目的 范围
子系统概述 功能区域分割
于忠德
企业局域网, 租用电信专线, 企业局域网 租用电信专线 连接位于不同城市的 总部与分部 提供附加业务, 在局域网内打电话, 零话费! 提供附加业务 在局域网内打电话 零话费 向局域网外打电话, 只花本市话费 本市话费! 向局域网外打电话 只花本市话费
2002年11月 于中国 第6页
大型软件系统的开发介绍 (Development of Large Software Systems)
由市场部(Marketing Dept.)来完成,产品经 来完成, 由市场部 来完成 理PM (Product Manager)负责 负责 了解用户需求, 了解用户需求,确立研发方向 形成 MRD (Marketing Requirement Document) 举例: 在路由器上实现IP电话功能 举例 在路由器上实现 电话功能
控制任务 (VOIPC) 语音任务 (VOIPV) 网络任务 (VOIPN)
第13页
于忠德
2002年11月 于中国
大型软件系统的开发介绍 (Development of Large Software Systems)
概要设计(cont d) 概要设计(cont’d) (cont
INFO模 块 配置模块 (CFG) OAM子 系 统 语音模块 (VOICE) VOS子 系 统 (消息转发/ 定时器)
详细设计 接口设计 需求分析 市场调查
于忠德 2002年11月 于中国
单元测试 编码
After Sale Testing Coding SQA
第5页
概要设计
大型软件系统的开发介绍 (Development of Large Software Systems)
市场调查
市场调查 (Marketing Investigation)
概要设计(cont d) 概要设计(cont’d) (cont
语音模块的功能区域划分: 语音模块的功能区域划分:
模块控制功能区域 RTP会话管理功能区 会话管理功能区 RTP包转发功能区 包转发功能区 RTCP包收发功能区和统计信息表 包收发功能区和统计信息表 Note1:VoIP 实时操作系统任务 : 实时操作系统任务(Tasks) 或进程 (Processes)
模块控制 ( 配 置 /统 计 查 询 / 跟踪监视)
RTCP统 计 信息表
RTCP包 收 发
驱动模块 (PDRV)
RTP包 转 发
网络接口模块 (NET)
内部语音端口 交换表
语 音 端 口 -会 话 关系表
RTP会 话 管 理
呼叫控制模块 (C C )
VOIP子 系 统 语 音 模 块 VOIP子 系 统 其 它 模 块 其它子系统
概要设计(cont d) 概要设计(cont’d) (cont
举例:VoIP功能模块的划分 举例: 功能模块的划分
接口卡驱动( 卡驱动) 接口卡驱动(POTS卡驱动) 卡驱动 语音模块 呼叫控制 呼叫控制( 呼叫控制(FXS) ) 呼叫控制( 呼叫控制(FXO) ) 呼叫控制( 呼叫控制(H323) ) 网络接口 H.245 Control Signalling H.225.0 Call Signalling (Q.931) H.225.0 RAS 跟踪告警信息处理 ASN.1编解码 编解码 配置数据 动态存储管理 其他: 虚拟操作系统, 其他 虚拟操作系统,命令行接口
需求分析
需求分析 (Requirement SpeΒιβλιοθήκη Baiduification)
引言
目的, 目的 范围 系统体系结构, 功能简单描述, 系统体系结构 功能简单描述 数据流描述 对硬件环境的需求, 对硬件环境的需求 对软件环境的要求 功能体划分, 功能体1, 功能体2, 功能体n 功能体划分 功能体 功能体 …,功能体 功能体