学习报告
当前位置:首页 > 工作报告 > 学习报告 > 列表页

面向对象系统的分析与设计学习报告

小草范文网  发布于:2017-02-14  分类: 学习报告 手机版

篇一:图书管理系统面向对象分析与设计报告

目录

1. 图书管理系统开发背景…………………………………………………………………2 2. 图书管理系统设计 ……………………………………………………………………2

2.1任务目标 ………………………………………………………………………2

2.2 图书管理系统需求描述………………………………………………………………2

2.2.1 系统组成………………………………………………………………………2 2.2.2 图书管理系统功能描述………………………………………………………3 2.2.3 系统参与者…………………………………………………………………… 3 2.3 图书管理系统功能模型…………………………………………………………………3 2.3.1 功能模型描述…………………………………………………………………… 3 2.3.2功能模型的 用例图……………………………………………………………… 3 2.3.2.1读者借书等的用例图………………………………………………………32.3.2.2图书馆管理员处理借书、还书等的用例图………………………………4

2.3.2.3系统管理员进行系统维护的用例图………………………………………5

2.4 图书管理系统对象模型………………………………………………………………… 7 2.4.1 对象模型描述………………………………………………………………………… 7 2.4.1.1读者Borrower类……………………………………………………………… 7 2.4.1.2系统管理员Administrator类……………………………………………………7 2.4.1.3图书管理员Librarian类…………………………………………………………7 2.4.1.4书目Title类………………………………………………………………………7 2.4.1.5其他类…………………………………………………………………………… 7 2.4.2 类图……………………………………………………………………………………6 2.5 图书管理系统动态模型…………………………………………………………………… 9 2.5.1 图书管理系统动态模型…………………………………………………………………9 2.5.2图书管理系统系列图………………………………………………………………… 10 2.5.2.1系统管理员添加书籍的时序图……………………………………………………10 2.5.2.2系统管理员添加借阅者帐户的时序图……………………………………………10 2.5.2.3系统管理员删书目的时序图………………………………………………………11 2.5.2.4图书管理员处理书籍借阅的时序图………………………………………………11 2.5.2.5 读者查询籍息的时序图……………………………………………………………12 2.5.3图书管理系统活动图………………………………………………………………………12 2.5.3.1借阅者的活动图………………………………………………………………………12 2.5.3.2图书管理员的活动图…………………………………………………………………14 2.5.3.3系统管理员维护借阅者帐户的活动图………………………………………………15 2.5.3.4系统管理员进行书目信息维护的活动图……………………………………………16 2.5.3.5系统管理员维护书籍信息的活动图…………………………………………………17

图书管理系统面向对象分析与设计报告

2. 图书管理系统开发背景

图书馆作为一种信息资源的集散地,图书和用户借阅资料繁多,包含很多的信息数据的管理,现今,有很多的图书馆都是初步开始使用,甚至尚未使用计算机进行信息管理.图书馆若采取手工方式对图书资料和图书借阅情况进行人工管理,由于资料繁多,手工处理的工作量大,整体管理效率低下,也不方便读者对图书资料的查阅.

基于以上情况,我们需要一套图书管理系统,来提高信息管理效率.

2.图书管理系统设计

2.1任务目标

图书馆信息管理系统作为办公电子化,利用计算机软件,为图书馆管理员管理图书馆藏书,为读者(学生)结束提供借阅图书提供服务。本次开发任务就是为某学校开发一个图书馆管理系统。通过使用本系统,实现图书馆藏书管理电子化,借阅自动化,并提供管理员实时监控图书馆藏书,读者实时借书/还书的功能。除此之外,还提供图书馆管理员维护藏书,读者信息数据库的功能以及读者查阅图书相关信息的功能 2.2 图书管理系统需求描述 2.2.1 系统组成

图书管理系统由一下几个子系统构成:

1. 系统管理员管理子系统 2. 图书管理员管理子系统 3. 读者子系统

各个子系统又包含一些各自的独立功能模块,详细模块分配如下图:

2.2.2 图书管理系统功能描述

1:借阅者可以通过网络查询书籍信息和预定书籍。

借阅者能够借阅书籍和还书。

图书管理员能够处理借阅者的借阅和还书请求。

系统管理员可以对系统的数据进行维护,如增加、删除和更新书目,增加、删除和更新借阅者帐户,增加和删除书籍。 2:系统主要包括以下几个模块: 基本数据维护模块 基本业务模块 数据库管理模块 信息查询模块

2.2.3 系统参与者

