最近接触了下面向对象分析与设计的概念,虽说书上也许是讲的比较浅显,这里暂且做做学习笔记
当面对一个项目的时候,首先依然是需求分析,得到需求分析报告,接下来在面向对象分析过程中建立用例图,这一步是项目负责人员与用户共同参与, 在结构化分析设计中应该是从属于需求分析的,用例图的重要作用也就是明确整个系统大致上的功能需求,及需要面向的用户类型,类似于DFD中的顶层图。
用例图建好后,基本上进入面向对象设计阶段,这一阶段主要的任务便是从动态与静态两个方面对整个系统进行勾画,建模。
从静态来讲,需要的是类图,而类图的设计方式即,从需求分析报告中提取关键字,总结出可以形成类对象的实物,最好是因此记录出一个类对象表,之 中记录可以作为一个类而被设计的各个名字,比如“会议”“书籍”之类的关键性名词,并从需求分析报告中提取出其该拥有的属性和行为,以及各个类之间的关 联。
从动态来讲,分别有建立活动图,建立状态图和建立消息序列图。利用这3种图相辅相成,来共同构建整个系统在运行过程中的各个细节。
其中,活动图类似于程序流程图,目标主要是构建出各个用例(业务)运作逻辑。
状态图是为了突出各个事件与各个类对象之间影响。
消息序列图便是表明了类对象与类对象之间的交互,关联。
以上3种图动态的从各个方面表明了系统运作中的时间性细节,特别是序列图,更是突出了系统中各个类对象的生存期限和行为期限。
在完成以上的面向对象分析设计之后,所获得的文档与认识已经能有效的辅助代码实现人员对于整个系统的理解,这时候便是面向对象程序实现阶段,就暂且不提了。

面向对象分析与设计小结相关推荐

  1. 面向对象分析和设计的几个关键步骤_(豁然开朗)《面向对象分析与设计》读书笔记 (4)- 分类...

    目录 分类 正确分类的重要性 分类的困难 分类的增量和迭代本质 确定类和对象 经典方法 && 现代方法 (种) 面向对象分析 (主要识别对象) 关键抽象和机制 确定关键抽象 识别机制 ...

  2. UML和模式应用学习笔记-1(面向对象分析和设计)

    大学时曾经开过<UML和模式应用>的课程,当时没有引起足够的重视,只为了应付考试并没有真正掌握书中的内容:现在工作中经常要用到UML及设计模式,决定每周花点时间重新对书中的内容进行学习:本 ...

  3. OOAD 面向对象分析与设计

    OOAD 面向对象分析与设计2007年06月16日 星期六 下午 04:38OOAD(Object Orient Analysis & Design,面向对象的分析和设计,面向对象分析与设计) ...

  4. UML 面向对象分析与设计

    面向对象方法以其超越传统方法的技术先进性越来越得到更多的重视,但技术的先进性不能完全代表一种新生事物的最后成功,还要看它是否能得到有效的推广.统一建模语言(UML)的产生为这种推广规定了一致的表示,诸 ...

  5. 深入浅出面向对象分析与设计

    深入浅出面向对象分析与设计书籍 下载位置:http://pan.baidu.com/s/1o7gmmuu 转载于:https://www.cnblogs.com/wlming/p/5160140.ht ...

  6. 《面向对象分析与设计》一1.4面向对象方法的主要优点

    1.4面向对象方法的主要优点 本节从认识论的角度和软件工程方法的角度看一下面向对象方法带来的益处,并把面向对象方法与传统方法进行比较,看面向对象方法有什么优点. 从认识论的角度面向对象方法改变了开发软 ...

  7. 面向对象分析与设计--遛狗玩

    这篇文章焦点并不在于继承以及多态性或者各种炫酷的设计模式上面,也不在与对未来的预测,而在于分析最基本的封装,提取类,组合 人遛狗的最简形式 public class People {public st ...

  8. 面向对象分析与设计中的基本事件处理的机制及其优缺点对比

    xjtuer最好不要抄,五次作业都是去年优秀作业,如果因为全抄被老师逮住全给0分就得不偿失了,放在这里是给大家一个思路不用再去查找很多资料,了解之后再自己总结写一写 面向对象分析与设计中的基本事件处理 ...

  9. 实验三 面向对象分析与设计

    文章目录 一.实验目的 二.实验内容 实例1:在线选课系统 实例2:试卷自动生成系统 实例3:人事信息管理系统 三.实验步骤 四.实验内容 1.问题陈述 2.用例图(Use Case View)的建模 ...

最新文章

  1. linux 生成dll文件,Linux和Windows平台 动态库.so和.dll文件的生成
  2. NLP中关键字提取方法总结和概述
  3. 显示windows电脑上已连接过的wifi密码
  4. ElasticSearch _xpack用户管理
  5. 好程序员分享SpringBoot须掌握的注解
  6. 群体智能,多个机器人协同搬运!
  7. _VMware_虚拟机到_KVM
  8. 高清HDMI高清编码器(HDMI网络传输器)使用及前景
  9. php删除双引号,php如何去除引号
  10. 云服务器搭建深度学习环境
  11. 《仿美团》项目研发总结
  12. 2021 Android APK反编译 apktool使用教程
  13. 2018最新精选的Go框架,库和软件的精选列表 三
  14. 数据库实验(二二二)
  15. lisp语言如何画小红点_用AutoLISP语言编程实现参数化绘图
  16. 卡普公司鸿蒙手机,每人日接受信息量相当于看174份报纸
  17. 蓝牙4.0、经典蓝牙、BT、BLE的关系与区别
  18. 微型计算机的一般工作过程,微型计算机的基本工作原理
  19. 模拟器启动不起来怎么解决
  20. 电力圈大佬再次“华山论剑”:如何构建以新能源为主体的新型电力系统?

热门文章

  1. C语言malloc,free的用法
  2. 本田da屏怎么进wince系统_东风本田LIFE“来福酱”上市
  3. 27_pytorch全连接层,使用MNIST的分类案例(学习笔记)
  4. 2 TileMapObject的使用
  5. Kettle使用_20 笛卡尔积与前一行后一行Lead Lag
  6. dt测试软件的学习心得,无线网络优化dt测试心得_适合新手入门,高手进阶_5年项目经验实战经验.docx...
  7. 深入浅出设计模式原则之开闭原则(OCP)
  8. 使用cdev_add注册字符设备
  9. totorisgit与git两种方式pushpull文件
  10. opencv_contrib4.4安装