按照软件工程实践的原则,开发大型程序需要经历需求分析、总体设计、详细设计、编码实现、系统测试、系统维护等几个阶段。

1、需求分析

本阶段是整个软件开发过程中最重要的环节。通过了解实际运行的系统或与用户交谈,明确系统要完成的任务是什么。

本次课程设计主要:开发一个简易的学生信息管理系统,能进行增、删、改、查的基本操作。

该程序主要功能需求如下:

(1)用户登陆

  学生/教师/管理员均采用用户名及密码验证模式,进入管理系统前,用户必须在登陆页面输入用户名及密码,只有验证通过的用户方可进入信息管理系统操作主页面。

(2)学生信息管理

  包括3个功能模块:学生个人信息的添加、学生信息的查询以及学生信息的修改与删除。

(3)教师信息管理

  包括3个功能模块:教师个人信息的添加、教师信息的查询以及教师信息的修改与删除。

(4)管理员信息管理

  包括3个功能模块:管理员个人信息的添加、管理员信息的查询、修改与删除。

(5)课程信息管理

  包括3个功能模块:课程基本添加与删除处理、成绩查询处理以及学生选课信息的查询处理。

(6)学生成绩管理

  包括3个功能模块:成绩的录入,查看

(7)班级信息管理

  包括3个功能模块:班级信息的添加、查询、修改与删除。

2、系统结构图

3、数据流图

数据流图中就不展示班级了,同时合并了选课表和成绩表

4、ER图

为了简化逻辑,我们做了如下规定

1、一个课程只能一位老师授课(实际不是这样);

2、一个班级只能一位教师管理

管理员ER图

  

Java课程设计---学生信息管理系统需求分析及总体设计的更多相关文章

  1. JAVA课程设计-学生信息管理系统(个人博客)

    1. 团队课程设计博客链接 http://www.cnblogs.com/Min21/p/7064093.html 2.个人负责模块或任务说明 负责person类的编写,建立person对象, 完成M ...

  2. Java课程设计——学生成绩管理系统(201521123003 董美凤)

    Java课程设计--学生成绩管理系统(201521123003 董美凤) 1.团队课程设计博客链接 学生成绩管理系统博客链接 2.个人负责模块或任务说明 信息修改 密码修改 部分界面设计 3.自己的代 ...

  3. 记C++课程设计--学生信息管理系统

                                                                                  C++课程设计--学生信息管理系统     ...

  4. Java课程设计—学生成绩管理系统(201521123004-林艺如)

    1.团队课程设计博客 团队课程设计博客链接 2.个人负责模块或任务说明 ①.Menu Menu.jsp 在页面中给出提示,用HTML的 MenuTeacher.jsp 利用Menu.jsp进行具体化完 ...

  5. Java课程设计—学生成绩管理系统(201521123005 杨雪莹)

    一.团队课程设计博客链接 学生成绩管理系统 二.个人负责模块或任务说明 学生成绩录入 显示所有学生信息 显示各科平均成绩 显示学生成绩(按降序排序) 三.自己的代码提交记录截图 四.自己负责模块或任务 ...

  6. JAVA课程设计---学生基本信息管理系统(201521123039 王兴)

    1.团队课程设计博客链接 http://www.cnblogs.com/zyjjj/p/7061880.html 2.个人负责模块或任务说明 函数 功能说明 Search 查找学生信息,分为两种查找方 ...

  7. Java课程设计 学生基本信息管理系统 团队博客

    学生基本信息管理系统团队博客 项目git地址 https://git.oschina.net/Java_goddess/kechengsheji 项目git提交记录截图 项目功能架构图与主要功能流程图 ...

  8. JAVA课程设计---学生基本信息管理系统

    1.团队课程设计博客链接 http://www.cnblogs.com/zyjjj/p/7061880.html 2.个人负责模块或任务说明 函数 功能说明 Search 查找学生信息,分为两种查找方 ...

  9. Java课程设计—学生成绩管理系统(201521123002 林楚虹)

    1. 团队课程设计博客链接 团队博客链接 2.个人责模块或任务说明 根据学生学号查找学生成绩 根据学生姓名(支持模糊匹配)查找学生成绩 用POI技术导出Excel文件 3.自己的代码提交记录截图 4. ...

随机推荐

  1. golang中的channel

    1. 概念 单纯的将函数并发执行是没有意义的,函数与函数之间需要交换数据才能提现并发执行函数的意义虽然可以使用共享内存来进行数据的交换,但是在共享内存在不同的goroutine中容易发生竟态问题,为了 ...

  2. 通过location.search来获取页面传来的参数

    获取页面传来的参数 <div> <script> function GetQueryString(name) { var reg = new RegExp("(^|& ...

  3. centos7 查看开机启动项

    使用 systemctl list-unit-files  查看开机启动项 systemctl is-enabled redis.service  是否开机启动

  4. mybatis配置入门中遇到的问题

    问题一 非法注射 问题描述:WARNING: An illegal reflective access operation has occurred 这种问题主要是jdk版本和mybatis的jar包 ...

  5. MySql下载与安装(部署)

    一:MySQL介绍 1.MySQL简介 MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下公司.MySQL 最流行的关系型数据库管理系统,在 WEB ...

  6. 拒绝编译等待 - 动态研发模式 ARK

    作者:字节跳动终端技术--徐纪光 背景 iOS 业界研发模式多为 CocoaPods + Xcode + Git 的多仓组件化开发模型.为追求极致的研发体验.提升研发效率,对该研发模式进行了大量优化, ...

  7. makefile快速入门

    前言 在linux上开发c/c++代码,基本都会使用make和makefile作为编译工具.我们也可以选择cmake或qmake来代替,不过它们只负责生成makefile,最终用来进行编译的依然是ma ...

  8. 一步一步搭建基于ffmpeg和sdl2的流媒体播放器

    一.  背景: 一步一步从资料收集.技术选型.代码编写.性能优化,动手搭建一款支持rtsp.rtmp等常用流媒体格式的视频播放器,ffmpeg用于流媒体解码,sdl2用于视频画面渲染和声音播放. 二. ...

  9. JVM学习十三 - (复习)HotSpot 虚拟机对象探秘

    对象的内存布局 在 HotSpot 虚拟机中,对象的内存布局分为以下 3 块区域: 对象头(Header) 实例数据(Instance Data) 对齐填充(Padding) 对象头 对象头记录了对象 ...

  10. FTP工具安装

    开放ftp端口,开房ftp服务即可 firewall-cmd --add-service=ftp --permanent firewall-cmd --reload