图书管理员,借阅者,系统管理员.

三者间的关系如下图:

读者

其中,读者是多个,图书管理员是几个,系统管理员是一个。 读者可以查询自己的借阅情况、分门别类的查询图书和在规定期限内续借不能超过一次操作的情况下进行自行登录续借书等。图书管理员主要是日常操作以下几个工作环节:图书订购、新书验证、书目录入、图书登记、读者信息管理、借阅书登记、图书信息注销和读者信息注销等,而系统管理员统筹管理图书的系统相关事宜,比如权限维护、日志维护、增删用户和管理系统后台数据等。

2.3 图书管理系统功能模型

系统的参与者主要有三类: 读者(也可称为借阅者) 图书馆管理员

图书馆管理系统维护者 2.3.1 功能模型描述

1. 借阅者请求服务的用例图

2. 图书馆管理员处理借书、还书等的用例图 3. 系统管理员进行系统维护的用例图2.3.2功能模型的 用例图

2.3.2.1读者借书等的用例图如下:

读者借助此图书管理系统子系统,可以进行一下操作: 1. 查询图书 2. 预留图书 3. 借书 4. 还书

5. 查阅借阅信息

其中,在读者进行预留图书和查询借阅信息之前,读者必须先登录系统; 读者进行还书操作时,必须保证图书完整;

2.3.2.2图书馆管理员处理借书、还书等的用例图

图书管理员用例描述:

图书管理员使用系统进行的操作主要有: 1. 处理读者的送还的图书 2. 处理读者的借书要求 3. 处理读者的预留图书要求

其中在处理还书时,要查看图书的完整性; 处理读者借书时,要检查读者信息;

2.3.2.3系统管理员进行系统维护的用例图如下:

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

实 验 报 告

课程名称面向对象分析与设计

专业班级 ____ ____

学 号 __ ___

姓 名 ___ ____

同组成员

实验日期 _

成 绩 ____________ ___________

工资管理系统

1.1 系统的功能需求

工资管理系统包括员工管理、工资管理、销售奖金管理、保险费用管理等。

1.工资管理

在取得授权的情况下,有关人员要进行如下工作。

(1)工资录入

工资管理员录入员工的工资,修改录入的出错(维护),形成工资表。

(2)销售奖金录入

工资管理员录入员工的销售奖金,修改录入的出错(维护),形成销售奖金表。

(3)保险费用的录入

工资管理员录入员工的若干保险费用,修改录入的出错(维护),形成保险费用统计表。

(4)计算工资

工资管理员按工作证号码来进行工资的计算统计,然后生成报表再上报给财务部。

(5)计算销售奖金

工资管理员按照工作证号码进行工资销售奖金的计算统计,然后生成报表上报给财务部。

(6)计算若干保险的扣除费用

工资管理员按照工作证号码进行若干保险的计算统计,然后生成报表上报给财务部、

(7)工资或销售奖金、保险费用查询

公司员工可以根据自己的工作证号码查询自己的工资或销售奖金及保险费用。

工资管理的主要业务流程:

此处给出以上7个业务之间的流程图(用活动图描述)

1.2 建立需求模型

对工资管理系统先划分子系统,然后再通过建立用况模型,对需求进行捕获与描述。

1.2.1 划分子系统

限定工资管理系统的功能为:工资管理、统计部门、财务系统、员工管理。对上述的每个功能,用一个子系统来实现。下图给出了这些子系统以及它们之间的依赖。

工资管理系统中子系统以及它们之间的依赖:

此处给出子系统的部署图如下

上图中的子系“财务系统”要分别使用子系统“员工管理”、“工资管理”中的员工号码、员工姓名、员工工资。子系统“工资管理”要分别使用子系统“统计部门”和“员工管理”中的员工信息和统计的工资信息。子系统“统计部门”要使用子系统“员工管理”中的员工信息。

1.2.2 识别参与者

子系统“工资管理”的人员用户有工资管理员和员工。与子系统“工资管理”有关的子系统有“统计部门”、“员工管理”和“财务系统”,这些子系统是“工资管理”的参与者。

1.2.3 识别用况

对1.1节的中的用况需求,现归纳整理如下。

1. 工资管理

(1)录入与维护工资、销售奖金及保险费用

工资管理员需录入员工的工资、销售奖金及若干保险费用信息做出工资表、销售奖金表及保险费用表。

(2)计算工资或销售奖金及保险费用

工资管理员按工作证号码进行计算做出工资报表、销售奖金报表及保险费用表。

