美文网首页
面向对象建模分析(一)

面向对象建模分析(一)

作者: ZuJung | 来源:发表于2017-12-18 11:03 被阅读0次

面向对象分析方法

软件的错误是怎样产生的?软件工程的挑战有哪些

  1. 交付的软件不是用户需要的
  2. 用户需求的变化
  3. 风险没有管理
  4. 无力的团队管理

软件

软件是一种特别的产品,随着规模和复杂性的进步以及应用领域的扩大逐渐形成了工程。
是计算机中与硬件相互依存的另一部分,包括程序、数据和说明文档。

程序是按照设计要求和性能指标设计的指令序列

数据是程序能够正常操纵信息的数据结构

说明文档是用于开发和维护软件程序的各种图文资料。

软件工程

软件工程是软件的工程性方法,涵盖了所有生命周期,并提供了一整套工程性方法来指导软件开发。

软件工程是一门研究如何用系统化、规范化、数量化等工程原则和方法去进行软件的开发和维护的学科。

包含:1. 软件开发技术 2. 软件项目管理

软件工程三要素:方法、工具、过程

软件工程应包括的知识(10个):软件需求、软件设计、软件构建、软件维护、软件配置管理、软件工程管理、软件工程过程、软件工程工具和方法、软件质量

软件的发展历程经历了哪几个阶段,每个阶段的特点是什么?

  • 第一阶段:程序设计阶段
    • 个人英雄主义的开发、软件开发就是程序设计、不考虑通用型
    • 文档不全
    • 只有程序的概念,没有软件的概念。
    • 采用汇编语言、机器语言应对计算机性能问题
  • 第二阶段:软件设计阶段
    • 程序规模增大、需小组协作生产
    • 由小组运行、维护
    • 程序重要性提升,不再被视作硬件的附属成分。
    • 在计算机系统的开发过程中与硬件工程师共同起主导作用。
  • 第三阶段:传统软件工程阶段
    • 采用工程化生产方式
    • 软件产业兴起
    • 软件开发成功率、质量大大提升。
    • 软件工程并发环境及并发环境涌现,度量问题得到重视。
  • 第四阶段:现代软件工程阶段
    • OOP广泛使用
    • 软件开发技术逐渐成熟

软件危机

指计算机软件的开发和维护过程中所遇到了一系列严重问题。

软件生命周期

包括分析、设计、实现、测试和维护等。

软件工程的框架

软件工程目标:正确性、可用性、费用合算

软件工程活动:需求、设计、实现、确认、支持

软件工程原则:适宜开发范型、合适设计方法、高质量工程支持

软件过程

是为了获得高质量软件所需要完成的一系列步骤。

生命周期模型把生命周期划分成那些阶段以及执行顺序,也称为软件过程模型。

常见模型:瀑布模型、快速原型模型、增量模型、螺旋模型

瀑布模型

瀑布模型.jpg

应用场景:大型软件项目;需求明确;需求变化少

特点:

  • 阶段间具有顺序性和依赖性
  • 推迟实现的观点。
  • 质量保证的观点

优点:

  • 严格规定了必须提交的文档
  • 按活动划分的检查点
  • 当前阶段完成后,只需关注后续阶段

缺点:

  • 阶段划分固定、阶段间大量文档增加工作量
  • 开发模型线性,只有在过程结束才能看到成果,增加风险
  • 早期的错误可能要等到末期测试才能发现,带来严重后果

快速原型模型

快速原型模型.jpg

应用领域:客户不熟悉软件、沟通理解困难

优点:

  • 减少需求不明确带来的开发风险
  • 更好和客户沟通
  • 减少技术、应用风险,缩小成本,提高产品质量

缺点

  • 尽可能快速建造原型、限制开发人员创新
  • 所选技术工具不一定主流,效率低
  • 可能导致产品设计差
  • 客户确定真正需求、原型可能被抛弃

增量模型(演化模型)

增量模型.jpg

适用范围:需求比较明确、架构稳定

优点:

  • 及时反馈、适应变化好
  • 客户看到不断变化的软件,降低开发风险
  • 团队士气的鼓舞

缺点:

  • 需要开放式的体系结构,维护难度大
  • 容易退化为边做边改模型、使软件过程控制失去整体性

螺旋模型

螺旋模型.jpg

适用范围:大型复杂的系统

优点:

  • 强调可选方案以及约束条件支持软件重用
  • 有助于提升软件质量

缺点:

  • 要求客户接受相信风险分析
  • 风险分析成本过大则无意义
  • 需善于识别风险且准确

结构化方法(面向功能、数据流软件开发方法,结构化生命周期法)

五个阶段:规划、分析、设计、实施、运行维护
Jackson方法的表示:顺序、选择、重复

面向对象软件开发方法

自底向上的归纳、自顶向下的分解,尽可能运用人类自然思维方式

要点:

  • 客观世界由各种对象组成
  • 所有对象划分为类
  • 类具有登记
  • 对象之间通过消息交互

三大重要特征:封装、继承、多态

基本概念:对象、类、封装...

核心概念:对象、类

相关文章

  • 面向对象建模分析(一)

    面向对象分析方法 软件的错误是怎样产生的?软件工程的挑战有哪些 交付的软件不是用户需要的 用户需求的变化 风险没有...

  • 软件设计师考试 | 第七章 面向对象技术 | UML

    面向对象分析强调的是对一个系统中对象的特征和行为的定义。 统一建模语言(UML)是面向对象软件的标准化建模语言。 ...

  • 面向对象建模分析(二)

    需求工程 需求工程的基本概念 什么是需求工程? 对系统应该提供的服务和所受到的约束进行理解、分析、建立文档、检验的...

  • 面向对象建模分析(四)

    什么是动态建模 所有系统均可表示为:静态结构和动态结构 状态图、活动图、顺序图和协作图描述系统结构和行为,适合描述...

  • 类图-分析业务模型

    类图是我们用的最多的一种UML图。类图是锻炼面向对象分析和面向对象设计思想的重要工具,是业务建模的重要工具。 面向...

  • 《Thinking in UML》笔记

    ?最后更新:20180815 UML —— 统一建模语言 面向对象编程 面向对象( Object Oriented...

  • 2018-06-28

    五 面向对象的分析和设计 信息系统复习 面向对象的开发过程 Uml语言是一种可视化的图形符号建模语言,利用它可以进...

  • 《UML面向对象需求分析与建模教程》期末知识点总结复习

    title: 2018《UML面向对象需求分析与建模教程》期末知识点复习categories:软件工程专业课tag...

  • 面向对象——封装

    面向对象(复习) 1.面向对象——一种编程思想 2.面向对象的开发步骤 a)OOA:面向对象的需求分析_分析解决问...

  • 面向对象——封装

    面向对象(复习) 1.面向对象——一种编程思想 2.面向对象的开发步骤 a)OOA:面向对象的需求分析_分析解决问...

网友评论

      本文标题:面向对象建模分析(一)

      本文链接:https://www.haomeiwen.com/subject/jtwpwxtx.html