当前位置:文档之家› 《软件工程实训》软件项目开发报告

《软件工程实训》软件项目开发报告

2016~2017学年第1学期项目名称BBS-电子论坛专业班级xxx级软件工程xx班学号xxxxxx姓名xxx xxx指导教师王宇软件工程学目录1 软件需求分析 (1)1.1软件项目的综合需求 (1)1.1.1课题背景 (1)1.1.2 课题研究现状 (1)1.1.3课题研究的意义 (2)1.2软件项目的数据要求 (3)1.2.1需求陈述 (3)1.2.2业务流程 (3)1.3软件项目的逻辑模型 (4)1.3.1业务用例建模 (4)1.3.2帖子管理业务用例图 (4)1.3.3会员管理业务用例图 (4)1.3.4板块信息业务用例 (4)1.3软件项目的逻辑模型 (4)1.3.1会员帖子发布概念层类图 (4)1.3.2会员发布帖子说明层类图 (5)2 软件设计 (6)2.1开发类设计 (6)2.1.1会员发布帖子实现层类图 (6)2.1.2用户发布帖子顺序图: (6)2.1.3用户发布帖子活动图 (6)2.2数据设计 (7)2.2.1绘制E-R图进行概念建模 (7)3 软件实现 (7)3.1系统界面 (7)3.2其它模块 (8)3.2.1会员发帖回帖模块 (8)3.2.2会员修改个人信息模块 (8)3.2.3留言模块 (8)3.2.4管理员模块 (8)4 软件测试 (8)4.1测试环境 (8)4.2测试目的 (8)4.3测试功能 (9)4.4具体过程 (9)4.5解决方案 (10)5 开发总结 (10)5.1总结与展望 (11)5.2主要收获 (12)5.3存在的问题 (12)参考资料 (12)1 软件需求分析1.1 软件项目的综合需求1.1.1课题背景电子公告牌系统(Bulletin Board System,英文缩写BBS)通过在计算机上运行服务软件,允许用户使用终端程序通过Internet来进行连接,执行下载数据或程序、上传数据、阅读新闻、与其它用户交换消息等功能。

在网络发达的今天,论坛系统服务已经是互联网站一种极为罕见的互动式交流服务?。

论坛可以向网友提供开放式的分类专题讨论区服务,网友们可以在此发表自己的观点、交流技术、经验乃至生活的点点滴滴。

也可以作为用户与教师的沟通渠道,教师可以在此回答学生的问题与疑惑,每个班级可以创建一个虚拟社区,以不同的论坛形式,供学生就相关话题交流意见和张贴发布。

班级通过网上社区,可以增强班级的凝聚力,并可以吸纳更多的意见。

本文设计的一个具有BBS的基本功能的通用BBS系统,主要强调功能的设计与实现,以达到学习当前网络开发的主流技术和设计思想的目的。

本文讨论的是一个简易的BBS网站,它具有BBS网站应该具有的一些简单功能,包括用户注册、用户登录、发表文章、阅读文章、回复别人的文章、主题查找。

1.1.2 课题研究现状通过BBS论坛的方式,展示每一个人风采、优点,发布个人对一些事和物的看法,增强个人与个人之间的互动交流,个人与团体之间的交流联系,在Internet上实现信息的传递,提高办事效率。

?随着全球英特网用户逐年增多,可以看出当今社会网络迅速普及,人们交流的方式也层出不穷,随着新时代的进入。

人们对信息的需求也不断加大,对不同领域的讨论也越来越多了,因此开发一个专题论坛对人们的交流是非常有必要的。

?虽然现在论坛有很多,但是大部分都是用于各个技术领域或者社会闲聊板块模式的,还没有真正的引入到人们的行列中,所以,此项目就是做一个大家的论坛系统,使我们有相同志趣的人能够在论坛上进行互动式聊天与解答疑惑。

本系统采用传统的MVC开发模式,即PHT+mysql+thinkPHP框架, MVC 是一种使用 MVC(Model View Controller 模型-视图-控制器)设计创建 Web 应用程序的模式:Model(模型)表示应用程序核心(比如数据库记录列表)。

View (视图)显示数据(数据库记录)。

Controller(控制器)处理输入(写入数据库记录)。

MVC 模式同时提供了对 HTML、CSS 和 JavaScript 的完全控制。

Model(模型)是应用程序中用于处理应用程序数据逻辑的部分。

通常模型象负责在数据库中存取数据。

View(视图)是应用程序中处理数据显示的部分。

通常视图是依据模型数据创建的。

Controller(控制器)是应用程序中处理用户交互的部分。

通常控制器负责从视图读取数据,控制用户输入,并向模型发送数据。

MVC 分层有助于管理复杂的应用程序,因为您可以在一个时间内专门关注一个方面。

例如,您可以在不依赖业务逻辑的情况下专注于视图设计。

同时也让应用程序的测试更加容易。

MVC 分层同时也简化了分组开发。

不同的开发人员可同时开发视图、控制器逻辑和业务逻辑。

体系结构图如图1所示:图11.1.3课题研究的意义个人BBS系统的建立,极大的丰富了人们的课余活动,大家可以去自己学习的论坛上发表自己的看法与建议,其他有相同兴趣的人也可以浏览别人发的帖子,然后发表自己的看法。

别人的发帖中,能得到有益的教诲和启发。

一些论点能做到各方观点正确公平的显示,具有参考价值。

本论坛具有知识性,趣味性,公平性,和谐性等优点。

论坛给有相同兴趣的人都提供了交流的平台,为网络的互动性作出了巨大的贡献,通过论坛,人们得以更方便的交流,更便捷的发表自己的观点,而且发布信息都是通过有记录的文字来进行,所以这样也避免了精华内容的流失。

