金融软件工程作业四 :个人主页系统开发可行性分析和需求分析文档
作业描述

个人主页系统
---可行性分析与需求分析文档
1 引言
1.1 报告撰写目的
个人主页系统是针对个人用户希望个性化展示自我的需求而设计,是能够实现展示个人信息、特长;帮助个人展示文章、照片、视音频等并提供留言等个性化功能,可以被当作用户展示自己的门户网站的系统。
1.2 项目背景
随着互联网以及个人计算机的普及,人们的日常交流和与人交往有较大一部分是在互联网上进行。设计开发一款可以作为个人展示自我、定性为个人门户的网站在当今社会社交生活中是必不可少的。个人主页也能够更加便捷、更加直白地为访问者介绍主页所有者地相关信息,在社交中是不可或缺的一部分。
2 可行性分析
2.1 系统基本要求
2.1.1 采用架构
与大多数浏览器访问项目相同,本项目使用B/S架构(即浏览器/服务器架构),进一步说明:浏览器使用IE8.0以及其他等同浏览器,服务器使用Tomcat8.0,项目中使用到的数据库采用MySQL5.5.
2.1.2 主要功能要求
个人主页的主要功能包括展示个人信息,提供个性化展示个人特长的各个模块,并可根据用户的个性化需求设置比如可放映、可个性展示的模块。提供留言板等功能,实现访问主页的用户能够实名或匿名的进行留言等。除此之外,与现存的一些常见的主页相比,本系统提供给所有者可自行更改替换删除主页中的展示部分,比如说可以自行更换主页中展示的照片等。
2.1.3 系统运行环境
服务器运行采用Linux CentOS,浏览器端使用装有基本浏览器的操作系统即可。
2.2 系统开发要求
2.2.1 环境搭建
服务器端采用云服务提供商的云主机,安装Linux CentOS、Tomcat、PHP、MySQL搭建网站系统环境。
2.3 其他各因素的可行性分析
根据用户个人需要搭建符合用户个性化需求的主页系统,契合用户需求,能够实现长期使用,可用性较好。由于个人主页分享展示的是用户的个人信息,因此不存在著作权、专利权等方面的问题,与此同时,个人主页系统有着非盈利、非广泛传播的特点,一般不涉及法律问题。
3 项目功能需求
3.1 系统基本功能
个人主页系统主要实现的功能在于用户个人的展示,主要实现展示用户个人想要展示的地方,这一部分的功能要求做到个人主页这一方面中可视化较好的,可视化较好的个人主页参照http://www.dandyweng.com/,除此之外,个人主页个性化地设置可下载专区,这一点对于浏览的访客而言是一个较好的功能。另外由于个人主页不是一成不变的,因此考虑对个人主页的个人主体添加一个独特功能,方便用户主体能够更新个人主页中的内容。浏览的访客可进行留言功能,且留言支持实名/匿名。以上是个人主页系统需求分析的基本实现目标,由于其个性化特点,还应实现如添加标签栏、归档栏、日历、横幅图片、寄语等包括但不限于此的个性化功能。
3.2 系统设计方法
个人主页系统在特定的功能模块设有登录界面,比如说主页展示图片的更改模块设有登录部分,使得所有者可以进行登录并对主页做出更改。但单纯对主页进行浏览的访客和所有者不设登录界面。访客仅有浏览主页、留言、下载可下载文件的功能,除留言功能外,不涉及对个人主页系统后台数据库表的修改。
3.3 功能性分析
主页浏览、所有者登录登出、文件管理、留言、主页外观管理等。
4 开发环境的需求
开发过程中使用的开发工具有:较全面的文本编辑器、相应的建模工具、图片制造工具以及网站搭建工具。对于编程语言的需要,使用服务端脚本语言php,数据库语言sql,以及与网页制作相关的html可实现对问题的解决。
5 系统的结构化功能建模
5.1 数据流图
5.1.1 顶层数据流图

5.1.2 一层数据流图

5.1.3 二层数据流图
i. 发表留言

ii. 浏览主页与下载文件

iii. 管理文件

