(swjtu西南交大)数据库实验(数据库需求分析):音乐软件数据管理系统

实验内容:

数据库需求分析:各用户组需求描述,绘出数据流图(详细案例参见教材p333~p337,陶宏才,数据库原理及设计,第三版);

一、选题背景

        近年来,“听歌”逐渐成为大众高频刚性的需求,音乐软件数据急剧增加,用户和软件管理者需要在使用和管理音乐软件时对各种数据更高效便捷地管理。数据库系统充分保证了大量数据的存储和管理有非常强的重新组织数据的能力同时又能充分描述数据间的内在联系。因此设计并实现一个通用的音乐数据库系统,对音乐软件数据的统一存储、保护、管理和共享具有非常重要的现实意义。

二、需求描述

角色

要求

用户

管理歌单歌曲,查看和发布歌曲评论,对歌单进行增删查询操作,修改歌单信息,关注歌手,修改个人信息

歌手

发布歌曲

客服

审核、确认用户的修改信息,发送推送请求

 

三、系统数据流图

顶层数据流图

1层数据流图

 2层数据流图

四、系统数据字典

数据项:

数据项:歌曲编号
数据类型:字符型
数据长度:20位
​数据构成:发布年月+发布顺序号


​数据项:歌曲名称
数据类型:字符型
数据长度:20位

数据项:歌曲类型
数据类型:字符型
数据长度:10位

数据项:歌曲语言
数据类型:字符型
数据长度:8位

数据项:演唱歌手号
数据类型:字符型
数据长度:10位

数据项:发布时间
数据类型:日期型
数据长度:8位
数据构成:年+月+日
 


数据项:歌词
数据类型:字符型
数据长度:3000位

数据项:歌手编号
数据类型:字符型
数据长度:10位

数据项:歌手名称
数据类型:字符型
数据长度:10位

数据项:用户名
数据类型:字符型
数据长度:10位

数据项:用户账号
数据类型:字符型
数据长度:10位

数据项:密码
数据类型:字符型
数据长度:10位

数据项:性别
数据类型:字符型
数据长度:1位

数据项:生日
数据类型:日期型
数据长度:8位

数据构成:年+月+日

数据项:地区
数据类型:字符型
数据长度:20位

数据项:手机号码
数据类型:字符型
数据长度:11位

数据项:个性签名
数据类型:字符型
数据长度:50位

数据项:评论时间
数据类型:日期型
数据长度:20位

数据构成:年+月+日+时+分+秒

数据项:评论内容
数据类型:字符型
数据长度:20位

数据项:关注时间
数据类型:日期型
数据长度:20位

数据构成:年+月+日

数据项:歌单编号
数据类型:字符型
数据长度:10位

数据项:歌单标题
数据类型:字符型
数据长度:20位

数据项:歌曲数量
数据类型:整型
数据长度:100位

数据项:简介
数据类型:字符型
数据长度:1000位

数据项:歌单创建时间
数据类型:日期型
数据长度:8位

数据构成:年+月+日

数据项:歌单用户
数据类型:字符型
数据长度:10位

数据项:审核人
数据类型:字符型
数据长度:10位

加工处理:

加工处理:评论系统
编号:1
输入:(用户)评论信息+用户评论信息
输出:(该用户)评论信息
加工逻辑:满足用户评论歌曲操作

加工处理:歌单歌曲管理
编号:2
输入:(用户)管理歌单操作+管理的歌单
输出:(该用户)歌单信息
加工逻辑:根据需求对歌单进行管理操作

加工处理:查看歌单信息
编号:2.1
输入:(用户)查看命令+歌单信息
输出:(该用户)需要修改歌单的信息
加工逻辑:满足查询请求条件

加工处理:修改歌单
编号:2.2
输入:(用户)新增或修改命令+修改(歌单中歌曲)后的歌单信息
输出:新增或修改后的歌单信息
加工逻辑:满足修改歌单请求条件

加工处理:传送修改请求
编号:3
输入:(用户)修改信息请求
输出:用户修改请求
加工逻辑:将用户修改请求传送给客服

