软件工程——理论、方法与实践 之 面向对象分析

在需求获取阶段,开发人员关注于理解用户以及他们的使用需求。而在需求分析阶段,开发人员关注于理解系统需求构建的内容,其核心是产生一个准确的、完整的、一致的和可验证的系统模型称为分析模型。

面向对象的分析模型由三个独立的模型组成:

1、功能模型:由用例和场景表示。

2、分析对象模型:由用例图和对象图表示。

3、动态模型:由状态图和顺序图表示。

在分析对象模型中,分析类是概念层次上的内容,用于描述系统中较高层次的对象。在分析阶段,分析类直接与应用逻辑相关,而不关注纯粹的技术实现问题。从软件的功能需求来看,分析类可以划分成实体类、边界类和控制类3种类型。

实体类:表示系统储存和管理的永久信息

边界类:表示参与者与系统之间的交互。

控制类:表示系统在运行过程中的业务控制逻辑。

为了识别分析类,通常需要充分理解系统内部的行为,因此需要在最初的用例模型中适当补充说明系统内部是如何响应外部请求的。在理解和补充用例模型的基础上,开发人员需要确定一组备选的且支持用例行为的一些分析类。

顺序图可以将用例和分析对象联系在一起,实现将用例的行为分配到所识别的分析类中,并且帮助开发人员发现和补充前面遗漏的分析类,得到改进的分析类。

在分析了对象之间的交互行为之后,开发人员需要建立分析类图,即定义分析类之间的关系和分析类的属性。

分析模型是在多次迭代和调整过程中产生的,并且需要开发人员与用户之间的密切交流才能保证分析模型的正确性。在建模完成之后,必须组织开发人员和用户对形成的分析模型进行正式评审,确保分析模型的正确性、完整性、一致性和可行性。

转载于:https://www.cnblogs.com/bdqczhl/p/4298305.html

软件工程——理论、方法与实践 之 面相对象分析相关推荐

  1. 软件工程理论方法与实践

    第一章. 概述  软件是人类思维的杰作,并成为人类现代生活的催化剂.今天软件遍布整个世界,在生物工程.现代通信.宇宙探索.商务处理.工业控制等方面发挥出巨大的威力,并推动了商业.科学和工程领域的跨越式 ...

  2. 阅读《软件工程—理论方法与实践》第五章心得体会

    阅读第五章所了解到的基本知识,形式化方法是指将离散数学的方法用于解决软件工程领域的问题,主要包括建立精确的数学模型以及对模型的分析活动.主要目的是保证软件的正确性.已建立的形式化方法可分为操作类和描述 ...

  3. 阅读《软件工程—理论方法与实践》第四章心得体会

    阅读第四章所得体会.软件需求是决定软件开发是否成功的一个关键因素.开发人员应当学会正确地理解软件需求,实行开非完善但是高质量的需求开发和管理,最大限度地降低软件需求风险.软件需求可以划分为业务需求(定 ...

  4. 近期活动盘点:2019第六届世界互联网大会、面向智慧城市的人本尺度城市形态:理论方法与实践讲座、高级管理人员AI大数据能力研修班...

    想知道近期有什么最新活动?大数点为你整理的近期活动信息在此 2019第六届世界互联网大会•数字经济产业合作系列活动 2019年10月19日-10月20日 2018年,我国GDP超过90万亿元,全国互联 ...

  5. 【信息科学技术与创新】数据压缩的理论方法与现实意义 信息论 压缩编码 通信的数学理论 Huffman编码 LZ算法 虚幻引擎与数据压缩

    数据压缩的理论方法与现实意义 摘要 首先通过信息论引出数据压缩编码的理论方法 接着结合目前技术发展分析压缩编码的现实意义 最后总结思考未来通信与存储的压缩方法 Navigator 数据压缩的理论方法与 ...

  6. 软件工程复习重点整理 | 选自《软件工程——理论与实践》

    选自<软件工程--理论与实践>(第三版)许家珆 是自己本科时期期末复习整理的笔记,现将它上传到网上,某些地方可能出现一些格式错误,我会慢慢修正. 主要用处是记录自己的学习过程,如有错误欢迎 ...

  7. 《软件工程方法与实践》—— 导读

    <img src="https://yqfile.alicdn.com/3e3e341793012d0054d9ae32221f90deabf0b3dd.jpeg" widt ...

  8. 软件工程—理论与实践

    软件工程-理论与实践 软件工程概述 1.1软件是什么 软件不等于程序 以前人们把各种不同功能的程序,包括应用程序和用户自己编写的程序等称之为软件.然而,随着计算机的应用日益普及,软件日益复杂,规模日益 ...

  9. 周立功:嵌入式软件工程方法与实践丛书

    <程序设计与数据结构>仅是<嵌入式软件工程方法与实践丛书>中的第一套第一本书,丛书共含四套: 第一套 <程序设计与数据结构> <面向接口的编程--基于AMte ...

最新文章

  1. k8s集群部署一(最新版docker安装)
  2. 在.net开发中使用Log4Net组件
  3. 为什么BAT这些大企业都喜欢用LoRa技术?
  4. 大三了,计算机专业学生的困惑。 [转]
  5. mac活动监视器_什么是活动监视器?
  6. iOS中事件的传递和响应者链条
  7. 浪潮商用房树新:云数据库时代来临,看浪潮商用机器如何以Power系列夯实云之基石...
  8. 微信生成专属海报(专属二维码)
  9. Java常见面试题:Oracle JDK 和 OpenJDK 的区别?
  10. Arcgis 如何将大量数据转换成csv导出
  11. 【ArcGIS|空间分析】窗口分析
  12. javaee加密部署,tomcat使用自己的classloader解密
  13. 计算机图形学入门知识
  14. Paddlenlp之UIE分类模型【以情感倾向分析新闻分类为例】含智能标注方案)
  15. 2018某二本的秋招流水帐
  16. 把阿拉伯数字全部转换为大写(1,2,3.... = 一、二、三、)
  17. win7系统换主板后无法进系统,卡logo,无法进安全模式的解决方案
  18. VB中Byval关键字的使用。
  19. 用树莓派做服务器运行博客网页
  20. Meshroom 三维重建

热门文章

  1. bootstrap项目实例_精选开源SpringBoot项目:涵盖权限、搜索、秒杀、支付!
  2. python3.7.3安装教程和配置idle_python 3.7.0 安装配置方法图文教程
  3. Matlab--绘图及坐标轴命令使用示例
  4. Levmar使用小结
  5. python 蒙特卡罗_蒙特卡洛模拟(Python)深入教程
  6. q learning 参数_Soft Q-Learning论文阅读笔记
  7. 后端数据成功返回 页面不渲染_如何统计页面访问量,看这一篇就够了
  8. linux重定向到程序,技术|Linux I/O 重定向基础
  9. linux添加硬盘不重启(vmware下或者虚拟机下面)
  10. mysql5.7.17免安装版_MySQL 5.7.17 免安装版本的安装配置