通过论坛来征得自己想要的信息,有更高的效率和时效性。

也最节约成本和资源,在论坛的交流过程中,无论喜怒哀乐都是在虚拟的环境中进行,也避免的正面的尴尬和冲突等,在论坛中,可以演变成任何角色,变换多种身份,因为网络的特征,我们可以更好的交流,从而促进社会的发展。

1.2.1需求陈述通过实现该系统,可以为有相同制取的人们提供一个发布信息和随感的平台。

其他人可以通过该平台浏览其他学生发的帖子,大家可以通过该平台同步浏览知识和相关资源。

同时可以为论坛发布个人技术供其他人学习交流之用。

1.2.2业务流程以下讲描述该系统的业务流程:?1、用户可以注册论坛账号;?2、用户可以登陆论坛查看帖子;?3、用户可以回复帖子;?4、用户可以发布帖子;5、用户可以删除帖子;6、用户可以按主题查询帖子;??7、管理员可以浏览帖子;?8、管理员可以删除帖子;?9、管理员可以发帖;?10、管理员可以封用户账户;?11、管理员可以删除用户信息;?12、管理员可以浏览用户信息;?13、管理员可以给论坛增加板块;?14、管理员可以浏览板块;?15、管理员可以删除板块信息;?16、管理员可以修改板块信息;?1.3.1业务用例建模如图2.3.1所示业务用例(大系统)图2.3.1业务用例图帖子管理业务用例图如图2.3.2所示1.3.3会员管理业务用例图如图2.3.3所示1.3.4板块信息业务用例如图2.3.4所示1.3 软件项目的逻辑模型1.3.1会员帖子发布概念层类图如图1.3.1所示图1.3.1会员帖子发布概念层类图概念图中包含8个类1.人员信息类2.会员类3.管理员类4.帖子发布表边界类?5.帖子发布表控制类6.提示信息类?7.帖子发布表类1.3.2会员发布帖子说明层类图如图1.3.2所示图1.3.2会员发布帖子说明层类图功能如下:1、帖子发布表边界类中含有以下方法:1.请求新的帖子发布信息方法2.展示新的帖子发布信息方法3.输入帖子发布信息方法4.提交帖子信息方法5.验证未通过提示方法6.验证成功提示方法2、帖子发布表边界类中含有以下方法:1.请求新的帖子发布表方法2.提交帖子信息表方法3.验证提交的帖子表方法3、管理员类中有以下方法:1.通知管理员方法4、提示信息类中有以下方法:1.获取错误提示信息方法2.获取成功提示信息方法5、人员表类中有以下属性:1.登录名2.登录密码3.用户名4.用户权限5.性别6.邮箱6、帖子表类中有以下属性:1.标题2.内容3.发布日期4.发布人5.所属板块7、正常人员表分出两张外表关联,分别是状态表和权限表状态表有如下性:1.封禁2.正常权限表有如下属性:1.会员2.管理员会员、管理员继承于人员表2 软件设计2.1开发类设计2.1.1会员发布帖子实现层类图如图2.1.1所示图2.1.1会员发布帖子实现层类图2.1.2用户发布帖子顺序图:如图2.1.2所示图2.1.2用户发布帖子顺序图2.1.3用户发布帖子活动图如图2.1.3所示图2.1.3用户发布帖子活动图2.2 数据设计2.2.1绘制E-R图进行概念建模如图2.2.1所示图2.2.1(1)admin数据表,作用是描述后台管理员的信息,如表2.2.1.1所示表2.2.1.1 ADMIN数据表(2)users数据表,作用是描述会员状态的信息,如表2.2.1.2所示表2.2.1.2 USERS数据表(3)posts数据表,作用是描述帖子的信息,如表2.2.1.3所示表2.2.1.3 POSTS数据表(4)advice数据表,作用是游客和会员提供建议的信息,如表2.2.1.4所示表2.2.1.4 ADVICE数据表(5)section数据表,作用是描述板块的信息,如表2.2.1.5所示表2.2.1.5 SECTION数据表(6)replies数据表,作用是描述回帖信息的信息,如表2.2.1.6所示表2.2.1.6 REPLIES数据表3 软件实现3.1 系统界面(1)用户登录模块论坛登录是必不可少的一项,只有登录后才可以进入论坛,游客可以通过注册成为会员,注册会员期间必需格式正确否则会提示您错误信息。

如图3.1图3.1 用户登录模块图(2)用户登录时出现的错误若登录成功进入论坛首页,若登录不成功,将返回到系统的登录界面,如图3.2图3.2用户登录时出现的错误图(3)新用户注册模块如果是新用户则先注册才能登录,注册后在登录便可进入论坛,如图3.3图3.3新用户注册模块图A、用户进行注册,系统对确认密码与密码不符进行提示界面,如图3.4:图3.4 用户已注册,重新注册图3.2 其它模块3.2.1会员发帖回帖模块(1(4)3.2.2会员修改个人信息模块(13.2.3留言模块(13.2.4管理员模块(1(2(34 软件测试4.1测试环境win7 64位笔记本电脑,xamp集成开发环境+opera浏览器。

4.2测试目的尽可能的发现bbs网站中存在的bug,,并及时修复。

测试改软件是否达到预期的功能需求。

4.3测试功能登录,注册,发帖删帖搜帖改帖,修改个人信息4.4具体过程4.5解决方案上表中:登录测试的第3条,前后台用户发生冲突。

通过检查前后台用户登录的代码发现。

Session变量命名,重名了。

导致前后台用户登录发生冲突。

通过设置不同的session名称,可避免这个问题。

相关主题