加工处理:歌曲发布
编号:4
输入:(歌手)发布歌曲信息(原始信息)
输出:歌曲信息(添加编号、歌手、发布时间后)
加工逻辑:满足歌曲发布条件

加工处理:关注歌手
编号:5
输入:(用户)关注请求
输出:(该用户)关注信息
加工逻辑:用户未曾关注该歌手

加工处理:修改用户信息
编号:6
输入:(客服)需要修改的信息
输出:修改后的信息
加工逻辑:根据用户的修改请求修改信息

加工处理:歌单歌曲管理系统
编号:7
输入:(用户)管理请求命令+歌曲信息+需要管理的歌单+管理的歌单
输出:管理后的歌单歌曲+管理的歌单
加工逻辑:根据用户对歌单的管理请求进行管理

加工处理:查看歌单歌曲
编号:7.1
输入:(用户)查看歌单歌曲命令+歌单歌曲信息
输出:(该用户)所查看歌单歌曲的信息
加工逻辑:满足查询请求条件

加工处理:修改歌单歌曲
编号:7.2
输入:(用户)修改命令+需要修改的歌单歌曲信息
输出:修改后的歌单歌曲
加工逻辑:满足修改歌单歌曲请求条件

加工处理:推送歌单
编号:8
输入:(客服)推送请求+需推送的歌单
输出:推送的歌单
加工逻辑:根据推送请求推送相关歌单

数据文件:

数据文件:评论表
文件组成:评论时间+评论内容

组成:按评论时间降序排列

数据文件:歌单表
文件组成:歌单编号+歌单标题+歌曲数量+简介+创建时间+歌单用户
组成:按歌单编号升序排列

数据文件:用户信息表
文件组成:用户名+账号+密码+性别+生日+地区+手机号码+个性签名
组成:按账号和地区升序排列

数据文件:歌曲表
文件组成:歌曲编号+歌曲名称+歌曲类型+歌曲语言+歌词+演唱歌手号+发布时间
组成:按编号升序排列

数据文件:关注表
文件组成:被关注的歌手编号+被关注的歌手名称+关注者账号+关注者用户名+关注时间
组织:按歌手编号和关注者账号升序排列

数据文件:歌单歌曲表
文件组成:歌单编号+歌曲编号

组成:按歌单和歌曲编号升序排列

数据流:

数据流名:发布歌曲的信息
来源:发布歌曲的歌手
流向:加工4
组成:歌曲名称+歌曲类型+歌曲语言+歌词

​数据流名:歌曲信息
来源:加工4
流向:歌曲表
组成:歌曲编号+歌曲名称+歌曲类型+歌曲语言+歌词+演唱歌手号+发布时间

 

数据流名:歌曲信息
来源:歌曲表
流向:加工7
组成:歌曲编号+歌曲名称+歌曲类型+歌曲语言+歌词+演唱歌手号+发布时间

数据流名:关注请求
来源:用户
流向:加工5
组成:要关注的歌手的编号+用户编号

数据流名:关注信息
来源:加工5
流向:关注表存储文件
组成:要关注的歌手的编号+歌手名+用户名+用户编号

数据流名:歌单信息
来源:文件2中的歌单表
流向:加工2.1
组成:歌单编号+歌单标题+歌单创建者编号+歌单歌曲数量+歌单简介+歌单创建时间

数据流名:查看歌单命令
来源:用户
流向:加工2.1
组成:需要查看的歌单编号

数据流名:需修改的歌单
来源:加工2.1
流向:加工2.2
组成:需修改的歌单编号
 

数据流名:修改的歌单
来源:加工2
流向:加工7
组成:修改的歌单编号


数据流名:新增歌单或修改命令
来源:用户
流向:加工2.2
组成:命令+修改歌单编号


数据流名:新增的歌单或修改后的歌单信息
来源:加工2.2
流向:歌单表文件
组成:修改后的歌单编号

数据流名:查看歌单歌曲命令
来源:用户
流向:加工7.1
组成:需要查看的歌单编号

