c语言程序设计案例教程(第2版)笔记(五)-软件开发基础知识
零散知识点:
- 软件的主要特征
- 软件是一种逻辑产品,而不是有型的物质;
- 软件需要设计、开发,但不是传统意义上的产品制造;
- 软件不会磨损,但软件需要维护,即:修改代码或增加模块;
- 虽然软件行业正在向基于组件的组装方式发展,但是大多数软件仍旧需要定制
- 软件的生命周期
- 软件的生命周期是指从某个软件的需求被提出并开始着手开发到这个软件被最终废弃的整个过程。通常在这个过程中,包括制定计划、需求分析、系统设计、程序编码、系统测试、系统运行及维护阶段。
- 软件开发过程模型
- 软件开发过程模型是指软件开发全过程、活动和任务的结构框架,它能够清晰、直观地表达软件开发的全过程,明确各阶段所需要完成的具体任务,并对开发过程起到指导和规范化作用。
- 软件开发方法学
- 程序设计风格
- 文档化;
- 具有明显的标识符命名;
- 恰当的程序注释;
- 良哈的程序书写风格;
- 缩进的形式;
- 清晰的语句结构;
- 表达式的书写要符合人们的习惯;
- ……
- 程序错误
- 语法错误;
- 运行错误;
- 逻辑错误
- 软件测试
- 软件测试的目的:用最小的代价发现尽可能多的错误。
- 软件测试的常用方法:黑盒测试和白盒测试。
- 黑盒测试:不考虑程序的内部结构和处理逻辑。黑盒测试是对程序接口进行测试,只检查程序是否满足功能要求,程序是否能够正确地接收输入数据并正确地输出结果,因此黑盒测试称为功能测试。
- 白盒测试:立足于程序的内部结构。通过选择恰当的测试用例,检验程序是否可以按照预定的逻辑线路正确地工作,因此白盒测试称为结构测试。
- 软件测试的主要阶段:单元测试、集成测试和确认测试。
本博客内容为原创,版权所有违者必究,转载请注明来源 http://www.cnblogs.com/sunshine-blog/
c语言程序设计案例教程(第2版)笔记(五)-软件开发基础知识的更多相关文章
- c语言程序设计案例教程(第2版)笔记(四)—指针、分配存储空间、文件
零散知识点: 指针类型:每个变量占用的首单元地址称为这个变量的存储地址. “&”为“取地址运算符”.格式:& 变量名.功能:返回指定变量的存储地址. “*”为“取内容运算”.格式:* ...
- c语言程序设计案例教程(第2版)笔记(二)—函数、递归
零散知识点 模块化:将一个问题分解成若干个子问题的过程成为模块化. 模块化的优点:不但可以将一个复杂的问题分解成几个相对简单的问题:还可以提高程序代码的重用性. 函数:函数是构成C程序的基本单位.函数 ...
- c语言程序设计案例教程(第2版)笔记(六)—字符串处理实例
字符串处理 功能描述:从键盘输入一个文本行后,为用户提供菜单选择,实现字符串一些操作——显示文本行.查找并替换指定子串.删除指定子串.统计指定子串数目. 实现代码: #include<stdio ...
- c语言程序设计案例教程(第2版)笔记(三)—变量、结构体
零散知识点: 变量 :C语言中,每个变量必须先定义后引用.所谓变量存在是指系统为这个变量分配一块存储空间,此时对变量的操作,就是对变量所对应的存储空间中存放的数据进行操作.人们将变量占据 ...
- c语言程序设计案例教程(第2版)笔记(一)—零散、输入输出、最小公倍数、选择排序、冒泡排序
零散知识点: 非格式化输入输出:getchar().putchar() 格式化输入输出 :scanf().printf() 字符串输入输出 :gets() 或 scanf().puts() 或 ...
- 【Python基础教程第2版】——第一讲:基础知识
1.长字符串:(用三引号如'''或者"""来引起来) >>> print """This is a very log st ...
- 【STM32H7教程】第25章 STM32H7的TCM,SRAM等五块内存基础知识
完整教程下载地址:http://www.armbbs.cn/forum.php?mod=viewthread&tid=86980 第25章 STM32H7的TCM,SRAM等五块内 ...
- 【RL-TCPnet网络教程】第29章 NTP网络时间协议基础知识
第29章 NTP网络时间协议基础知识 本章节为大家讲解NTP (Network Time Protocol,网络时间协议)和SNTP(简单网络时间协议,Simple Network Time ...
- 【STM32H7教程】第61章 STM32H7的MDMA基础知识和HAL库API
完整教程下载地址:http://www.armbbs.cn/forum.php?mod=viewthread&tid=86980 第61章 STM32H7的MDMA基础知识和HAL ...
随机推荐
- CDI Services *Decoretions *Intercepters * Scope * EL\(Sp EL) *Eventmodel
1.Decorators装饰器综述 拦截器是一种强大的方法在应用程序捕捉运行方法和解耦.拦截器可以拦截任何java类型的调用. 这使得拦截器适合解决事务管理,安全性,以及日记记录. 本质上说,拦截 ...
- 我的Android Studio 优化之路
改动keymap 改动经常使用的快捷键 代码补全(Eclipse: ALT+/) Android Studio中默认用的是Ctrl+Space, 这跟输入法切换冲突.找到Keymap->Main ...
- A Single Channel with Multiple Consumers RabbitMQ
http://stackoverflow.com/questions/30696351/a-single-channel-with-multiple-consumers-rabbitmq up vot ...
- AsyncSocket中tag參数的用处
tag參数是为了在回调方法中匹配发起调用的方法的,不会加在数据传输中. 调用write方法,等待接收消息.收到消息后,会回调didReadData的delegate方法, delegate方法中的ta ...
- MySQL基础笔记(一) SQL简介+数据类型
MySQL是一个关系型数据库管理系统(RDBMS),它是当前最流行的 RDBMS 之一.MySQL分为社区版和企业版,由于其体积小.速度快.总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发 ...
- 【转】如何查看Oracle客户端版本及位数(Windows系统)
一.方法一 查看oracle客户端版本:sqlplus -v 查看oracle客户端版本:sqlplus /nolog命令 Step 1:运行sqlplus /nolog命令,如果你服务器安装了多个客 ...
- IIS 配置 FTP 网站 H5 音频标签自定义样式修改以及添加播放控制事件
IIS 配置 FTP 网站 在 服务器管理器 的 Web服务器IIS 上安装 FTP 服务 在 IIS管理器 添加FTP网站 配置防火墙规则 说明:服务器环境是Windows Server 200 ...
- 解决echart在IE中使用时,在div中加入postion后图表不显示问题
<!-- 为ECharts准备一个具备大小(宽高)的Dom --> <div id="main" style="height:400px;width:1 ...
- sharpdevelop 调整代码字体显示大小
SharpDevelop中使用ctrl+鼠标滚轮可以调整代码的字体显示大小
- 2016/05/25 empty() 与 isset()的区别
对于初学php的人来说,empty()和和isset()用法的区别是很难搞清楚的,他们的用法的差别不仔细去琢磨的话确实很难弄清楚. 先说一下他们的共同点: 都可以判定一个变量是否为空: 都返回bool ...