软件工程期末总结

软件工程期末总结

    • 软件危机出现的原因
    • 软件生命周期
      • 软件生命周期的概念
      • 生命周期的各个阶段
    • 软件开发模型
      • 极限编程
    • 可行性研究与项目开发计划
    • 需求分析
    • 结构化分析的方法
    • 结构化分析的图形工具
    • 软件设计的原则
    • 用户界面设计
    • 结构化软件设计
    • 面向对象
    • 面向对象建模

软件危机出现的原因

  1. 忽视软件开发前期的需求分析。
  2. 开发过程中缺乏统一的、规范化的方法论的指导。
  3. 文档资料不齐全或不准确。
  4. 忽视用户之间、开发组员之间的交流。
  5. 忽视测试的重要性。
  6. 不重视维护或由于上述原因造成维护工作困难。
  7. 从事软件开发的专业人员对这个产业认识不充分,缺乏经验。
  8. 没有完善的质量保证体系。

软件生命周期

软件生命周期的概念

软件的生命周期是指从设计该产品的构想开始,到软件的需求认定、软件设计、软件实现、产品测试与验收、投入使用的以及产品版本不断更新,到最终该产品被市场淘汰的全过程。

生命周期的各个阶段

  1. 可行性研究
  2. 需求分析
  3. 软件设计
  4. 编码
  5. 软件测试
  6. 软件维护 定义(可行性研究、需求分析)、开发、维护

软件开发模型

  1. 瀑布模型(不确定有没有划这个重点) 优点:过程模型简单,执行容易 缺点:无法适应变更。
  2. 快速还原模型
  3. 增量模型
    优点:
    (1)、将待开发的软件系统模块化,分批次提交软件产品,使用户可以及时了解软件项目的进展。
    (2)、以组件为单位进行开发,降低软件开发的风险。
    (3)、开发顺序灵活
    缺点:
    要求待开发的软件系统可以被模块化。
  4. 螺旋模型 将瀑布与快速结合起来,忽略了风险分析

极限编程

测试现行,驱动开发

可行性研究与项目开发计划

  1. 技术可行性
  2. 操作可行性
  3. 经济可行性

需求分析

步骤:

  1. 需求获取
  2. 分析建模
  3. 需求描述
  4. 需求验证

结构化分析的方法

核心是数据字典
1、功能建模
思想是用抽象模型的概念,按照软件内部数据传递和变换的关系,自顶向下逐层分解,直到找到满足功能要求的可实现的软件为止。
数据流图(简称DFD图)就是采用图形方式来表达系统的逻辑功能、数据在系统内部的逻辑流向和逻辑变换过程。
2、数据建模
3、行为建模
4、数据字典

在这里插入图片描述

结构化分析的图形工具

1、层次方框图
2、Warnier图(具体图形课本57,58页)

软件设计的原则

1、模块化(高内聚低耦合)
2、抽象
3、逐步求精
4、信息隐藏

用户界面设计

响应时间<3秒
可用性和域(没有百度,不确定是不是这个域)用性

结构化软件设计

解决“怎么做”的问题(需求分析:解决“做什么”)
概要设计阶段:要完成体系结构设计、数据设计及接口设计
详细设计阶段:要完成过程设计

面向对象

特点:封装、继承、多态
基本概念(重点看1,3)
1、面向对象:按人们认识客观世界的系统思维方式,采用基于对象的概念建立模型,模拟客观世界分析、设计、实现软件的办法。
2、对象:即指现实世界中各种各样的实体。
3、类:类是具有相似内部状态和运动规律的实体的合计。
面向对象的软件工程方法的优势
1、符合人类的思维习惯
2、稳定性好
3、可复用性好
4、可维护性好

面向对象建模

通常要建立3种模型:
数据结构(对象模型)、执行操作(动态模型)、数据值变化(功能模型)
建立对象模型:
1、划分主题
2、确定类与对象(确定对象和对象之间的关联)
3、确定属性
4、确定服务

注:需要画图的没有总结,看课本

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/316192.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

贵州贵阳二手房数据集可视化大屏全屏系统毕业设计应用

博主介绍&#xff1a;黄菊华老师《Vue.js入门与商城开发实战》《微信小程序商城开发》图书作者&#xff0c;CSDN博客专家&#xff0c;在线教育专家&#xff0c;CSDN钻石讲师&#xff1b;专注大学生毕业设计教育和辅导。 所有项目都配有从入门到精通的基础知识视频课程&#xff…

Python入门第09篇(conda虚拟环境)

