《2023年博客系统需求分析报告.docx》由会员分享,可在线阅读,更多相关《2023年博客系统需求分析报告.docx(10页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、2023年博客系统需求分析报告 博客管理系统 1.系统需求分析 博客系统分前台功能和后台功能两大部分。前台主要供用户注册,浏览,后台主要供管理员使用,管理员可以对用户进行管理。 1.1前台功能分析 博客系统前台的用户共分两类:一类是注册用户(正式用户),这类用户有基本的信息,可以对自己的信息进行查看与修改,;另一类用户是游客(未注册用户),他们只能查看、浏览注册用户的信息。 游客:可以查看注册用户的信息。经过注册可以成为注册用户。 注册用户: 1、登录后对可以对个人信息进行查看和修改。 2)博客用户通过前台登录后,对自己的空间进行管理,包括发布自己的网络日志,分享视频,分享音乐,邀请好友玩游戏
2、,上传照片,与相关人员进行交流和沟通以及删除访客发表的评论 3)博客用户登录后对自己的信息进行修改 非注册用户 1)游客通过注册,登录进入博客空间发表评论 2)游客不注册,通过匿名方式对博客空间浏览文章,发表评论,查看文章发表人的所有文章 1.2后台功能分析 博客系统后台主要是供管理员使用的,管理员可对用户进行添加、删除、查询及修改;对网站的新闻、公告进行管理。 管理员也可以具有不同的权限分为超级管理员和普通管理员,普通管理员具有以上权限,超级管理员除了可以具有以上所有功能外,还可以添加、删除普通管理员。 2.数据库设计 2.1数据库概念结构设计 对博客系统进行分析后,抽象出有关的数据,按照现
3、实世界的事物能作为属性对待的,尽量作为属性对待的原则。作为“属性”,不能再具有需要描述的性质,“属性”必须是不可分的数据项,不能包含其它的属性;“属性”不能与其它实体具有联系,E-R图中所表示的联系是实体与实体的联系。依照以上准则,可以确定哪些为实体,哪些为属性,每个实体具有哪些属性,实体之间存在何种联系。经分析之后,该系统中包含的实体以及实体之间的联系如下所示: 实体:管理员实体,用户实体,文章类型实体、链接实体、留言实体、文章实体和评论实体,回复实体,视频,照片,音乐、游客。 实体间存在的联系 管理员和用户实体之间存在多对多的联系 博客用户与链接之间存在多对多的消息联系 博客用户与留言之间
4、多对多的回复联系 文章类型与文章之间存在一对多的消息联系 文章与评论之间存在一对多的消息联系 用户和游客之间存在一对多的联系 用户和视频之间存在一对多的联系 用户和音乐之间存在一对多的联系 用户和照片之间存在一对多的联系 实体的属性: 留言(留言编号,网友昵称,日期,标题,内容,个人主页,回复) 管理员(管理员,密码,权限) 博客用户(用户号,用户名,密码,真实姓名,性别,出生年月,邮箱,电话,单位,城市,地址,注册时间,积分,用户等级,安全问题,安全答案) 文章(文章编号,作者,标题,摘要 ,内容,发表日期,人气,回复,类型编号,类型名称,回复数) 文章类型(类型编号,类型名称) 评论(编号
5、,用户昵称,标题,内容,发表时间,文章编号) 链接(链接编号,名称,地址) 新闻(新闻号,标题,内容,时间) 公告(公告号,标题,内容,时间) 视频(视频编号,标题,内容,时间) 音乐(音乐编号,标题,内容,时间,歌手名) 照片(照片编号,标题,内容,时间,大小) 游客(游客号,游客名) 回复(用户号,留言号,主题,内容,回复时间) 联系的属性: 实体之间关系的E-R图如图7-7所示。 2.2数据库逻辑结构设计 根据系统E-R图,把实体与实体之间的联系转换成关系模型,E-R图中的每个实体转换成一个关系模型,实体之间一对多的联系合并到多方实体对应的关系模型中,把一方的码与联系的属性纳入到多方实体
6、对应的关系模型中,为实体之间多对多的联系创建一个新的关系模型,它包含双方的码以及联系的属性。具有相同码的关系模型有些情况下可以考虑把它们合并。在转换过程中应该按照关系规范化的理论,对关系模型进行优化,减少冗余和数据操作异常,提高查询速度,在性能与范式之间作出权衡,一般所设计出的关系数据库达到3NF就基本符合要求。按照 评论(编号,用户昵称,标题,内容,发表时间,文章编号) 文章(文章编号,作者,标题,摘要 ,内容,发表日期,人气,回复,类型编号,类型名称,回复数) 文章类型(类型编号,类型名称) 博客用户(用户号,用户名,密码,真实姓名,性别,出生年月,邮箱,电话,单位,城市,地址,注册时间,
7、积分,用户等级,安全问题,安全答案) 发表(用户号,文章编号,发表日期) 管理(管理员,用户号,注册号) 留言(留言编号,用户号,网友昵称,日期,标题,内容,个人主页,回复) 回复(用户号,留言编号,主题,内容,回复时间) 链接(链接编号,名称,地址) 访问( 用户号,游客号,访问量,访问时间) 公告(公告号,标题,内容,时间) 视频(视频编号,用户号,标题,内容,时间) 音乐(音乐编号,用户号,标题,内容,时间,歌手名) 照片(照片编号,用户号,标题,内容,时间,大小) 游客(游客号,游客名) 3功能分析 在其博客管理系统上建立适当的视图,索引,存储过程和触发器,因此我们主要从这四个方面来分
8、析它的功能 A 视图:视图是一个虚拟表,其内容由查询定义。同真实的表一样,视图包含一系列带有名 称的列和行数据。但是,视图并不在数据库中以存储的数据集合形式存在。 1 .创建某某表的视图 2、利用cust_view视图添加一条记录数据 3、创建视图sale_item_view,该视图中包含订单编号、订货日期、产品编号及数量。然后利用该视图向表中插入数据 4删除视图中所有姓“王”的客户数据 5有两个基本表employee和sales,创建一个视图,该视图包含相同业务员的编号、姓名、订单号、销售总金额。 6将上述视图中订单号为10001的记录的销售金额改为60000。 B 索引:索引用来快速地寻找
9、那些具有特定值的记录。 普通索引, 这是最基本的索引类型,而且它没有唯一性之类的限制。普通索引可以通过以下几种方式创建: 创建索引,例如CREATE INDEX ON tablename (列的列表); 修改表,例如ALTER TABLE tablename ADD INDEX 索引的名字 (列的列表); 创建表的时候指定索引,例如CREATE TABLE tablename ( ., INDEX 索引的名字 (列的列表) ); 唯一性索引,这种索引和前面的“普通索引”基本相同,但有一个区别:索引列的所有值都只能出现一次,即必须唯一。唯一性索引可以用以下几种方式创建: 创建索引,例如CREAT
10、E UNIQUE INDEX ON tablename (列的列表);修改表,例如ALTER TABLE tablename ADD UNIQUE 索引的名字 (列的列表); 创建表的时候指定索引,例如CREATE TABLE tablename ( ., UNIQUE 索引的名字 (列的列表) ); 主键:主键是一种唯一性索引,但它必须指定为“PRIMARY KEY”。如果你曾经用过AUTO_INCREMENT类型的列,你可能已经熟悉主键之类的概念了。 主键一般在创建表的时候指定,例如“CREATE TABLE tablename ( ., PRIMARY KEY (列的列表) ); ”。但
11、是,我们也可以通过修改表的方式加入主键,例如“ALTER TABLE tablename ADD PRIMARY KEY (列的列表); ”。每个表只能有一个主键。 3存储过程: 一组为了完成特定功能的SQL 语句集,经编译后存储在数据库中,用户通过指定存储过程的名字并给出参数(如果该存储过程带有参数)来执行它。 1、利用存储过程,给employee表添加一条业务部门员工的信息。 2、利用存储过程从employee、sales、customer表的连接中返回所有业务员的姓名、客户姓名、销售金额。 3、创建带一个输入参数的存储过程,实现按员工姓名进行模糊查找,查找员工编号、订单编号、销售金额。
12、4、创建带两个输入参数的存储过程,查找姓“李”并且职称为“职员”的员工的员工编号、订单编号、销售金额。 3、利用存储过程计算出订单编号为10003的订单的销售金额。(带一输入参数和一输出参 数)(提示:sales表中的tot_amt应该等于sale_item表中的同一张订单的不同销售产品的qty*unit_price之和) 4、创建一存储过程,根据给出的职称,返回该职称的所有员工的平均工资。(带一输入参 数和返回值) 4触发器触发器对表进行插入、更新、删除的时候会自动执行的特殊存储过程。触发器一般用在check约束更加复杂的约束上面。触发器和普通的存储过程的区别是:触发器是当对某一个表进行操作
13、。诸如:update、insert、delete这些操作的时候,系统会自动调用执行该表上对应的触发器。SQL Server 2023中触发器可以分为两类:DML触发器和DDL触发器,其中DDL触发器它们会影响多种数据定义语言语句而激发,这些语句有create、alter、drop语句。 1、针对employee表写一个DELETE触发器,显示删除的员工人数。 2、针对employee表写一个UPDATE触发器,限制每次工资额的变动不能超过原工资的20%。 3、定义一个触发器,保证新添加的员工的工资不能超过5000元 4、对sale_item表创建一个触发器,当插入一条销售明细记录时,如果该记录
14、的产品数量超过5,则显示“欢迎成为本公司的VIP会员!” 5、针对customer表,定义一触发器用来保证参照完整性 6、针对sales表,定义一触发器保证参照完整性(参照customer表) 7.针对employee表,定义一触发器用来保证实体完整性 8,在customer表上创建一触发器,用来实现级联删除 9、定义一触发器,保证新添加的员工的工资不能超过5000元 10、创建一个触发器,只能接受女员工 11,、写一个允许用户一次只删除一条员工记录的触发器。 博客系统需求分析报告 个人博客系统需求分析 系统需求分析报告 订单管理系统需求报告分析 题库管理系统需求分析报告 教务管理系统需求分析报告 银行排队系统需求分析报告 酒店管理系统需求分析报告 书店管理系统需求分析报告 门禁系统需求分析