面向对象的需求分析

面向对象的需求分析
面向对象的需求分析

在线学生作业管理系统需求分析文档

2020/05/13

吕睿 1824120100贺俊耀1824070056 孟义博1824070054

杨素青1824120001 赵晨萌1824120054 张贤1610242673

一、系统介绍

该在线作业管理系统主要提供网上的作业管理平台,针对的用户主要分为教师用户,学生用户和系统管理员三类。其管理功能方面有教师管理功能,学生管理功能,系统管理功能,学校教务管理功能等,不同的角色有不同的操作功能,其相关功能基本需求描述如下:

1.教师管理功能:教师登录功能,根据权限进入教师相应的页面功能,教师可以在线创建新课程,发布新作业,点评学生作业,发布作业答案。

2.学生管理功能:学生登录功能,根据权限进入学生相应的页面功能,学生可以在线选择加入课程,提交作业,查看作业成绩及教师点评,查看答案。

3.学校教务管理功能:系统管理员登录功能,根据权限进入管理员相应的页面功能,可以设置院系,班级,课程,任课老师,同时具有查看,修改,删除的功能。

4.系统管理功能:系统可以进行必要的用户管理,如注册,登录,个人信息维护,接收系统通知等。

二、系统用户

5.系统用户分为教师用户、学生用户和系统管理员。教师用户实现的

主要功能有教师登录功能,根据权限进入教师相应的页面功能,教师可以在线创建新课程,发布新作业,点评学生作业,发布作业答案。学生用户主要实现的功能有学生登录功能,根据权限进入学生相应的页面功能,学生可以在线选择加入课程,提交作业,查看作业成绩及教师点评,查看答案。管理员实现的功能主要有系统管理员登录功能,根据权限进入管理员相应的页面功能,可以设置院系,班级,课程,任课老师,同时具有查看,修改,删除的功能。

三、用例模型

教师用户用例图如下所示

作业批改打分

<>

获取学生作业

作业信息管理<>

<>

发布作业答案

教师用户

教学课程管理发布教学课程

<>

学生用户用例图如下所示。

管理员用例图如下所示。

四、用例详细描述

学生用户用例描述

教师用户用例描述

管理员用户用例描述

五、系统非功能性需求

(1)系统具有高位移性能,可在大多数操作系统上运行。您只需要安装一

个支持JSP和JDK的模拟服务器,并且可以直接在单独的服务器上运行。数据库系统采用mysql进行动态查询,动态更新和动态数据录入,具有强大的管理能力。主要用于Myeclipse + JDK1.6开发工具,操作简单,功能强大,可根据用户需求进行不同配置,以满足用户的不同需求。

(2)系统管理信息是全面的,易于维护的数据尤其是一些常用的字段,为了防止我们在手动输入的时候可能出现各种错误,系统使用单选按钮或列表框下拉方式要显示所有的数据,用户只需用鼠标点击选择即可完成输入工作。这种方式不仅给用户带来了很多方便,工作效率也提高了,并且尽可能的减少了错误的风险,使用户能够顺利的统计信息工作。

(3)有比较友好的用户界面,使用方便,操作方法很简单。一般来说只要有操作商务网站经验的用户都能熟练的对本系统进行操作。

c++面向对象课程设计报告

课程设计报告 课程名称面向对象程序设计 课题名称学生成绩管理系统 专业计算机科学与技术 班级计算机 1001 学号 01 姓名 指导教师李珍辉陈淑红李杰军 2011年 12 月 28 日

湖南工程学院 课程设计任务书 课程名称面向对象程序设计 课题学生成绩管理系统 专业班级计算机1001 学生姓名 学号 01 指导老师李珍辉陈淑红李杰军 审批 任务书下达日期 2011 年 11 月 15 日 任务完成日期 2011 年 12 月 28 日

一、设计内容与设计要求 1.课程设计目的: 面向对象程序设计课程设计是集中实践性环节之一,是学习完《面向对象程序设计》课程后进行的一次全面的综合练习。要求学生达到熟练掌握C++语言的基本知识和技能;基本掌握面向对象程序设计的思想和方法;能够利用所学的基本知识和技能,解决简单的面向对象程序设计问题,从而提高动手编程解决实际问题的能力。 2.课题题目 1)公司库存管理系统 2)高校学籍管理系统 3)高校工资管理系统 4)高校人事管理系统 5)通讯录程序设计 6)学生成绩管理系统 7) 图书管理系统 8)文本编辑器的设计与实现 9)学生考勤管理系统 10)公司人员管理系统 3.设计要求: ⑴设计课题题目:每位同学根据自己学号除以10所得的余数加1选择相 应题号的课题。随意换题者不记成绩。 ⑵根据自己对应的课题完成以下主要工作:①完成系统需求分析:包括 系统设计目的与意义;系统功能需求(系统流程图);输入输出的要求。②完 成系统总体设计:包括系统功能分析;系统功能模块划分与设计(系统功能模 块图)。③完成系统详细设计:包括数据库需求分析;数据库概念结构设计(E -R图);数据库逻辑结构设计;类层次图;界面设计与各功能模块实现。④系 统调试:调试出现的主要问题,编译语法错误及修改,重点是运行逻辑问题修 改和调整。⑤使用说明书及编程体会:说明如何使用你编写的程序,详细列出 每一步的操作步骤。⑥关键源程序(带注释)

