系统开发规范与文档编写

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

用例模型
确定参与者和用例 : 分析可以识别三个参与者:学生, 教师和管理员。
学生:查询课表,选课,查询考试成 绩 教师:查询课表,查询课程成绩 管理员:管理所开设的课程,管理用 户,录入成绩,执行各种查询功能。
用例模型
显然,学生、教师、管理员都是学校里 的人员,有一些相同的属性,如ID,姓 名,部门等,可以将三者的共性提取出 来,形成一个抽象的参与者——用户。
2. 课程成绩查询
教师查询自己所教课程的学生成绩。
3. 成绩管理
管理员录入或修改学生成绩。
确定用例
可以根据上述对于成绩管理用例的分解, 具体画出成绩管理用例的用例图。
确定用例
除此之外,显然,系统还需要一个登录 的用例:
用例描述
1.登录用例的描述 1.1 简单描述
本用例描述了用户如何登录到系统中。
面向对象软件开发框架
需求 用例模型
分析
分析模型
设计
设计模型
实现
实现模型
测试
测试模型
用例驱动开发流程图
需求 用例
分析
设计
实现
测试
用例模型
静态模型
动态模型
实现模型
用例驱动开发流程: 用例驱动开发流程:用例模型
用例模型用于系统需求的获取,描 述系统的功能需求。 用例模型由用例图组成,用例图展 示了参与者、用例以及它们之间的 关系。 创建用例模型的工作包括:定义系 统,寻找参与者和用例,描述用例, 定义用例之间的关系。
动态行为模型
学生成绩查询的协作图
首先,学生通过主窗口的菜单或工具 条,向主窗口发送学生成绩查询请求。 主窗口创建学生成绩查询窗口,之后, 学生成绩查询窗口调用课程选择对象 中的FindByStudent方法,将该学生所 选择的课程及每门课程的成绩显示出 来。最后,学生通过学生成绩查询窗 口的按钮,向该窗口发送关闭消息。
静态模型
主要是一些窗口或者对话框。通过窗口 或者对话框中的按钮、菜单等控件的当 作,完成各种选课管理系统需要完成的 功能。 如由MainWindow →QueryCourseScore →QueryCourseWnd
动态行为模型
动态模型用来描述系统的动态行为,显 示对象在系统运行期间不同时刻的动态 交互,从而实现一组对象的相应功能。 UML中用状态图、时序图、协作图和活 动图来建立动态模型。
用例驱动开发流程: 用例驱动开发流程:用例描述
用例描述
用例图只对所构建的系统进行定位和界定范 围,提供了对所要完成任务的综合概述。然 而,对于参与者和系统的具体交互过程,则 没有叙述。用例描述提供了用例模型的实质 内容,这些内容是大多数用例建模工作的基 础。 用例描述一般用活动图来表示。
用例驱动开发流程: 用例驱动开发流程:静态模型
静态模型
Student(学生)
Student类封装类学生的信息,Student类的属 性定义了按某种方式定位的学生信息,其操 作定义了学生可以执行的各种功能。
Teacher(教师)
Teacher类封装了教师的信息,用于对 教师信息进行管理。
Administrator(管理员)
管理员类用于对管理员的进行维护 。
4.用户信息管理
能够使用系统的每个学生、教师和管理员每 人都有一个ID,管理员可以对用户进行增加, 删除,修改等操作。
选修课教学管理系统功能
5.学生成绩管理 成绩管理包括如下功能:
(1)成绩录入 管理员录入学生的成绩信息。 (2)成绩查询 学生可以查看自己所选各科课程的成 绩。 教师可以查询自己所教课程的学生成 绩,并打印报表。
动态行为模型
时序图
顺序图显示特定用例(也可以是用例 的一部分)的详细流程。并且显示了 它们之间的交互,显示对象之间发送 消息的顺序,即系统执行的某一特定 时间所发生的事件。 顺序图有两个维度:垂直维度以发生 的时间顺序显示消息/调用的序列;水 平维度显示消息被发送到的对象实例。
动态行为模型
登录时序图 在执行登录时,首先由用户启动系 统,窗口LoginWnd被创建,用户在 填写完用户名和口令之后提交各系 统验证,若正确,向主窗口发送消 息,创建主窗口。 应该注意到时序图和用例描述的不 同:直接和系统对象发生联系。
动态行为模型
活动图
活动图展示了连续的活动流,活动图通常用 来描述完成一个操作所需要的活动。当然它 还能用于描述其他活动流,如描述用例。活 动图由动作状态组成,它包含完成一个活动 的活动规约(即规格说明)。
实现模型
系统的实现模型包括构件图和配置图。
本系统是一个基于校园局域网的系统。 可 以通过配置图显示它的物理结构:共有4个 结点组成。
动态行为模型
选课时序图
1.当学生在主窗口中执行选择课程功能 时,用例启动。 2.由主窗口向选课窗口发送创建窗口消 息来创建选课窗口。 3.选课窗口调用CourseSelect类的 FindByStudent操作,获取当前学生的 所有选课信息。 4.通过ShowCouese操作显示在窗口中。
动态行为模型
在基本流4中,如果用户输入的名字或密码 没有通过验证,系统提示错误信息,用户可 以重新输入或中止该用例。
系统提示 用户输入 用户名和 密码
系统验证 输入的用 户名和密 码,用户 登录成功 名字或密 码没有通 过验证, 过验证, 系统提示 错误信息
当用户开始 使用系统时, 使用系统时, 登录用例启 动
建立静态模型的过程,实际上是对问题 域的一个抽象过程,它把问题域与应用 域有关的各种类、对象以及它们之间的 相互关系进行适当的抽象和分类,以揭 示系统的结构。静态模型有类图、对象 图和包图。
用例驱动开发流程: 用例驱动开发流程:动态模型
动态模型用来描述系统的动态行为,显 示对象在系统运行期间不同时刻的动态 交互,从而实现一组对象的相应功能。 UML中用状态图、顺序图、协作图和活 动图来建立动态模型。
用户提交
用例描述
大型作业教材中还给出了其他用例的用 例描述; 可以根据这些描述,画出相应的活动图, 作为练习。
静态模型
把问题域与应用域有关的各种类、对象 以及它们之间的相互关系进行适当的抽 象和分类,以揭示系统的结构。
静态模型
定义系统对象:
从用例模型中查找系统对象,并进一步抽象 为类。 确定每一个类的属性和操作。 识别出系统中的类后,还要识别出类间的关 系,建立类图。
静态模型
User(用户) 类
可以将学生,教师和管理员的共性部分抽象 出来,作为单独的一个类User,这样就简化 了其它的三个类,并提高了系统的可维护性 和可复用性。
静态模型
属性:
ID:惟一标识一个用户的一个字符串 ; Name:用户的名字; Dept:所在部门; Password:口令。
方法:
Verify:验证用户名和口令是否有效; Add:增加用户; Delete:删除用户; Find:查找用户。
基本知识
UML中有九种图(diagram)和五种视图 (view)。九种图包括:用例图、类图、 对象图、状态图、顺序图、协作图、活 动图、构件图和部署图。用来观察系统 的五种视图有:用例视图、逻辑视图、 构件视图、并发视图和部署视图。
基本知识
使用UML的过程 的过程 使用
UML给出了面向对象建模的表示和规则, 但并没有指定应用UML的过程和方法。 尽管如此,要想成功的使用UML,科学 的过程还是必要的。
用例模型
确定用例
前面已经识别出了参与者,根据系统需 求中的描述,可以将系统分为两个顶层 用例:选课管理和成绩管理,画出系统 的顶层用例图。
确定用例
确定用例
选课管理用例可以分解为: 1.课程信息查询:提供按学生查询,按 任课教师查询,按课程名查询等多种查 询方式。 2.选课:学生对自己所选的课程进行管 理,包括增加所选课程,删除所选课程 等。
作业要求
1.参照用例模型中的登录活动图,画出 学生选课的活动图(只要求包含两个对 象:用户和系统)。
作业要求
选课用例由学生启动。启动之后, 系统将弹出选课窗口,在窗口中显 示所开设的全部课程,并对所选择 的课程作出标记。学生对自己所选 的课程进行修改后,提交给系统。 系统首先检查学生所选课程的学分 是否超标(大于8分),若不超标, 则更新系统数据,否则,显示错误 信息,回到选课界面修改所选课程。
特点
综合性:作业内容涉及软件生命周 期阶段,包括分析、设计、文档各 项。 引导性:提供分析和设计的部分结 果,引导学生继续完成其他的任务。 开放性:作业内容可以根据具体情 况来决定,例如,也可以主要是阅 读已经完成的设计,写出总结。
方法
复习熟悉软件需求分析、软件设计、文 档编写的有关内容。 阅读大型作业中提供的分析和设计结果, 熟悉软件分析和设计的具体过程。 先熟悉,再实践,根据实际情况提出具 体要求。
选修课教学管理系统功能
2.查询
可以按课程名,教师名,学号等多种方式查 询课程信息。对于学生的选课信息,学生只 能查询本人的。
选修课教学管理系统功能
3.学生选课管理
学生根据所查询的课程信息,选择自己所要 选修的课程。对于已经选择了,但不希望选 修的课程,可以进行退选。每个学生最多选 修8个学分。
选修课教学管理系统功能
静态模型
除了和参与者有关的类,还要定义一些 和课程有关的类:
Course(课程)类; CourseSelect(选课信息)类;
可以考虑这些类应该有什么属性和方法。
静态模型
定义用户界面类:
显然,在系统运行过程中,用户经常需要和 系统进行交互。一个用户友好的系统通常都 采用直观的图形可视化界面,因此需要定义 系统的用户界面类。通过对系统的不断分析 和细化,可识别出下述的界面类。
《系统开发规范与文档编写》 系统开发的
通过大型作业的练习,使得学生熟悉软 件工程过程和软件生存周期,对于软件 需求分析方法和软件设计方法有一个感 性的认识,熟悉软件文档的编写。
概述
每个作业都是一个具体的应用系统的分 析和设计。 作业提出基本的系统需求和功能需求, 并完成了相当的一部分的分析和设计工 作,提供了相应的结果。 提出学生作业可以完成的工作,包括需 求分析,软件设计及文档编写。
5.由学生修改课程后,通过选课窗口的 Update操作进行提交。 6.选课窗口向CourseSelect类发送SelectCourse 消息,进行课程更新。 7.最后,由学生在界面上点击关闭,来向选 课窗口发送销毁窗口消息,用例结束。
动态行为模型
协作图 与顺序图一样,协作图也展示对象 间的动态协作关系。它除了说明消 息的交互外,还显示对象间的关系。 通常可在顺序图或者协作图之间选 择一个来表示协作关系。如果强调 时间和顺序,则使用顺序图;如果 强调多个对象间的协作,则选择协 作图
用例驱动开发流程: 用例驱动开发流程:实现模型
系统的实现模型包括构件图和配置图。 它们描述了系统实现时的一些特性。如 源代码的静态结构和运行时刻的实现结 构。构件图显示代码本身的逻辑结构, 配置图显示系统运行时的结构。
选修课教学管理系统
系统需求: 1. 开设课程管理
管理员对所开设的课程进行管理,允许对所 开设的课程进行增加,修改,删除等。
基本知识
大型作业二是用面向对象设计方法进行 软件分析和设计。 目前普遍使用面向对象设计方法是UML 方法,作业二就是要用UML方法来设计一 个选修课管理系统。 必须首先熟悉UML的基本知识。
基本知识
UML是一个通用的、标准的建模语言, 最常用于建立软件系统的模型。 UML方法溶入了软件工程领域的新思想、 新方法和新技术。它的作用域不限于支 持面向对象的分析与设计,还支持从需 求分析开始的软件开发的全过程。
确定用例
3.课程信息管理:管理员对学校所开设 的课程进行管理,包括增加课程,删除 课程,修改课程信息等。 4.用户管理:为简化处理,假设系统从 学生管理系统中获取学生信息,从学校 人事管理系统中获取教师信息 。
确定用例
确定用例
成绩管理用例可以分解为以下用例: 1. 学生成绩查询
学生查询自己所选课程的成绩。
1.2 前置条件

1.3 后置条件
如果用例成功,则用户登录到系统中。 否则,系统状态不变。
用例描述
1.4 事件流 1.4.1 基本流
(1)当用户开始使用系统时,登录用例 1 启动; (2)系统提示用户输入用户名和密码; (3)用户提交; (4)系统验证输入的用户名和密码,用 户登录成功
用例描述
1.4.2 备选流
相关文档
最新文档