软件工程这本书已经看完了,紧接着啃软件测试技术指南这本书啦。
1.1软件概念
软件(Soft ware)是一系列按照特定顺序组织的计算机时刻和指令的集合,软件被划分为系统软件,应用软件和介于这两者之间的中间件,在国标中对软件的定义是与计算机系统操作有关的计算机程序、规程、规则以及可能有的文件、文档及数据等。简单地说软件就是程序加文档的集合体。
1.1.1软件发展史
软件的发展大致 经历了如下5个阶段
第一阶段(1946年-1953年)
该阶段属于汇编时代,软件是用机器语言编写的,机器语言是内置在计算机电路中的指令,由0和1组成(二进制数字),由于程序最终在计算机上执行时采用的都是机器语言,所以需要用一种称之为汇编器的翻译程序,把用汇编语言编写的程序翻译成机器代码,编写汇编器程序的程序员简化了程序设计,是最初的系统程序员。
第二阶段(1954年-1964年)
该阶段软件开发使用高级程序设计语言简称高级语言,高级语言的指令形式类似于自然语言和数学语言,不仅容易学习,方便编程也提高了程序的可读性,外国人发明了JBSIC(Beginner’s AII-Purpose Symmbolic Instruction Code)语言,高级语言的催生了在许多太计算机上运行同一个程序的模式,每种高级语言都配套的翻译程序(称为编译器)编译器可以把高级语言编写的语句翻译成等价的机器指令。
第三阶段(1965年-1970年)
该阶段处于结构化程序设计理论,由于用集成电路取代了晶体管处理器的运算速度得到了大幅度的提高,因此需要编写一种程序,使所有计算机资源处于计算机的控制中,这种程序就是操作系统为解决多用户,多应用共享数据的需求,使数据为尽可能多的应用程序服务,出现了数据库技术以及统一管理数据的软件系统-数据库管理系统DBMS(Database Managment System)1968年北大西洋公约组织在德国召开国际会议,讨论软件危机问题,在这个会议上正式提出并使用了“软件工程”这个名词。
4、第四阶段(1971年-1989年)
该阶段属于结构化程序时代,pascal 语言和moduca-2语言都是采用结构化程序设计规则制定BASIC这种为第三代计算机设计的语言被升级为具有结构化的版本,1973年美国人设计出了C语言,此外IBM PC开发的PC-Dos和兼容机开发的MS-DOS都成了微型计算机的标准操作系统,Macintosh机的操作系统引入了鼠标的概念和点击式的图形界面,彻底改变了人机交互的方式。
20世纪80年代,随着微电子和数字化、声像技术的发展,在计算机应用程序中开始使用图形、声音等多媒体信息,出现了多媒体计算机,这个时期出现了多用途的应用程序,典型的应用程序是电子制表-软件、文字处理软件和数据库管理软件。
5、第五阶段(1990年-至今)
该阶段软件中由三个著名事件,在计算机软件业具有主导地位的Microsoft公司的举起,模型对象的程序设计方法的出现以及万维 (World、wide.web)的普及。
(1)在这个时期的Microsoft公司的Windows操作系统在PC机市场上占有显著优势,Word成了最常用的文字处理软件,20世纪90年代中期,Microsoft公司将Word、Excel、Access和其他应用程序绑定在一个程序包中称为办公自动化软件。
(2)面向对象的程序设计方法最早在20世纪70年代开始使用的,主要是用在Smalltalk语言中,20世纪90年代面向对象程序设计逐步代替了结构化程序设计,面向对象程序设计尤其使用于规模较大、具有高度交互性-反映现实世界中动态内容的应用程序,其中Java、C++、C#等都是面向对象程序设计语言。
(3)1990年英国人创建了一个全球Internte文档中心,并创建了一套技术规则和创建格式化文档的HTML语言。以及能让用户访问全世界站点上信息的浏览器,此时的浏览器还很不成熟,只能显示文本。
软件体系结构从集中式的主机模式转变为分布式的客户端/服务器模式(C/S Cilent/Server的缩写)或浏览器/服务器模式(B/S Brower/server 的缩写)专家系统和人工智能软件从实验室走出来进入了实际应用、完善的系统软件。
1.1.2软件生命周期
生命周期(Life Cycle)简单说就是指一个对象的“生老病死”对一个软件产品或软件系统而言也需要经历同样的阶段,一般称为软件生命周期。软件生命周期大致分为6个阶段,如图1-1所示
1、项目计划
主要确定软件开发的总体目标,提供市场调研并给出功能、性能、接口等方面的设想,以及项目的可行性分析、同时对项目开发使用的资源、成本、进度做出评估,指定项目实施的计划(项目挤一级计划)
2、需求分析阶段
需求俗称软件的主体,所以需求分析阶段作为一个非常重用的阶段由需求分析人员和用户共同对软件需求实现的各个功能进行详细的分析并给予确切的描述,并编写软件需求说明书(Software Requirements Specification 简称SRS)
3、软件设计阶段
该阶段俗称软件的核心,主要是由系统分析组(架构师和系统分析人员)根据需求分析的结果,对整个软件系统构件的设计、编写概要设计说明书(High Level Pesign 简称HLD)接下来由数据库设计人员和开发人员根据需求说明书和概要设计说明书进行系统数据库设计以及编写详细设计说明书(Low Level Design 简称LLD)
4、程序编码阶段
把软件设计的结果转换为计算机运行的程序代码,使用RDBMS工具建立数据库,程序编码必须符合标准和编码规范以保证程序的可读性、易维护性、保证程序运行的效率。
5、软件测试阶段
此阶段主要是测试人员来检查软件是否符合客户的要求,是否达到质量的要求,在软件设计完成后、项目开发人员构件测试版本、以便测试团队进行测试、整个过程分为:单元测试、集成测试、系统测试、验收测试。
6、运行与维护阶段
此阶段是软件生命周期最长的阶段,在正式投入使用后、可能有很多原因,需要对软件进行修改、如软件错误系统升级、增加功能、提供性能。
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!