SE Springer小组之《Spring音乐播放器》可行性研究报告三、四
3 对现有系统的分析
由于本次可行性分析主要是建立在团队自行实现一个音乐软件的目标上,并不是在一个现有系统的基础上开发改进的新系统。因此这里将分析一款市面上已经存在的音乐软件(以下称为W音乐),并为之后开发“Spring音乐播放器”提供一定的参考。
3.1处理流程和数据流程
说明现有系统的基本的处理流程和数据流程。此流程可用图表即流程图的形式表示,并加以叙述。

图2 基本处理流程图
用户启动M音乐后,可以选择在网络音乐库中查找歌曲并下载,也可以从本地音乐库中查找想听的歌曲,然后进行播放。本地音乐库中的歌曲会进入数据库,并通过相关算法得到相似歌曲推送给用户。
3.2工作负荷
连接网络并且从中获取音乐及歌词(网络接口);记录用户的听歌列表且推送相似歌曲(数据库);用户可以对音乐发表评论且与其他用户交流;可以列表循环/单曲循环/随机播放等(歌曲间的链接方式);用户可以将本地歌曲导入播放(读取本地文件)。
3.3费用开支
具体的开支不了解,但需要强大的数据库(每个用户都有自己的歌单),还有购买音乐版权所支付的费用,对安卓/iOS系统均兼容,用户界面的设计等。
3.4人员
不清楚,网上无资料。
3.5设备
安卓系统/ios系统/windows系统。
3.6局限性
无法将本地音乐添加进歌单列表;根据用户歌单判断的相似音乐不够贴合用户喜好。推送相似音乐使用的算法不够好,改进式维护已无法满足用户需求。
4 所建议的系统
我们团队所建议的系统即想要完成的是“spring音乐播放器”,具备有音乐播放软件的基本功能。
4.1对所建议系统的说明
概括地说明所建议系统,并说明在第A.2章中列出的那些要求将如何得到满足,说明所使用的基本
方法及理论根据。
(1)读取硬盘中的MP3等格式的音乐文件,并将歌曲名保存在软件歌曲列表中,列表中已有歌曲按名称首字母排序;
识别文件格式,将文件读入后存入一个链表中,进行排序后再显示出来。在C++中实现,可以考虑排序多种方法哪种更加快速合适。
(2)音乐播放可实现暂停与停止播放,上一首,下一首播放,其中上一首,下一首歌曲根据歌曲列表确定;
暂停播放的按钮被触发时即将指针停在当前位置,停止播放即将指针指向歌曲的开头,再次点击播放时,从指针所在处开始播放。
(3)双击列表中音乐名,可进行该歌曲的播放;
即接收到鼠标左键快速连击两次的消息时,开始播放音乐。用MFC的消息响应函数应该可以解决。
(4)前期工作顺利且时间充足的情况下,拟添加随机播放,顺序播放功能。
待进一步的了解。
4.2处理流程和数据流程
处理流程在2中已给出。

