软件是一种很逻辑、抽象的东西,软件产品不同于物理产品,是逻辑产品,其进展可见性差,难以度量。但是对于每一件产品来说,都需要把它当成“艺术品”来进行雕刻。在看书的过程中发现软件工程中一个很重要的名词——“工程化”。
一、软件是什么?
软件是一系列按照特定顺序组织的计算机数据和指令的集合,是由程序和文档组成的。一般来讲软件被划分为系统软件、应用软件和介于这两者之间的中间件。软件并不只是包括可以在计算机上运行的电脑程序,与这些电脑程序相关的文档一般也被认为是软件的一部分。简单的说软件就是程序加文档的集合体。另也泛指社会结构中的管理系统、思想意识形态、思想政治觉悟、法律法规等等。
二.软件的分类
1.系统软件,该软件是用于对计算机进行资源管理、便于用户使用计算机而配置的各种程序;
2.应用软件,该软件是用于解决各种针对性很强的实际问题的程序,通常计算机内已经预装了必要的软件,用户也可根据个人实际情况,下载其他应用软件。
三、软件工程:
软件工程的目标是提高软件的质量与生产率,最终实现软件的工业化生产。质量是软件需求方最关心的问题,用户即使不图物美价廉,也要求个货真价实。生产率是软件供应方最关心的问题,老板和员工都想用更少的时间挣更多的钱。质量与生产率之间有着内在的联系,高生产率必须以质量合格为前提。如果质量不合格,对供需双方都是坏事情。从短期效益看,追求高质量会延长软件开发时间并且增大费用,似乎降低了生产率。从长期效益看,高质量将保证软件开发的全过程更加规范流畅,大大降低了软件的维护代价,实质上是提高了生产率,同时可获得很好的信誉。质量与生产率之间不存在根本的对立,好的软件工程方法可以同时提高质量与生产率。软件的质量因素很多,如正确性,性能、可靠性、容错性、易用性、灵活性、可扩充性、可理解性、可维护性等等。
四、软件生存周期:是软件产品的一系列相关活动的整个生命期,即从形成概念开始,经过开发、交付使用、在使用中不断修改和演进,直到最终被废除,让位于新的软件产品为止的整个时期。划分为软件定义、软件开发、运行维护3个阶段。