软件工程基础
软件:软件( Software)是计算机系统中与硬件相互依存的另一部分,它包括程序(Program) ,数据(Data)及其相关文档( Document)。
软件工程(Software Engineering):是指导计算机软件开发和维护的一门工程学科。
软件危机:是指在计算机软件的开发和维护过程中所遇到的一系列严重问题。
软件测试:为了发现程序中的错误而执行程序的过程。
封装:指把对象的外部特征与内部实现细节分开,使得一个对象的外部特征对其它对象来说是可访问的,而它的内部细节对其它对象是隐蔽的。
继承:子类自动地共享基类中定义的数据和方法的机制。继承刻画了一般性和特殊性,也体现了类的层次关系。
多态:是指在一般类中定义的属性或操作被特殊类继承之后,可以具有不同的数据类型或表现出不同的行为。
UML:Unified Modeling Language ,统一建模语言或标准建模语言。它是一个支持模型化和软件系统开发的图形化语言,为软件开发的所有阶段提供模型化和可视化支持,包括由需求分析到规格,到构造和配置。
ISO:国际标准化组织(International Organization for Standardization),是一个全球性的非政府组织,是国际标准化领域中一个十分重要的组织。
软件工程的生命期模型有哪些:瀑布模型、V模型、原型模型、增量式模型、螺旋式模型。
简述(B/S)与(C/S)的区别:
B/S:最大优势在于客户端免维护,适用于用户群庞大,或客户需求经常发生变化。
C/S:可以减轻服务端压力,如果用户的需求特别复杂用C/S。
简述内聚型和耦合性的特征:
耦合:程序模块间存在联系的紧密程度
内聚:程序模块间相互依赖的程度
所以是高内聚低耦合。
什么是黑盒测试、白盒测试?
黑盒测试:【是通过使用整个软件后某种软件功能来严格测试,测试人员通过输入他们的数据然后看输出的结果从而了解软件怎样工作】
白盒测试:【是通过程序的源代码进行测试而不使用用户界面】
软件工程的生命周期有哪些?
需求分析、概要分析、详细设计、编码、测试、产品提交、维护。
需求分析【做什么】
概要设计【怎么做】
详细设计【将概要设计的框架内容具体化、明细化】
编码【把软件设计结果翻译成用某种程序设计语言书写的程序】
测试【尽可能多地发现并排除软件中潜藏的错误;为了发现程序中的错误而执行程序的过程】
维护【保证软件在相当长的时期能够正常运作】
复用:基于复用(重用)的软件工程是比较理想的软件工程策略,在开发过程中可以最大化重用已经存在的软件,尽管复用的效益已经被认可很多年,但是,只是近几年才渐渐将传统的开发过程转向复用的开发过程。复用可以降低软件开发和维护的成本,缩短开发时间,提高产品质量。
复用性可以提高质量和效率,可以真正实现软件的工程化,如果软件发展到一定阶段,我们可以有更多的规划时间,软件发展到一定的阶段,需要什么样功能的软件,可以到软件超市购买需要的程序。就如同如果我们需要一个什么规格的元器件,就按照需要的标准购买需要的元器件一样。

浙公网安备 33010602011771号