软件项目总体设计

软件项目总体设计
目录
1.导言 1
1.1目的 1
1.2范围 1
1.3参考资料 2
2.项目设计原则简介 2
3.功能模块设计 2
3.1功能模块设计总述 2
3.2 客户端子系统模块设计 4
3.2.1 模块 CM1 :静态页面 4
3.2.2 模块 CM2:系统登录 5
3.2.3 模块 CM3 :注册模块 6
4.数据库设计 7
4.1 数据库种类及特点 7
4.2 数据库逻辑结构 7
4.3E-R图 8

1.导言
1.1目的
该文档根据Learning path软件学习系统的功能和性能,阐述了Learning path软件学习系统的概要设计,包括框架设计,功能模块设计,数据库设计,界面设计等部分。
本文档的预期读者包括:
 设计开发人员
 项目管理人员
 测试人员
 用户
1.2范围
该文档的目的是解决整个项目系统的“怎么做”的问题。在这里,主要是根据
用户提出的项目需求进行的全面设计。
1.3参考资料
《软件工程案例教程软件项目开发实践 第三版》 韩万江等 机械工业出版社
2.项目设计原则简介
软件英语学习系统(Learning path)主要是针对在校学生英语学习而做的。该平台融合了主流教学平台的特点,同时具有传统的英语翻译功能。方便日常英语学习以及师生间的英语反馈。 在整个系统设计的过程中遵循以下的设计原则:

  1. 实用性:实用性是系统的主要设计原则,系统设计必须最大可能地满足用户的需求,做到操作方便、界面友好、可即时更新,能适应不同层次用户的需求。
  2. 先进性:信息技术发展迅速,系统设计尽可能采用先进的技术标准和技术方法。
  3. 以用户为中心的处理:个性化服务充分体现了这一点,根据用户当前展业重点,配置页面功能布局及展现内容,贴合用户操作。
  4. 使用便捷。系统要有设计良好的人机交互界面,即使系统的操作界面简单易用,又能具有较强的适用性,满足不同计算机使用水平的用户使用。
  5. 灵活和易维护:采用开放的体系架构,基于开放源代码的技术框架和数据库系统,使用高效率的开源和免费开发工具,具备完整的文档说明。在维护方面,主要考虑两个层面,一是对于开发人员来讲,系统编码容易调整,可适应需求的变化和调整;二是对于系统管理维护人员来说,能够对系统进行便捷的维护和管理。
  6. 安全可靠:选择安全可靠的软硬件运行平台,并在系统设计和实现的时候关注系统的安全控制和执行效率,提供相应的安全防护功能,保证系统具有较高的安全性和可靠性。安全性方面,要考虑系统的安全、数据管理的安全、网络安全。保证用户权限、数据安全和系统的稳定性。
  7. 单一职责原则:我们系统在面向对象设计部分采取单一职责原则,其核心思想为:一个类,最好只做一件事,只有一个引起它的变化。单一职责原则可以看做是低耦合、高内聚在面向对象原则上的引申,将职责定义为引起变化的原因,以提高内聚性来减少引起变化的原因。从而最终提高我们系统的可修改性和可维护性。
    本概要设计涵盖了体系结构设计、模块设计、数据库设计、界面设计等。
    3.功能模块设计
    3.1功能模块设计总述
    本系统主要包括的模块为两部分:客户端子系统功能模块图、管理端子系统功能模块图,如图 3-1 所示。其中,图 3-2 是客户端子系统功能模块图,图 3-3 是管理端子系统功能模块图。
    软件项目总体设计_第1张图片
    图3-1 主要模块图
    软件项目总体设计_第2张图片
    图3-2 Learning path客户端子系统功能模块图
    软件项目总体设计_第3张图片
    图 3-3 是管理端子系统功能模块图

3.2 客户端子系统模块设计
3.2.1 模块 CM1 :静态页面
编号:CM1
模块名称:静态页面
功能简介:本模块为系统的静态页面模块。
输入:鼠标点击事件
输出:调用的页面
操作流程:
软件项目总体设计_第4张图片
图3-4静态页面模块图
3.2.2 模块 CM2:系统登录
编号:CM2
模块名称:系统登录
功能简介:本模块为系统登录模块,即用户登录系统的入口。在此模块中,用户输入自己的用户名和密码,在此用户名为学号或职工号,系统在后台数据库进行查询操作后,返回布尔值,表示该输入是否正确,输入正确则进入系统,错误则对用户进行相应提示。
输入:用户名,密码
输出:用户是否登录成功
操作流程:
软件项目总体设计_第5张图片
图3-5系统登录模块图
3.2.3 模块 CM3 :注册模块
编号:CM3
模块名称:系统注册
功能简介:本模块为系统注册模块。用户首次进入系统时。可通过本模块进行注册。在此模块中,系统显示注册界面,用户输入相关必要的身份信息,单击确定。若注册成功,系统将以学生学号作为账号,用户设定密码作为密码存入后台数据库。注册完成后,用户可使用注册成功的账号和密码登录系统。
输入:用户名,密码
输出:用户是否注册成功
备注:对于未登录系统的游客用户,系统将自动限制一部分功能的显示
操作流程:
软件项目总体设计_第6张图片
图3-6注册模块图

4.数据库设计
4.1 数据库种类及特点
本项目采用了MySQL 的数据库。MySQL是一个关系型数据库管理系统,由瑞典 MySQL AB 公司开发,目前属于 Oracle 公司,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。MySQL具有以下几个特性:
(1) MySQL为多种编程语言提供了 API。这些编程语言包括 C、C++、Python、
Java、Perl、PHP、Eiffel、Ruby,.NET和 Tcl 等。
(2) 优化的 SQL查询算法,有效地提高查询速度。
(3) 提供多语言支持,常见的编码如中文的 GB 2312、BIG5,日文的 Shift_JIS
等都可以用作数据表名和数据列名。
(4) 提供 TCP/IP、ODBC 和 JDBC等多种数据库连接途径。
(5) 提供用于管理、检查、优化数据库操作的管理工具。
(6) 支持大型的数据库。可以处理拥有上千万条记录的大型数据库。
(7) MySQL 使用标准的 SQL数据语言形式。
4.2 数据库逻辑结构
经过充分的调研和分析,我们将“Learning path”的数据中设计了七个实体,其中包括管理员、教师、学生、单词识别、班级、生词本、题库。针对每个实体,又有其对应的属性。他们之间的关系主要包括以下几项:管理员表、学生信息表、教师信息表是独立存在的,管理员负责管理学生信息、普通用户信息和教师信息。因此管理员与教师、普通用户和学生是一对多关系。
 教师负责班级管理,其中一个老师可以管理多个班级,因此老师与班级是一对多的关系
一套试卷可能包含多道题目,同样的一道题目可能被包括在多套试卷中,
所以试卷与题目之间是多对多的关系。
 知识点与题目之间是包含的关系,所以知识点与题目之间是一对多的关

 一个学生可以参加多次试卷测评,一套试卷可以被多个学生使用,所以
试卷与学生之间是多对多的关系
综上分析,软件项目管理课程平台的实体关系图(概念数据模型)如下图5-1
所示。
4.3E-R图
软件项目总体设计_第7张图片
图4-1E-R图

你可能感兴趣的:(软件项目总体设计)