1.结构化需求分析的核心是数据。数据包括在需求分析、设计和实现中涉及的概念、术语、属性等所有内容,并把这些内容定义在数据字典中。围绕数据字典,完成功能模型、数据模型和行为模型的结构化建模过程。

    那么如果不定义数据字典,对整个软件系统开发有什么影响?(2.4结构化需求分析和建模)

  

  2.对于整个软件系统来说,设计人员不是把它作为一个问题来整体解决,而是把它的全部功能,按照一定的原则划分成若干个模块。如果某个模块仍难以理解或实现,则把它再进行划分,得到更小、功能更简单的模块。如此往复,直至所有模块可解,这个过程就是软件模块化设计。

    那么软件系统为什么要划分模块?模块是不是划分得越细,设计就越简单,也就越好?(3.3模块化设计)

 

  3.代码评审,也称为代码复查,是指在软件开发过程中,通过阅读源代码和相关设计文件,对源代码编码风格、编码标准以及代码质量等活动进行系统性检查的过程。代码评审的目的是查找代码错误、系统设计缺陷、保证软件总体质量、体现软件开发者水平的重要技术手段。

    那么不进行代码评审,会造成什么后果?(5.4代码评审)

 

  4.白盒测试又称为结构测试、逻辑驱动测试或基于程序的测试,是指用于测试代码是否按照设计正确运行的验证技术。黑盒测试又称功能测试或行动测试,它主要根据设计说明中的功能设计来测试程序能否按预计实现。

    那么如果程序员为了确保是否能够满足功能需求而测试一个类,这属于白盒测试还是黑盒测试?(6.2白盒测试&&6.3黑盒测试)

 

  5.为什么说面向对象方法为软件复用提供了良好的设计环境?

 

  6.纠错性维护,也叫作改正性维护,是针对在软件系统运行过程中暴露出的错误进行的测试、诊断、调试、纠错及修改和验证的过程。对在维护中发现的错误,进行修改后必须要实现回归测试。

    那么纠错性维护与排错是否是同一问题?(10.1.3软件维护的分类&2.纠错性维护)

 

  7.对于“搜索引擎为了满足不同用户的搜素结果要求,提高检索时间或提高检索准确度”的描述,属于什么类型的维护工作?(10.软件维护)