UML面向对象分析与建模-【1】面向对象技术概述

简介:     一、软件开发方法 常见的软件开发方法有面向过程的开发方法,面向数据结构的开发方法和面向对象的开发方法。其中面向过程的开发方法也称为面向功能的软件开发方法或面向数据流的软件开发方法。

 

 

一、软件开发方法

常见的软件开发方法有面向过程的开发方法,面向数据结构的开发方法和面向对象的开发方法。其中面向过程的开发方法也称为面向功能的软件开发方法或面向数据流的软件开发方法。结构化方法强调过程抽象和功能模块化。它一般利用图形表达用户需求,使用的手段有数据流图、数据字典、结构化语言、判定表及判定树等。面向数据结构的开发方法适合于求解算法依赖于问题描述的数据结构之类的情况。这种方法最适合在完成了软件结构设计之后,用它来设计每个模块的处理过程。它根据问题的数据结构定义一组映射,把问题的数据结构转换为问题求解的程序结构。面向对象开发方法思想是:对问题空间进行自然分割,以更接近人类思维的方式建立问题域模型,以便对客观实体进行结构模拟和行为模拟,从而使设计出的软件尽可能直接地描述现实世界,构造出模块话的,可重用的,维护性好的软件,同时限定软件的复杂性和降低开发维护费用。它是通过面向对象的分析(OOA)、面向对象的设计(OOD)和面向对象的程序设计(OOP)等过程,将现实世界的问题空间平滑地过渡到软件空间的一种软件开发过程。目前,典型的面向对象的开发方法是UML和统一开发过程(RUP)。

二、软件生命周期

软件生命周期是指软件从立项、功能确定、设计,到开发成功投入使用,并在使用过程中不断地修改、增补和完善,直至被新的需要所替代而停止该软件的使用的全过程。

阶段

研究问题

给出的标准和文档

问题定义

问题是什么

目标和规模报告书

可行性研究

有可行的方法吗

高层逻辑模型、数据流图、成本效益分析

需求分析

系统做什么

逻辑模型、数据流图、数据字典、算法描述

总体设计

如何解决问题

系统流程图、系统结构层次图

详细设计

怎样具体实现

编码规格说明、HIPO图或PDL

编码和单元测试

给出正确的程序模块

源程序清单、单元测试方案和结果

综合测试

给出符合要求的软件

综合测试方案和结果、一直的软件配置

维护

持久地满足用户需要

完整地维护记录、文档、软件新版本

三、软件开发模型

软件开发模型是从软件项目需求定义直至软件经使用后废弃为止,跨越整个生存期的系统开发、运作和维护所实施的全部过程、活动和任务的结构框架。分为:瀑布模型、原型模型、螺旋模型、增量模型和喷泉(迭代)模型。

四、面向对象方法的特点

面向对象的方法学可以概括为下列方程:OO=Object+Classes+Inheritance+Communication with Messages 也就是说面向对象就是既使用类和继承等机制,而且对象之间仅能通过传递消息实现彼此通信。

五、面向对象分析(OOA

面向对象分析的关键,是识别出问题域内的对象,并分析它们相互间的关系,最终建立起问题域的简洁、精确、可理解的正确模型。分析就是抽取和整理用户需求并建立问题域精确模型的过程。基本步骤有 问题域分析、发现和定义对象和类、识别对象的外部联系、建立系统的静态结构模型和建立系统的动态行为模型。

六、面向对象设计(OOD

面向对象设计是把分析阶段的需求转变成符合成本和质量要求的、抽象的系统实现方案过程。细分为系统设计和对象设计。设计准则包括 模块化、抽象、信息隐藏、弱耦合、强内聚和可重用。设计过程包括 设计对象和类、设计系统结构、设计问题域子系统、设计人-机交互子系统、设计任务管理子系统、设计数据管理子系统和设计优化。

七、面向对象方法和工具

面向对象方法主要有 BoochJacobsonCoad-YourdonJames Rumbauth开发方法。已发展成当前最流行的系统分析方法和软件开发技术,并且已经逐步统一、融合形成UML语言。

 

 

    参考文献:

    [1] 唐学忠等著. UML面向对象分析与建模. 电子工业出版社. 2008

    [2] 蔡敏等著. UML基础与ROSE建模教程. 人民邮电出版社. 2006

    [3] Carlo Ghezzi等著. 施平安译. 软件工程基础(2) 清华大学出版社. 2003

    [4] 参考网站:

       http://www.omg.org/UML

       http://www.rational.com/UML

       http://www.software.ibm.com/ad/ocl

目录
相关文章
|
7月前
|
机器学习/深度学习 人工智能 测试技术
【软件设计师备考 专题 】软件工程的未来:面向构件和统一建模语言(UML)
【软件设计师备考 专题 】软件工程的未来:面向构件和统一建模语言(UML)
150 0
|
3月前
|
测试技术 uml
『软件工程13』浅谈面向对象方法,统一建模语言UML
该文章介绍了面向对象方法的基本概念及其在软件工程中的应用,并详细探讨了统一建模语言(UML)的各种图示及其在系统设计中的作用。
『软件工程13』浅谈面向对象方法,统一建模语言UML
|
4月前
|
数据可视化 架构师 测试技术
【计算机三级数据库技术】第5章 UML与数据库应用系统--附思维导图
本文提供了UML在数据库应用系统设计中的应用概览,包括UML建模框架、视图、四大图的介绍,以及如何使用活动图、用例图、类图、顺序图等UML图来表达业务流程、系统需求和内部结构,最后还涉及了系统微观和宏观设计的UML表达方式。
129 4
|
5月前
|
测试技术 uml
UML使用问题之如何从涉众的视角分析系统功能的需要情况
UML使用问题之如何从涉众的视角分析系统功能的需要情况
|
5月前
|
测试技术 uml
系统分析与设计问题之UML中顺序图与时序图的区别是什么
系统分析与设计问题之UML中顺序图与时序图的区别是什么
|
5月前
|
uml
系统分析与设计问题之UML中活动图是什么
系统分析与设计问题之UML中活动图是什么
|
7月前
|
测试技术 uml
UML面向对象建模题库
UML面向对象建模题库
92 0
|
6月前
|
Java 测试技术 API
技术笔记:UML的9种图例解析(转)
技术笔记:UML的9种图例解析(转)
|
数据库 uml 容器
UML之旅—面向对象技术
面向对象技术,在我们学习VB的时候就有提到过,刚学习的UML中也重点介绍了面向对象技术,以后还会用到这种面向对象的思想去实现程序之路,所以就简单总结一下自己对于面向对象技术的理解!
|
算法 数据可视化 测试技术
【UML】信息系统分析与设计知识点总结(上)
【UML】信息系统分析与设计知识点总结
158 0