数据流名:歌单歌曲信息
来源:文件6歌单歌曲表
流向:加工7.1
组成:歌单编号+歌单标题+歌单歌曲列表

数据流名:需修改的歌单歌曲
来源:加工7.1
流向:加工7.2
组成:歌单编号+歌单歌曲列表
 

数据流名:新增歌单中歌曲或修改歌单歌曲信息
来源:用户
流向:加工7.2
组成:需修改的歌单编号+需修改的歌单歌曲编号

数据流名:新增后的歌单歌曲或修改信息
来源:加工7.2
流向:文件6歌单歌曲表
组成:修改后的歌单歌曲编号

数据流名:(用户新增)评论信息
来源:用户
流向:加工1
组成:评论内容+评论者账号+评论时间+评论的歌曲编号


数据流名:(添加到文件中的)评论信息
来源:加工1
流向:评论表存储文件
组成:评论内容+评论者账号+评论时间

数据流名:修改信息请求
来源:用户
流向:加工3
组成:修改信息项+修改时间+修改前信息+修改后信息

数据流名:用户修改请求
来源:加工3
流向:客服
组成:修改信息项+修改时间+修改前信息+修改后信息

数据流名:需要修改的信息
来源:客服
流向:加工6
组成:修改信息项+审核人(哪一个客服)+修改时间+修改后信息

数据流名:修改后的信息
来源:加工6
流向:用户信息表
组成:修改信息项+修改后信息

数据流名:推送请求
来源:客服

流向:加工8
组成:要推送的歌单编号

数据流名:要推送的歌单
来源:歌单表
流向:加工8
组成:歌单编号+歌曲列表+歌单描述信息

数据流名:推送的歌单
来源:加工8
流向:用户
组成:歌单编号+歌曲列表+歌单描述信息

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/161042.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Ajax入门-Express框架介绍和基本使用

电脑实在忒垃圾了,出现问题耗费了至少一刻钟time,然后才搞出来正常的效果; 效果镇楼 另外重新安装了VScode软件,原来的老是报错,bug。。; 2个必要的安装命令; 然后建立必要的文件夹和文件&…

新能源车将突破2000万辆,汉威科技为电池安全保驾护航

近年来,我国新能源汽车销量持续突破新高。据中汽协数据,1~10月,国内新能源汽车销量达728万辆,同比增长37.8%,市场占有率达到30.4%。随着第四季度车市传统旺季的到来,新能源消费需求将进一步释放&#xff0c…

Python小灰灰

系列文章 序号文章目录直达链接表白系列1浪漫520表白代码https://want595.blog.csdn.net/article/details/1306668812满屏表白代码https://want595.blog.csdn.net/article/details/1297945183跳动的爱心https://want595.blog.csdn.net/article/details/1295031234漂浮爱心htt…

【软件工程师从0到1】- 封装 (知识汇总)

前言 介绍:大家好啊,我是hitzaki辰。 社区:(完全免费、欢迎加入)日常打卡、学习交流、资源共享的知识星球。 自媒体:我会在b站/抖音更新视频讲解 或 一些纯技术外的分享,账号同名:hi…

Jenkins扩展篇-流水线脚本语法

JenkinsFile可以通过两种语法来声明流水线结构,一种是声明式语法,另一种是脚本式语法。 脚本式语法以Groovy语言为基础,语法结构同Groovy相同。 由于Groovy学习不适合所有初学者,所以Jenkins团队为编写Jenkins流水线提供一种更简…

DataFunSummit:2023年OLAP引擎架构峰会-核心PPT资料下载

一、峰会简介 OLAP技术是当前大数据领域的热门方向,该领域在各个行业都有广泛的使用场景,对OLAP引擎的功能有丰富多样的需求。同时,在性能、稳定性和成本方面,也有诸多挑战。目前,OLAP技术没有形成统一的事实标准&…

redis性能管理

