首页 > 其他分享 >软件工程——学堂在线学习笔记二

软件工程——学堂在线学习笔记二

时间:2022-12-26 20:05:12浏览次数:37  
标签:软件开发 模型 笔记 学堂 软件工程 开发 敏捷 软件 过程


文章目录

  • ​​一. 软件开发过程​​
  • ​​1. 什么是过程​​
  • ​​2. 如何保证最终交付的是用户满意的产品​​
  • ​​(1). 怎么有效控制呢?​​
  • ​​(2). 过程的方法​​
  • ​​3. 软件过程包括哪些基本活动​​
  • ​​(1). 软件开发总体活动过程​​
  • ​​(2). 软件开发基本活动​​
  • ​​1. 问题定义​​
  • ​​2. 需求开发​​
  • ​​3. 软件设计​​
  • ​​4. 软件构造​​
  • ​​5. 软件测试​​
  • ​​6. 软件维护​​
  • ​​(3). 软件开发管理​​
  • ​​1. 软件项目管理​​
  • ​​2. 软件配置管理​​
  • ​​4. 软件过程模型​​
  • ​​(1). 常见的软件过程模型​​
  • ​​1. 瀑布模型​​
  • ​​2. 原型化模型​​
  • ​​3. 迭代式开发​​
  • ​​4. 可转换模型​​
  • ​​二. 敏捷开发过程​​
  • ​​1. 传统的瀑布模型​​
  • ​​2. 软件开发之道​​
  • ​​(1). 软件开发是否可以实现一个完整、详尽的计划?软件项目能否预先考虑到所有的风险?​​
  • ​​(2). 您是想获取一些更有价值的交付产品呢,还是只想完成进度表!!​​
  • ​​(3). 互联网产品的开发特点​​
  • ​​3. 敏捷开发方法​​
  • ​​(1). 定义​​
  • ​​(2). 敏捷方法:适应而非预测​​
  • ​​(3). 敏捷宣言​​
  • ​​(4). 敏捷开发方法​​
  • ​​4. 传统开发 vs. 敏捷开发​​

一. 软件开发过程

1. 什么是过程

过程是一组将输入转换为输出的相互关联或相互作用的活动

软件工程——学堂在线学习笔记二_软件过程

2. 如何保证最终交付的是用户满意的产品

在于对软件开发过程进行有效控制

(1). 怎么有效控制呢?

  1. 规定过程实现方法和步骤
  2. 对过程进行监控

软件工程——学堂在线学习笔记二_敏捷开发_02

(2). 过程的方法

软件工程——学堂在线学习笔记二_软件过程_03

3. 软件过程包括哪些基本活动

(1). 软件开发总体活动过程

软件工程——学堂在线学习笔记二_软件开发_04

(2). 软件开发基本活动

1. 问题定义

软件工程——学堂在线学习笔记二_软件开发_05

2. 需求开发

软件工程——学堂在线学习笔记二_软件开发_06

3. 软件设计

软件工程——学堂在线学习笔记二_软件过程_07

4. 软件构造

软件工程——学堂在线学习笔记二_软件过程_08

5. 软件测试

软件工程——学堂在线学习笔记二_软件过程_09

6. 软件维护

软件工程——学堂在线学习笔记二_软件开发_10

(3). 软件开发管理

1. 软件项目管理

软件工程——学堂在线学习笔记二_软件过程_11

2. 软件配置管理

软件工程——学堂在线学习笔记二_软件过程_12

4. 软件过程模型

软件过程为了获得高质量软件而进行的一系列任务,定义了完成各项任务的工作步骤,把任务、人员、工具密切的结合在一起

软件工程——学堂在线学习笔记二_敏捷开发_13

(1). 常见的软件过程模型

软件工程——学堂在线学习笔记二_软件开发_14

1. 瀑布模型

软件工程——学堂在线学习笔记二_软件开发_15


缺点:

只有到测试阶段才能真正的确认和验证软件的功能和性能

但是这个时候所有的代码都已经开发完成了,很难返回去纠正需求问题和设计的缺陷,确实对变化的适应。

目前很少在业界使用,各个阶段完全固定,增加工作量,只有在开发结束才能看见结果

2. 原型化模型

软件开发作为一个问题求解过程,应该具备什么特点?

  • 软件开发具有迭代性

    迅速建造可运行的模型,让用户和开发人员观察是否合适和恰当
3. 迭代式开发

主要内容

软件工程——学堂在线学习笔记二_软件过程_16


主要分类

软件工程——学堂在线学习笔记二_软件开发_17


