工程实践建模——成绩分析系统

一、 项目简介

我们做的工程实践项目是陈博老师指导的学生成绩分析管理系统课题,经过与老师的交流,老师建议采用C/S模式完成本项目。

CS模式(Client Server)

简称:客户端服务器
客户端想要访问服务器时,必须在本机上安装客户端软件。
如果软件升级那么,都需要升级。

比如QQ10.0版本,服务器升级了11.0,那么全世界每一个使用QQ的客户端都要升级

那么接下来就使用软件工程课堂上所学知识对本项目建模。

二、绘制用例图

什么是用例?

用例是应用程序开发中的一个关键技术,主要用来捕获系统的高层次(High Level)用户功能性需求。这个绕口的描述主要是因为用例不能用于捕获非功能性需求,也不能用于捕获内部的功能性需求。试图这样做将会造成灾难。首先因为用例是一个非正式的和不精确的建模技术。其次用例的另一个用途是建立我们系统的基本结构,它不仅是定义需求的单位,而且是估计我们的工作量的单位。

用例图通常由参与者actor、系统边界system scope、用例use case、关联association组成。参与者是指在系统之外,但与系统直接交互的对象,即actor,也叫执行者、活动者。参与者用人形符号表示,在人形符号下面标出参与者的角色名。参与者不止是人员,也有可能是信息系统、设备。系统边界用来确定系统的范围,边界是一个方框,用例在边界内,参与者在边界外用例用来表示系统提供的服务。关联用来表示参与者与用例间的关系。

寻找和确定用例通常考虑以下问题:

(1)参与者需要从系统中获取哪种功能?

(2)参与者是否需要读取、产生、删除、修改或存储系统中的某种信息?

(3)系统的状态改变时,是否通知参与者?

(4)是否存在影响系统的外部事件?

(5)系统需要什么样的输入与输出?

结合以上概念,本项目主要用例如下:

(1)教师用例图

 

 (2)学生用例图

 

 (3)管理员用例

 

 (4)教师学生组合用例为:

 三、业务类图

什么是业务建模?

业务建模(Business Modeling)是一种建模方法的集合,目的是对业务进行建模。这方面的工作可能包括了对业务流程建模,对业务组织建模,改进业务流程,领域建模等方面。

怎样业务建模?

建立业务流程模型是一项复杂的任务,需要大量成功的步骤来完成。             

(1)确定范围             
首先,你需要弄清你正在做的工作的实际范围。由于业务流程通常以复杂的方式与其他流程交互,因此在范围中的流程与范围外的关联流程之间划一条界线非常重要。另一个需要确定的重要事项是,您是在记录存在的流程(“当前状态”),还是记录对流程的预期未来变化(“目标状态”)或两者。你也可以从头开始建立一个全新的流程。

(2)收集背景信息             

第一步是完全理解业务流程模型记录的过程。您可以阅读可用的文档和标准操作程序。你也可以和那些每天都参与这个过程的人交谈。我们的目标是获得对流程的高度理解。  

(3)进行面谈             
现在你对流程有了高度的了解,是时候深入了解细节了。这通常需要与最熟悉将要建模的新流程或现有流程的领域专家进行访谈。进行这些采访时,你必须能够积极地质疑过程的每一步,确保您完全理解每个决策点、活动、手动或自动步骤、数据源、消息和事件。当你这样做时,你必须定义过程的“快乐路径”,这是没有异常、问题或条件时的默认路径。这个“快乐路径”必须在你的模型中清楚地表达出来。一旦你完全理解了“快乐道路”,你就可以探究必要的例外。             

(4)开始建模             
此时您可以启动业务流程模型。理想情况下,您应该使用业务流程建模符号(BPMN)2,这是当前标准。 

业务建模在本项目种的运用:

在类图中类用矩形框来表示,它的属性和操作分别列出来。一个类可能出现在好几个图中,同一个类的属性和操作可一直在一种图中列出,其他图中可以省略。类与类之间的关系可以通过类框之间的连线来表示,不同的关系用连线上和连线端头处的修饰符来区别。在本项目种所有的类大致分为以下几类:

(1)学生类(Student)

属性:学号、姓名、性别、出生年月、专业、家庭住址、联系方式

方法:获得学号、设置姓名、设置性别、设置出生年月、设置家庭住址,设置联系方式、设置密码

(2)教师类(Teacher)

属性:教师号、姓名、性别、出生年月、院系、家庭住址、联系方式

方法:设置姓名、设置性别、设置姓名、设置性别、设置出生年月、设置家庭住址,设置联系方式、设置密码、上传成绩、更改成绩、查询分析结果

(3)管理员类(Manager)

属性:账号、密码、管理员号

方法:设置账号、设置密码、更改教师学生信息

(4)课程类(Courese)

属性:课程号、课程名称、课时、学分、任课教师

方法:设置课程号、设置课程名称、设置学时、获得学士、设置学分、获得学分

(5)成绩类(Grades)

获得学号、设置学号、设置课程号、获得课程号、设置成绩、获得成绩

其中学生类、教师类和管理员类继承自Person类,类图如下:

 系统成绩管理整体类图如下:

 成绩管理系统关系类图:

 四、数据模型

什么是数据模型?

数据建模是一种用于定义和分析数据的要求和其需要的相应支持的信息系统的过程。因此,数据建模的过程中,涉及到的专业数据建模工作,与企业的利益和用户的信息系统密切相关。从需求到实际的数据库,有三种不同的类型。用于信息系统的数据模型作为一个概念数据模型,本质上是一组记录数据要求的最初的规范技术。数据首先用于讨论适合企业的最初要求,然后被转变为一个逻辑数据模型,该模型可以在数据库中的数据结构概念模型中实现。一个概念数据模型的实现可能需要多个逻辑数据模型。数据建模中的最后一步是确定逻辑数据模型到物理数据模型中到对数据访问性能和存储的具体要求。数据建模定义的不只是数据元素,也包括它们的结构和它们之间的关系。

建模过程中的主要活动包括:

确定数据及其相关过程(如实地销售人员需要查看在线产品目录并提交新客户订单)。

定义数据(如数据类型、大小和默认值)。

确保数据的完整性(使用业务规则和验证检查)。

定义操作过程(如安全检查和备份)。

选择数据存储技术(如关系、分层或索引存储技术)。

所以我绘制了本项目的初步E-R图:

数据库初步设置五张表:

(1)管理员表:
(2)教师信息表:
(3)学生表:
(4)课程表:
(5)成绩表:
五、概念原型

首先明确概念和概念原型

概念是人对能代表某种事物或发展过程的特点及意义所形成的思维结论。

概念原型是一种虚拟的、理想化的软件产品形式。

就像“程序=算法+数据结构”一样,“概念原型=用例+数据模型”

从之前的分析中已经得到该项目的概念原型,下面介绍一下该概念原型的工作过程:

本项目是学生教师在学校学习过程的基本过程,学生上过课程后进行考试,由教师给出分数后上交系统,学生可以对分数查询。同时教师可以查询更改一些有关学生成绩的分析结果。管理员负责管理学生教师信息,同时有权限对课程进行修改。

六、总结

由于项目具体数据陈老师还没有给我们,所以暂时就只简单对目前项目进行了基本理解,后期会对本项目的功能等进行更改。不过经过这一系列的初步工作,我对本项目有了更深刻的理解和认识,同时对项目的思路也有了更清晰的理解。

 

 

posted @ 2020-12-06 19:26  陈金涛  阅读(538)  评论(0编辑  收藏  举报