前言 一开始默认安装了最新的Python3.12&#xff0c;搞的倒也顺手&#xff0c;看别人会有不兼容的问题&#xff0c;在我这开始没出现。不过坑总会踩到的&#xff0c;这不就出问题了。pip install一个包一直不行&#xff0c;问了下度娘&#xff0c;说由于这个包使用了一些新技术…

yolov5 损失函数

yolov5有三个损失函数分别是回归损失、置信度损失、分类损失 回归损失用的是CIOU loss 置信度和分类损失用的是BCE loss &#xff08;1&#xff09;对比L2损失&#xff0c;Iou和GIou具有尺度不变性&#xff0c;不会说输入的框子大loss就越大。 &#xff08;2&#xff09;对比…

OpenGL纹理转换谜团:纹理写入FRAMEBUFFER后的镜像现象

在OpenGL中&#xff0c;最近将一个 GL_TEXTURE_2D 纹理写入到 GL_FRAMEBUFFER &#xff0c;然后从GL_FRAMEBUFFER读取为GL_TEXTURE_2D纹理后&#xff0c;发现GL_TEXTURE_2D纹理变为了输入纹理的镜像纹理。效果图如下图所示。 本文将探讨这个问题的原因&#xff0c;并提出两种解…

Django(五)

员工管理系统 1.新建项目 2.创建app python manage.py startapp app012.1 注册app 3. 设计表结构&#xff08;django&#xff09; from django.db import modelsclass Department(models.Model):""" 部门表 """title models.CharField(verbos…

M3u8视频地址如何转为mp4视频

在当今数字化的时代&#xff0c;视频格式的转换已成为日常需求。M3u8格式的视频由于其分段的特性&#xff0c;常常给播放和编辑带来不便。而MP4格式则因其通用性和高质量而广受欢迎。那么&#xff0c;如何将M3u8视频地址转换为MP4格式呢&#xff1f;接下来&#xff0c;我们将为…

安装elasticsearch、kibana、IK分词器、扩展IK词典

安装elasticsearch、kibana、IK分词器、扩展IK词典 后面还会安装kibana&#xff0c;这个会提供可视化界面方面学习。 需要注意的是elasticsearch和kibana版本一定要一样&#xff01;&#xff01;&#xff01; 否则就像这样 elasticsearch 1、创建网络 因为我们还需要部署k…

论文笔记:CellSense: Human Mobility Recovery via Cellular Network Data Enhancement

1 intro 1.1 背景 1.1.1 蜂窝计费记录&#xff08;CBR&#xff09; 人类移动性在蜂窝网络上的研究近些年得到了显著关注&#xff0c;这主要是因为手机的高渗透率和收集手机数据的边际成本低蜂窝服务提供商收集蜂窝计费记录&#xff08;CBR&#xff09;用于计费目的&#xf…

创建x11vnc系统进程

为方便使用vnc&#xff0c;所以寻找到一个比较好用的vnc服务端那就是x11vnc&#xff0c;索性就创建了一个系统进程 一、环境 系统&#xff1a;银河麒麟v4-sp2-server 软件&#xff1a;x11vnc【linux下】、VNCviewer【win下】 二、安装x11vnc 1、挂载光盘源并修改apt源 mou…

【算法每日一练]-数论 (保姆级教程 篇2 )#行列式 #甜甜花研究 #约数个数 #模数 #数树 #盒子与球

目录 今日知识点&#xff1a; 辗转相减法化下三角求行列式 组合数动态规划打表 约数个数等于质因数的次方1的乘积 求一个模数 将n个不同的球放入r个不同的盒子&#xff1a;f[i][j]f[i-1][j-1]f[i-1][j]*j 行列式 甜甜花的研究 约数个数 模数 数树 盒子与球 行列…

第一个Qt程序----Hellow word!

从今天起就开始我们的第一个Qt小程序&#xff0c;点击New Project后点击右侧的Application后点击Qt Widgets Application。Qt Widgets 模块提供了一组UI元素用于创建经典的桌面风格的用户界面&#xff0c;Widgets是小部件的意思&#xff0c;也可以称为控件&#xff0c;因此Qt …

高效视频剪辑:批量修改视频尺寸的技巧与步骤

随着社交媒体的兴起&#xff0c;视频已然是分享和交流的重要方式。但有时&#xff0c;要的视频尺寸并不总是符合需求。这就要对视频进行剪辑和调整。现在探讨一种高效的方法&#xff0c;可以批量修改视频尺寸&#xff0c;简化工作流程。现在一起来看看云炫AI智剪如何批量修改视…