软件基础知识
软件是一系列按照特定顺序组织的计算机数据和指令的集合。那么你对软件了解多少呢?以下是由小编整理关于软件知识的内容,希望大家喜欢!
软件的基本特点
软件行业的上游行业为电子元器件行业和计算机、网络设备行业,下游为电力、石油、冶金、钢铁、化工、环保等行业。
软件行业与上游行业有一定关联性,主要体现在技术更新和产品升级,从而使本行业的产品方案与之联动变化。此外,上游行业对本行业的影响还体现在采购成本变动上,上游行业基本属于完全竞争性行业,上游行业的产能不存在供应瓶颈,电子类产品总体呈现价格下滑趋势,对本行业发展总体比较有利。
软件行业下游电力、环保、石油、冶金、钢铁、化工等行业属于国家重点支持发展信息化建设的行业,随着信息化与工业化深度融合的推进,这些行业的信息化发展速度相对较快,市场空间大。这些行业对信息化软件产品先进性、可靠性、经济性要求很高,使得本公司必须不断加大在新产品开发和技术创新方面的投入,以更好满足下游行业客户的需求。
一、软件不同于硬件,他是计算机系统中的逻辑实体而不是物理实体,具有抽象性。
二、软件的生产不同于硬件,它没有明显的制作过程,一旦开发成功,可以大量拷贝同一内容的副本。
三、软件在运行过程中不会因为使用时间过长而出现磨损、老化以及用坏问题。
四、软件的开发、运行在很大程度上依赖于计算机系统,受计算机系统的限制,在客观上出现了软件移植问题。
五、软件开发复杂性高,开发周期长,成本较大。
六、软件开发还涉及诸多的社会因素。
软件的生命周期
软件的生命周期是指从软件定义、开发、使用、维护到报废为止的整个过程,一般包括问题定义、可行性分析、需求分析、总体设计、详细设计、编码、测试和维护。
问题定义就是确定开发任务到底“要解决的问题是什么”,系统分析员通过对用户的访问调查,最后得出一份双方都满意的关于问题性质、工程目标和规模的书面报告。
可行性分析就是分析上一个阶段所确定的问题到底“可行吗”,系统分析员对系统要进行更进一步的分析,更准确、更具体地确定工程规模与目标,论证在经济上和技术上是否可行,从而在理解工作范围和代价的基础上,做出软件计划。
需求分析即使对用户要求进行具体分析,明确“目标系统要做什么”,把用户对软件系统的全部要求以需求说明书的形式表达出来。
总体设计就是把软件的功能转化为所需要的体系结构,也就是决定系统的模块结构,并给出模块的相互调用关系、模块间传达的数据及每个模块的功能说明。
详细设计就是决定模块内部的算法与数据结构,也是明确“怎么样具体实现这个系统”。
编码就是选取适合的程序设计语言对每个模板进行编码,并进行模块调试。
测试就是通过各种类型的测试使软件大道预定的要求。
维护就是软件交付给用户使用后,对软件不断查错、纠错和修改,使系统持久地满足用户的需求。
软件的生命周期也可以分为3个大的阶段,分别是计划阶段、开发阶段和维护阶段。
软件的开发流程
软件开发是根据用户要求建造出软件系统或者系统中的软件部分的过程。软件开发是一项包括需求捕捉,需求分析,设计,实现和测试的系统工程。软件一般是用某种程序设计语言来实现的。通常采用软件开发工具可以进行开发。
软件开发流程即Software development process。
软件设计思路和方法的一般过程,包括设计软件的功能和实现的算法和方法、软件的总体结构设计和模块设计、编程和调试、程序联调和测试以及编写、提交程序。
1 相关系统分析员和用户初步了解需求,然后列出要开发的系统的大功能模块,每个大功能模块有哪些小功能模块,对于有些需求比较明确相关的界面时,在这一步里面可以初步定义好少量的界面。
2 系统分析员深入了解和分析需求,根据自己的经验和需求做出一份文档系统的功能需求文档。这次的文档会清楚例用系统大致的大功能模块,大功能模块有哪些小功能模块,并且还例出相关的界面和界面功能。
3 系统分析员和用户再次确认需求。
4 系统分析员根据确认的需求文档所例用的界面和功能需求,用迭代的方式对每个界面或功能做系统的概要设计。
5 系统分析员把写好的概要设计文档给程序员,程序员根据所例出的功能一个一个的编写。
6 测试编写好的系统。交给用户使用,用户使用后一个一个的确认每个功能,然后验收。
软件基础知识的评论条评论