电子科技大学软件工程期末复习笔记(一):概论

目录

前言

重点一览

软件的定义

软件的特点

软件的双重作用

软件危机

软件工程的概念

软件工程的目标与原则

软件工程的一些误解 

本章小结 


前言

2022年底疫情彻底放开,开始自愿返乡,大面积传染开始,在校生几乎无一幸免。因为自愿返乡后只能等到下学期再参加统一考试,所以留校生都在想先考试再回去,因为学校准备了两次考试,由于不想拖延嘛,很多同学就选择先留校考试。但是疫情放开以后病毒蔓延的实在太快,留校准备考试的学生无一幸免,几乎都感染了病毒,然而就在阳康之后,两三天以后就要考试的时候,学校突然发文件说期末考试全部取消,延迟到下学期考试!我就是留校考试的人之一,感觉到非常的亏。如果回家再阳的话有可能还不会那么难受,至少有人照顾。

说了这么多,还是要面对现实准备考试呀!我也是本寒假才开始写博客,也来写一些复习笔记供自己参阅,也供以后的学弟学妹参考。

我的复习资料是王玉林老师的PPT和复习大纲,下面开始正文。


重点一览


软件的定义

软件由程序、数据和文档组成。

程序应该不陌生,就是编程一系列指令使能够实现预期的功能,这是软件的基础;

数据是程序的数据结构和信息,不是所有程序都需要数据库,但一定都有数据结构;

文档类似开发文档,包括软件的设计、开发、功能、维护等等。 

上图是软件的结构示意图,可执行部分只有程序,而数据和文档都是支撑软件完整性的作用。 


软件的特点

软件特点如下所示:

软件是逻辑的,而不是物理的。

软件是逻辑的而不是物理的,说明软件的复杂性、难以描述性、不可见性、变化性。 

上图下方的九点内容正好印证了上述四点性质。


软件的双重作用

软件是一种产品,也是开发其他软件产品的工具。

我们熟知的软件就是供人们解决问题的工具/产品。然而我们编写软件何尝不需要工具呢,也需要某一些产品来帮助我们开发软件,比如Jetbrains旗下的许多编译软件、Visual Studio、Dev C++等等,这就是开发其他软件产品的工具。还是很好理解的。 

上图是软件一般可以展现的功能。 


软件危机

在计算机软件的开发和维护过程中所遇到的一系列严重问题。

严重问题:多指效率和质量上的问题。 

可以总结为: 周期长、成本高、质量差、维护难。


软件工程的概念

软件工程的定义

IEEE计算机协会将软件工程定义为:(1)将系统化的、科学化的、可量化的方法应用于软件的开发、运行和维护,即针对软件的工程应用。(2)对上述应用方法的研究


软件工程的目标与原则

软件工程的目标

软件工程的目标是在给定的时间和预算内,按照用户的需求,开发易修改、高效、可靠、可维护、适应力强、可移动、可重用的软件 

软件工程的原则

B.W.Boehm总结了开发软件的经验,提出了软件工程的7条基本原理。这7条原理被认为是确保软件产品质量和开发效率的原理的最小集合,又是相互独立、缺一不可、相当完备的最小集合:

  • 使用阶段性生命周期计划的管理
  • 进行连续的验证
  • 保证严格的产品控制
  • 使用现代编程工具/工程实践
  • 保持清晰的责任分配
  • 用更好更少的人
  • 保持过程改进

软件工程的一些误解 

分为三个人群:管理者、客户、开发者

管理者的误区和正解:

M代表误解,R代表现实
-M1:如果我们项目进度落后了,可以加入更多的程序员来赶进度
-R1:软件开发的机制和手工作业不一样。在一个延迟了的软件项目中加入新的开发人员只会让它延迟更多
-M2:如果我们将软件项目外包给第三方,我们就轻松了,让那个公司去完成它吧
-R2:如果组织管理方不懂得如何从内部管理和控制软件项目,即使将项目外包也无济于事

客户的误区和正解:

由于用户不正确的期望,最后导致对开发人员的不满
-M1:对目标的一般陈述就足以开始编程,我们可以今后再补充细节
-R1:前期糟糕的项目需求定义,是导致软件失败的主要原因。项目需求的确在不断变化,但变化所产生的影响是根据变化提出的时间不同而不同的

开发者的误区和正解: 

软件从业者积累了50年的编程文化。在早期的软件开发中,编程被视为一种艺术形式
-M1:一旦我们编程完毕并成功运行,我们的工作就结束了
-R1:“越早开始写代码,我们就会花费越长的时间去完成它”。工业数据显示,软件开发60%-80%的精力将耗费在软件首次提交给用户以后
-M2:当我的程序运行之前,我没有办法评估它的质量

-R2:一个最有效的软件质量保证机制应当在项目的正式开始启动时——可以通过技术报告体现
-M3:唯─可交付的工作成果是一个成功运行的项目程序

-R3:一个可运行的程序只是软件结构的一部分,它还包含了许多其它因素(数据、文档...)
-M4:软件工程将会让我们去创建大量不必要的文档,并且总是使我们的进度放慢。软件工程仅仅是文档而已
-R4:软件工程并不是创建文档,而是创建质量。更好的质量减少返工的概率。更少返工会让项目更早交付。所有的文档都是提高团队沟通和质量所必须的


本章小结 

-软件工程的目标是提供一个系统框架,用于建立高质量的软件
-软件: 随着解决特定问题和行业自身的信息分析工具变化而演进
-早期的“编程”文化和历史造成了一系列的问题,这些问题延续至今
-需要学习如何建立高品质和大规模的软件

第一章没有什么特别重点的地方,眼熟这些性质,能够分辨误区就好。 

  • 36
    点赞
  • 54
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 10
    评论
评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Vec_Kun

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值