首页 > 知识点讲解
       软件开发的基本常识
知识路径: > 计算机系统基础知识 > 软件基础知识 > 
被考次数:15次     被考频率:高频率     总体答错率:40%     知识难度系数:     
相关知识点:23个      
        软件是计算机系统中的重要组成部分,它包括程序、数据及相关文档。软件工程是指应用计算机科学、数学及管理科学等原理,以工程化的原则和方法来解决软件问题的工程,其目的是提高软件生产率、提高软件质量、降低软件成本。软件工程涉及到软件开发、维护、管理等多方面的原理、方法、工具与环境方面的知识。
               程序设计语言
               程序设计语言(Programming Language)是用于编写计算机程序的语言。语言的基础是一组记号和一组规则,根据规则由记号构成的记号串的总体就是语言。在程序设计语言中,这些记号串就是程序。程序设计语言包含三个方面,即语法、语义和语用。语法表示程序的结构或形式,即表示构成程序的各个记号之间的组合规则,但不涉及这些记号的特定含义,也不涉及使用者。语义表示程序的含义,即表示按照各种方法所表示的各个记号的特定含义,但也不涉及使用者。语用表示程序与使用的关系。
               程序设计语言的基本成分有:数据成分,用于描述程序所涉及的数据;运算成分,用以描述程序中所包含的运算;控制成分,用以描述程序中所包含的控制;传输成分,用以表达程序中数据的传输。
               程序设计语言按照语言级别可以分为低级语言和高级语言。低级语言有机器语言和汇编语言。低级语言与特定的机器有关、功效高,但使用复杂、繁琐、费时、易出差错。机器语言是表示成数码形式的机器基本指令集,或者是操作码经过符号化的基本指令集。汇编语言是机器语言中地址部分符号化的结果,或进一步包括宏构造。高级语言的表示方法要比低级语言更接近于待解问题的表示方法,其特点是在一定程度上与具体机器无关,易学、易用、易维护。常见的有Java、C、C++、PHP、Python和Delphi等。这类语言与人们使用的自然语言比较接近,大大提高了程序设计的效率。
               编译程序和解释程序
               尽管可以借助高级语言与计算机进行交互,但计算机只能理解并执行由0、1序列构成的机器语言,因此高级程序语言需要翻译,担负翻译任务的程序称为“语言处理程序”。语言处理程序可分为汇编程序、解释程序和编译程序。
               源程序是指用某种高级语言或汇编语言编写的程序,它是不能直接在计算机上执行的。若采用汇编语言编写的源程序,则需要汇编程序将其翻译成目标程序后再执行;若采用某种高级语言编写的源程序,则需要相对应的解释程序或编译程序将其翻译后再执行。
               解释程序也称为解释器,它可以直接解释执行源程序,或者将源程序翻译成某种中间表示形式后再加以执行。编译程序(编译器)则首先将源程序翻译成目标语言程序,然后在计算机上运行目标程序。这两种语言处理程序的根本区别是:解释器翻译源程序时不产生独立的目标程序,而编译器则需将源程序翻译成独立的目标程序。因此在编译方式下,机器上运行的是与源程序等价的目标程序,源程序和编译程序都不再参与目标程序的执行过程;而在解释方式下,解释程序和源程序(或其某种等价表示)要参与到程序的运行过程中,运行程序的控制权在解释程序上。
               软件生存周期
               一个软件产品或软件系统要经历孕育、诞生、成长、成熟、衰亡的多个阶段,一般称为软件生存周期(Life Cycle)。把上述过程的基本活动进一步展开,可以得到软件生存周期的6个工作阶段,即可行性分析和项目开发计划、需求分析、软件设计、编码、测试和维护活动。
               (1)可行性分析和项目开发计划。该阶段主要确定软件的开发目标及其可行性。必须要考虑“用户要解决什么问题,该问题有可行的解决办法吗?”的问题。若有解决问题的办法,则要考虑“需要多少资源?需要多少时间?需要多少费用?”的问题。因此,要进行问题定义、可行性分析,制定项目开发计划。
               (2)需求分析。该阶段的任务是准确地确定软件系统必须做什么,确定软件系统必须具备哪些功能,而不是如何具体地解决问题。该阶段的参加人员有用户、项目负责人和系统分析师,产生的文档为需求规格说明书。
               (3)软件设计。软件设计是软件工程的技术核心,其任务是确定如何实现软件系统。软件设计可以分为概要设计和详细设计。概要设计的任务是模块分解,确定软件的结构,模块的功能和模块间的接口,以及全局数据结构的设计。详细设计的任务是设计每个模块的实现细节和局部数据结构。概要设计阶段参加的人员有系统分析师和软件设计师,详细设计阶段参加的人员有软件设计师和程序员。软件设计阶段产生的文档为设计规格说明书,它也可以分为概要设计说明书、详细设计说明书和数据库设计说明书。
               (4)编码。编码的任务是用某种程序语言为每个模块编写程序。编码阶段参加的人员有软件设计师和程序员,产生的文档主要是源程序清单、模块开发卷宗等。
               (5)测试。测试是保证软件质量的重要手段,主要方式是在设计测试用例的基础上检验软件的各个组成部分。测试阶段产生的文档有软件测试计划、测试用例和软件测试报告。
               (6)维护。已交付的软件投入正式使用,便进入维护阶段。该阶段可能持续若干年甚至几十年。维护阶段的关键任务是通过各种必要的维护活动使系统持久地满足用户的需要。软件在运行中可能由于多方面的原因需要进行修改,其原因可能有:运行中发现了软件错误需要修正;为适应变化了的软件工作环境进行变更;为了增强软件的功能进行变更;为后续的软件维护活动预先做准备等。
               软件工具与软件开发环境
               软件工具是指用来辅助软件开发、运行、维护、管理和支持等过程中的活动的软件。早期的软件工具主要用来辅助程序员编程,如编辑程序、编译程序和排错程序等。在软件工程概念提出以后,出现了各种开发模型和开发方法,并且软件管理也倍受人们的重视。与此同时,出现了一批软件工具来辅助软件工程的实施,这些软件工具涉及到软件开发、维护、管理过程中的各项活动,并辅助这些活动高效、高质量地进行。因此,软件工具通常也称为CASE工具。
               软件开发环境是指支持软件产品开发的软件系统,它由软件工具集和环境集成机制构成。软件工具集应包括支持软件开发相关过程、活动、任务的软件工具,以对软件开发提供全面的支持。环境集成机制为工具集成和软件开发、维护和管理提供统一的支持,它通常包括数据集成、控制集成和界面集成。
 
 相关知识点:
 