6 数据字典描述
6.1 顶层数据字典
| 实体名称 | 数据流 | 简述 |
| 访客 | 浏览信息、留言信息、下载信息 | 访客浏览网页内容,进行留言,亦可下载符合条件的附件 |
| 所有者 | 管理信息、浏览信息、下载信息 | 所有者可以对主页内容进行管理,可浏览主页信息、同时自己可以进行下载 |
6.2 一层数据字典
| 系统各功能名称 | 对应实体 | 数据流 | 简述 |
| 浏览主页 | 访客、所有者 | 浏览信息 | 访客浏览网站,记录下访客的浏览信息,如IP地址、文章浏览量等信息 |
| 发表留言 | 访客 | 留言信息 | 访客在浏览个人主页之后,可以选择进行留言,主页需要记录留言信息 |
| 下载文件 | 访客、所有者 | 下载信息 | 访客、所有者均可以下载主页文件,文件形式多种,如doc、ppt、mp3、mp4等,网站记录下载信息,访客、站长获得对应附件 |
| 管理主页 | 所有者 | 管理信息 | 所有者可以对主页中展示的内容进行管理,进行管理之后,主页记录下相关的管理信息。 |
6.3 二层数据字典
6.3.1 发表留言
| 加工名 | 输入数据流 | 输出数据流 | 加工逻辑 |
| 内容合法性检查 | 访客留言 | 有效留言、无效留言 | 有效留言符合留言规则,留言规则规定某些关键词不能够出现,否则为无效留言 |
| 写入留言 | 有效留言 | 留言信息 | 有效留言写入留言信息表,记录留言内容、时间等相关信息 |
6.3.2 主页浏览与文件下载
| 加工名 | 输入数据流 | 输出数据流 | 加工逻辑 |
| 主页浏览 | 浏览信息 | 浏览信息 | 访客浏览主页,记录浏览信息,如访客IP等信息 |
| 文件下载 | 文件信息、访客信息 | 下载信息 | 通过检查,可以下载文件,从文件信息表中读取文件地址,传输给下载者,记录下载信息,如下载量、下载时间等信息并写入信息统计表 |
| 文件检查 | 下载信息 | 有效文件、无效文件 | 检查文件是否在服务器存在,或是否符合下载条件,如下载者带宽过低、网站暂不能支持下载等,导致输出无效信息数据流 |
6.3.3 主页管理
| 加工名 | 输入数据流 | 输出数据流 | 加工逻辑 |
| 文件修改 | 修改事务 | 修改信息、修改文件信息 | 修改文件,对修改的文件进行记录,并将相关的文件进行记录 |
| 文件删除 | 删除事务 | 删除信息、删除文件信息 | 对主页中的文件进行删除操作,记录操作的相关信息以及涉及的相关的文件信息 |
| 新增文件 | 空信息 | 文件信息、文件添加信息 | 在主页中新增文件,记录新增这一操作的信息以及涉及的文件信息 |
7 系统行为建模、状态图示例
以该系统部分行为为例进行结构化的行为建模,设计状态图如下所示:
7.1 发表留言

7.2 下载文件

8 系统数据建模、E-R模型图、关系模式表示
8.1 总体E-R图

8.2 关系模式表示
所有者信息(登录名,密码,昵称,头像,联系方式)
主码:登录名 唯一
外码:登录名
主页信息(序号,站名,URL,文件地址,是否已备份,其他信息)
主码:序号 唯一
外码:序号
文件信息(序号,名称,文件地址,是否可用,权限,说明,浏览量,发布时间,作者)
主码:序号
外码:作者
信息统计(文件序号,浏览量,下载量,其他信息)
主码:文件序号
外码:浏览量 下载量
留言(留言序号,留言时间,留言内容,是否匿名,留言人)
主码:留言序号
数据库表:
所有者信息表
| 属性名 | 数据类型 | 约束条件 | 注释 |
| 登录名 | varchar(10) | primary key, not null | |
| 密码 | varchar(6) | not null | |
| 昵称 | varchar(20) | not null | |
| 头像 | nvarchar(max) | not null | 头像图片地址 |
| 联系方式 | varchar(20) |
主页信息表
| 属性名 | 数据类型 | 约束条件 | 注释 |
| 序号 | int | primary key, not null | |
| 站名 | varchar(20) | not null | |
| URL | nvarchar(max) | ||
| 文件地址 | nvarchar(max) | 本地存储地址 | |
| 是否已备份 | bool | not null | 根据数据时间决定是否已备份 |
| 其他信息 | nvarchar(50) |
文件信息表
| 属性名 | 数据类型 | 约束条件 | 注释 |
|
序号 |
int | primary key, not null | |
|
名称 |
varchar(20) | not null | 文件名称 |
|
文件地址 |
nvarchar(max) | not null | |
|
是否可用 |
bool | not null | |
|
权限 |
varchar(10) | not null | |
|
说明 |
nvarchar(50) | ||
|
浏览量 |
int | not null | |
|
发布时间 |
date | not null | |
|
作者 |
varchar(20) |
not null |
信息统计表
| 属性名 | 数据类型 | 约束条件 | 注释 |
| 文件序号 | int | primary key,not null | |
| 浏览量 | int | not null | 文件浏览量 |
| 下载量 | int | not null | |
| 其他信息 | nvarchar(100) |
留言表
| 属性名 | 数据类型 | 约束条件 | 注释 |
| 留言序号 | int | primary key, not null | |
| 留言时间 | date | not null | |
| 留言内容 | nvarchar(max) | not null | |
| 是否匿名 | bool | not null | |
| 留言人 | varchar(20) | 匿名之后留言人姓名不做显示 |

浙公网安备 33010602011771号