没有合适的资源?快使用搜索试试~ 我知道了~
首页2021软件工程入门:定义、危机与生命周期详解
本资源主要探讨的是"第一讲:软件工程概述"的内容,涵盖了软件工程的基础概念和关键环节。首先,软件被定义为计算机系统中的一个重要组成部分,由程序、数据和相关文档构成,它们共同确保了系统的功能和性能。程序是执行特定任务的指令序列,数据则是支持程序运行的信息结构,而文档则记录了开发、维护和使用软件的所有必要信息。 接着,讨论了软件工程面临的挑战,即所谓的"软件危机",它涉及到能否有效地应对不断增长的软件需求,以及如何维护和更新庞大的软件系统。软件工程的定义强调了运用现代科技知识来设计、构建和管理软件,包括IEEE和Fritz Bauer的观点,即通过系统的方法和工程化的原则来开发、运行和维护可靠的软件。 软件工程的核心要素包括方法、工具和过程,方法提供了开发策略,工具提供了自动化或半自动化的开发环境,而过程则确保整个项目的有序进行。软件生命周期是软件从构思到废弃的全过程中经历的六个阶段:制定方案(确定目标、需求分析、资源评估和实施方案)、需求分析(明确用户需求并转化为文档)、设计(概要设计和详细设计)、实现编码(编写源程序)、测试(验证软件功能)以及运行维护(确保软件持续有效运行)。 在软件生命周期的各个阶段,如需求分析阶段,需要细致地理解用户需求,形成系统逻辑模型和相关文档;设计阶段则涉及将需求转化为可执行的模块结构和详细的实现步骤;实现编码阶段则是将设计转化为可执行的程序代码。每一步都需经过严格的评审,以保证软件质量。 这讲内容为学习者提供了软件工程的入门知识,帮助理解和掌握软件开发的全过程,并强调了在面对软件危机时采用科学方法和工具的重要性。通过理解和实践这些概念,开发者能够更好地规划、设计和维护高质量的软件产品。
资源详情
资源推荐
本文为网上收集整理,如需要该文档得朋友,欢迎下载使用
精品文档,word 文档
系统的一个组成局部,这样有利于建成最终系统。
系统的一个组成局部,这样有利于建成最终系统。
原型建立技术:
•
•
可执行规格说明
可执行规格说明
•
•
基于脚本
基于脚本
(
(
scenario)
scenario)
的设计
的设计
•
•
自动程序设计
自动程序设计
•
•
专用语言
专用语言
•
•
可复用
可复用
(
(
reusable)
reusable)
的软件
的软件
•
•
简化假设
简化假设
原型建立技术:
可执行规格说明
可执行规格说明
•
•
可执行规格说明是用于需求规格说明的一种自动化技术
可执行规格说明是用于需求规格说明的一种自动化技术
。
。
使用这种方法
使用这种方法
,
,
人们可以直接观
人们可以直接观
察他们用语言规定的任何系统性行为。包括
察他们用语言规定的任何系统性行为。包括
•
代数规格说明
• 有限状态模型
• 可执行的数据流图
基于脚本
基于脚本
(
(
scenario)
scenario)
的设计
的设计
•
•
脚本是指用户界面的原型
脚本是指用户界面的原型
。
。
一个脚本用以模拟在系统运行期间用户经历的事件
一个脚本用以模拟在系统运行期间用户经历的事件
。
。
它提供了
它提供了
输入─处理─输出的屏幕格式和有关对话的模型
输入─处理─输出的屏幕格式和有关对话的模型
。
。
因此
因此
,
,
软件开发者能够给用户显示系统
软件开发者能够给用户显示系统
的逼真的视图,使用户得以判断是否符合他的意图。
的逼真的视图,使用户得以判断是否符合他的意图。
•
•
可在任一脚本中使用一套可复用的软件模块,以表达某一方面的要求。
可在任一脚本中使用一套可复用的软件模块,以表达某一方面的要求。
自动程序设计
自动程序设计
•
•
自动程序设计是指在程序自动生成环境的支持下
自动程序设计是指在程序自动生成环境的支持下
,
,
利用计算机实现软件的开发
利用计算机实现软件的开发
。
。
它可以自
它可以自
动地或半自动地把用户的非过程式问题规格说明转换为某种高级语言程序。
动地或半自动地把用户的非过程式问题规格说明转换为某种高级语言程序。
专用语言
专用语言
•
•
专用语言是应用领域的模型化语言
专用语言是应用领域的模型化语言
。
。
在原型开发中使用专用语言
在原型开发中使用专用语言
,
,
可方便用户和软件开发
可方便用户和软件开发
者在方案中的系统特性方面的交流。
者在方案中的系统特性方面的交流。
可复用
可复用
(
(
reusable)
reusable)
的软件
的软件
•
•
利用可复用的模块,做出适当的组合,就可得到快速构造的原型系统。
利用可复用的模块,做出适当的组合,就可得到快速构造的原型系统。
•
•
为了快速地构造原型,
为了快速地构造原型,
这些模块首先必须有简单而清晰的界面
这些模块首先必须有简单而清晰的界面
;
;
其次它们应当尽量不依赖
其次它们应当尽量不依赖
其它的模块或数据结构;第三,它们应具有一些通用的功能。
其它的模块或数据结构;第三,它们应具有一些通用的功能。
简化假设
简化假设
•
•
简化假设是在开发过程中使设计者迅速得到一个简化的系统所做的假设
简化假设是在开发过程中使设计者迅速得到一个简化的系统所做的假设
。
。
尽管这些假设可
尽管这些假设可
能实际上并不能成立
能实际上并不能成立
,
,
但它们在原型开发过程中可以使开发者的注意力集中在一些主要的
但它们在原型开发过程中可以使开发者的注意力集中在一些主要的
方面。
方面。
•
•
在修改一个文件时,可以假设这个文件确实存在
在修改一个文件时,可以假设这个文件确实存在
•
•
在存取文件时,待存取的记录总是存在
在存取文件时,待存取的记录总是存在
•
•
一旦方案中的系统满足用户所有的要求,就可以撤消这些假设,并追加一些细节。
一旦方案中的系统满足用户所有的要求,就可以撤消这些假设,并追加一些细节。
•
•
数据及数据库需求
数据及数据库需求
•
•
在数据词典中
在数据词典中
,
,
强调对数据存储结构的逻辑设计
强调对数据存储结构的逻辑设计
,
,
并用数据结构表达数据项之间的逻辑关
并用数据结构表达数据项之间的逻辑关
系。
系。
•
•
但任何一个软件系统都可能有成千上万个数据项
但任何一个软件系统都可能有成千上万个数据项
,
,
仅仅描述这些数据项是不够的
仅仅描述这些数据项是不够的
,
,
更重要
更重要
的是如何把它们以最优的方式组织起来,以满足系统对数据的要求。
的是如何把它们以最优的方式组织起来,以满足系统对数据的要求。
•
•
在软件系统中需要处理的数据是现实世界中存在的事物及其关联的反映
在软件系统中需要处理的数据是现实世界中存在的事物及其关联的反映
剩余27页未读,继续阅读
智慧安全方案
- 粉丝: 3782
- 资源: 59万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 51单片机驱动DS1302时钟与LCD1602液晶屏万年历设计
- React 0.14.6版本源码分析与组件实践
- ChatGPT技术解读与应用分析白皮书
- 米-10直升机3D模型图纸下载-3DM格式
- Tsd Music Box v3.02:全面技术项目源码资源包
- 图像隐写技术:小波变换与SVD数字水印的Matlab实现
- PHP图片上传类源码教程及资源下载
- 掌握图像压缩技术:Matlab实现奇异值分解SVD
- Matlab万用表识别数字仪表教程及源码分享
- 三栏科技博客WordPress模板及丰富技术项目源码资源下载
- 【Matlab】图像隐写技术的改进LSB方法源码教程
- 响应式网站模板系列:右侧多级滑动式HTML5模板
- POCS算法超分辨率图像重建Matlab源码教程
- 基于Proteus的51单片机PWM波频率与占空比调整
- 易捷域名查询系统源码分享与学习交流平台
- 图像隐写术:Matlab实现SVD数字水印技术及其源码
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功