redis的数据库是存放在内存当中,所以对内存的监控至关重要 redis内存监控和解析 1.如何查看redis内存使用情况 [rootlocalhost utils]# redis-cli -h 20.0.0.170 -p 6379 20.0.0.170:6379> info memory used_memory:853336 //redis中数据占用的内存 use…

触发设备离线

业务场景 业务开发过程中,我们经常会需要判断远程终端是否在线,当终端离线的时候我们需要发送消息告知相应的系统, 环形队列 1.创建一个index从0到30的环形队列(本质是个数组) 2.环上每一个slot是一个Set&#xf…

MYSQL索引使用注意事项

索引使用注意事项: 1.索引列运算 不要在索引列上进行运算操作,否则索引将失效; 2.字符串不加引号 字符串类型使用时,不加引号,否则索引将失效; 3.模糊查询 如果仅仅是尾部模糊匹配,索引将不会失…

关于软raid的实现及常见问题

RAID概念 磁盘阵列(Redundant Arrays of Independent Disks,RAID),有“独立磁盘构成的具有冗余能力的阵列”之意。 磁盘阵列是由很多价格较便宜的磁盘,以硬件(RAID卡)或软件(MDADM&…

关于用css设置input输入框hover的时候的样式以及当input为disabled的时候,不要让hover样式生效

效果如果&#xff1a; 编辑状态下的时候&#xff1a; 只读状态下的时候&#xff1a; 代码如图&#xff1a; <input type"text" name"dataForm.exportCode" id"exportCodeItem" required :disabled"editDisabled" />input:not(…

【前端学java】语法练习-工具类的封装(13)

往期回顾&#xff1a; 【前端学java】JAVA开发的依赖安装与环境配置 &#xff08;0&#xff09;【前端学 java】java的基础语法&#xff08;1&#xff09;【前端学java】JAVA中的packge与import&#xff08;2&#xff09;【前端学java】面向对象编程基础-类的使用 &#xff08…

java.net.UnknownHostException: eureka

java.net.UnknownHostException: eureka 哦。HOST漏了 #linux /etc/hosts #windows C:\Windows\System32\drivers\etc\hosts 127.0.0.1 eureka7000 127.0.0.1 eureka7001 127.0.0.1 eureka7002

maven打包可执行jar含依赖lib

修改pom.xml <build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><!-- jdk8可用&#xff0c;其他jdk版本可能需改插件版本 --><version>2.3.7.RE…

sql调优

慢查询 SQL 治理方案 一、SQL 性能下降的原因 在对 SQL 进行分析之前&#xff0c;需要明确可能导致 SQL 执行性能下降的原因进行分析&#xff0c;执行性能下降可以体现在很多方面&#xff1a; 查询语句写的烂索引没加好表数据过大数据库连接数不够查询的数据量过大被其他慢s…

visual studio 如何建立 C 语言项目

安装这个 模块。 新建 空项目 创建完成 写demo 点击运行&#xff1a;

Web项目从Tomcat迁移到TongWeb

注意事项 1. 使用JNDI方式获取数据源&#xff1a; ①在TongWeb创建JDBC连接池; ②修改Web项目数据源配置. #spring.datasource.urljdbc:mysql://127.0.0.1:3306/demo #spring.datasource.usernametest #spring.datasource.passwordspring.datasource.jndi-namedemo2. 修…

Spring cloud - Hystrix源码

其实只是Hystrix初始化部分&#xff0c;我们从源码的角度分析一下EnableCircuitBreaker以及HystrixCommand注解的初始化过程。 从EnableCircuitBreaker入手 我们是通过在启动类添加EnableCircuitBreaker注解启用Hystrix的&#xff0c;所以&#xff0c;源码解析也要从这个注解…

最新PHP熊猫头图片表情斗图生成源码

这是一款能生成熊猫头表情斗图的自适应系统源码&#xff0c;无论是在电脑还是手机上都可以正常使用&#xff01;这个源码集成了搜狗搜索图片接口&#xff0c;可以轻松地一键搜索数百万张图片&#xff0c;并且还包含了表情制作等功能模块。对于一些新站来说&#xff0c;这是一个…