Java博客系统需求分析 - 范文中心

Java博客系统需求分析

04/08

需求分析

3.1引言

3.1.1编写目的

需求分析是每个软件开发必不可少的一个阶段,也是软件开发周期的一个开始标志。需求分析是对软件系统的整体做一个简要的了解,描述系统在现实生活中的原像,完成必要的概念定义,功能解释,业务流程等等。除此之外,需求分析文档是开发过程的一个初期记录,它为软件系统开发指明了一个方向,同时也为后续开发阶段提供了一个依据,编写此章旨在合理安排项目开发进度,有效组织软件的开发与测试,

3.1.2项目背景

在任何时候,任何地方,人与人之间的交流都是不可缺少的。在计算机网络还没有出现时,书信和电话都是人与人进行交流的途径,它们都有各自的优缺点。直到网络的出现,使得人们的交流方式发生了巨大的改变,从早期的ICQ 、BBS 开始,到后来的E-Mail, 网络聊天室等,都是在网络的基础上发展而来的,它们都是通过网络实现相互交流。“博客”是在BBS 的基础上发展而来的,是网络上出现的一种交流方式。为了了解这种交流方式,现尝试开发一个小型的博客系统。

3.2系统开发概述

3.2.1系统目标

作为一个网页而存在的博客,主要功能是前台浏览器页面跟后台服务器的交互,通过若干处理后,完成用户的请求任务。

后台服务器处理程序必须拥有较为强大的运算和处理能力,以及完善的业务功能实现方案;除此之外,还必须具备料号的错误及异常处理能力

前台浏览器页面必须整齐、明了,能够满足用户操作的需求,前台与后台的交互过程和页面跳转的流程必须准确无误,同时应该具有错误提示和页面访问权限的功能。

系统的最终目标是:成功实现博客的基本业务功能。

3.2.2系统开发及运行环境

3.2.2.1硬件平台

CPU: P41.8GHz。

内存: 512MB以上。

3.2.2.2 软件平台:

操作系统: Windows XP/Windows 2000/Windows 2003。

数据库: MySQL。

开发工具包: JDK Version1.6。

JSP 服务器: Tomcat 6.0。

浏览器: IE6.0

分辨率:最佳效果 1024 × 768 像素。

3.3系统功能需求

系统用例图如下:

日志用例图:

博主

访客

相册用例图

博主

访客

评论用例图

博主

访客

图3.1博客系统用例图

3.4系统运行需求

3.4.1用户界面

软件界面是人与计算机之间的媒介,。用户通过软件界面来愈计算机进行信息的交换。因此,软件界面的质量,直接关系到应用系统的性能能否充分发挥,能否

使用户准确、高效、轻松的工作,所以软件的友好性、易用性对于软件系统至关重要。

本系统的用户界面的主要形式是网页,借助浏览器展现在用户面前。用户界面必须清晰、明了、干净、整齐。除了实现基本功能的页面外,还必须具备一些额外的页面,用于发生错误后响应有好的错误提示页面。

3.4.2故障处理

故障处理时一个成熟软件系统必须具备的功能,故障处理体现了软件的健壮性,它表现为异常处理机制。本系统应该具备一个良好的异常处理模块,当程序发生错误时,能够使用此故障处理模块完成异常处理。

3.5数据库设计

数据库设计是整个系统成败的关键。数据结构设计的难点在于理清楚现实世界中各种实体的关系,抽象出数据模型,并在系统中实现。以下是数据库各种基本信息的定义:

表3.1日志信息数据表字段定义

分类信息数据表字段定义

博客基本信息数据表字段定义

用户信息数据表字段定义

相册信息数据表字段定义

友情链接数据表字段定义

第四章 概要设计

4.1引言

4.1.1编写目的

在完成了需求分析之后,接下来进入概要设计阶段,概要设计是把需求分析转化为系统描述的过程,它是面向系统整体的,描绘出系统的外部结构,而并没有涉及到系统的任何内部细节,同时它为后续开发工作提供了依据。

4.1.2需求概述

当前欲开发一个博客系统,功能需求可以概括为以下几点:

1、博客的注册、登录验证功能

2、网络用户通过关键字搜索博文功能

3、网络用户查看文章详细内容并对文章进行评论

4、博客个人文章管理维护功能

5、博客个人文章分类管理维护功能

6、博客个人友情链接维护功能

7、博客个人基本信息管理维护功能

8、博客图片上传及相册管理

9、博客个人文章及评论的最新更新显示

4.2系统总体设计

4.2.1处理流程

