1、类图之间关系?
类图:对领域或类进行可视化的表达静态结构。
6种的情况:关联,聚合,组合,依赖,实现,继承。
类图:描述面向对象软件系统的静态结构。
类图的结点:表示系统中的类及其属性和操作。
类图的边:表示类之间的关系。
2、软件维护的类型?
纠错性维护、适应性维护、完善性维护(占比最大)、预防性维护(占比最小)
3、软件危机的主要体现,表现形式?
具体表现形式:构建这些软件系统的非正规的软件开发方式已力不从心、不能奏效,软件质量差、成本无法控制、进度一拖再拖的现象十分普遍。
案例:IBMOS/360,美国银行信托软件系统开发案
4、内聚和耦合的概念?
内聚度:表示一个模块内部各成分彼此关联的紧密程度。
耦合度:是指软件结构中多个模块之间的关联程度。(强内聚、松耦合)
耦合的强弱取决于模块间接口的复杂性、通过接口传递的数据量的大小及复杂性等。
5、内聚性和耦合性的分类?
内聚度:偶然性内聚(低)、逻辑性内聚、时间性内聚、过程性内聚、通信性内聚、顺序性内聚、功能性内聚(高)
耦合度:非直接耦合(低)、数据耦合、外部耦合、公共耦合、内容耦合(高)
6、用例之间有什么关系?
包含、扩展、继承
7、软件测试的测试方法?
白盒测试:基本路径测试,控制结构测试;
黑盒测试:等价分类法,边界值分析法,对比测试法
灰盒测试(课外)
8、软件生命周期包含哪些阶段?花费最多的阶段是哪个阶段?
软件生命周期包含:可行性研究阶段(问题定义、可行性研究)、需求分析阶段、设计阶段(概要设计和详细设计)、实现阶段、测试阶段、运行与维护阶段;
花费最多的阶段是:运行和维护阶段
9、快速原型模型的主要特点?
原理:是快速建立起来的可以在计算机上运行的程序,它所能完成的功能往往是最终产品能完成的功能的一个子集。(部分功能,需求不确定)
- 克服了瀑布模型的缺点,使它更好的满足用户并减少由于需求不明确带来的项目风险;
- 适合预先不能确切定义需求的软件系统的开发;
- 不适合开发大型的软件系统,只适合开发小型的;
- 前提是要有一个展示性的原型,因此在一定程度上限制了开发人员的创新。
10、软件工程的三要素?
方法、工具、过程
方法:为软件开发提供了“如何做”的技术;
工具:为软件工程方法提供了自动的或半自动的软件支撑环境;
过程:是将软件工程的方法和工具综合起来以达到合理、及时地进行计算机软件开发的目的。
11、软件设计的基本原则包括?
抽象与逐步求精、模块化(强内聚与松耦合)、信息隐藏、关注点分离
12、需求规格说明书在软件开发中的作用?
①便于利益相关方、开发人员进行理解和交流;
②作为确认测试和验收的依据;