【软件工程】习题一

目录

软件工程学,是用工程化的方法指导计算机软件**开发和维护(开发和管理)**的一门工程学科。

软件工程包括软件开发技术(过程、方法和工具)与软件工程管理两方面的内容。 软件工程管理是通过计划、组织和控制等一系列活动,合理地配置和使用各种资源,以达到既定目标的过程;软件开发技术通常把在软件生命周期全过程中使用的一整套技术方法的集合称为方法学(methodology),也称为范型(paradigm)。过程(框架,模型)是技术中最重要的一个要素 。

软件生命周期是软件产品从形成概念开始,经过开发、使用和维护,直到最后退役的全过程。

可分为三个时期和八个阶段。

三个时期:软件定义,软件开发,软件维护

八个阶段:问题定义,可行性研究,需求分析,概要设计,详细设计,编码与单元测试,综合测试,软件维护。

  • 瀑布模型:
    • 特点:
      简单,分阶段,阶段间存在因果关系,各个阶段后都有评审,允许反馈,不支持用户参与,要求预先确定需求。
    • 适用范围:
      需求易于完善定义且不易变更的软件系统
  • 快速原型模型
    • 特点:
      不要求需求预先完备定义,支持用户参与, 支持需求的渐进式完善和确认,能够适应用户需求的变化
    • 适用范围:
      需求复杂,难以确定,动态变化的软件系统
  • 增量模型
    • 特点:
      软件产品是被增量式地一块块开发的, 允许开发活动并行和重叠
    • 适用范围:
      技术风险较大、用户需求较为稳定的软件系统
  • 螺旋模型
    • 特点:
      结合瀑布模型、快速原型模型和迭代模 型的思想,并引进了风险分析活动
    • 适用范围:
      需求难以获取和确定、软件开发风险较大的软件系统

  • 稳定------较小的需求变化不会导致系统结构大变;
  • 复用面向对象技术通过封装、继承、聚合等手段,提供了各种不同层次的复用。

类(class)和对象(object)是两种以计算机为载体的计算机语言的合称。对象是对客观事物的抽象,类是对对象的抽象。类是一种抽象的数据类型。它们的关系是,对象是类的实例,类是对象的模板。对象是通过new classname产生的,用来调用类的方法,类的构造方法 。

相关推荐
c238569 小时前
Bug 猎手入门指南
c++·算法·bug
玖玥拾10 小时前
C++ 数据结构 八大基础排序算法专题
数据结构·c++·算法·排序算法
YYYing.11 小时前
【C++大型项目之高性能服务器框架 (七) 】Socket与ByteArray模块
服务器·c++·后端·框架·高性能·c/c++
从零开始的代码生活_11 小时前
C++ list 原理与实践:双向链表、迭代器与简化实现
开发语言·c++·后端·学习·算法·链表·list
charlie11451419111 小时前
现代C++工程实践——WeakPtr 第二关:核心骨架与控制块
开发语言·c++
2401_8697695912 小时前
内容9 string 1
c++
lisw0513 小时前
【计算机科学技术】算力是什么?为何用小时计?怎么使用?
人工智能·机器学习·软件工程
ComputerInBook13 小时前
C & C++ 中的关键字 volatile 之详解
c语言·c++·volatile·编译器优化
XH华13 小时前
C++语言第二章类和对象(下)
开发语言·c++
Dola_Zou13 小时前
以CmASIC重塑AI+边缘设备的安全与商业复利
人工智能·安全·软件工程·软件加密