软考在线指南
优惠劵及余额
在线支付
修改密码
下载及使用
购买流程
取消订单
联系我们
关于我们
联系我们
商务合作
旗下网站群
高级资格科目
信息系统项目管理师 系统分析师
系统架构设计师 网络规划设计师
系统规划与管理师
初级资格科目
程序员 网络管理员
信息处理技术员 信息系统运行管理员
中级资格科目
系统集成项目管理工程师 网络工程师
软件设计师 信息系统监理师
信息系统管理工程师 数据库系统工程师
多媒体应用设计师 软件评测师
嵌入式系统设计师 电子商务设计师
信息安全工程师
 

本网站所有产品设计(包括造型,颜色,图案,观感,文字,产品,内容),功能及其展示形式,均已受版权或产权保护。
任何公司及个人不得以任何方式复制部分或全部,违者将依法追究责任,特此声明。
本站部分内容来自互联网或由会员上传,版权归原作者所有。如有问题,请及时联系我们。


工作时间:9:00-20:00

客服

点击这里给我发消息 点击这里给我发消息 点击这里给我发消息

商务合作

点击这里给我发消息

客服邮箱service@rkpass.cn


京B2-20210865 | 京ICP备2020040059号-5 |京公网安备 11010502032051号 | 营业执照 | Copyright ©2000-2023 All Rights Reserved 软考在线版权所有