完成Java面向对象程序设计实验课的心得体会范文

Java面向对象程序设计实验课的心得体会经过这几周对Java面向对象程序设计的学习,让我更加了解到Java学习的重要性。 在实验课上,我们完成多个实验,在这个阶段的学习中,我从认识到熟悉,而后到能够自主运用。通过对Java的了解,我发现它确实有很多方便之处,它集抽象性、封装性、继承性和多态性于一体,实现了代码重用和代码扩充,提高了软件开发的效率。对于我们这个专业来说学好Java语言是很重要的,所以在实验的过程中我都尽力理解java编程思想、掌握基本技巧,尽量学到最多的知识。 学习程序设计的基本目的就是培养描述实际问题的程序化解决方案的关键技能,Java面向对象程序设计是一门实践性比较强的课程,在实际中,我们必须把理论和实践结合起来。在实验中,我们理解理论课上的知识,然后运用到实际的操作中,我们必须在现有的理论的基础上,进行实践。多次实验后,也让我看到了现在学习的一个很大弱点:只听不练,永远不会熟练运用;空记技巧,忽略思想,会在多变的习题中十分无奈。 Java思想:Java是一门面向对向语言,他定义一切都是对象面向对象,就是面对现实; 现实中的一切都是对象,他们有分类,就产生了“类”; 他们有不同,类和类之间的不同,使用类来区分; 同一个类中不同的对象的区别,使用成员区分。

所以,面向对象的内部逻辑是分类。 面向对象编程思想就象数学上的一些概念,如:空间、群、环、域等 原始的编程思想就象古典数学,人们只在一个集合上探讨问题,没有系统的方法(即运算)定义,于是仁者见仁、智者见智,这样在一定程度上造成了理论的一种混乱局面,不利于科学的发展。于是近代数学向公理化发展,这是什么意思呢?就是说,人们除了在限定论域(即上面的集合,面向对象也有此概念)外,还在此论域上加进了一套通用的、公认的运算(方法);集合加上集合上定义的运算就构成了数学上的空间、群等,在计算机领域里,就变成为“类”。这种集合上定义了操作的东西利用起来就方便多了,这使得人们讨论问题时都在给定集合的运算能力上下工夫,即有通用性可事半功倍。 面向对象的编程思想就要想近世代数的分析思想,首先要确定“论域”,即工程所涉及到的所有的“对象”,然后要分类处理,把隶属同一类别的对象集合在一起(做成一个集合),定义他们之间的运算性质及可以进行的操作,这样就构建了一个类,当然以后用到这个类的对象时都要通过已经定义了的操作来完成各项功能,这就是常要求的类的“类的成员变量要通过共有函数来操作”。 我想真正的面向对象编程思想不应该是编程思想,应该是面向对象的分析方法才对! 我的理解: 1、将分析过程为抽象的过程:简言之:分成多个小问题(组成部分),

银行计算机储蓄系统面向对象需求分析

面向对象需求分析【银行计算机储蓄系统】 学院:信息工程学院 班级:计科1202 学号:121404219 姓名:汤鑫 指导老师:田怀凤 (扬州大学2014-2015 学年第一学期)

目录 1.基本要求 (2) 1.1 功能要求 (2) 1.2 性能要求 (2) 1.3 接口要求 (2) 1.4 输入要求 (2) 1.5 输出要求 (2) 2.需求分析 (3) 2.1编写目的 (3) 2.2系统背景 (3) 2.3功能需求 (3) 2.4用例分析 (3) 2.5性能需求 (5) 2.5.1 数据精确度 (5) 2.5.2时间特性 (5) 2.5.3适应性 (5) 3.静态结构模型 (5) 3.1类与对象 (5) 3.2类图的建立 (5) 4.动态行为模型 (6) 4.1顺序图 (6) 4.2状态图 (9) 4.3活动图 (9) 5.建立功能模型 (10)

1.基本要求 1.1 功能要求 银行计算机储蓄系统的主要功能有两方面:储户填写存款单或取款单交给业务员键入系统。 如果是存款则系统记录存款人姓名、住址(或电话号码)、身份证号码、存款类型、存款日期,到期日期,利率以及密码(可选)等信息,并引出存款单给储户。 如果是取款而且存款时留有密码,则系统首先核对储户密码,若密码正确或存款时未留密码,则系统计算利息,并印出利息清单给储户。 1.2 性能要求 为了满足储户的要求,系统必须要有高的运作速度,储户填写的表单输入到系统,系统必须能快速及时作出响应,迅速处理各项数据、信息,显示出所有必需信息并打印出各项清单,所以要求很高的信息量速度和大的主存容量;由于要存贮大量的数据和信息,也要有足够大的磁盘容量;另外,银行计算机储蓄系统必须有可靠的安全措施,以保证储户的存储安全。 1.3 接口要求 业务员键入储户的资料要全部一直显示在屏幕上;储户键入密码到系统以核对;计算机与打印机有高速传输的连接接口,最后以纸张的形式打印出清单给储户。 1.4 输入要求 业务员从存取款表单输入数据,要迅速精确,适当调整输入时间,不能让客户等太久,但也不能让业务员太过忙碌以免影响正确率,造成用户损失。 1.5 输出要求 要求快速准确地打印出存款或取款清单给客户。