图3 数据流程
4.3改进之处
由于我们是希望做出自己的音乐软件,而非对M音乐进行改进(因为它的功能已经足够完备),所以这里是无。
4.4影响
4.4.1对开发的影响
说明对开发的影响,如:
a.为了支持所建议系统的开发,用户需对软件进行测试,验证功能是否成功;
b.成员所持有的笔记本电脑即可进行开发该音乐软件。
4.4.2对地点和设施的影响
无。
4.4.3对经费开支的影响
无。
4.5局限性
建议系统仍存在多个局限,只能实现基础功能。原因是成员的能力有限,处理的时间有限。
4.6技术条件方面的可行性
本节应说明技术条件方面的可行性,如:
a.在成员所有的电脑设备上,能实现基本的音乐软件功能,但无法实现连接网络音乐库,拥有多个用户等等功能;
b.利用现有的技术,系统的功能均可以实现;
C.小组有四名成员,均有编程方面的经历,但是由于时间有限,能力有限,可行性不是百分之百;
d.在规定的时间内,部分功能实现没有问题。
SE Springer小组之《Spring音乐播放器》可行性研究报告三、四的更多相关文章
- SE Springer小组《Spring音乐播放器》可行性研究报告一、二
1 引言 1.1编写目的 <软件工程>课程,我们团队计划开发一个音乐播放器.本文档是基于网络上现有的音乐播放器的特点,团队计划实现的音乐播放器功能和团队人员的综合实力等情况,说明该软件开发 ...
- SE Springer小组《Spring音乐播放器》软件需求说明之四
4 运行环境规定 4.1设备 我们计划完成的音乐软件较小巧,功能并不复杂,在普通笔记本电脑中即可运行,并无特殊硬设备要求. 4.2支持软件 需要用到windows操作系统,用VS编写C/C++代码,还 ...
- SE Springer小组《Spring音乐播放器》软件需求说明3
3 需求规定 3.1对功能的规定 基本功能与相关的输入输出如下表所示.歌曲播放.停止.暂停等功能调用MCI库,数据在MCI库下如何运作与用户的直观感受无关,就不具体列出. 输入 处理 输出 用户登录信 ...
- SE Springer小组之《Spring音乐播放器》可行性研究报告一、二(转载)
此文转载自组员小明处~~ 1 引言 1.1编写目的 <软件工程>课程,我们团队计划开发一个音乐播放器.本文档是基于网络上现有的音乐播放器的特点,团队计划实现的音乐播放器功能和团队 ...
- SE Springer小组之《Spring音乐播放器》需求分析说明书二
2.1 目标 Spring音乐播放器软件为课程<软件工程>所开发的课程作业,主要意图是为访问计算机中的mp3格式的音频文件,并使其能够完成访问,读取,添加,保存,播放,切换音频文件等功能. ...
- SE Springer小组之《Spring音乐播放器》需求分析说明书一
软件需求说明书 软件需求说明书的编制是为了使用户和软件开发者双方对该软件的初始规定有一个共同的理解, 使之成为整个开发工作的基础. 1 引言 1.1编写目的 使用户对该软件的初始规定有一个理解,也使软 ...
- SE Springer小组之《Spring音乐播放器》可行性研究报告五、六
5 可选择的其他系统方案 曾经考虑过制作闹钟系统,但考虑到闹钟系统在电脑应用中极其不实用,所以此方案未通过. 6 投资及效益分析 6.1支出 本软件只用于完成课程学习要求,不用做商用,无基础设备等支出 ...
- 仿酷狗音乐播放器开发日志三——修复CEditUI的bug2
无意中发现了CEditUI控件的另一个bug,当我给播放器的搜索栏获取焦点时,这时再改变窗体大小,原本搜索栏应该对应着也改变大小,却发现CEditUI内嵌的edit控件没有跟着改变(如下图),跟着调试 ...
- 第五篇——Spring音乐播放界面设计(C#)
由于小组成员已经完成软件的详细设计说明书,在这里只具体说明软件程序的细节编写,以免重复. 歌曲的播放采用VS自带的axWindowsMediaPlayer插件,所以程序中涉及到许多该插件的使用.Ctl ...
随机推荐
- WCF : 修复 Security settings for this service require Windows Authentication but it is not enabled for the IIS application that hosts this service 问题
摘要 : 最近遇到了一个奇怪的 WCF 安全配置问题, WCF Service 上面配置了Windows Authentication. IIS上也启用了 Windows Authentication ...
- ABP源码分析三十五:ABP中动态WebAPI原理解析
动态WebAPI应该算是ABP中最Magic的功能之一了吧.开发人员无须定义继承自ApiController的类,只须重用Application Service中的类就可以对外提供WebAPI的功能, ...
- Jmeter安装与环境部署
Jmeter安装与环境部署 版权声明:本文为博主原创文章,未经博主允许不得转载. 博主:海宁 联系:whnsspu@163.com
- 修改linux的hosts 后提示“无效的参数”
碰到个问题,修改linux的主机名问题. vim /etc/hosts 192.168.154.129 129192.168.154.132 132192.168.154.133 133 本地ip是1 ...
- JavaScript中函数函数的定义与变量的声明<基础知识一>
1.JavaScript中函数的三种构造方式 a.function createFun(){ } b.var createFun=function (){ } c.var createFun=new ...
- JavaScript语言精粹--Function,类,this,对象
1.类与对象 在JS中,创建对象(Create Object)并不完全是我们时常说的创建类对象,JS中的对象强调的是一种复合类型,JS中创建对象及对对象的访问是极其灵活的. JS对象是一种复合类型,它 ...
- ASP.NET 页面禁止被 iframe 框架引用
两个站点: a.sample.com b.sample.com a.sample.com 站点中的一段示例 JS 代码: var iframe = document.createElement(&qu ...
- Encountered an unexpected error when attempting to resolve tag helper directive '@addTagHelper' with value '"*, Microsoft.AspNet.Mvc.TagHelpers"'
project.json 配置: { "version": "1.0.0-*", "compilationOptions": { " ...
- 通过Matrix进行二维图形仿射变换
Affine Transformation是一种二维坐标到二维坐标之间的线性变换,保持二维图形的"平直性"和"平行性".仿射变换可以通过一系列的原子变换的复合来 ...
- 【分布式】Zookeeper使用--Java API
一.前言 上一篇博客我们通过命令行来操作Zookeper的客户端和服务端并进行相应的操作,这篇主要介绍如何通过API(JAVA)来操作Zookeeper. 二.开发环境配置 首先打开Zookeeper ...