为什么要学习这门课程?

  “拥有一把锤子未必能成为建筑师”。
这门课程学习的是面向对象分析和设计的核心技能的重要工具。对于使用面向对象技术和语言来,创建设计良好、健壮且可维护的软件来说,这门课程所授予的技能是基本要求。对于创建对象      系统来说,了解面向对象语言例如JAVA或者C++是必要的,但不是首先要做的。了解“对象思想”才是关键所在。
学习的内容:UML与对象思想
UML只是图形表示法,并不能代表OOA/D,也不是方法。
学习“对象思想”才是这门课程的重点与难点。
如果没有掌握如何创建优秀的面向对象设计,如何评估和改进现有设计,那么学习UML或者UML CASE作图技巧就显得毫无意义
UML的意义在于它是一种应用于OOA/D和“软件蓝图”的语言,
它最重要的意义有两点:
  1.我们可以把它当作一种思考的工具
  2.它也可以是一种沟通的形式
通过这门课程的学习,我应该达到的目标是:
应用原则和模式来创建更好的对象设计;
基于作为是反的UP敏捷方法,在分析和设计中迭代地遵循一组公共的活动;
创建在UML表示法中常用的图;
最低学习目标(也就是最重要的学习目标):
至关重要的能力是熟练地为软件对象分配职责。这项技能是必须要执行的一项活动,无论是画UML图还是进行程序设计,并且直接关乎到软件构件的健壮性、可维护性和可重用性。在实际项     目。中,如果只能仓促编码,即使在这种情况下,分配职责也是必不可少。这门课程中,将持续学习分配职责的原则。
什么是分析与设计?
分析强调的是对问题和需求的调查研究,而不是解决方案。
“分析”一词含义广泛,最好加以限制,如需求分析或面向对象的分析。
设计强调的是满足需求的概念上的解决方案(在软件方面和硬件方面)而不是其具体实现。
最终设计可以实现,而实现(如代码)则表达了真实和完整的设计。
也可以概括为:做正确的事(分析)和正确地做事(设计)。
什么是面向对象分析与设计?

在面向对象分析过程中,强调的是在问题领域内发现和描述对象(或概念)。
例如航班信息中包含了飞机,航班和飞行员等概念。
而在一个电影售票系统中,概念就有电影院,电影,场次甚至电影院座位等概念。
在面向对象设计过程中,强调的是定义软件对象以及它们如何协作以实现需求。
示例流程(也是学习流程):
定义用例——定义领域模型——分配对象职责并绘制交互图——定义设计类图

转载于:https://www.cnblogs.com/alala713/p/6863882.html

系统分析与设计学习笔记(一)相关推荐

  1. 系统分析与设计学习笔记(二)用例模型

    用例Use Case Use Case(用例)是一个系统分析与设计中非常重要的概念,在使用整个软件开发过程中,Use Case处于一个中心地位.用例是对一组动作序列的抽象描述,系统执行这些动作序列,产 ...

  2. 系统分析与设计--学习笔记1

    一.简答题 1. 定义"软件工程":(1)将系统化.规范化.可度量的方法应用于软件的开发.运行与维护的过程中,即将工程化应用于软件中--采用工程的技术原理来开发和维护软件,把各种证 ...

  3. 系统分析与设计学习笔记(六)包图

    包图的简介 包图是UML中的一种重要的模型图,它利用包的形式,对UML中的类.对象.用例等进行封装,并以一定的规则进行排列, 形成一种层次结构.从直观意义上看,包图可以看做是一个项目中的文件夹的排列结 ...

  4. 模电设计学习笔记(二)——反相放大电路

    模电设计学习笔记(二) 反向放大电路设计 反向放大电路:输出信号与输入信号的相位相反并且电压或电流值成一定比例. 如下图就是一个简单的反向放大电路. 设计反向放大电路,同样的需要先清除需求,然后定量的 ...

  5. 数字IC设计学习笔记_Formality 形式验证

    数字IC设计学习笔记 Formality 形式验证 1. 基本特点 2. Reference Design 和Implementation Design 3. container 4. 读入共享技术库 ...

  6. Mockplus原型设计学习笔记(1)—— 图层的调节

    Mockplus原型设计学习笔记(1)-- 图层的调节 前言: 本节内容: 总结:

  7. 数字IC设计学习笔记_静态时序分析STA_ PrimeTime 基本概述

    数字IC设计学习笔记 PrimeTime 基本概述 1. PrimeTime 基本概述 2. 运行模式 1. PrimeTime 基本概述 PrimeTime,Synopsys公司提出的,针对于复杂的 ...

  8. 数字IC设计学习笔记_静态时序分析STA_伪路径False Paths

    数字IC设计学习笔记 半周期路径Half Cycle Path 1. 伪路径False Paths 2. 如何处理False Paths 1. 伪路径False Paths 在设计中,有些路径是不可能 ...

  9. 数字IC设计学习笔记_静态时序分析STA_ STA基本概念

    数字IC设计学习笔记 STA基本概念 1. STA基本概念 2. 时序弧概念 Timing Arc 3. 建立时间和保持时间概念 4. 时序路径概念Timing Path 5. 时钟域概念clock ...

  10. 多层高速PCB设计学习笔记(二)基本设计原则及EMC分析

    系列文章目录 多层高速PCB设计学习(一)初探基本知识(附单层设计补充) 多层高速PCB设计学习笔记(二)基本设计原则及EMC分析 多层高速PCB设计学习笔记(三) GND的种类及PCB中GND布线实 ...

最新文章

  1. Facebook新AI模型实现直接从非英语语言翻译到另一种非英语语言
  2. html5 规定input域,html5中关于input用法
  3. 二十五、Kaggle | 全球听众最多的50首歌曲
  4. edittext怎么输入默认内容覆盖_Linux Shell 输入与输出重定向
  5. 基于读取车载RFID标签自动开关车库门c#算法实现
  6. FastAdmin 极速后台管理框架(三周年)V1.0.0.20190410_beta
  7. UILabel简单高效实现圆角的方式
  8. 牛客多校8 - All-Star Game(线段树分治+并查集按秩合并的撤销操作)
  9. kotlin 初始化数组
  10. 使用Spring Security的多租户应用程序的无状态会话
  11. U-GAT-IT整体流程分析
  12. 关于大规模 push 系统的解决方案
  13. python运维都做些什么,Python运维工程师主要做什么?岗位职责!
  14. 智慧食堂管理系统打造健康食堂新理念
  15. <C++>初识STL —— 标准模板库
  16. containerd 拉取k8s.gcr.io/pause镜像i/o timeout
  17. iOS 局域网通讯 MultipeerConnectivity
  18. vue3.x +Cesium Cesium 鼠标交互,鼠标点击拾取对象等(五)
  19. 搭建PC网校的4大优势
  20. Django开发学习之Ajax(二)

热门文章

  1. 菜鸟译文(二)——使用Java泛型构造模板方法模式
  2. 分享OUTLOOK的定时发送功能
  3. 手动方式配置IPsec隧道
  4. Java多线程初学者指南(7):向线程传递数据的三种方法
  5. IBM大力抢占网络宣传阵地,拿下百度“SOA”关键字的第一位
  6. VPP:Bihash简介
  7. android camera API1调用camera HAL3流程学习总结
  8. 【多媒体封装格式详解】---MKV【1】
  9. graphql java sql_GraphQL标准的Java实现graphql-java概述
  10. C#网络编程----文件流