SE(软件工程)


软件工程的概念在导论这门课介绍的比较清楚。这个地方,我们回想这几个概念,有个自己的理解就好:

  • 理解软件工程
  • 为什么学软工?
  • 软工的知识体系
  • 若干重要概念
  • 软工的演变与趋势

OOAD


阅读书上第1章

几个课外的概念

  • software crisis:

    • is a term used in the early days of computing science for the difficulty of writing useful and efficient computer programs in the required time
  • Constructive Cost Model(COCOMO):
    • an algorithmic software cost estimation model developed by Barry W. Boehm. The model uses a basic regression formula with parameters that are derived from historical project data and current as well as future project characteristics.
  • 必须要了解software engineering body of knowledge中本课涉及的KA(knowledge areas)
    • software requirements, software design, software construction,software development process, software engineering models and methods
  • 必须了解三种开发生命周期的特点
    • Waterfall development: 试图在编程之前详细定义所有或大部分需求
    • 优势1: 定义了软件开发基本流程,创意阶段描述问题、市场、关键技术等,分析阶段调查问题与需求
    • 劣势1: 人力资源问题,知识技能需求不同,人员数量要求不同
    • 劣势2: 容错问题能力,再后期发现需求问题,工作量难接受
    • 劣势3: 前后依赖问题,前面需求模糊,后面工作无法开展
  • Iterative and incremental developmen:允许在不完整的工作、不完美的知识储备下开始
    • 优势1: 逐步趋向稳定
    • 优势2: 有效管理需求变化
    • 优势3: 持续集成
    • 优势4: 尽早接触整个系统
    • 优势5: 在线风险评估
  • Agile development:
  • 软件企业的评价指标Capabilty Maturity Model Integration(CMMI)中的5个等级
    • Initial: 无序,自发生产模式
    • Managed: 建立了基本的项目管理,制定了必要的过程纪律
    • Defined:将软件管理和工程过程文档化、标准化
    • Quantitatively Managed: 定量理解与控制, 定量预测性能
    • Optimizing:工程量化反馈,不断改进

书本基本概念

  • Analysis:

    • 对问题和需求的调查, 在问题域中发现关键的概念类, “概念”
  • Design
    • 满足需求的概念上的一个解决方案,将概念类映射到软件类,在问题域外发现实现所需要的类设计框架等, “协作”

UML, 一种可视化语言

  • 三种应用UML的方式:

    • 草图:普通的使用方式, agile modeling 强调的
    • 蓝图:逆向工程-根据源码生成UML类图、包图, 前向工程-根据UML图生成源码
    • 编程语言: 自动生成可执行代码
  • 三种应用UML的perspective
    • conceptual perspective:描述现实世界
    • Specification perspective(少用): 描述软件中的实现,但是不说明技术
    • implementation perspective: 特定技术(如C++)中的软件实现
  • 不同perspective 中的类的概念
    • conceptual class: 真实世界中的概念
    • software class:过程或方法中,表示软件实现的类
    • implementation class: 特定语言中的类

Iterative, evolutionary, and agile


阅读书上第2章

Unified Process

  • UP

    • the process is scalable, effective, improves productivity, Iterative and incremental approach 允许从不完整的工作和不完备的知识开始
  • UP workflow:定义了一系列要执行的活动:
    • Business Modeling:定义问题等,建立用力模型
    • Requirements Analysis: 定义领域模型等
    • Design: 建立设计模型,设计用例在物理上的实现
    • Implementation: 编码
    • Test and Integration
  • Use Case Driven
    • 意味着团队从编程和测试中收集发现的需求,应用use case
  • Architecture Centric
    • 软件系统的整体结构、结构元素、结构元素之间的协作

Iterative and Evolutionary

  • Agile Methods and Attitude

    • 优先级最高的是,通过早期和持续交付有价值的软件来满足客户
    • 欢迎变更需求,即使在开发后期
    • 等等等等
  • Agile Modeling
    • 采用敏捷方法不是意味着不建模
    • 建模的目的主要是为了理解和沟通,不是为了交文档
    • 不要对所有软件都建模
    • 所有模型都可能不准确,最终代码和设计会与模型有差异
  • Worker参与系统的开发,Actor是使用系统的人,
  • stakeholder包括了workers和actors
  • Artifacts(制品),包括用例模型、领域模型、源码等等
  • Activities 表示的是工作流中要完成的任务,包括:迭代计划、找到用例和actors、执行迭代测试

转载于:https://www.cnblogs.com/zengyh-1900/p/5514779.html

