商品详情
作者在高校从事计算机教学多年,有过在高校教书、留学和企业工作的经验,目前已出版的书籍有多本。相信本书无论是在内容上及渠道上都比竞争对手更具有优势。 本书适合国内各大院校软件工程、信息技术、计算机科学等专业教学之用,也可作为IT领域技术人员和管理层人员的自修参考用书。也适合零售、培训等。
内 容 提 要本书按照典型的软件开发过程来组织内容,旨在培养读者具备软件工程思想及实际软件开发的能力。本书共分为12章, 内容涉及软件与软件工程、软件过程、敏捷软件开发、可行性研究与项目开发计划、结构化分析、结构化设计、面向对象方法与UML、面向对象分析、面向对象设计、软件实现、软件测试、软件维护与软件工程管理。本书理论与实践相结合,内容翔实,可操作性强。本书是高校计算机科学、软件工程及相关专业“软件工程”课程的理想教材。吕云翔,北京航空航天大学副教授,软件学院SAP ERP 咨询顾问专业主任。比利时布鲁塞尔大学应用科学学院应用信息技术专业硕士、经济学院工商管理专业硕士。具有多年的软件开发、项目管理、计算机教学经验。对IT行业具有较全面的认识。2003至今任北航软件学院副教授。目前研究领域包括:软件工程 IT项目管理。 著有《计算机导论实践教程》(高等院校计算机教材系列),《软件工程》,译有《计算机文化》(原书第8版) 吕云翔副教授上课时风趣幽默,对学生主要是自主学习,在课堂上要求很轻松,从不强迫学生,深受软件学院学生欢迎。第 一部分 软件工程概述第 1章 ?软件与软件工程1.1 ?软件1.1.1 ?软件的概念及特点1.1.2 ?软件的分类1.2 ?软件危机1.2.1 ?软件危机的表现与原因1.2.2 ?软件危机的启示1.3 ?软件工程 ??????1.3.1 软件工程的概念 ??????1.3.2 软件工程研究的内容 ??????1.3.3 软件工程目标和原则 ??????1.3.4 软件工程知识体系 ??????1.3.5 软件工程的发展1.4 软件开发方法1.5 软件工程工具1.6 ?软件工程人员的职业道德1.7 “小型二手货交易平台”案例介绍习题第 2章 软件过程2.1 ?软件过程概述2.2 软件生命周期2.2.1 软件生命周期的概念2.2.2 传统软件生命周期的各个阶段2.3 软件过程模型2.3.1 瀑布模型2.3.2 快速原型模型2.3.3 增量模型2.3.4 螺旋模型2.3.5 ?喷泉模型2.3.6 ?基于组件的开发模型2.3.7 统一软件开发过程模型2.3.8 ?几种模型之间的关系2.3.9 选择软件过程模型 ?2.4 ?软件过程模型实例习题第3章 敏捷软件开发3.1 敏捷方法3.2 Scrum ???3.2.1 概述 3.2.2 Sprint3.2.3 每日站会 ???3.2.4 用户故事 ???3.2.5 Backlog3.3 看板(Kanban)3.3.1 概述3.3.2 Scrum与看板的区别3.4 ?极限编程(XP) ???3.4.1 XP的4个价值观 ???3.4.2 XP的12个核心实践3.5 CI/CD 3.5.1 CI/CD概述 ?3.5.2 CI/CD 管道 ?3.5.3 CI/CD 的优势3.6 DevOps ?3.6.1 DevOps生命周期 ?3.6.2 DevOps文化 ?3.6.3 DevOps工具 3.7 敏捷开发、CI_CD和DevOps习题第二部分 可行性研究与项目开发计划第4章 ?可行性研究与项目开发计划4.1 项目立项概述4.2 可行性研究的任务4.3 ?技术可行性4.4 ?操作可行性4.5 ?经济可行性4.6 可行性研究的步骤4.7 ?可行性研究实例4.8 ?制定项目开发计划习题第三部分 结构化分析与设计第5章 结构化分析5.1 需求分析5.1.1 需求分析的任务和原则5.1.2 需求分析的步骤5.1.3 ?需求管理5.1.4 ?需求分析的常用方法5.2 结构化分析概述5.3 结构化分析的方法5.3.1 功能建模 ???5.3.2 数据建模 ???5.3.3 行为建模 ???5.3.4 数据字典 ???5.3.5 加工规格说明5.4 ?结构化分析的图形工具5.4.1 层次方框图5.4.2 Warnier图5.4.3 IPO图 ????5.5 ?结构化分析实例5.6 实验:使用Visio绘制“小型二手货交易平台”的数据流图习题第6章 ?结构化设计6.1 软件设计的基本概念6.1.1 ?软件设计的意义和目标6.1.2 软件设计的原则6.1.3 软件设计的分类 6.2 数据库结构设计6.3 ?结构化设计概述6.4 ?结构化设计与结构化分析的关系6.5 ?体系结构设计6.5.1表示软件结构的图形工具6.5.2面向数据流的设计方法6.5.3面向数据结构的设计方法6.6 接口设计 ???6.6.1 接口设计概述 ???6.6.2 界面设计6.6.3 UX设计和UI设计的区别6.7 数据设计6.8 过程设计 ????6.8.1 程序流程图 ???6.8.2 N_S图 ???6.8.3 PAD图 ???6.8.4 过程设计语言6.9 软件设计评审6.10 ?结构化设计实例 6.11实验:使用Visio绘制“小型二手货交易平台”的结构图习题第四部分 面向对象分析与设计第7章 面向对象方法与UML7.1 面向对象的软件工程方法7.1.1 面向对象的基本概念7.1.2 面向对象的软件工程方法的特征与优势7.1.3 ?面向对象的实施步骤7.2 统一建模语言UML ???7.2.1 UML简述7.2.2 UML的特点7.2.3 UML的应用范围 ???7.2.4 UML的图 ???7.2.5 UML“4十1”视图7.3 静态建模机制7.3.1用例图7.3.2 类图与对象图7.3.3 包图7.4 动态建模机制7.4.1 顺序图7.4.2协作图7.4.3 状态图7.4.4 活动图 ????7.5 描述物理架构的机制7.5.1 构件图7.5.2 部署图 ????7.6 面向对象方法与UML实例习题第8章 面向对象分析8.1 面向对象分析方法8.1.1 ?面向对象分析过程8.1.2 ?面向对象分析原则8.2 ?面向对象建模8.2.1 ?建立对象模型8.2.2 ?建立动态模型8.2.3 ?建立功能模型8.2.4 ?3种模型之间的关系8.3 面向对象分析实例8.4 实验8.4.1 使用Rose绘制“小型二手货交易平台”的用例图8.4.2 使用Rose绘制 “小型二手货交易平台”的类图8.4.3 使用Rose绘制 “小型二手货交易平台”的对象图8.4.4 使用Rose绘制 “小型二手货交易平台”的状态图8.4.5 使用Rose绘制 “小型二手货交易平台”的顺序图习题第9章 面向对象设计9.1 面向对象设计与结构化设计9.2 面向对象设计与面向对象分析的关系9.3 面向对象设计的过程与原则9.3.1 面向对象设计的过程9.3.2面向对象设计的原则9.4面向对象设计的启发规则9.5 系统设计9.6 对象设计9.7 面向对象设计实例9.8 实验9.8.1 ?使用Rose绘制“小型二手货交易平台”的活动图 ???9.8.2 使用Rose绘制 “小型二手货交易平台”的协作图 ???9.8.3 使用Rose绘制 “小型二手货交易平台”的构件图 ???9.8.4 使用Rose绘制 “小型二手货交易平台”的部署图习题 ??????第五部分 软件实现与测试第 10章 ?软件实现10.1 编程语言10.1.1 编程语言的发展与分类10.1.2 选择编程语言需考虑的因素10.2 编程风格10.3 面向对象实现10.4 软件实现实例10.5 实验:使用Django和Vue实现“小型二手货交易平台”的“用户登录模块”习题第 11章 ?软件测试11.1 软件测试的基本概念11.1.1 软件测试的原则11.1.2 软件测试模型11.2 软件测试的分类11.3 ?测试用例 ?11.3.1 ?测试用例编写 ?11.3.2 ?测试用例设计 ?11.3.3 ?测试用例场景11.4 ?软件测试方法11.5 ?黑盒测试11.5.1 ?等价类划分法11.5.2 ?边界值分析法11.5.3 ?错误推测法11.5.4 ?因果图法11.5.5 决策表法11.5.6 ?场景法11.5.7 ?黑盒测试方法选择11.6 ??白盒测试 ??11.6.1 ?代码检查法 ??11.6.2 ?静态结构分析法 ??11.6.3 ?程序插桩技术 ??11.6.4 ?逻辑覆盖法 ??11.6.5 ?基本路径法 ??11.6.6 ?白盒测试方法选择 ??11.6.7 ?白盒测试与黑盒测试比较11.7 软件测试的一般步骤11.8 单元测试11.8.1 单元测试概述11.8.2 单元测试内容11.8.3 单元测试方法11.8 集成测试11.8.1 集成测试概述11.8.2 集成测试分析11.8.3 集成测试策略11.10 系统测试11.10.1 系统测试概述11.10.2 系统测试类型11.11 ?验收测试 ??11.11.1验收测试概述 ??11.11.2 验收测试内容 ??11.11.3 α测试和β测试11.12 ?回归测试11.13 ?面向对象测试11.14 人工测试11.15 自动化测试11.16 自动化测试工具 ?????11.16.1自动化测试工具的特征 ?????11.16.2 自动化测试工具的作用和优势 ?????11.16.3 自动化测试工具的分类 ?????11.16.4 自动化测试工具的选择 ?????11.16.5 自动化测试工具的局限性11.17 软件调试 ??11.17.1 调试过程 ??11.17.2 调试途径11.18 ?软件测试实例11.19 ?实验:使用Selenium和Pytest对“小型二手货交易平台”的“用户登录模块”进行单元测试习题第六部分 软件维护与软件工程管理第 12章 软件维护与软件工程管理12.1 软件维护12.1.1 软件维护的过程12.1.2 软件维护的分类12.1.3 软件的可维护性12.1.4 软件维护的副作用12.1.5 ?软件再工程技术12.2 软件估算12.2.1 软件估算的概念12.2.2 软件估算的方法12.2.3 软件估算的原则与技巧12.3 ?软件开发进度计划12.3.1 ?Gantt图12.3.2 ?PERT图12.4 ?软件开发人员组织12.4.1 ?民主制程序员组12.4.2 ?主程序员组12.4.3 ?现代程序员组12.5 ?软件开发风险管理12.5.1 ?软件开发风险12.5.2 ?软件开发风险管理12.6 软件质量保证12.6.1 软件质量的基本概念12.6.2 软件质量保证的措施12.7 软件配置管理12.7.1 软件配置管理术语12.7.2 配置管理的过程12.7.3 配置管理的角色划分12.8 软件工程标准与软件文档 ?????12.8.1 ?软件工程标准 ?????12.8.2 ?软件文档12.9 软件过程能力成熟度模型12.10 软件项目管理12.10.1 ?软件项目管理概述 ?????12.10.2 ?软件项目管理与软件工程的关系12.11 软件复用12.12 实验:使用Project管理“小型二手货交易平台”的开发过程习题附录A 课程设计指导附录B ?软件开发工具视频讲解 ??????附录 C ?案例: “小型二手货交易平台”(扫描二维码获取开发文档和代码)参考文献- 新华一城书集 (微信公众号认证)
- 上海新华书店官方微信书店
- 扫描二维码,访问我们的微信店铺
- 随时随地的购物、客服咨询、查询订单和物流...