课程内容提要
- 多媒体技术基本概念
- 多媒体相关计算问题
- 常见多媒体标准
- 数据压缩技术
多媒体技术基本概念 - 音频相关概念
- 声音的带宽:声音这种音波频率的范围
- 超声波:超过20kHZ ; 低声波(次声波):小于20HZ
多媒体技术基本概念 - 图像相关概念
- 定义
- 亮度:画面的明亮程度
- 色调(红、绿):偏红偏绿
- 饱和度:色彩的艳丽程度
- 彩色空间
- 光的三原色RGB:叠加原理——》彩色电视
- 印刷三原色CMY:相剪原理——》印刷
- YUV——》电视兼容
多媒体技术基本概念 - 媒体的种类
- 媒体形式
- 显示媒体——》输入输出设备
多媒体技术基本概念 - 多媒体相关计算问题
- 图像容量计算:
(1)、像素位:每个像素用多少bit位去存储
- ——》注意:单位的匹配
- 1.计算出B——MB:/1024/1024
常见多媒体标准
数据压缩基础
- 压缩的前提:有冗余才能进行压缩
- 冗余类型:
- 空间冗余(几何冗余):大面积相同的颜色,需要记录大量相同的像素点
- 时间冗余:
- 视觉冗余:色级有很多种人眼无法看出区别的颜色,所以压缩时压缩为同一个颜色即可
有损压缩与无损压缩
- 区别:
- 有损压缩:无法还原,因为压缩过程中丢失一些信息
- 无损压缩:压缩后可以还原,与原文件一模一样
软件开发模型
软件开发模型 - 瀑布模型(SDLS)
- 缺陷的根本原因:需求分析阶段难以把握,软件需求往往是不明确的,尤其是在项目初期;因为在开发的过程中往往与客户的要求不同,从而不断回到需求分析阶段,浪费大量的时间
- 适用场合:
1)、需求明确
2)、二次开发 - 是结构化模型
软件开发模型 - 其它经典模型
- 使用阶段:只适用于原型分析的阶段
- 重点:原型在于构造一个简易的系统,定义于需求不明确的阶段
- 增量模型:
1)、先把核心部分做出来
2)、做出两个模块,让用户使用,然后 发现问题 - 纠正问题
3)、在下个时间段,开发新的模块,一个一个模块开发进行,直到完成最终模型
注意:先做一块,再做一块
好处:较早的与用户进行接触,不断地进行审视,减低了风险
软件开发模型 - 增量模型与螺旋模型
- 问题:有一个需求不明确的项目,问应该使用哪种模型,有螺旋和原型 ——》 只能使用原型,如果没有原型选的时候,可以考虑选择螺旋模型
- ——》考试思维:选项遵循最匹配的原则
- 注意:
1)、引入风险分析——》最显著的特征之一
软件开发模型 - 其它经典模型
V模型
- 在需求分析阶段,就开始写验收测试、系统测试
- 特征——》注重测试要贯穿开发的始终
喷泉模型
- 特征:面向对象的模型——》迭代、无间隙
RAD(快速开发模型)
- 由瀑布模型 、构建化模型组合而成
- 用可视化工具进行开发,就是快速开发模型
- 特征——》快速构件软件系统
软件开发模型 - 构件组装模型(CBSD)
- 基本思路:把软件开发中的各个模块,都可以考虑做成标准构件,再组装,成最终软件
- 好处:
1)、降低时长
2)、降低成本
3)、增加软件的可靠性——》构件库的形成,经过了时间的验证
软件开发模型 - 敏捷开发方法
- ——》重点:了解敏捷开发方法的理念
信息系统开发方法
- 方法区别:
- 结构化方法:一旦开发完成,流程是固定的不灵活的
- 面向对象方法:
- 原型法:适合需求不明确开发
- 面向服务方法
需求开发 - 需求分类与需求获取
- 分类:
- 业务需求:找各个部门了解角色职能
- 用户需求:
- 设计约束:指定用Java或 .Net开发,与功能性能无关
- QFD
- 期望需求:用户没明示,但是要自己领会要有
- 兴奋需求:超前实现功能,超出用户预期,但是会超出预算
结构化设计 - 基本原则
- 信息屏蔽:内部信息不展示,只展示或操控对外接口
- 内聚:内部各个部件连接的紧密程度
- 耦合:模块与模块之间
- 深度:深度越深,越容易出错
- 多扇入,少扇出:指向自己的多一点——》说明价值度高,指向他人的少一点
软件测试 - 测试原则与类型
- 动态测试——》利用到计算机的测试
- 静态测试——》纯手工的
软件测试 - 测试用例设计
- 测试方法
- 黑盒测试:将一个软件模块看成一个黑盒子——》看不见里面是什么东西,只能看见输入、输出
1)、等价类划分:从优(100-90)、良(90-70)、及格(70-60),分别在各个层次选95、88、66,发现走不同的路径
2)、边界值分析:两种不同等价类的边界上,标准取值:小一点 —> -1<0,略大一点 —> 151>150,所以取,-1、0、150、151
3)、错误推测:用丰富的经验去进行推断
4)、因果图: - 白盒测试:
- 条件覆盖:判定条件可能由</font color=yellow>两个判断条件组成,两个条件的真假判定都要满足
软件测试 - 测试阶段
- 测试:
- 单元测试:各个模块
- 集成测试:将模块联结起来一起测试,测衔接
- 确认测试:确认需求
- 系统测试:测试压力、性能
- 冒烟测试:最初步的检测
软件测试 - McCabe复杂度
- </font color=yellow>——》考频:必考
- 分岔的地方可以写成一个结点,也可以不写
- 求环路复杂度问题
系统运行与维护
- 维护类型:
- 完善性维护:把性能改得比以前更好,即添加一些新的东西进来
- 适应性维护:根据市场需求、数据类型,软件、硬件
- 预防性维护:错误发生前已经意识到
- 改正性维护:错误发生后进行修正
软件过程改进 - CMMI
- 关键字:
- 已定义级:已文档化
- 定量管理级:量化
- 优先级:持续的优化