Taking Control of Your Engineering Tools.
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 developme...
| Published in: | Computer (00189162) Vol. 46; no. 11; pp. 63 - 67 |
|---|---|
| Main Authors: | , |
| Format: | Article |
| Published: |
IEEE
Nov2013
|
| Subjects: | |
| Online Access: | View this record in EBSCOhost |
| fields | @attributes: recordID: 1 pdfLink: plink: https://search.ebscohost.com/login.aspx?direct=true&db=hlh&AN=92663507&site=ehost-live header: @attributes: shortDbName: hlh uiTerm: 92663507 longDbName: Humanities International Complete uiTag: AN controlInfo: bkinfo: jinfo: jid: 00189162 PUT jtl: Computer (00189162) issn: 00189162 maglogo: N pubinfo: dt: Nov2013 vid: 46 iid: 11 pid: 13605 pub: IEEE artinfo: ui: 92663507 10.1109/MC.2013.337 ppf: 63 ppct: 4 formats: tig: atl: Taking Control of Your Engineering Tools. aug: au: Prasad, Chandra Schulte, Wolfram affil: Microsoft su: Computer software development Engineering software Computer software Linkers (Computer programs) Compilers (Computer programs) Cloud computing sug: subj: Computer software development Engineering software Computer software Linkers (Computer programs) Compilers (Computer programs) Cloud computing keyword: Atmospheric measurements build systems Buildings cloud computing Computers Control systems Engines simplicity in IT Software software engineering tools ab: 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. pubtype: Academic Journal doctype: Article src: R language: English refInfo: copyright: @attributes: flag: Y dt: @attributes: year: 2013 holdings: @attributes: islocal: N |
|---|