《软件工程课程设计(b)》任务书。
软件工程》课程设计旨在通过2周实训时间,培养学生初步掌握系统分析、设计、实现、测试、维护的方法,加深学生对软件工程课程的理解和应用,同时也进一步提高学生运用程序设计语言的能力。
一、目标。程序设计不等于软件工程,这是本课程需要进一步让学生加深理解的地方。传统的程序设计在一定程度上偏重于计算机科学领域,属于较抽象的范畴;而软件工程则是要实实在在地做出一个满足用户要求的系统来,这是一个很具体的实践过程。
作为一个软件开发者,必须具备从事工程实践的技能,包括软件项目的可行性研究、系统分析、设计、编写文档、源码设计、使用工具等基本技能,这就是课程设计要实现的一个目标。
课程设计的教学基本要求如下:
1.巩固和加深对软件工程原理的理解,提高综合运用本课程所学知识的能力。
2.培养学生选用参考书,查阅手册及文献资料的能力。
3.培养独立思考,深入研究,分析问题、解决问题的能力。
4.通过实际系统的分析设计、编程调试,掌握软件的分析方法和工程设计方法。
5.能够按要求编写课程设计报告书,能正确阐述设计和实验结果、正确绘制系统和程序框图。
6.通过课程设计,培养学生严谨的科学态度,严肃认真的工作作风和团队协作精神。
二、选题与内容。
选题应尽量结合教学、科研的实际课题,反映新技术,以获得更好的工程设计实践的训练。同时课程设计受到时间及开发环境、条件等的限制,命题应从实际出发,课题的大小规模、难易适度。学生可以根据自己特点、能力、时间进行选题。
三、课程设计的基本步骤。
1.问题定义(明确问题边界)
2.可行性研究。
3.项目开发计划。
4.需求分析。
5.概要设计。
6.数据库设计。
7.详细设计。
8.系统测试。
9.用户使用说明。
四、教学方法及要求。
1.该课程设计可以分组进行,也可独立完成,若分组完成,则3-4人成立一个开发小组,选出小组项目负责人,并对小组成员按任务进行分工或者独立完成;
2.开发环境及工具不限;
3.严格按软件工程的方法,分阶段进行开发(问题定义、需求分析、概要及详细设计、编码、测试等);
4.要求每阶段产生的文档等软件配置齐全、合理;
5.上机能正常运行程序。
6.提交课程设计报告。
要求完成课程设计报告以上,如果采用分组方式完成,可以分模块完成课程设计报告。
五、工作量。
2周(10个工作日)时间。
六、计划安排。
第1个工作日-第2个工作日:查找相关资料、书籍,阅读示例文档,选择题目。
第3个工作日-第4个工作日:设计程序结构、模块图,学习相关技术。
第5个工作日-第9个工作日:完成程序的编码,并且自己调试、测试。穿插进行课程设计报告的撰写。
第10个工作日:撰写和整理课程设计报告,检查软件测试效果、检查课程设计报告,给出学生成绩。
指导教师签字:
2023年9月17日。
目录。1 需求分析 1
1.1 用户功能需求 1
1.2 数据需求 2
2 系统整体设计 2
2.1 概要设计 2
2.2 数据库设计 5
2.2.1 e-r图分析 6
2.2.1.1 er模型 6
2.2.1.2 联系定义 6
2.3系统流程图 7
3 详细设计与实现 7
3.1 用户登录模块 7
3.2 用户注册模块设计 7
3.3 帖子主题模块设计 8
3.4 浏览帖子模块设计 9
4 系统运行和测试 10
4.1 测试运**况 10
4.2 程序有待改进方面 11
结论 11参考文献12
附录**12
1 需求分析。
软件的需求分析必须要有对原业务的一个深入了解、提取、抽象、升华的过程,管理软件需求分析尤其如此。
软件的需求分析是从用户的业务中提取出软件系统能够帮助用户解决的业务问题,通过对用户业务问题的分析,规划出我们的软件产品。这个步骤是对用户业务需求的一个升华,是一个把用户业务管理流程优化,转化为软件产品,从而提升管理而实现的质的飞跃,这一步是否成功,直接关系到开发出来的软件产品能否得到用户认可,顺利交付给客户,客户能否真正运用我们的产品帮助他解决业务或管理问题。
1.1 用户功能需求。
为了系统的各模块功能够正常使用、系统更加人性化,还为了满足系统的实用性及安全性,本系统包含5个角色:游客,用户,管理员、超级管理员、版主。
1)游客的各项功能:
游客可以浏览本论坛,但是不可以发帖,不可以回帖,也不可以看帖,只有注册了以后成为本论坛的用户,才可以执行用户的功能。
2)用户的各项功能:
一旦成为本论坛的用户后享有以下功能:
1、用户注册。
2、用户登录。
3、发表文章。
4、阅读文章。
3)管理员的各项功能:
1、修改管理员自己的信息。
2、对帖子进行管理。
3、进入前台以及退出后台。
4)超级管理员的各项功能:
超级管理员可以添加新的管理员以及删除管理员,修改管理员资料,以及对帖子的管理,超级管理员还可以添加版主。
5)版主的各项功能:
版主可以具有的功能如下:
1、添加版块。
2、修改版块。
3、查看版主信息。
4、修改版主信息。
1.2 数据需求。
用户必须先注册后再登录进入系统,系统用户的数据包括用户名、用户密码、用户类型。用户名在整个系统中是唯一的。
用户浏览帖子时,数据应当包括用户名、帖子序号。用户根据某一主题可以发表帖子,发表帖子需要的数据包括用户名、版块编号、版块分类名、发表帖子标题、发表帖子内容、发表帖子类型。用户回复帖子的数据包括用户名、回复帖子序号、回复的内容、版块编号、版块分类名。
2 系统整体设计。
2.1 系统模块结构设计。
bbs论坛系统(前台)的主要功能模块及其关系,如图2-1所示:
根据bbs论坛系统前台的模块图可以得到系统的具体功能:
用户登录管理功能:新用户注册成功之后,在登录界面输入正确用户名、密码和验证码之后便可以进入本系统。
用户注册管理功能:游客可以浏览论坛的主题话题但是不可以发表话题和回复帖子,只有当游客在本论坛注册成为论坛的用户后,才能进行相关操作。
查询管理功能:用户可以按作者名查询帖子序号、标题、发帖的时间、发帖人等信息,方便用户快速的找到自己想要的信息。
根据bbs系统功能分析和论坛管理的特点,需要设计bbs论坛的后台管理系,其主要功能模块如图2-2所示。
图 2-2 bbs论坛系统后台功能模块。
根据bbs论坛系统后台的模块图可以得到系统的具体功能:
一管理员管理:
管理员信息管理功能:管理员输入正确用户名、密码之后便可以进入到后台管理系统。管理员可以查看自己的信息,可以添加管理员,可以修改管理员的资料,还可以删除管理员。
主题帖子管理功能:管理员可以对用户发表的帖子进行管理,管理员可以按主题帖子序号,主题名,发表的话题进行看帖,修改帖子和删除帖子等操作。
版主管理功能:管理员可以根据版块具体要求的不同,添加这一版块的版主负责管理此版块。来分担管理员的管理论坛的工作,可以更好的为广大用户服务。
二版主管理:
版块管理功能:只有版主输入正确用户名、密码之后便可以进入到版主后台管理。版主根据版块的分类,可以添加其版块下的子分类,或者修改原有版块下子分类的名称,子分类的描述介绍。
版主信息管理功能:可以查看版主自己的信息,可以修改版主的信息资料。
2.2 数据库设计。
该系统采用mysql作为后台数据库去存储所有与系统相关的数据。这些数据表包括用户表(userinfo)、主题帖子表(topicinfo)、回复帖子表(replyinfo)、版块表(foruminfo)以及管理员表(admininfo)。数据模型的最终目的就是规划能够有效地处理事务,并且保持应用开发的简洁性的关系数据库,并在数据库的规范化、性能优化以及数据的简洁性之间达到平衡。
2.2.1 e-r图分析。
2.2.1.1 er模型。
e-r模型是对现实世界的一种抽象。它的主要成分是实体、联系和属性。使用这三种成分,我们可以建立许多应用环境的er模型。本系统的实体和属性的定义如下:
用户表(用户id、用户密码、用户昵称、用户电子邮箱、用户级别、用户留言、用户自述、用户权限)
主题帖子表(主题帖子编号、主题帖子标题、主题帖子作者、帖子内容、发表帖子的时间、回复数、所属版块号、主题类型)
回复帖子表(回复编号、回复帖子编号、回复作者、回复帖子时间、回复内容)
版块表(版块编号、版块名称、版块类型、子版块编号、版主、主题数、文章数、版块描述)
管理员表(管理员id、管理员密码、管理员电子邮箱、管理员自述、注册时间、管理员留言、管理员权限)
图 2-7 管理员信息实体图。
2.2.1.2 联系定义。
er模型的“联系”用于刻画实体之间的关联。一种完整的方式是对局部结构中任意两个实体类型,依据需求分析的结果,考察局部结构中任意两个实体类型之间是否存在联系。若有联系,进一步确定是1:
n,m:n,还是1:1等。
还要考察一个实体类型内部是否存在联系,两个实体类型之间是否存在联系,多个实体类型之间是否存在联系,2.3系统流程图。
图 2-9 主要功能流程图。
各模块功能解释如下:
用户登录模块:新用户注册成功之后,在登录界面输入注册时填写的正确用户名、密码之后,再输入出现的验证码之后便可以进入本系统。如果用户名和密码正确,但是输入的验证码错误,则不允许进入本系统,跳转到登录界面重新输入。
管理员信息管理模块:管理员输入正确用户名、密码之后便可以进入到后台管理系统。管理员可以查看自己的信息,可以添加管理员,可以修改管理员的资料,还可以删除管理员。
主题帖子管理模块:管理员可以对用户发表的帖子进行管理,管理员可以按主题帖子序号,主题名,发表的话题进行看帖,修改帖子和删除帖子等操作。
3 详细设计。
3.1 用户登录模块。
当游客注册成为本bbs论坛系统的用户后,便跳转到系统登录界面,在系统登录界面(图5-1所示)输入正确用户名、密码和验证码之后便可以进入本系统。
图 5-1 用户登陆界面。
3.2 用户注册模块设计。
游客如果要在本bbs论坛系统发表帖子和回复帖子,游客必须在本论坛注册成为论坛的用户后,才能进行相关操作。系统注册界面(图5-2所示)
软件工程课程设计
天水师范学院。课程名称 学生信息管理系统。指导老师 张少刚。学院 电子信息与电气工程学院。班级 12级计算机科学与技术 1 班。学号 20121030108 姓名 付永霞。2015年6月25日。目录。1.可行性研究。1.1技术可行性3 1.2经济可行性3 1.3操作可行性3 2.需求分析。2.2.1...
软件工程课程设计
徐州工程学院。课程设计报告。名称软件工程课程设计 学院信电工程学院 专业软件专业。班级 11软件。姓名云柏。姓名陆剑锋。姓名徐宁。姓名陈胜。指导老师王小磊。组员 云柏陆剑锋 徐宁陈胜。分工 引言。随着科技和经济的发展,人们的消费越来越倾向于网络,出现了网购这种越来越受欢迎的新型消费方式。为了提高学校...
软件工程课程设计
个人整理精品文档,仅供个人学习使用。课程设计教案的基本内容和要求 针对不同的课程设计题目,每位同学以软件设计为中心,完成从需求分析 软件设计 编码到软件测试运行的软件开发全过程。1 同类著名 浏览 分析 需求分析 3 原型主页设计及网页设计。4 数据库设计及应用设计。5 交互网页开发技术或其他专门开...