文档编号:浮云播放器外观CSCI详细设计说明书单位名称余春小组浮云播放器**:**学号:**********2011年6月修改记录1 范围1.1 标识1.2 CSCI 概述1.3 文档概述2 引用的文档3 CSCI 设计3.1 CSCI结构3.2 CSCI运行组织3.3 CSCI性能要求3.4 CSCI设计限制和约束3.5 CSCI测试计划4 CSC 设计4.x CSC的名称和唯一标识符4.x.y 下一级CSC的名称和唯一标识符4.x.y.z CSU的名称和唯一标识符5 CSCI数据说明5.1 CSCI内部数据元素5.2 CSCI外部接口数据元素6 CSCI数据文件6.1 CSC和CSU数据文件的交叉引用6.x数据文件名和唯一标识符7 需求可追踪性1.1 标识【系统背景】系统标识符:(系统标识符)系统名称:(系统名称)缩写:给出系统的缩写【适用的CSCI】标识符:(CSCI标识符)名称:(CSCI名称)缩写:给出CSCI的缩写1.2 CSCI 概述【系统功能概述】根文档编写界面。
【CSCI层次】播放器界面,是在视觉外观显示层,方便和用户实现交互。
根据功能实现界面。
1.3 文档概述【用途】本CSCI详细说明书用于描述浮云播放器项目CSCI-外观的详细设计方案,本说明书以《系统需求规格说明书》和《系统设计说明书》作为依据,本说明书是代码实现的依据,也作为单元测试的重要依据。
本概要设计说明书的阅读对象为:开发工程师,测试工程师,CM工程师,QA工程师,MA工程师。
【内容】本文档的主题内容如下:1.主要框架2.menu菜单3.皮肤描述CSCI的功能和作用;2引用的文档按下列格式列出本文档引用到的所有文档。
(《系统需求规格说明书》和《系统设计说明书》)【序号】【文档编号】【文档名称】3 (CSCI界面细设计)3.1 (CSCI界面结构)3.1.1 (CSCI界面详细结构这个界面是利用VC++直接画的,不知道怎么打包成为一个类。
但是他和其他功能之间的关系,是用户通过界面来实现想要的功能,就是用户触发界面里面的某个事件,然后程序根据事件来调用功能。
所以界面就是把所有功能联系起来,并且可视化方便用户使用的一个类。
列表给出每个CSU(类)的分配。
表3-1类-需求分配表名称唯一标识符功能需求分配(系统需求编号)“需求分配”:分配给该CSU的需求规格说明标识符。
3.1.2 (CSCI名称)接口关系列表给出CSCI结构中定义的本CSCI于其他CSCI间的所有接口的分配。
表3-2 CSCI外部接口分配表名称标识符功能接口相关的过程传送的数据其中:“名称”和“标识符”:给出其它CSCI 与本CSCI之间的一个接口的名称和唯一的标识符。
每个控件的ID都是确定好的。
“接口类型”:方法调用,DialogBox(hInstance, MAKEINTRESOURCE(IDD_MAIN), NULL, Main_Proc);定义main_proc响应主界面的消息。
为了简单,这儿的界面设计为一个对话框。
点击跟换皮肤的时候,DECLSKINHAPI SkinH_AttachEx(LPCTSTR strSkinFile, //皮肤文件路径LPCTSTR strPassword //皮肤密钥);函数加载皮肤,这儿的皮肤用的是现成的。
“传送的数据”:在播放列表里面,程序可以GetDlgItem得到列表的句柄,然后可以通过句柄对列表进行操作。
界面里面的两个进度条,分别用来控制声音和文件播放进度。
3.1.3 (CSCI名称)内部接口列表给出CSCI结构中定义的所有CSC间的接口名称,标识符,起始CSC 和终止CSC的接口的其他信息。
表3-3 CSCI内部接口分配表其中:“名称”和“标识符”:确定CSCI内部接口名称和唯一的标识符。
“CSU名称”:提供本接口的类名“接口类型”:描述该接口的类型,这些类型可能是“中断”、“过程或方法调用”、“信号量”等。
“传送的数据”:描述在该接口之间传输的数据流名称。
3.2 CSCI运行组织以及运行时的和其他包之间的简要流程和在设计上的考虑等(可用顺序图,活动图)。
3.3 CSCI 性能要求提供对于CSCI在运行时必须满足的性能要求。
例如:内存和进程时间(给出计算单位)要求、资源占用率或响应时间等。
如无要求则用“无。
”代替下表。
表3-5 CSC内存/处理时间表3.4 (CSCI名称)设计限制和约束【限制条件】实现皮肤功能用的是插件,需要在程序目录有静态链接库,然后本程序只能在Windows 系统上运行,而且版本不低于XP。
【编程语言】C语言【编译/开发环境】Visual C++ 6.0 ,windows XP【运行平台】Windows Xp及以上版本4 CSC 详细设计从4.1节开始编号,分小节描述每个CSU的详细设计。
真的不知道怎样把界面弄成一个类。
界面都是在VC++上面画的。
4.x (CSU的名称和唯一标识符)4.X.1(CSU名称)接口和环境用类图给出CSU以及和其他CSU的关系。
4.X.2 (CSU名称)设计规格4.X.2.1 类型给出CSU的类型,CSU的类型可能是内部数据类型、各种运行库、类库、类(界面接口类和功能类)、接口、过程库等在CSCI中规定的程序设计语言和编译开发环境中提供的基本的程序设计单元。
给出CSU的定义(类的原型,库文件名,过程的原型等)。
可用伪代码表示。
4.X.2.2 (CSU名称)内部数据元素给出CSU中产生的不被其他CSU使用的数据元素的描述。
这些数据不包含与接口有关的数据元素(例如用户界面元素按钮、编辑框等或者硬件参数等,这些将在后面的接口设计规格中给出)。
使用下表详细描述每个数据元素的特性:表X.1 内部数据元素定义表如果CSU是对象(类),这些数据将是对象的属性。
这些数据元素实际上表示了CSU内部的各种状态,也是为完成CSU的功能而必须具有的内部工作空间。
这些数据元素的特性不必全部给出,但必须有足够的特性来定义它们。
4.X.2.3 数据结构【内部数据结构】分段落给出表X.1中实现的所有数据类型(除使用的程序设计语言的内部数据类型、开发编译环境中提供的数据类型外)的定义和说明。
对于那些被多次使用的数据结构,应详细的描述在一个数据元素之下的情况下,其它的仅需引用即可。
【外部或共享数据结构】给出在CSU中使用的所有外部或共享数据类型(使用的程序设计语言的非内部数据类型、开发编译环境中未提供的数据类型)的定义和说明。
对于那些被多次使用的数据结构,应详细的描述在某一个CSU的情况下,其它的仅需引用即可。
4.X.2.4 局部数据文件/数据库给出在CSU中使用的所有局部数据文件或局部数据库的定义和说明。
4.X.2.5 接口规格详细设计对于那些用于人机交互界面的CSU,要给出CSU的界面详细设计,给出CSU 中的界面布局、界面流程、交互过程、交互过程中输入输出的数据元素、消息传递和处理、接口优先级和使用的通讯协议等。
对于功能类,列出所有public类型的功能接口(只需列出名称,4.X.2.6再详细描述)。
4.X.2.6 (CSU名称)方法4.X.2.6.y (方法名称和唯一标识符)从4.X.2.6.1节开始编号,描述CSU提供给外部的接口过程的名称、标识、功能、类型、参数和输入输出数据的详细信息。
如果本数据结构涉及与用户的交互,则需要给出用户交互的接口详细描述。
【名称】给出接口过程的名称和唯一标识符【原型】用伪代码描述接口过程的原型,包括标识符,参数信息(标识符和类型),以及访问限制等特性。
【功能说明】描述接口过程的所完成的功能,可能影响的对象状态改变等。
【参数说明】表X 参数表【返回值】表Y 返回值表【示例】用伪代码给出调用本接口过程的示例性代码。
【影响的属性】描述由于调用本接口过程引起的属性改变。
【使用的其他CSU的方法】给出在实现本接口过程时调用的其他CSU的方法。
【算法】用伪代码给出本接口过程的实现算法。
【流程图】如有必要给出本接口过程的程序流程图。
【错误处理】描述当调用本接口过程发生错误时的处理原则和具体方法。
5 (CSCI名称)数据说明描述CSCI的全局数据元素。
5.1 (CSCI名称)内部数据元素【数据元素定义】表5.1 (CSCI名称)全局内部数据元素定义表【数据元素结构】给出表5.1中给出的数据类型(除使用的程序设计语言的内部数据类型、开发编译环境中提供的数据类型之外)的所有数据类型的定义和说明。
这些数据结构采用《软件CSCI详细设计伪代码使用规范》中的定义的相关规范来描述。
5.2 (CSCI名称)外部接口的数据元素表5.2外部接口的数据元素定义表6 需求可追踪性给出CSCI中的软件需求规格和接口需求规格在CSU中被分配的映像关系(CSU有可能部分参与这些需求规格)。
使用如下表示的格式:表7-1 需求、接口规格映像表附录附录给出了为便于理解前面的正文而需要特别说明的部分。
附录1 术语、缩略语给出文档正文中使用的专门术语和缩略语描述。
这些描述使用如下格式:(缩略语) :(全称或意义描述)。
附录X (附录名称)给出在文档中提到的其他附录。