1、1需求分析1.1 系统设计的背景信息传统的卡拉 OK,由于歌曲更新慢,老歌太多,同时出现了抢歌现象,点歌方式上也出现了点歌速度慢,歌曲过时不能及时跟随潮流,即无法满足用户的要求,给人们休闲上蒙上了一片阴影。KTV 点歌系统就应用而生了。本系统的功能之一是从用户角度出发。为满足用户的需求,点歌系统应当具备多种途径的歌曲查询点播功能。通过单击按钮即可查询所有曲目,并且需要提供更为丰富的查询方式。基于方便性与习惯,首先本系统应当提供传统点歌系统的查询方式,即以歌曲名首拼音为依据的查询方式和以歌曲名字笔画多少为依据的查询方式,此外,需要增加以歌手名为依据的查询方式和以歌曲语种为依据的查询方式。事实上,
2、这些查询方式并没有什么奇特的地方,但是因为可以让不同的顾客选择自己习惯与适应的查询方式,它必将会让用户在消费时感觉更愉快些。另外点歌系统还应当可以方便地增加新的曲目,也应提供对现有曲目的修改、删除功能。同时为方便用户对歌曲的点播,管理者也该适时对歌曲进行排名汇总。并且,对曲目的管理应当是各包房统一的,而不是必须一个一个包房地进行设置与操作。另外,因为曲目的管理会影响到整个系统提供的服务,所以这些管理功能应当只能由具有相应权限的管理人员完成。因此,点歌系统中还应提供相应管理人员管理功能及权限控制功能。1.2 需求分析1.2.1 信息需求 KTV 点歌系统主要是实现用户相关模块和管理员相关模块功能
3、的系统, 用户相关模块又分为选择歌曲、歌曲控制以及删除选定歌曲,管理员相关模块分为管理员登陆、歌曲更新和歌曲排名。根据 KTV 点歌的基本需求,本系统需要完成的基本任务如下:(1)歌曲查询当用户进入 KTV 点歌系统时,应该在主页面中分类显示最新的歌曲信息,以供客户选择所需歌曲,同时也应该提供歌曲的各种检索功能,包括按歌曲名、歌手名、歌曲地区等信息快速查询所需歌曲信息的功能。(2)歌曲库管理将用户选择的歌曲统一到歌曲库中,当选择的歌曲播放完成之后,系统能够自动清除以已经播放完毕的歌曲信息。1.2.2 功能需求2KTV 点歌系统描述如下:为满足用户的需求,点歌系统应当具备多种途径的歌曲查询点播功
4、能。基于方便性与习惯,首先本系统应当提供传统点歌系统的查询方式,即以歌曲名首拼音为依据的查询方式和以歌曲名字笔画多少为依据的查询方式,此外,需要增加以歌手名为依据的查询方式和以歌曲语种为依据的查询方式。另外点歌系统还应当可以方便地增加新的曲目,也应提供对现有曲目的修改、删除功能。同时为方便用户对歌曲的点播,管理者也该适时对歌曲进行排名汇总。因为曲目的管理会影响到整个系统提供的服务,所以这些管理功能应当只能由具有相应权限的管理人员完成。因此,点歌系统中还应提供相应管理人员管理功能及权限控制功能。对上述 KTV 点歌系统的描述进行分析,可以获得如下功能性需求:(1)用户通过身份验证,登录到 KTV
5、 点歌系统。(2)用户可以在该系统中进行选择歌曲。(3)用户对该系统中的歌曲进行控制。(4)用户可以根据自己的喜欢对自己选择的歌曲再进行筛选后删除不喜欢的歌曲。(5)管理员输入密码验证可以登录 KTV 点歌系统。(6)管理员对该系统中的歌曲进行更新,即对歌曲进行修改、添加以及删除。(7)管理员可以根据点播次数,对歌曲进行排名。1.2.3 性能需求(1)界面设计友好、美观(2)数据存储安全、可靠(3)信息分类清晰、准确(4)强大的查询功能,保证数据查询的灵活性(5)操作简单易用、界面清晰大方(5)系统安全、稳定(6)占用资源少、对硬件要求低(7)提供灵活、方便的权限设置,便系统易于管理2、系统总
6、体结构设计2.1 系统功能设计管理员模块用户模块登录系统歌曲更新歌曲排名歌曲选择歌曲控制删除歌曲图 2-1 KTV 点歌系统功能划分图2.2UML 视图2.2.1 识别参与者通过对系统需求的分析,可以确定系统中有两个参与者:用户、管理员。用户描述:用户可以进入点歌系统,进行选择歌曲,并且对歌曲进行控制以及删除选定歌曲。示例:任何在此 KTV 点歌系统中的进行点歌的人。管理员描述:管理员可以登录到系统,可以对系统中的歌曲进行更新以及排名。示例:在系统上管理歌曲信息。2.2.2 识别用例通过对需求的进一步分析,可以确定系统中有如下用例存在:KTV 点歌系统4用户用例:(1)登录:点击进入到 KTV
7、 点歌系统。(2)选曲:用户可以在该系统中进行选择歌曲。(3)歌曲控制:用户对该系统中的歌曲进行控制。(4)歌曲删除:用户可以根据自己的喜欢对自己选择的歌曲再进行筛选后删除不喜欢的歌曲。管理员用例:(1)登录:管理员输入账号和密码可以登录带 KTV 点歌系统(2)歌曲管理:管理员对该系统中的歌曲进行更新,即对歌曲进行修改、添加以及删除。 (3)歌曲排名:管理员可以根据点播次数,对歌曲进行排名。图 2-2 用户用例图图 2-3 管理员用例图2.3 静态结构模型2.3.1 建立类图图 2-4 系统类图24 动态行为模型624.1 创建系统顺序图(协作图)图 2-5 管理员顺序图图 2-6 用户顺序
8、图图 2-7 管理员协作图图 2-8 用户协作图82.4.2 创建系统的状态图图 2-9 用户状态图图 2-10 管理员状态图2.4.3 创建系统的活动图运用 Rational Rose 软件,根据其他组员所做结构设计、功能设计,由我来创建我组 KTV 点歌系统的活动图。考虑到活动图的一目了然和各种功能结构的连续性,我将用户、管理员和外部模块通过泳道连结在一起,以实现系统功能,清晰表现系统活动。(1)用户模块:主要有选歌、音量和歌曲控制。(2)管理员模块:主要有登录系统、歌曲更新和歌曲点击量排名统计。(3)外部数据源:主要功能就是为 KTV 点歌系统提供更新数据。图 2-11 活动图25 物理
9、模型2.5.1 创建系统组件图10图 2-12 组件图2.5.2 创建系统部署图图 2-13 部署图3开发平台选择Rational Rose 是用于可视化建模和公司级水平软件应用的组件构造。Rational Rose 包括了统一建模语言(UML) ,OOSE ,以及 OMT。其中统一建模语言(UML)由 Rational 公司3位世界级面向对象技术专家 Grady Booch、Ivar Jacobson、和 Jim Rumbaugh 通过对早期面向对象研究和设计方法的进一步扩展而得来的,它为可视化建模软件奠定了坚实的理论基础。同时这样的渊源也使Rational Rose 力挫当前市场上很多基于
10、 UML 可视化建模的工具 Rational Rose 是一个完全的、具有能满足所有建模环境(Web 开发,数据建模,Visual Studio 和 C+ )灵活性需求的一套解决方案。Rose 允许开发人员,项目经理,系统工程师和分析人员在软件开发周期内在将需求和系统的体系架构转换成代码,消除浪费的消耗,对需求和系统的体系架构进行可视化,理解和精练。通过在软件开发周期内使用同一种建模工具可以确保更快更好的创建满足客户需求的可扩展的、灵活的并且可靠的应用系统。4本次设计心得体会 我在本组中负责KTV点歌系统中的活动图部分。活动图(activity diagram,动态图)是阐明了业务用例实现的工
11、作流程。在我们设计的KTV点歌系统中,需要实现主要功能是:用户点歌、歌曲库更新和歌曲排名。考虑到活动图的一目了然和各种功能结构的连续性,我将用户、管理员和外部模块通过泳道连结在一起,以实现系统功能,清晰表现系统活动。在用户模块中,主要活动有选歌、音量和歌曲控制;在管理员模块中,主要活动有登录系统、歌曲更新和歌曲点击量排名统计;在外部数据源模块中,主要功能就是为 KTV 点歌系统提供更新数据。这次课程设计中,遇到了很多问题。其中最大的问题是在开始时大家对系统功能的设计问题,以及后来的管理者与用户之间关系的设计。慢慢摸索,一次又一次的修改。每幅图之间有着密不可分的关系,我们必须先形成总体的想法,然后每个人关于自己负责部分的不断修改,这对团队来说也是一个很大的挑战。但是我们都完成了各自的任务,并且实现了功能,可以说这是个不算小的成功。通过这两周的实验课,我更加扎实的掌握了Rational Rose有关方面的知识和操作。在设计过程中,组员的同学们一起合作、讨论,一起解决问题,提出和否定了许多方案。当然先行方案还是有很多不足,但是不管是在专业知识还是实际试验过程中,我都得到了许多。非常感谢学校和老师给了我这次实验的机会。