本系统的开发将运用分层的思想,因此,处理流程主要由两个层次协作完成。距离用户最近的表示层,即用户界面,在本系统表现为网页。当用户通过浏览器发送页面的访问请求时,第一个接受请求的层次是转向层,转向层通过调用后台处理模块,实现请求所需的业务功能,然后响应请求结果给浏览器,显示到用户面前。这是一个最简单的处理流程,只通过表示层与专项层的交互,响应用户的请求:

4.2.2总体结构

系统的总体结构由以下层次组成:表示层、转向层、模块层、数据库。

1. 表示层即用户界面,即通过浏览器所看到的网络页面,用jsp 去实现。

2. 转向层即控制器层,控制页面数据的流向,用servlet 实现。

3. 模块层包括业务层,实体层和数据访问层,用JavaBean 实现。

4. 数据库,是永久保存数据的地方,用MySQL 实现。

4.2.3功能分配

表示层:主要是用于显示油耗的用户界面,用

JSP 实现。表示层应该设计的简单直接,为此,设计上把表示层分为三个部分:顶部、主要部分和底部。顶部一般是用于放置图片,例如摆放一张带有自己个性风格的图片;主要部分用于显示页面的主体,例如在一次查询中,主要部分显示查询后的数据;底部一般放置网页的版权信息,版权图片等

转向层:用于控制页面数据流程的一个层次,用servlet 实现。转向层只管页面跳转功能,它可以调用下层的模块层,以处理用户请求。请求的处理过程包括三个方面:请求的初始化、请求的处理、请求的响应。这三个方面都使用servlet 来实现。

模块层:是整个系统的底层,也是整个系统的核心所在。模块层是业务逻辑的实现层,所有跟系统有关的功能都放在这一层次上,用JavaBean 实现。实体模块

是现实世界对象的模拟,在JavaBean 中表现为实体Bean ,是一种只包含属性而不包含任何方法的java 类;业务模块是系统所需要实现的业务功能的模拟,在JavaBean 中表现为业务Bean ,是一种只包含方法不包含属性的java 类,而且此类中的方法一般全部为静态方法;DB 访问模块是用于实现数据持久化的一个层次,它是从业务Bean 中分离出来的一块,运用java API和数据库操作的SQL 语句编写的数据访问java 类,专门负责数据库的访问工作。

数据库,是每个软件系统必不可少的一个工具,用于存储数据。本系统使用的MYSQL 数据库。数据库是作为一个服务器而存在的,它有一定的负载量,因此,数据库越简单,对程序越有利,访问瓶颈出现的机会也相对较少。笨系统在设计数据库就避开了存储过程的编写,数据库中只存放了简单的数据表,在访问数据库时,也只用了简单的增、删、改、查SQL 语句。

4.3系统内部接口设计

数据库操作接口,是一个封装的外部接口,包括三个基本的数据库操作:添加、删除、修改。在java 语言中,拥有java 的应用程序接口,即 Java API,其中提供有数据库访问的方法,应用程序通过提供一条可执行的SQL 语句,调用这些方法方可进行数据库访问操作。由于这个类中的方法都只认识SQL 语句,不认识添加、删除、修改和查询操作,因此,有必要对这四种操作进行区分,数据库操作接口就是完成这项任务的。作为一个接口,它只包括了三种基本操作,添加、删除和修改,而查询操作则奋力出来,作特殊处理。开发人员在更新数据库时,只需要提供一个业务实体对象,便可进行数据库访问操作。图示如下

:

4.4系统数据结构设计

4.4.1数据的逻辑结构

数据的逻辑结构是对数据之间关系的描述。

图4.4数据关系图

4.4.2数据的物理结构

图4.5类图:

4.5系统运行设计

图4.6系统运行时的模块调用关系

4.6系统出错处理设计

4.6.1转向层异常

图4.7运行时异常处理

4.6.2模块层异常

图4.8底层模块异常处理

第五章,系统详细设计

5.1引言

经过了需求分析和概要设计阶段后,进行了详细设计阶段,这是软件开发周期需要编写代码的阶段。

5.2系统分层结构

本系统采用MVC 三层体系的开发模式

MVC 开发模式把软件开发分成三层来处理,M=Module,模块层;V=View,视图层或者叫表示层;C=Controller,控制器层。

View 层,即视图层或表示层,是最接近用户的一层,主要用于显示操作界面,让用户引发事件,发送操作请求。

Controller 层,即控制器层,是看不见的一层,主要用于控制应用程序流程,使得应用程序运行有序不乱。如果对控制器层再进行细分,其可以分为三层,接受请求(请求初始化)层,处理请求层,响应请求层。分别完成控制器的三大

功能,用户请求的接受,处理和响应。