P1_C1-3:系统分析与设计概要相关推荐

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

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

  2. 信息系统分析与设计杨选辉_信息系统分析与设计

    spContent=本课程按照传统的结构化开发方法由浅入深.完整地介绍了信息系统的设计与开发的全过程:还着重介绍了当前最为流行的面向对象的信息系统分析与设计方法. 课程精选了开发过程中最基本.最实用的 ...

  3. 电子商务网站系统分析与设计

    电子商务网站系统分析与设计 第一节   目标的确定        网站目标:是指电子商务网站发展的定位和远景描述,是指导网站设计的宏观依据 1. 建设网站的目的和运力 1)      信息发布及塑造企 ...

  4. 舰队管理系统分析与设计-舰队管理系统分析与设计(Oracle),功能需求,数据字典,软件工程

    大型数据库技术项目 舰队管理系统分析与设计 舰队管理系统 1.项目背景介绍 中美海军实力对比分析: 中国海军虽然有了很大的进步,但是我们和世界先进的海军的实力有着很大差距,通过对比中美海军主战舰的数量 ...

  5. 信息系统分析与设计杨选辉_信息系统分析与设计(第2版)

    Contents第1章信息系统导论1 1.1信息1 1.1.1信息的概念1 1.1.2信息的特性2 1.1.3信息的分类3 1.1.4信息与决策3 1.2系统5 1.2.1系统的概念5 1.2.2系统 ...

  6. 腾讯Hermes设计概要——数据分析用的是列存储,词典文件前缀压缩,倒排文件递增id、变长压缩、依然是跳表-本质是lucene啊...

    转自:http://data.qq.com/article?id=817 三.Hermes设计概要 架构描述 系统核心进程均采用分散化设计,根据业务发展需求,可随意扩缩容机器; 周期性数据直接通过td ...

  7. UML系统分析与设计01-准备

    http://www.cnblogs.com/showjan/archive/2012/05/14/2499713.html UML,统一建模语言,在软件系统分析和设计中被广泛应用.作为一个初学者,我 ...

  8. 电影点评系统论文java_毕业设计(论文)-基于web的电影点评系统分析与设计.docx...

    毕业设计(论文) 论文题目 基于web的电影点评系统分析与设计 thesis Topic Movie reviews system analysis and design based on web A ...

  9. 预付卡管理信息系统_校园寝室桶装水配送管理信息系统分析和设计

    学校管理信息系统的课程设计 后来调整字体和间距的时候把word搞乱了,就只剩下pdf版本了,gg 我做的是校园寝室桶装水配送管理信息系统分析和设计 pdf:文件分享 管理信息系统课程设计 (2020 ...

  10. 系统分析与设计结对项目———Wordcount

    系统分析与设计结对项目---Wordcount 合作者:201631062513.201631062511 本次作业要求链接地址:https://edu.cnblogs.com/campus/xnsy ...

最新文章

  1. 实战:使用OpenCV+Python+dlib为人脸生成口罩
  2. 6月.CN域名注册量突破1200万个 增速环比加快
  3. [转] 使用模板自定义 WPF 控件
  4. java高并发下的数据安全
  5. [转载] FatFs模块功能配置选项
  6. deap实战_2017中国数学建模大赛_B题_第二题
  7. sharepoint2013保存当前输入的列表
  8. Android 数据库 LiteOrm 的使用
  9. Cadence元器件库
  10. JTAG Pin脚定义及要求
  11. 蓝桥杯Python题目(二)
  12. 如何打开高清语音VOLTE
  13. c语言 教学设计,C语言教案
  14. Formality Error/Debug
  15. 三大运营商5G套餐出炉:有什么区别呢?
  16. hive建表与mysql建表的区别
  17. 关于state和status
  18. 通过站点优化记录规划书
  19. 载谭 Binomial Sum:多项式复合、插值与泰勒展开
  20. 看了个文章,说7z压缩文件损坏后无法恢复。建议使用zip/rar格式

热门文章

  1. 专利检索常用的十八个网站
  2. C语言中负数在计算机内部的二进制表示方式(以补码表示负数、整数的范围及所占字节数)
  3. iBeacon技术解析
  4. 基于波动率模型对上证综指的建模与实证分析
  5. BEVFusion: A Simple and Robust LiDAR-CameraFusion Framework 细读
  6. bug严重等级与优先级
  7. 星际争霸2的移动机制-初探
  8. 资产证券化为什么需要区块链技术?专访趣链科技揭开“区块链+ABS”迷雾
  9. 同方知网软件_【技巧】方格网土方计算应用技巧,值得学习!
  10. IAR6.3创建MSP430工程