(3)查询工资、销售奖金或保险费用

员工查询自己的工资、销售奖金及保险费用。

(4)登录

工资管理员和员工进入该子系统都需要登录。

1.2.4 对需求进行捕获与描述

通过到目前为止掌握的需求,初步了解了系统所要完成的功能。下面进一步建立参与者与用况之间的关系,并对用况进行详细的描述。

图1.3为子系统“工资管理”的用况图。

首先,使用系统的员工和工资管理员都先要进行登录。参与者“工资管理员”通过用况“录入与维护工资、销售奖金及保险费用”来录入、

修改,形成工资表、销售奖金表及保险费用表;再通过用况“计算工资、销售奖金及保险费用”生成工资报表、销售奖金报表及保险费用表并予以发布。所发布的工资报表、销售奖金报表及保险费用表供参与者“员工”、“财务系统”和“工资管理员”使用。员工要通过用况“查询工资、销售奖金及保险费用”来得知自己的工资、销售奖金及保险费用。

此处要求给出各个用况的相关活动图

如下是对上述各用况的描述。

用况:录入与维护工资、销售奖金及保险费用

【前置条件:工资管理员已经登录成功】

工资管理员选择工资录入与维护、销售奖金录入与维护、保险费用的录入与维护。

系统呈现出供录入和修改工资、销售奖金及保险费用的界面

工资管理员处理完数据(录入、修改)后,发控制命令

若为保存,系统进行存储,并通知成绩管理员是否成功若为取消,退出本功能

用况:计算工资、销售奖金及保险费用

【前置条件:工资管理员已经登录成功】

工资管理员发出进行工资、销售奖金及保险费用计算的请求

按工作证号生成工资、销售奖金及保险费用报表,并发送到子系统“财务系统”中

用况:查询工资、销售奖金及保险费用

【前置条件:员工已经登录成功】

交互内容见表1.1中编号为1的那栏的输入/输出部分。

1.3系统分析

在掌握了上述的需求后,下面开始使用面向对象方法进行系统分析。

1.3.1 寻找类

工资管理

在子系统“工资管理”中,也要设立两个类“员工”和“工资管理员”,用它们分别模拟相应的参与者。

工资管理中的对象是工资和销售奖金及保险费用,因而设立类“工资构成”、“销售奖金表”及“保险费用表”。各种工资构成很多,需要设立类“工资表”,它与类“工资构成”形成组合关系。

子系统“工资管理”需要从工资管理部门获取信息,需要设立需接口“工资管理”。子系统“工资管理”要向财务系统提供数据,需要设立供接口“财务系统”。

篇三:面向对象分析与设计课程总结

面向对象分析与设计 课程总结

0923010208

指导老师:庄育飞

这学期学院开设了面向对象分析与设计(UML)这门课,通过老师的讲解,自己一些相关书籍的阅读和实践作业的完成,逐步对课程有了由浅及深的认识。我觉得学习这门课还是受益匪浅的。

面向对象(Object Oriented,OO)是一门以实践为主课程,课程中可以分开两块OOA(面向对象系统分析)和OOD(面向对象系统设计)。

OOA(面向对象系统分析)主要内容: 研究问题域和用户需求,运用面向对象的观点和原则发现问题域中与系统责任有关的对象,以及对象的特征和相互关系.OOA不涉及针对具体实现采取的设计决策和有关细节,独立于具体实现的系统模型。是一个完整确切反映问题域和用户需求的系统模型。OOA的优势:复

用、可扩展、可维护性、弹性。

OOD(面向对象系统设计):以OOA模型为基础,按照实现的要求进行设计决策,包括全局性的决策和局部细节的设计,与具体的实现条件相关。OOD的步骤:细化重组类→细化和实现类之间的关系,明确其可见性→增加属性,指定属性的类型和可见性→分配职责,定义执行每个职责的方法→对消息驱动的系统,明确消息传递的方式→利用设计模式进行局部设计→画出详细的类图和时序图。

面向对象的分析与设计方法将致力于解决传统软件研发过程中由于软件模块化结构化程度不高带来的软件重用性差、软件可维护性差、开发出的软件不能满足用户需要等方面问题。面向对象的概念包括:对象、对象的状态和行为、类、类的结构、消息和方法。对象概念将包含对象唯一性、抽象性、继承性、多态性的重要特征。面向对象的要素包含:抽象、封装性、共享性三方面。

