DocumentCode
35950
Title
Taking Control of Your Engineering Tools
Author
Prasad, C. ; Schulte, W.
Volume
46
Issue
11
fYear
2013
fDate
Nov. 2013
Firstpage
63
Lastpage
66
Abstract
Traditionally software development tools, such as compilers, linkers and build engines, were designed for use by individual engineers on dedicated desktop machines. As these tools evolved, they scaled-up by exploiting more powerful development machines. The same tools were adapted for team development to run on small, project-specific clusters by dedicating a server to process a single job at a time. While this paradigm has served us well in the past, it fails to take advantage of the positive network effects of cloud-based computing. During the past year, our team constructed a cloud based build system that enables fast and efficient builds through techniques that leverage parallel, cached, incremental, distributed, and multitenant builds. Leveraging the cloud´s compute elasticity and storage capacity enabled us to reduce builds latency dramatically, building today in seconds and minutes instead of hours. But migrating existing tools to the cloud is daunting. This paper summarizes our findings in the form of six principles, on how we need to evolve engineering tools, starting with those that participate in the build automation, to simplify, take control, and move these tools to the cloud.
Keywords
cloud computing; software engineering; cloud compute elasticity; cloud storage capacity; cloud-based computing; engineering tools; project-specific clusters; software development tools; team development; Cloud computing; Control systems; Software development; Software maintenance; build systems; cloud computing; simplicity in IT; software engineering tools;
fLanguage
English
Journal_Title
Computer
Publisher
ieee
ISSN
0018-9162
Type
jour
DOI
10.1109/MC.2013.337
Filename
6617629
Link To Document