需求分析报告模板

需求分析报告模板文件管理序列号:[K8UY-K9IO69-O6M243-OL889-F88688]

需求分析报告模板 科技信息中心 二○一一年五月二十日

1. 引言 引言是对这份软件产品需求分析报告的概览,是为了帮助阅读者了解这份文档是如何编写的,并且应该如何阅读、理解和解释这份文档。 1.1 编写目的 说明这份软件产品需求分析报告是为哪个软件产品编写的,开发这个软件产品意义、作用、以及最终要达到的意图。通过这份软件产品需求分析报告详尽说明了该软件产品的需求规格,包括修正和(或)发行版本号,从而对该软件产品进行准确的定义。 如果这份软件产品需求分析报告只与整个系统的某一部分有关系,那么只定义软件产品需求分析报告中说明的那个部分或子系统。 1.2 项目风险 具体说明本软件开发项目的全部风险承担者,以及各自在本阶段所需要承担的主要风险,首要风险承担者包括: ●任务提出者; ●软件开发者; ●产品使用者。

1.3 文档约定 描述编写文档时所采用的标准(如果有标准的话),或者各种排版约定。排版约定应该包括: ●正文风格; ●提示方式; ●重要符号; 也应该说明高层次需求是否可以被其所有细化的需求所继承,或者每个需求陈述是否都有其自己的优先级。 1.4 预期读者和阅读建议 列举本软件产品需求分析报告所针对的各种不同的预期读者,例如,可能包括: ●领导层及管理人员; ●开发人员; ●项目经理; ●项目的最终用户; ●测试人员; ●文档编写人员。 ●其他经许可阅读此文档的人员 并且描述了文档中,其余部分的内容及其组织结构,并且针对每一类读者提出最适合的文档阅读建议。

第3章面向对象(上)_补充案例

第三章补充案例 案例3-1 定义学生类 一、案例描述 1、考核知识点 编号:00103002 名称:类和对象 2、练习目标 掌握类定义的方式 掌握如何在类中定义成员变量和成员方法 3、需求分析 在面向对象的思想中最核心就是对象,在程序中创建对象的前提是需要定义一个类。为了让初学者掌握类的定义方式,本案例将设计一个表示学生的类,该类具有表示姓名的属性name和表示年龄的属性age,同时还具有表示说话行为的方法speak(),用于输出学生的姓名和年龄。 4、设计思路(实现原理) 1)使用class关键字定义一个表示学生类型的类,类名为Student。 2)在Student类中定义两个成员变量name和age,分别用来表示姓名和年龄。其中,name的数据类型为String,变量age的数据类型为int。 3)在Student类中定义一个表示说话行为的speak()方法,用于输出学生的姓名和年龄。二、案例实现 class Student{ String name; int age; void speak() { "我的名字是 "+name+",今年 "+age+"岁"); } } 三、案例总结 1、Java语言严格区分大小写,class和Class是不同的,在定义类时只能使用class关键字 2、在Student类中,成员变量name是String类型,String表示一个字符串,后面的章节会详细讲解 3、思考一下:自己定义一个手机(Phone)类,在类中定义品牌(brand)和价格(price)属性,定义打电话的call()方法,代码如下所示

