首页>参考读物>计算机科学与技术>数据库

大数据时代的软件工程:软件科学家与数据科学家的思维碰撞
作者 : [美]蒂姆·孟席斯(Tim Menzies) 劳里·威廉姆斯(Laurie Williams) 托马斯·齐默尔曼(Thomas Zimmermann) 编著
译者 : 王永吉 陈力 吕荫润 等译【内封】王永吉 陈力 吕荫润 王培霞 王翀 余海 游逸 张艺品 译
丛书名 : 华章程序员书库
出版日期 : 2018-01-11
ISBN : 978-7-111-58835-1
定价 : 79.00元
扩展资源下载
扩展信息
语种 : 简体中文
页数 : 244
开本 : 16
原书名 : Perspectives on Data Science for Software Engineering
原出版社: Elsevier (Singapore) Pte Ltd
属性分类: 店面
包含CD : 无CD
绝版 : 未绝版
图书简介

本书关注软件工程中的数据科学主题,包括数据收集、数据分享、数据挖掘等,重点讲解如何将这些技术成功应用于软件工程项目。通过阅读本书,新手将学到有益的提示和技巧,而有经验的数据科学家则可以从实战专家的经验中了解如何避开陷阱。

图书特色

时间有限,数据无限。
—— 2014年德国“软件开发分析”研讨会

面临大数据为软件工程带来的挑战,软件科学家和数据科学家齐聚此次研讨会,分享他们的技术、工具和经验,本书即为会议成果的合集。科学家们从数据科学的视角洞察软件工程,讨论如何更有效地收集和处理软件开发过程中产生的代码和Git提交信息等数据,以及如何在种类繁多的数据分析工具中进行选择。

书中云集来自微软、思科等公司的著名软件专家,以及来自北卡罗来纳州立大学等高校的顶尖学者。他们用言简意赅的方式表达自己的见解,分享业界最前线的思维方式和实战技巧,而不展开繁杂的技术细节和数学推理。因此,每个章节都简洁实用,还包含很多有趣的故事,适合不同层次的读者从中学习数据驱动的软件工程之道。


作者简介

蒂姆·孟席斯(Tim Menzies)
北卡罗来纳州立大学计算机科学系教授,NASA软件研究部门前任主管,研究方向为人工智能、数据挖掘和基于搜索的软件工程。

劳里·威廉姆斯(Laurie Williams)
北卡罗来纳州立大学计算机科学系教授、系主任,担任IEEE软件工程会刊等多部国际期刊的编委。

托马斯·齐默尔曼(Thomas Zimmermann)
美国微软研究院高级研究员,卡尔加里大学兼职副教授,因在版本档案和bug数据库挖掘方面的突出工作而闻名。


译者简介

王永吉
中国科学院软件研究所百人计划特聘研究员、博士生导师,研究方向为软件工程、软件过程方法与技术、实时系统、隐蔽信道等。

精彩导读

大数据视角下的软件工程与传统软件工程有何不同?
数据收集、分析、挖掘、决策可有捷径?选好工具意味着事半功倍。
漏洞四处隐藏,今天的软件设计如何抵挡未来的安全攻击?
新版本就要上线,没有时间做完所有测试怎么办?
数据可视化能帮上多大忙?看看微软正在使用的工具你就明白了。
数据缺失、预算紧张、人手不足,小公司如何做好软件分析?
面对复杂软件项目的重重压力,如何提升自己的洞察力?

上架指导

计算机\软件工程

封底文字

“时间有限,数据无限。”
——2014年德国“软件开发分析”研讨会

面临大数据为软件工程带来的挑战,软件科学家和数据科学家齐聚此次研讨会,分享他们的技术、工具和经验,本书即为会议成果的合集。科学家们从数据科学的视角洞察软件工程,讨论如何更有效地收集和处理软件开发过程中产生的代码和Git提交信息等数据,以及如何在种类繁多的数据分析工具中进行选择。

书中云集来自微软、思科等公司的著名软件专家,以及来自北卡罗来纳州立大学等高校的顶尖学者。他们用言简意赅的方式表达自己的见解,分享业界最前线的思维方式和实战技巧,而不展开繁杂的技术细节和数学推理。因此,每个章节都简洁实用,还包含很多有趣的故事,适合不同层次的读者从中学习数据驱动的软件工程之道。

译者序

本书是2014年在德国Dagstuhl举行的“软件开发分析”研讨会的文章合集。在该研讨会上,来自工业界以及学术界的软件开发领域的众多优秀专家齐聚一堂,围绕软件开发与数据科学的议题进行了充分的讨论。本书作为载体,记录了广泛的软件分析工作,同时也传达了与会者“时间有限,数据无限”的观点。
随着软件行业以及数据科学的发展,如何利用收集的数据来进行软件分析,成为软件工程行业的一大重要议题。近些年来,数据呈现爆炸式增长,我们已进入“大数据”时代,同时,基于人工智能、可视化技术等的数据分析工具也变得触手可及,因此现在软件分析领域面临的不是缺乏数据或者缺少数据分析工具和方法的问题,而是如何将这些工具作用于对应数据之上来进行软件分析的问题。
因此,至关重要的是从数据科学的视角来洞悉软件工程领域,更好地收集、整理软件开发管理过程中产生的软代码、Git提交信息等数据,以及从现有种类繁多的数据分析工具和方法中挑选适合软件分析这一特定领域的工具和方法。
本书内容大致可以归为两类:软件工程的实战经验,这部分提供软件分析过程中的宝贵经验和具体数据科学方法在软件工程实践中存在的问题;数据分析的实战经验,这部分讨论了从日常实践数据中总结的结论,其中涉及的案例研究材料来自软件工程领域,这些材料也为其他领域的科学家提供了很多数据。
本书的每一章节都不是长篇大论,而是通过言简意赅的语言向读者普及软硬件技术。作者们通过成功案例研究、应用场景分析、技术介绍、经验教训总结等方式来呈现自己的见解。每一章节的作者并没有试图事无巨细地向读者介绍一项很具体的技术或者方法,而是通过简洁的语言向读者传达自己的见解。细心的读者可能会注意到,整本书几乎没有专业术语、公式,甚至参考文献也很少。总之,本书不会给读者一种在研读科技论文的感觉,读者可以将本书当作一本科普读物进行阅读。
感谢中国科学院大学的李孟岳、李奉治、鲍鼎之、胡靖宇为本书的校对提供的帮助。感谢翻译过程中机械工业出版社的曲熠等人给予的帮助。感谢家人以及所有朋友一如既往的支持和帮助,正是由于你们的支持与帮助,本书的翻译工作才得以顺利进行。
由于译者水平有限,书中难免会有疏漏,还望读者不吝提出意见和建议。