适用于:网络公开网课网站

4. 可转换模型

软件工程——学堂在线学习笔记二_软件开发_18


适用:汽车防抱死系统

二. 敏捷开发过程

1. 传统的瀑布模型

现在已经被敏捷开发所取代

软件工程——学堂在线学习笔记二_软件开发_19

2. 软件开发之道

(1). 软件开发是否可以实现一个完整、详尽的计划?软件项目能否预先考虑到所有的风险?

软件工程——学堂在线学习笔记二_软件开发_20

(2). 您是想获取一些更有价值的交付产品呢,还是只想完成进度表!!

软件工程——学堂在线学习笔记二_软件过程_21

(3). 互联网产品的开发特点

  • 快鱼吃慢鱼
  • 版本发布成本很低
  • 追求创新
  • 需要快速响应用户的变化
  • 需求不确定性高
  • 关注用户行为

3. 敏捷开发方法

(1). 定义

敏捷开发是一种基于更紧的团队协作、能够有效应对快速变化需求、快速交付高质量软件的迭代和增量的新型软件开发方法。

软件工程——学堂在线学习笔记二_软件开发_22

(2). 敏捷方法:适应而非预测

软件工程——学堂在线学习笔记二_软件开发_23

(3). 敏捷宣言

软件工程——学堂在线学习笔记二_软件过程_24

(4). 敏捷开发方法

软件工程——学堂在线学习笔记二_软件开发_25


软件工程——学堂在线学习笔记二_软件开发_26

4. 传统开发 vs. 敏捷开发

软件工程——学堂在线学习笔记二_软件过程_27


软件工程——学堂在线学习笔记二_软件过程_28




标签:软件开发,模型,笔记,学堂,软件工程,开发,敏捷,软件,过程
From: https://blog.51cto.com/u_15923298/5970751

相关文章

  • 软件工程——学堂在线学习笔记四
    文章目录​​一.需求工程师​​​​1.优秀需求⼯程师的目标​​​​二.需求定义​​​​1.概述​​​​2.需求难度在?​​​​3.需求的内容​​​​4.将问题与解决⽅......
  • 软件工程——学堂在线学习笔记三
    文章目录​​一、团队开发管理​​​​1.团队组织与管理​​​​(1).人员的选择​​​​(2).团队的概念​​​​(3).开发团队组织模式​​​​2.项目沟通管理​​​​(......
  • 声纹识别技术初步了解(阅读笔记)
    目录1.声纹识别分类1.1按任务分类1.1.1声纹验证(speakerverification)1.1.2声纹辨认(speakeridentification或speakermatching)1.2按文本内容分类1.2.1文本相关1.2.......
  • UE4学习笔记27——【UI】3DUI的交互和显示
    P69.3DUI的交互和显示P69 (新建一个包含第一人称射击模板的项目)新建一个文件夹(用于存放自己新建的文件)(我重命名为了“WJJ1221P69”),在此文件夹中,右键“用户界面——......
  • 微积分 II 笔记
    5.1定积分的概念定义定积分是积分的一种,是函数\(f(x)\)在区间\([a,b]\)上积分和的极限若\(f(x)\)在\([a,b]\)有界,在\([a,b]\)上任意插入\(n\)个分点将......
  • 一些排序算法的学习笔记
    大纲:冒泡排序插入排序选择排序快速排序归并排序堆排序一、冒泡排序简述:把一个数组看成一个装水的桶,数组中的每个元素的值代表其质量。一开始这些元素被我用箩筐......
  • Android笔记--视图显示
    视图显示视图的宽高设置方式一:在.xml文件中设置视图的宽和高通过调用android:layout_width设置视图的宽通过调用android:layout_height设置视图的高宽和高的取值主要......
  • 软件工程——软件测试(黑盒测试、白盒测试、测试分析报告)
    经过前面软件测编码阶段,是不是我们就可以把软件发布出去供用户使用了呢?不是的,为了确保软件不会出现不必要的差错,还需要经过重重测试的。目录​​软件测试的目的​​​​软件......
  • 软件工程——文档篇
    何为软件工程?就是客户和开发人员提前定好相关需求,并形成文字材料,开发人员通过这个需求来开发软件,为了软件能够更适用,并进行相关的维护测试等方面的一个过程。简单来说就是开......
  • CTC算法学习笔记
    CTC算法在OCR或语音识别任务中,经常出现不知道从哪里开始对齐比如对​​apple​​,OCR出aaappppllle这种东西如果只是简单的去重的话就变成了​​aple​​ConnectionistT......