public class Phone { String brand; double price; void call(){ "hi,how are you doing"); } } 案例3-2 同一对象被多个变量引用 一、案例描述 1、考核知识点 编号:00103003 名称:对象创建与使用 2、练习目标 掌握如何创建类的对象 掌握如何使用两个或者多个变量引用同一个实例对象。 3、需求分析 在程序中,一个对象可能在多处使用,这样就可能需要有多个变量来引用这个对象。为了让初学者更好地掌握对象的创建和使用,本案例将基于案例3-1,创建三个学生对象,它们的引用变量分别是s1、s2和s3,首先分别使用s1和s2引用,为name和age赋值,然后调用speak()方法,最后将s2变量赋值给s3, s3也调用speak()方法。 4、设计思路(实现原理) 1)编写Example01类 2)在main()方法中,创建Student类的第一个对象,其引用变量为s1,使用s1调用name和age 变量分别为它们赋值为“张三”和“19”,然后调用speak()方法。 3)创建Student类的第二个对象,其引用变量为s2,使用s2分别为name和age赋值为“李四” 和“20”,然后调用speak()方法。 4)创建Student类的第三个对象,其引用变量为s3,将s2的值赋给s3,然后使用s3调用speak()方法。 二、案例实现 public class Example01 { public static void main(String [] args) { Student s1 = new Student(); ="张三"; =19; (); Student s2 = new Student();

面向对象需求分析文档

项目名称Array(The English Name) 《面向对象需求分析课程文 档》 } { ` XXX项目小组

修订表

审批记录 …

目录 1.引言 ................................................................................................................................. 错误!未定义书签。 目的............................................................................................................................... 错误!未定义书签。 适用范围....................................................................................................................... 错误!未定义书签。 参考资料....................................................................................................................... 错误!未定义书签。 术语和缩略语............................................................................................................... 错误!未定义书签。 2.系统概述 ......................................................................................................................... 错误!未定义书签。 产品描述....................................................................................................................... 错误!未定义书签。 产品功能....................................................................................................................... 错误!未定义书签。 《 一般约束....................................................................................................................... 错误!未定义书签。 3.功能性需求分类 .............................................................................................................. 错误!未定义书签。 功能描述1 .................................................................................................................... 错误!未定义书签。 功能描述2 .................................................................................................................... 错误!未定义书签。 4.产品的非功能性需求 ...................................................................................................... 错误!未定义书签。 外部接口说明............................................................................................................... 错误!未定义书签。 用户接口................................................................................................................... 错误!未定义书签。 软件接口................................................................................................................... 错误!未定义书签。 性能需求....................................................................................................................... 错误!未定义书签。 硬件的限制............................................................................................................... 错误!未定义书签。 ^ 属性............................................................................................................................... 错误!未定义书签。 友好性....................................................................................................................... 错误!未定义书签。 安全性....................................................................................................................... 错误!未定义书签。 可维护性................................................................................................................... 错误!未定义书签。 可转移/换性 ............................................................................................................. 错误!未定义书签。 系统的运行环境 ....................................................................................................................... 错误!未定义书签。 其他需求....................................................................................................................... 错误!未定义书签。 用户操作需求........................................................................................................... 错误!未定义书签。附录A:需求确认................................................................................................................... 错误!未定义书签。 。

面向对象系统分析和设计综合实验报告4

实验名称:实验4设计模型实验2 学期:2017-2018学年第二学期 一、实验目的 1 ?熟练使用面向对象设计原则对系统进行重构; 2 ?熟练使用面向对象编程语言(JAVA或C++)实现几种常见的设计模式,包括单例模式、策略模式、装饰模式和适配器模式,理解每一种设计模式的模式动机,掌握模式结构,学习如何使用代码实现这些模式。 二、实验要求 1. 选择合适的面向对象设计原则对系统进行重构,正确无误地绘制重构之后的类图; 2. 结合实例,正确无误地绘制单例模式、策略模式、装饰模式和适配器模式的结构图; 3. 实现单例模式、策略模式、装饰模式和适配器模式,代码运行正确无误。 三、实验内容 1. 现实生活中,居民身份证号码具有唯一性,同一个人不允许有多个身份证号码,第 一次申请身份证时将号码分配给居民,如果之后因为遗失等原因补办时,还是使用原来的身份证号码,不会产生新号码,现使用单例模式模拟该场景。 办理轴证.4tE?r号码!身滞证号为No6000654321 ■■办理身漁E,萩駅旧号码| JKfiE号硏■否一融?true 第一次号均 ■二次号匕NO6000654321 卉容華否翊拝:true 斤否孑相曰対It: true 1)类图 2)实现代码: public class IdClie nt {

package Refaetoringl; public class Ide ntityCardNo { private static Ide ntityCardNo private String no; private Ide ntityCardNo() { } public static Ide ntityCardNo getI nsta nce() { if (instanee ==null ) { System. out .println ( ”第一次办理身份证,分配新号码 ”); in sta nee =new Ide ntityCardNo(); in sta nee .setNo( "NO6000654321"); System. out .println( ” 身份证号码为:” + instanee .getNo()); } else { } System. out .println ( ”重复办理身份证,获取旧号码! ”); return in sta nee public Stri ng getNo() { return no; } public void setNo(String this .no = no; 2. 每一麻将局都有两个骰子,因此骰子就应当是双例类。现使用多例模式模拟该场景。 public static void Ide ntityCardNo. Ide ntityCardNo. } main( Stri ng[] getl nsta nee getI nsta nee args ) { () ; () in sta nee no) {

需求分析简单题

需求分析复习重点 考试简答题重点: 一、软件需求从层次上分哪三类?业务、用户、系统 业务需求:抽象层次最高的需求,是系统建立的战略出发点,表现为高层次的目标,描述了组织为什么要开发系统; 用户需求:执行实际工作的用户对系统所能完成的具体任务的期望,描述了系统能够帮助用户做些什么。表达了用户对系统的期望。 系统需求:用户对系统行为的期望,一系列的系统需求联系在一起可以帮助用户完成任务,达成用户需求,进而满足业务需求;可以直接映射为系统行为,定义了系统中需要实现的功能,描述了开发人员需要实现什么。 业务需求——目标(最高层次) 用户需求——具体任务 系统需求——系统行为 联系:业务需求可以明确系统的最终目标和努力方向,进而指导具体的需求获取活动,发现用户需求;用户需求经过明确和细化的处理,可以转化为系统需求。 二、软件需求分哪几种活动? 包括需求开发和需求管理 需求开发4(获取、分析、规格说明,需求验证)+1(需求管理:版本管理,追踪,控制) 软件需求工程分为需求开发和需求管理两部分 1、需求开发的任务可进一步细分为4点 需求获取(是从人、文档或者环境当中获取需求的过程) 分析(建模来整合各种信息) 规格说明(获取的需求需要被编写成文档,在系统涉众之间交流需求信息) 验证(确保需求规格说明文档能正确、准确的反映用户的意图) 2、需求管理 保证需求作用在整个软件的产品生命周期中的连续、稳定和有效发挥 需求管理子活动有以下3点: 建立和维护需求基线集 建立需求跟踪信息 进行变更控制

三、需求获取有哪几种方法?(要举例)传统方法、集体获取方法、认知方法、采样… 1.传统方法 问卷调查、面谈、硬数据分析、文档检查、需求剥离等 2.集体获取方法 头脑风暴(Brainstorming)、专题讨论会(Workshop)、JAD等 3.认知方法 任务分析(Task Analysis)、协议分析(Protocol Analysis)等 4.采样 随机采样、分层采样 5.原型 书面描绘、幻灯片演示、程序代码 6.基于上下文的方法 观察、民族志(Ethnography)和话语分析(Conversation Analysis) 四、分析建模有哪几种常见的手段,分别举例(ppt有) 1、结构化需求分析建模 过程建模(过程建模以DFD为中心,结合使用微规格说明、数据字典、ERD、FDD、PDD等技术一起完成结构化分析的建模任务) 数据建模(模型建立:ERD) 2、面向对象需求分析建模:它以UML为基础,综合使用了多种不同的分析技术,主要有:对象模型、用例模型、行为模型、状态机模型、对象约束语言。CRC方法是面向对象分析在处理复杂问题时的手段,但是它需要了解很多的建模知识才足以进行 五、简述统一过程,画图UP,简述他的思想特点(重点)(p49) 统一过程(Unified Process,UP) 是风险驱动的、基于用例技术的、以架构为中心的、迭代的、可配置的软件开发流程。 (以用例驱动开发过程,以系统体系结构为中心,以质量控制和风险管理为目标,采用反复(迭代、循环)、渐增式的螺旋式开发过程)

面向对象分析方法

https://www.360docs.net/doc/947036850.html,面向对象分析方法1/2 面向对象分析方法(Object-Oriented Analysis,OOA),是在一个系统的开发过程中进行了系统业务调查以后,按照面向对象的思想来分析问题。OOA与结构化分析有较大的区别。OOA所强调的是在系统调查资料的基础上,针对OO方法所需要的素材进行的归类分析和整理,而不是对管理业务现状和方法的分析。 OOA(面向对象的分析)模型由5个层次(主题层、对象类层、结构层、属性层和服务层)和5个活动(标识对象类、标识结构、定义主题、定义属性和定义服务)组成。在这种方法中定义了两种对象类之间的结构,一种称为分类结构,一种称为组装结构。分类结构就是所谓的一般与特殊的关系。组装结构则反映了对象之间的整体与部分的关系。 OOA在定义属性的同时,要识别实例连接。实例连接是一个实例与另一个实例的映射关系。 OOA在定义服务的同时要识别消息连接。当一个对象需要向另一对象发送消息时,它们之间就存在消息连接。 OOA 中的5个层次和5个活动继续贯穿在OOD(画向对象的设计)过程中。OOD模型由4个部分组成。它们分别是设计问题域部分、设计人机交互部分、设计任务管理部分和设计数据管理部分。 一、OOA的主要原则。 (1)抽象:从许多事物中舍弃个别的、非本质的特征,抽取共同的、本质性的特征,就叫作抽象。抽象是形成概念的必须手段。 抽象原则有两方面的意义:第一,尽管问题域中的事物是很复杂的,但是分析员并不需要了解和描述它们的一切,只需要分析研究其中与系统目标有关的事物及其本质性特征。第二,通过舍弃个体事物在细节上的差异,抽取其共同特征而得到一批事物的抽象概念。 抽象是面向对象方法中使用最为广泛的原则。抽象原则包括过程抽象和数据抽象两个方面。 过程抽象是指,任何一个完成确定功能的操作序列,其使用者都可以把它看作一个单一的实体,尽管实际上它可能是由一系列更低级的操作完成的。 数据抽象是根据施加于数据之上的操作来定义数据类型,并限定数据的值只能由这些操作来修改和观察。数据抽象是OOA的核心原则。它强调把数据(属性)和操作(服务)结合为一个不可分的系统单位(即对象),对象的外部只需要知道它做什么,而不必知道它如何做。 (2)封装就是把对象的属性和服务结合为一个不可分的系统单位,并尽可能隐蔽对象的内部细节。 (3)继承:特殊类的对象拥有的其一般类的全部属性与服务,称作特殊类对一般类的继承。 在OOA中运用继承原则,就是在每个由一般类和特殊类形成的一般—特殊结构中,把一般类的对象实例和所有特殊类的对象实例都共同具有的属性和服务,一次性地在一般类中进行显式的定义。在特殊类中不再重复地定义一般类中已定义的东西,但是在语义上,特殊类却自动地、隐含地拥有它的一般类(以及所有更上层的一般类)中定义的全部属性和服务。继承原则的好处是:使系统模型比较简练也比较清晰。 (4)分类:就是把具有相同属性和服务的对象划分为一类,用类作为这些对象的抽象描述。分类原则实际上是抽象原则运用于对象描述时的一种表现形式。 (5)聚合:又称组装,其原则是:把一个复杂的事物看成若干比较简单的事物的组装体,从而简化对复杂事物的描述。 (6)关联:是人类思考问题时经常运用的思想方法:通过一个事物联想到另外的事物。能使人发生联想的原因是事物之间确实存在着某些联系。

实验7 面向对象分析与设计—活动图

实验7 面向对象分析与设计—活动图姓名:学号:日期: 7.1 实验目的 ?熟悉熟悉UML活动图的功能和组成元素 ?理解活动图的语义 ?学会构思活动图 ?掌握活动图的绘制方法 7.2 实验类型及学时 ?验证型 ?2学时 7.3 实验设备 ?PC机一套,要求安装Windows操作系统、Office软件 ?安装Visio分析建模工具 7.4 实验要求 ?要求能够熟练运用Visio软件所提供的菜单、工具、模型等制作图形或图 表;能用Visio软件所提供的专业图形模板,自行绘制出专业化、高质量的图形或图表 ?结合案例1,根据给定系统(案例2)的业务需求,构思网上书店的活动 图,且绘制活动图 ?攥写实验报告,请以“学号+姓名”命名实验报告文档,并在规定时间内 提交

7.5实验内容 1、案例1——图书管理系统之用户管理模块 2、案例2——网上书店系统 7.6 实验结果 1、案例2——网上书店系统 请将“网上书店系统的活动图”放置于实验报告7。 (1)客户购书的活动图

(2)订单处理的活动图 7.7 心得体会 (请大家根据自己的实际情况,如实填写)

不过如此,我觉得简单的小菜一碟,就和那个什么一样,和上次实验报告三一样,这几个案列通过之前的几次操作都是剖析的较为详细了,所以实际上画活动图和前面的几张图片没有太大差别。就是把已经剖析好的每个部分用着活动图的规则来进行摆放,尽管可能因为时间不够,然后导致有些地方出错,或者会看不出来,所以我百度了一下下,发现没有别人做的,所以就先这样上交了。非要说问题的话就是感觉有很多地方有缺漏,而且说明分析可能不够,而且图画的不是很漂亮,但是时间不够我就不改了。

面向对象分析与设计_期末复习_2017-2018-2

《面向对象分析与设计》期末复习 2017-2018学年-第2学期 1、题型介绍: 选择题20 * 1分= 20分 填空题5* 2分= 10分 简答题 4 * 7分= 28分 建模分析论述题4题(第1题10分,第2题8分,第3题8分,第4题16分,共42分)= 40分 2、选择题 1、()不是对象具有的特性。 A.标识 B.继承 C.顺序 D.多态性 2、封装是把对象的()结合在一起,组成一个独立的对象。 A.属性和操作 B.信息流 C.消息和事件 D.数据的集合 3、()不是面向对象的典型方法。 A.Coad& Yourdon 方法 B.维也纳方法 C.OMT方法 D.Booch方法 4、UML中有4种关系,分别是依赖、泛化、关联和() A.集成 B.合作 C.实现 D 抽象 5、下列关于状态图的说法中,正确的是() A.状态图是UML中对系统的静态方面进行建模的5种图之一。 B.状态图是活动图的一个特例,状态图中的多数状态是活动状态。 C.状态图是对一个对象的生命周期进行建模,描述对象在其生存期间的动态行为。 D.状态图强调对有几个对象参与的活动过程建模,而活动图更强调对单个反应型对象建模。 6、UML的()模型图由类图、对象图、包图、组件图、和部署图组成。 A.用例 B.静态 C.动态 D.系统。 7、UML的()模型图活动图、顺序图、状态图、写协作图组成。 A.用例 B.静态 C.动态 D.系统。 8、UML的最终产物就是最后提交的可执行的软件系统和() A.用户手册 B.类图 C.动态图 D.相应的软件文档资料

9、在UML的需求分析建模中,()模型图必须与用户反复交流并加以确认。 A.配置 B.用例 C.包 D.动态 10、下面不是用例之间主要关系的是() A.扩展 B.包含 C.依赖 D.泛化 11、对于一个电子商务网站而言,以下不适合作为用例的选项是() A.登录 B.预定商品 C.购物车 D.结账 12、UML的客户需求分析模型包括()模型、类图、对象图和活动图。 A.用例 B.静态 C.动态 D.系统 13、UML客户需求分析产生的用例模型描述了系统的() A.状态 B.体系结构 C.静态模型 D.功能要求 14、在UML的需求分析模型中,用例建模必须与()反复交流并加以确认。 A.软件生产商 B.用户 C.软件开发人员 D.问题领域的专家 15、在UML的需求分析建模中,对用例模型中的用例进行细化说明应使用() A.活动图 B.状态图 C.配置图 D.组件图 16、类图应该画在Rational Rose的()视图中。 A、Use Case View B、Login View C、Component View D、Deployment View 17、类通常可以分为实体类、()和边界类。 A 、父类B、子类C、控制类D、祖先类 18、对象特征的要素是()。 A、状态 B、行为 C、标识 D、属性 19、下列关于接口的关系说法不正确的是()。 A、接口是一种特殊的类 B、所有接口都是有构造型<>的类 C、一个类可以通过实现接口从而支持接口所指定的行为 D、在程序运行的时候,其他对象不仅需要依赖于此接口,还需要知道该类对接口实现的其他信息 20、下列关于类方法的声明,不正确的是()。 A、方法定义了类所许可的行动 B、从一个类创建的所有对象可以使用同一组属性和方法 C、每个方法应该有一个参数 D、如果在同一个类中定义了类似的操作,则它们的行为应该是类似的 21、UML的系统分析进一步要确立的3个系统模型是()、对象动态模型和系统功能模型。 A、数据模型 B、对象静态模型 C、对象关系模型 D、体系结构模型 22、UML的客户需求分析、系统分析和系统设计阶段产生的模型,其描述图符()。 A、完全相同 B、完全不同 C、不可以通用 D、稍有差异 23、类和对象都有属性,它们的差别是:类描述了属性的类型,而对象的属性必有()。 A、正负号 B、动作 C、具体值 D、私有成员 24、UML系统设计的一般步骤包括系统对象设计、系统体系结构设计和系统设计的()和审查等 A、建模 B、完善 C、优化 D、迭代 25、顺序图和协作图主要用于对用例图中()的建模,用它们来描述用例图的行为。

面向对象报告

一、需求描述 该超市的系统组成主要由以下几个部分,其中各个部分有不同的参与者情况,每个部分主要针对一个或一系列功能设计: (1)收银管理系统。该部分的参与者主要是收银人员,同时该部分是与库存管理以及业务管理直接关联的。收银的业务操作直接対库存管理以及业务管理进行影响。其中的类比如收银单、条形码、商品细项等。收银部分中的一些实体类是与其他部分中的实体类共通的。每次收银操作,都会生成业务信息,影响营业额、订单数、收银人员工作记录等。 (2)线上订单系统。该部分的参与者主要是后台管理人员以及会员顾客。这个部分是一个自身功能较为完整,依赖性较小的部分,其中一些重要的类比如线上订单、购物车、商品细项。 可以明确的如线上订单和收银部分的收银单都可以是业务管理中业务记录这种抽象接口的具体实现实体类,也就是继承泛化,并拓展自己额外的属性。 线上订单系统的时序流程会比较复杂,类似课程教授的的购车用例。该部分是会员顾客与订单系统的交互,同时也会涉及对业务管理的、库存管理的变动,这种变动是对其底层实体类的具体存储参数的修改。通过订单系统种的功能函数实现。 (3)人员管理系统是另一个重要的系统组成。该部分的参与者主要是后台管理人员和顾客会员。这里要区分的是后台管理人员参与者以及后台管理人员类。后者是系统中的一项组成,用于实现数据记录和某些功能,而前者是角色。 人员管理中最重要的三个实体类分别是后台人员、收银人员以及顾客会员。这里暂时不考虑超市的其他员工,因为收银人员在收银系统中扮演重要地位,其收银记录,对业务管理的底层数据都有影响。 人员管理主要分为两种,一种是后台人员的编辑、添加、删除。这种管理适用于三个主要实体类。而顾客会员类存在注册函数,也就是说该部分的参与者是顾客会员自身,顾客会员类信息是需要自身编辑的。该系统主要是对系统中的角色类进行管理,对角色类进行实现增、删、查、改。同时也会附加权限的管理。 (4)库存管理系统主要是后台管理人员参与,细化的功能为商品入库、商品出库,库存紧缺提醒等,库存管理的部分依赖于商品管理部分,也就是说该部分主要是对商品细项类中的数量特性进行操作。库存操作将影响将直接影响到线上订单系统的界面类的商品展示情况,也会影响到超市的铺货情况,这里铺货的流程被省略,将货架铺货商品量与库存量合并,即线下顾客无法在收银系统中登记库存为0的商品,以此简化流程。库存管理中,比较重要的实体类应有商品库存、入库记录、出库记录等。 (5)商品管理系统主要是后台人员参与,该部分的重要实体类是商品细项类,这个类有这众多的特性,用来记录商品的各项属性。这个部分的主要功能即记录商品信息,不论库存管理、收银系统、线上订单系统皆与这个部分有直接联系,他们对商品的识别都需要查询商品管理部分的存储再数据库的商品细项类。而部

面向对象分析与设计实验报告

面向对象分析与设计实验报告 题目:宿舍管理系统 学号: 200*********** 姓名: ****** 班级: 09软件*****04 完成时间:

目录 1 系统功能需求 (3) 管理系统模块 (3) 查询学生模块 (3) 学生管理模块 (4) 资料修改模块 (5) 楼栋管理模块 (6) 出入登陆模块 (6) 2 建立需求模型 (7) 划分子系统 (7) 识别参与者 (8) 识别用况 (8) 对需求进行捕获与描述 (9) 3 系统分析 (11) 寻找类 (11) 建立状态机图 (12) 建立类图 (12) 建立顺序图 (13) 4 系统设计...................................... 1错误!未定义书签。 问题域部分设计 (14) 人机界面部分设计 (14) 5 总结 (16) 参考文献 (17)

1.系统的功能需求 我校学生公寓现为手工管理,效率低、易出错、手续繁琐,而且耗费大量的人力,物力,财力。故设计一个学生公寓管理系统,管理学生住宿情况,员工情况,处理学生离校,管理人员来访情况等功能。通过此系统,后勤人员可以对学生公寓的各项情况实行电脑化管理,以提高工作效率,也使得公寓管理所需的各项信息能方便快速进行录入,查询,删除和更新。 面对学生公寓管理工作的特点以及该管理工作的具体问题, 本系统可以解决以下问题: (1)录入公寓各学生的基本情况。 (2)全面查询学生的基本情况。 (3)对学生离校进行处理。 (4)每学期对学生住宿进行注册。 (5)对来访人员进行出入管理。 (6)对学生的财务进行登记管理。 (7)对楼栋物资和楼栋的管理。 (8)对各项情况进行修改,删除,更新。 (9)友好的操作界面, 以及简单快速的操作. (10)多种查询方式。 本系统针对学生公寓管理日常的工作程式, 对学生公寓的各项情况例如:学生信息,学生个人财产信息,来访人员信息等进行有效管理,并能通过各方法进行快速方便的查询。 使学生公寓管理工作运作简明、清晰,各状况一目了然,使学生公寓管理工作更加科学化、规范化。 管理系统模块:实现用户退出功能。 查询学生模块:该模块包括五个子模块 1.按学号查询——实现按学号查询学生信息 2.按姓名查询——实现按姓名查询学生信息 3.按学生班级查询——实现按学生班级查询学生信息 4.按家庭住址查询——实现按家庭住址查询学生信息 5.混合查询——实现按混合查询学生信息

面向对象程序设计期末复习分析

一、单项选择题( 在每小题的四个备选答案中,选出一个正确答案,并将正确答案的序号填在题干的括号内。每小题1 分,共20 分) 3.下列不属于面向对象技术的基本特征的是(B)。 A. 封装性 B. 模块性 C. 多态性 D. 继承性 4. 面向对象程序设计将描述事物的数据与(C ) 封装在一起,作为一个相互依存、不可分割的整体来处理。 A. 信息 B. 数据隐藏 C. 对数据的操作 D. 数据抽象 5. 关于面向对象方法的优点,下列不正确的叙述是(C )。 A. 与人类习惯的思维方法比较一致 B. 可重用性好 C. 以数据操作为中心 D.可维护性好 8. 下列不属于类的成员函数的是( C )。 A. 构造函数 B. 析构函数 C. 友元函数 D. 拷贝构造函数 9. 继承机制的作用是( C )。 A. 信息隐藏 B. 数据封装 C. 派生新类 D. 数据抽象 14. (D )是从用户使用系统的角度描述系统功能的图形表达方法。 A. 类图 B. 对象图 C. 序列图 D. 用例图 15. (C ) 是表达系统类及其相互联系的图示,它是面向对象设计的核心,建立状态图、协作 图和其他图的基础。 A.对象图 B. 组件图 C. 类图 D. 配置图 16.(D )描述了一组交互对象间的动态协作关系,它表示完成某项行为的对象和这些对 象之间传递消息的时间顺序。 A.对象图 B. 协作图 C. 状态图 D. 序列图 17.(D )就是用于表示构成分布式系统的节点集和节点之间的联系的图示,它可以表示 系统中软件和硬件的物理架构。 A. 组件图 B. 协作图 C. 状态图 D. 配置图 18. 在用UML进行数据库的分析与设计过程中,( B ) 就是进行数据库的需求分析,使用用 例图、类图、顺序图、活动图等建立业务模型。 A. 逻辑数据模型设计 B 业务Use Case模型设计 C. 物理数据模型设计 D. 物理实现设计 19. 使用UML进行关系数据库的(B )时,需要设计出表达持久数据的实体类及其联系,并把它们映射成为关系数据库表(Table)、视图(View)等。 A. 业务Use Case模型设计 B. 逻辑数据模型设计 C. 物理数据模型设计 C. 物理实现设计 20. UML的动态建模表示包含(C )种图。 A. 9 B. 5 C. 4 D. 2 二、填空题( 每空1 分,共20 分) 1. 面向对象开发方法一改过去传统的以_功能分析,面向过程_为基础的_对象_的结 构化分析与设计方法,它模拟人们理解和处理客观世界的方式来分析问题,把系统视为

相关文档
最新文档