本文共 2363 字,大约阅读时间需要 7 分钟。
嵌入式电信软件敏捷开发实践
Tell me and I’ll forget; show me and I may remember; involve me and I’ll understand.PART Ⅰ 观念篇
第1章 嵌入式电信软件开发面临的挑战 平台的易变性、硬件的多样性 系统的特殊性和分布性 开发支持工具的缺乏 测试、调试环境的昂贵 高可靠性和高性能要求 升级的平滑性 功能需求的快速演化性 高的开发效率和质量要求第2章 传统开发方法的困境 瀑布式、结构化 无法进行有效地进度度量和测试 僵化,维护费用低 软硬件无法有效地并行开发和测试 无法满足市场竞争的要求第3章 面向对象和敏捷为何有助于应对这些挑战 重新认识软件 上述挑战对于软件开发的内在要求 敏捷和模式的内涵 优秀的软件技术和敏捷如何帮助我们减少所面临的困难PART Ⅱ 基本技术篇第4章 面向对象的内涵和原则 世界观 表达方法 程序的组织方法 程序模块间依赖关系的管理方法 面向对象原则的应用:注重实效的观点 其他程序设计范型:FP、AOP、GP等第5章 敏捷技术的内涵
基于软件内在规律的技术 基于真实反馈和度量的技术 关注于持续改进的技术 关注于团队凝聚力建设的技术 关注于提供团队整体开发技能的技术 注重实效的技术第6章 模式和架构
模式和架构的概念 从敏捷技术的视角看模式和架构 模式生成架构第7章 具体表达语言:C++
为何选择C++? C++精要 嵌入式开发相关语言问题(如何避免高代价的特性、多态和条件逻辑、内存管理问题、代价高昂的副作用、编译器相容问题、和C混和编程问题、测试问题等) 模板和STL的应用 一种多范型程序设计语言 抽象和效率第8章 认识迭代
对迭代的误解 迭代和反复的本质区别 迭代对于进度控制的和降低风险的重大作用 迭代和需求是否稳定无关 如何进行有效地迭代第9章 嵌入式电信软件敏捷实践:测试驱动开发
测试驱动开发的内涵(不仅仅是一种测试技术,更是分析、设计技术,是TestCase驱动技术) CppUnitLite 面向对象技术如何有助于平台无关测试 嵌入式电信软件TDD实例第10章 嵌入式电信软件敏捷实践:多平台软件配置管理
多平台支持软件对于敏捷开发的重要性 如何进行多平台软件开发的规划 多平台软件的源码本版控制管理 Subversion 实例第11章 嵌入式电信软件敏捷实践:软、硬件系统的并行开发和测试
开发环境和系统运行环境 传统的硬件仿真环境开发的问题 面向对象设计 并行开发实例第12章 嵌入式电信软件敏捷开发的基石:测试驱动开发、重构以及持续集成
这三者对于高效软件开发重要意义 节奏的控制 使得C++易于重构的原则介绍 实例第13章 嵌入式电信软件敏捷实践:持续集成环境的搭建 实例介绍如何搭建一个持续集成环境第14章 如何向组织内中引入敏捷方法
引入敏捷方法会遇到的困难 引入方式 引入的节奏 实践时的一些指导原则 推广方式PART Ⅲ 领域分析案例
第15章 领域驱动设计 传统功能点分析方法的缺陷 领域分析的概念 领域驱动技术介绍 Domain-Specific Language和抽象 Naked Object 领域分析如何有助于业务平台的搭建(这是企业领域知识积累的核心)第16章 领域驱动设计案例 (嵌入式电信软件实例)领域分析 half-object plus protocol模式 (嵌入式电信软件实例)领域模型PART Ⅳ 网络协议软件框架案例研究
第17章 网络协议软件结构分析 网络协议软件结构抽象 Mux、Protocol、Adapter以及ConduitFactory第18章 Adapter和Command模式 适应外部接口的多样性、提供First Class Object的能力第19章 State模式和Strategy模式第20章 Singleton模式和Prototype模式第21章 Visitor模式第22章 模式生成框架:Conduits+第23章 基于Conduits+框架的电信软件协议栈实现PART Ⅴ 嵌入式电信软件支撑平台案例研究第24章 嵌入式电信软件支撑平台的目标第25章 Wrapper Facade模式第26章 Reactor模式第27章 Asynchronous Completion Token模式第28章 Scope Locking、Strategized Locking和Thread-Safe Interace 模式第29章 Active Object模式第30章 Half-Sync/Half-Async模式第31章 FSM的实现方法及其适用情形第32章 嵌入式电信软件支撑平台构建实例PART Ⅵ 嵌入式电信软件主备业务同步案例研究第33章 嵌入式电信软件对主备业务同步的要求第34章 AOP和横切关系的处理第35章 Decorator模式和Policy-based design技术第36章 业务同步支撑框架的构建实例PART Ⅶ 嵌入式电信软件硬件抽象层案例研究第37章 依赖倒置原则第38章 领域对象对底层硬件功能层的需求接口分析第39章 静态多态(template policy)和动态多态(Bridge模式)第40章 硬件抽象层构建实例PART Ⅷ OR Mapping案例研究第41章 嵌入式电信软件的对象持久化考虑第42章 各种持久化方案的比较和选择第43章 XML的优势以及一个简单的SAX解析器第44章 OR Mapping层构建实例附录A. 软件思考系列文章 B. 如何有效改造遗留代码参考文献转载地址:http://hmaoi.baihongyu.com/