Module 层,即模块层,包括了软件基本业务的实现,可以供Controller 层调用。它主要包括三个方面的功能实现:业务实体,业务逻辑,数据保存。根据不同的需要可以将Module 层组织成一层,两层或者三层。业务实体是面向对象编程的一个概念,它通常对应数据库中的一张数据表,对象的属性与数据表中的列名一一对应,并且不包含任何对象的封装方法;业务逻辑就是软件所需要完成的功能,通常只包含对象的封装方法,不包含任何对象的属性,为了完成特定的功能,还可以引用其他层的相关功能;数据保存是指数据的持久化,数据大体可以分为两种,暂时性数据和永久性数据。作为一个软件系统,数据保存是必不可少的一个环节。而作为module 层,必须拥有一个能够直接访问数据库,操作数据库的模块,也即数据访问层。本次开发的系统运用了MVC 的三层开发模式,把系统分成了七层,如下所示:

图5.1系统的分层结构及层次调用关系

5.3数据库

数据库时保存数据的场所,它的基本单位是数据表,一张数据表代表一个集合,保存同一种事物的不同个体的信息。数据库仅仅作为永久保存数据的地方,不做任何逻辑运算,是瘦服务器设计的方案。

本系统在设计后台服务器时,便是朝着“瘦”型方向前进的。数据库中只包含了简单的基本数据表,基本数据表之间的关系,以及由基本数据表派生出来的数据视图。

数据库中存储的数据视图定义如下所示:


相关内容

  • 人事管理系统毕业论文
    本科毕业论文(设计) 论文(设计)题目: 人事综合管理系统 学 院: 专 业: 班 级: 学 号: 学生姓名: 指导教师: 年 月 日 贵州大学本科毕业论文(设计) 诚信责任书 本人郑重声明:本人所呈交的毕业论文(设计),是在导师的指导 下 ...
  • 基于JSP的图书管理系统
    **学院 毕业设计(论文) 基于JSP 的图书管理系统 系 别 : 专业(班级): 作者(学号): 指导教师: 完成日期: **学院教务处制 目 录 基于JSP 的图书管理系统 . ............................. ...
  • 大连交通大学软件毕业设计系列-调研报告
    毕业设计(论文) 实习(调研)报告 学生姓名 专业班级 所在院系 指导教师 职 称 所在单位 完成日期 2011年 10月 15日 实习(调研)报告 一.课题的来源及意义 手机游戏是指运行于手机上的游戏软件,随着科技的发展,现在手机的功能也 ...
  • 餐饮管理系统综述文献综述
    餐饮管理系统 文献综述 专业:计算机科学与技术 班级:08级统本 作者:温盛明 指导老师:王沛礼 一.引言 随着社会的进步,人民生活水平的不断提高,餐饮酒店等消费行业得到了迅猛的发展, 现在的餐饮行业正向着规模化,集团化方向发展,传统的经营 ...
  • 虚拟社区新浪微博电商案例分析
    虚拟社区电商案例分析 --新浪微博 组长:1137125孙雪宁 组员:1137118何增冉 1137121张旖婷 1137131王昱丁 1137202施聪华 1137230朱蝶 1137233李易蝶 时间:2016年3月23日 目录 一. ...
  • 小型超市销售管理系统
    小型超市销售管理系统 实 验 报 告 实验课程: 信息系统分析与设计 学生姓名:曹志明 冯建明 冯伟 胡华 赖玉峰 专业班级: 信息管理041班 组 长:曹志明(6104104002) 小组成员:冯建明(6104104027) 冯 伟(61 ...
  • xx网站运营计划书
    网站运营计划书 方案目录 一. 网站运营的工作组成部分 二. 网站的运营计划目标 三. 网站运营的具体方法策略 四. 网站运营的岗位设置.技术要求及电脑配置 五. 网站运营的效果评价 六. 网站运营的岗位安排及制度 七. 网站维护和服务器系 ...
  • 进销存管理系统实训报告
    企业进销存管理系统实训报告 小组成员:成波.钟秀.马姝婷.邢亚可.龙浩 目 录 一. 系统分析 . ...................................................................... ...
  • 物联网专业课程设置
    高校物联网专业课程设置 2010-06-22 17:46:58 作者:博客 来源:thingslink 浏览次数:7781 网友评论 0 条 年初教育部下达了高校设置物联网专业申报通知,众多高校争相申报.由于物联网涉及的领域非常广泛,从技术 ...
  • 担保信息管理系统建设方案
    延安市中小企业信用担保 信息管理系统建设方案 延安市中小企业信用促进会 延安市鼎源投资公司 延安市中小企业信用担保有限责任公司 二〇〇九年十一月 第一章 项目概述 1.1 项目名称 延安市中小企业信用担保信息管理系统. 1.2 项目建设单位 ...