图书目录

译者序
本书作者
第1章 简介 1
1.1 软件工程的数据科学视角 1
1.2 软件分析与实际应用 4
1.3 归纳式软件工程的七个原则:我们做的是不同的 7
1.4 软件工程中对数据分析模式的需求 11
1.5 从软件数据到软件理论:到达的捷径 14
1.6 为何理论是重要的 17
第2章 成功案例与应用 21
2.1 挖掘应用中的异常 21
2.2 拥抱动态工件 25
2.3 移动应用商店分析 28
2.4 软件的自然性 30
2.5 版本发布就绪的研究进展 34
2.6 如何征服你的在线服务 37
2.7 评价个人生产率 40
2.8 基于堆栈跟踪的攻击面检测 43
2.9 软件工程数据的视觉分析 46
2.10 游戏数据分组后效果更佳 49
2.11 实践中应用数据科学的成功故事 52
2.12 从来没有足够的时间做所有需要的测试 56
2.13 能源开采的危险:多次衡量,一次比较 59
2.14 大规模商业软件中的错误文件定位 63
2.15 定制组件:个性化问题跟踪的机遇 66
2.16 至关重要的是决策而非数字:分析设计表 68
2.17 编程语言对代码质量影响的系统研究 72
2.18 代码审查不是为了寻找缺陷:即使已建立的工具也需要偶尔进行评估 74
第3章 技术 78
3.1 会谈 78
3.2 查找暂存数据中的状态转换 83
3.3 卡片分类:从文本到主题 85
3.4 工具!工具!我们需要工具 88
3.5 基于证据的软件工程 93
3.6 你需要哪种机器学习方法 96
3.7 首先结构化你的非结构化数据!用标签云概括非结构化数据的案例 99
3.8 解析数据!准备原始数据的实用技巧 105
3.9 自然语言处理不是免费的午餐 109
3.10 聚集经验证据进行更可信的决策 112
3.11 如果是软件工程,它可能是一个贝叶斯因子 117
3.12 隐私和数据共享都要有恰如其分的条件 120
3.13 软件工程可预测模型中的群体智慧 124
3.14 挖掘软件数据时兼顾定量方法和定性方法 128
3.15 为存活而调查设计的过程和为远航而调查部署的过程 132
第4章 智慧与技巧 138
4.1 记录一切? 138
4.2 起源的重要性 140
4.3 从一开始就保持开放 144
4.4 减少洞察时间 147
4.5 获取成功的五步:如何在组织中部署数据科学 150
4.6 发布过程如何影响软件分析 153
4.7 安全无价 156
4.8 挖掘错误报告中的陷阱 159
4.9 使可视化成为分析过程的一部分 163
4.10 不要忘记开发者(小心你的假设) 165
4.11 研究的局限性和语境 168
4.12 可执行的指标才是更好的指标 171
4.13 可复制的结果更可靠 175
4.14 软件工程研究的多样性 178
4.15 一次还不够:为什么需要重复 181
4.16 不仅仅是数字:可视化的需求 184
4.17 不要使自己尴尬:小心数据中的偏差 187
4.18 操作数据丢失、错误和脱离语境 193
4.19 数据科学在改进和评估过程中演化? 197
4.20 相关性不是因果关系(不要大叫“找到了!”) 199
4.21 小软件公司的软件分析:问题比答案更多 202
4.22 路灯下的软件分析(《星际迷航》教会我们提出正确问题的重要性) 205
4.23 软件工程实验中会出现哪些错误 208
4.24 同样的大小并不适合所有情况 211
4.25 对于好的模型,简单的解释更好 212
4.26 白衬衫效应:从失败的期望中学习 215
4.27 简单的问题能导致更好的见解 218
4.28 连续实验以尽早评估价值 222
4.29 谎言、可恶的谎言和分析:为什么大数据需要厚数据 225
4.30 整个世界都是你的测试套件 229

教学资源推荐
作者: Jeffrey D. Ullman;Jennifer Widom
作者: (美)Jiawei Han伊利诺伊大学厄巴纳-尚佩恩分校 (加)Micheline Kamber西蒙-弗雷泽大学 (加)Jian Pei西蒙-弗雷泽大学 著
作者: W.H.Inmon
参考读物推荐
作者: Olivia Parr Rud
作者: 王仲远 编著
作者: 钟鸣 刘晓霞 编著