1. 定位与背景 (Where Are We Now?)1.1 软件开发的阶段定位 三阶段七环节: 计划阶段(问题定义、可行性分析) 开发阶段(需求分析、系统设计、开发、测试)-> 交互设计主要发生在这里 运行阶段(运维) 需求分析的三个层次: 业务需求:客户或市场的最高层次目标(我们要达成什么商业目的?)。 用户需求:用户使用软件需要完成的任务(用户怎么用?)。 功能需求:开发团队需要实现具体系统功能(系统具体怎么做?)。 1.2 建模方法回顾(前序知识铺垫) 结构化分析:实体关系图 (E-R)、状态图 (SD)、数据流图 (DFD)、数据字典 (DD)。 面向对象与...

1. 课程定位:我们在哪里?(Where Are We Now?) 背景:在软件开发生命周期(SDLC)中,测试并不仅仅发生在编码之后,而是贯穿全程。 本章核心:从“黑盒”到“白盒”,从“功能”到“非功能”,全面覆盖软件质量保证的各个维度。 2. 静态黑盒测试 (Static Black-Box Testing)核心概念:...

1. 课程定位:我们在哪里?软件开发背景 软件开发三阶段:计划阶段 $\rightarrow$ 开发阶段(需求分析、系统设计、开发、测试) $\rightarrow$ 运行阶段。本章主要处于开发阶段。 软件危机:31.1%的项目因需求没做好而取消。 核心痛点:需求不完整、缺乏用户交流、需求不现实。 需求分析方法演变: 结构化分析:数据流图 (DFD)、实体关系图 (E-R)、数据字典 (DD)。 面向对象分析 (OOA):本章重点,使用 UML 进行建模。 2. 面向对象分析与设计 (OOAD)核心概念 OOAD (Object-Oriented Analysis and...

📝 导读: 本章处于软件开发生命周期的“开发阶段”初期。 核心任务:解决“做什么”的问题(What to do),而不是“怎么做”(How to do)。 核心考点:结构化分析的三大模型(数据模型ERD、功能模型DFD、行为模型STD)及其绘制规则。 1. 软件开发阶段定位 (Context)1.1 我们在哪里?在软件开发的“3阶段7环节”中,需求分析处于开发阶段的第一步,连接了“策划阶段”与“系统设计”。 问题定义 & 可行性分析:解决“我们要解决什么问题?值得做吗?”(宏观层面)。 需求分析...

1. 结构化设计概览1.1 核心思想结构化设计(SD)方法主要面向数据流。 出发点:以数据流图(DFD)为基础。 核心任务:将分析阶段产生的“分析模型”(如DFD、数据字典)转换为“设计模型”(软件结构图)。 1.2 设计的两个阶段PPT明确将设计分为两个层次,这是考试中常见的概念辨析题: 概要设计 (Overview Design) 别名:结构设计、体系结构设计。 任务:宏观布局。把系统的功能需求分配给软件结构,确定模块及模块间的调用关系。 核心产物:SC图 (Structure...

📖 第一部分:问题定义 (Problem Definition)核心隐喻:产品研发就像射箭,问题定义就是寻找靶心。如果定义错误,“失之毫厘,谬以千里”。 1. 核心思维工具:5W1H 分析法在定义问题时,不能只停留在表面,需要通过反复追问来明确目标。 WHO (谁):用户是谁?为谁设计? WHAT (什么):解决什么问题?做什么产品? WHY (为什么):(重点) 为什么要解决这些问题?这是深挖需求的关键。 WHEN (何时)、WHERE (何地)、HOW (如何)。 2....

提示:本章的核心逻辑在于理解**“怎么做软件”**。从宏观的生命周期(三阶段七环节),到具体的实施方法论(瀑布、增量、螺旋、敏捷),你需要掌握不同模型的优缺点及适用场景。 1. 什么是软件开发过程 (Software Development Process)1.1 核心定义软件开发过程(也称软件生命周期、软件开发流程)是指软件设计思路和方法的一般过程。 它不只是写代码,而是包括了从功能设计、算法实现、结构设计到编程调试、测试及提交的全过程。 1.2 核心框架:三阶段七环节 (考试重点)这是本章最基础的骨架,必须熟记。整个软件生命周期被划分为三个大阶段,包含七个具体环节。 阶段一:策划...

提示:本章是全书的基础,考试通常侧重于名词解释(如什么是软件工程、软件危机)和简答题(如优良软件的特性、职业道德)。请重点关注标记了 🔥 的内容。 1. 软件与软件工程的基础定义 (Definitions)1.1 什么是软件 (What is Software?) 🔥核心定义: 不仅仅是计算机程序 (Computer programs),还包括: 相关文档 (Associated documentation):需求文档、设计文档、用户手册等。 配置数据 (Configuration...

Chapter 1第1章Spark BackgroundSpark 背景Although MapReduce is suitable for most batch processing work and becomes the preferred technology for enterprise big data processing in the era of big data, its limitations prompt Spark. 虽然 MapReduce 适用于大多数批处理工作,并且成为大数据时代企业大数据处理的首选技术,但其局限性促使了 Spark 的诞生。 MapReduce...

Chapter 6: Hive Optimization and Miscellaneous第 6 章:Hive 优化与杂项One of the biggest challenges Hive users faces is the slow response time experienced by end users who are running ad hoc queries. Hive 用户面临的最大挑战之一是运行即席查询(临时查询)的最终用户所经历的缓慢响应时间。 Hive OptimizationHive 优化Although Hive efficiently handles big...