在设计模式的研究过程中,我们组选择的是迭代器(Iterator)的设计模式研究。完成设计研究后,我对迭代器的设计模式有了更为深刻的理解。迭代器(Iterator)提供一个方法顺序访问一个聚合对象的各个元素,而又不暴露该对象的内部表示。并了解到迭代器设计模式一般在以下三类场合使用较多。

? 访问一个聚合对象的内容而无需暴露它的内部表示。

? 支持对聚合对象的多种遍历。因为遍历状态是保存在每一个迭代器对象

中的。

? 为遍历不同的聚合结构提供一个统一的接口。根据实现方式的不同,效

果上会有差别。同时还简化了容器的接口。但是在java Collection中为

了提高可扩展性,容器还是提供了遍历的接口。

在面向对象的软件设计中,我们经常会遇到一类集合对象,这类集合对象的内部结构可能有着各种各样的实现,但是归结起来,无非有两点是需要我们去关心的:一是集合内部的数据存储结构,二是遍历集合内部的数据。面向对象设计原则中有一条是类的单一职责原则,所以我们要尽可能的去分解这些职责,用不同的类去承担不同的职责。Iterator模式就是分离了集合对象的遍历行为,抽象出一个迭代器类来负责,这样既可以做到不暴露集合的内部结构,又可让外部代码透明的访问集合内部的数据。

在Java Collection的应用中,提供的具体迭代器(转自:wWw.XiAocAoFanWeN.cOm 小 草 范文网:面向对象系统的分析与设计学习报告)角色是定义在容器角色中的内部类。这样便保护了容器的封装。但是同时容器也提供了遍历算法接口,你可以扩展自己的迭代器。至于迭代器模式的使用。客户程序要先得到具体容器角色,然后再通过具体容器角色得到具体迭代器角色。这样便可以使用具体迭代器角色来遍历容器了。

OOA和OOD之间没有明显的界限。OOA与OOD的不可分割性正好说明了OO思想的强大,即软件过程阶段的无缝连接,在交流与沟通中不会产生鸿沟,这是相对结构化思想的好处,因为从功能模块到某块详细控制逻辑设计两者之间的联系不是十分紧密,需要分析人员与设计人员的再沟通。

通过课程的学习与实践,对面向对象的理念,以及相关方法,设计模式有了更为深刻的理解与掌握。针对面向对象的分析与设计课程的授课内容及方法,我个人觉得对我还是有不少的帮助和 提高。结合自己的工作,

虽然与开发接触的比较少,但是在运维过程中,如果能了解开发原理,结合实际的工作,会对一些源代码的分析能力以及工作效率的提高起到明显的帮助作用。

庄老师上课经常说一些与课程无关的内容,我已开始并不理解他的作法,后来我慢慢认识到面向对象分析设计的学习就是培养思想的一种过程,这种思维方式还是需要大量的实践才能灵活的运用。目前的阶段,只能说是知道有这样一种设计思想、这种解决问题的方案,至于在何时应该使用、如何去使用,就需要在今后的经验中去累积了。

下面是一些我掌握的基础知识

9种UML图:

类 图:描述类的结构(包括属性以及类之间的相互关系)

对象图:对象以及对象之间的相互关系

构件图:构件及其相互依赖关系

部署图:构件在各节点上的部署

顺(时)序图:强调时间顺序的交互图,用于将系统行为分配给类。一般包含了边界、控制、实体对象

协作图:强调对象协作的交互图,与时序图同构

状态图:类所经历的各种状态,包括状态之间的转换以及触发转变的事件

活动图:对工作流程建模

用例图:与用例文档结合进行需求捕获,测试依据

面向对象设计七个原则:

开-闭 原则、里氏转换原则、依赖倒转原则、接口隔离原则、组合/聚合复用原则、迪米特法则、单一职责

ICONIX开发过程:域模型——用例文档——健壮性分析——健壮图——时序图 设计模式:

1)创建模式: 涉及对象的创建

单例模式, 工厂模式, 建造者模式,原型模式

2)结构模式:涉及类和对象的组合

Facede外观模式, 代理模式, 适配器模式, 装饰模式

3)行为模式: 刻画了类和对象交换及分配职责的方式.主要目标是解耦

观察者模式, 命令模式, 模板模式

本学期学了《面向对象系统分析与设计》课程,本课程我们主要是学习了面向对象的统一建模语言UML,了解面向对象技术的基本概念,掌握面向对象的分析和设计方法,以及与面向对象技术相关的一些软件开发技术,同时掌握在IBM RSA软件环境下用UML进行分析和设计的技术。在《面向对象系统分析与设计》

本文已影响