6
4 IEEE SOFTWARE | PUBLISHED BY THE IEEE COMPUTER SOCIETY 0740-7459/13/$31.00 © 2013 IEEE Editor in Chief: Forrest Shull Fraunhofer Center for Experimental Software Engineering, [email protected] IEEE Software To be the best source of reliable, useful, peer-reviewed information for leading software practitioners— Mission Statement the developers and managers who want to keep up with rapid technology change. The Only Constant Is Change Forrest Shull WHAT TOPICS WILL software de- velopers be talking about a year from now? The fast-changing nature of our field is one of the things that make working in software so much fun— and so challenging. Grady Booch of- ten writes in these pages about the way in which software has grown to underlie so much of our modern world. Michiel van Genuchten and Les Hatton in their Impact column describe how software has penetrated so many of the systems and services that we as consumers often take for granted—airliners, mass transit, and washing machines—where it lies hid- den in plain sight. Meanwhile, many of our other authors frequently write about the enabling technologies that have allowed software to become so influential—the methods, tools, and practices that enable software devel- opers to produce quality software that becomes embedded all over our world. The joy and the challenge of my job as editor in chief is staying abreast of a broad swath of contemporary research and practice to make sure that we’re featuring the right methods, tools, and practices in this magazine, the tech- nologies that are relevant, important, and helpful to practicing software en- gineers in a variety of roles and across many different domains. Some of the topics that I feel most strongly about have already been turned into special issues. For exam- ple, next-generation mobile software and new developments in program- ming languages will be featured soon, while software analytics can be found in the current issue. But looking fur- ther ahead is always important. One of the ways that I do this is with the help of our editorial and advisory board members. Members are invited to the boards based on their knowledge and visibility in the software engineering field, as well as their willingness and ability to contribute to the magazine. I manage the board composition to make sure that we have coverage of important industries, viewpoints, and types of software, so that the advice I get is as comprehensive as possible and representative of concerns from across our readership. Once a year, the boards and I come together so that I can hear what’s on the minds of experts in various sectors of the industry and to ensure that our content is on target going forward. We brainstorm as many different top- ics of interest as possible (and in a dynamic field such as ours, it’s prob- ably no surprise that we easily reach 50 or more topics), with all of us ask- FROM THE EDITOR What are we seeing as interesting themes in the domains in which we work?

The Only Constant Is Change - Semantic Scholar · The Only Constant Is Change Forrest Shull What topics ill software deW-velopers be talking about a year from now? The fast-changing

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: The Only Constant Is Change - Semantic Scholar · The Only Constant Is Change Forrest Shull What topics ill software deW-velopers be talking about a year from now? The fast-changing

4 IEEE SoftwarE | publIShEd by thE IEEE computEr SocIEt y 074 0 -74 5 9 /13 / $ 31. 0 0 © 2 013 I E E E

Editor in Chief: Forrest Shull Fraunhofer Center for Experimental Software Engineering, [email protected]

IEEE Software To be the best source of reliable, useful, peer-reviewed information for leading software practitioners—Mission Statement the developers and managers who want to keep up with rapid technology change.

The Only Constant Is ChangeForrest Shull

What topics Will software de-velopers be talking about a year from now?

The fast-changing nature of our field is one of the things that make working in software so much fun—and so challenging. Grady Booch of-ten writes in these pages about the way in which software has grown to underlie so much of our modern world. Michiel van Genuchten and Les Hatton in their Impact column

describe how software has penetrated so many of the systems and services that we as consumers often take for granted—airliners, mass transit, and washing machines—where it lies hid-den in plain sight. Meanwhile, many of our other authors frequently write

about the enabling technologies that have allowed software to become so influential—the methods, tools, and practices that enable software devel-opers to produce quality software that becomes embedded all over our world.

The joy and the challenge of my job as editor in chief is staying abreast of a broad swath of contemporary research and practice to make sure that we’re featuring the right methods, tools, and practices in this magazine, the tech-

nologies that are relevant, important, and helpful to practicing software en-gineers in a variety of roles and across many different domains.

Some of the topics that I feel most strongly about have already been turned into special issues. For exam-

ple, next-generation mobile software and new developments in program-ming languages will be featured soon, while software analytics can be found in the current issue. But looking fur-ther ahead is always important. One of the ways that I do this is with the help of our editorial and advisory board members. Members are invited to the boards based on their knowledge and visibility in the software engineering field, as well as their willingness and ability to contribute to the magazine. I manage the board composition to make sure that we have coverage of important industries, viewpoints, and types of software, so that the advice I get is as comprehensive as possible and representative of concerns from across our readership.

Once a year, the boards and I come together so that I can hear what’s on the minds of experts in various sectors of the industry and to ensure that our content is on target going forward. We brainstorm as many different top-ics of interest as possible (and in a dynamic field such as ours, it’s prob-ably no surprise that we easily reach 50 or more topics), with all of us ask-

From the editor

What are we seeing as interesting themes in the domains in which we work?

Page 2: The Only Constant Is Change - Semantic Scholar · The Only Constant Is Change Forrest Shull What topics ill software deW-velopers be talking about a year from now? The fast-changing

SEptEmbEr/octobEr 2013 | IEEE SoftwarE 5

ing questions: What are we seeing as interesting themes in the domains in which we work? What are the “pain points” on which our clients and col-laborators most need help? Then we narrow these items down to a short list of our top priority areas, which provides me with guidance that I can apply in selecting department editors,

identifying special issue topics, and attracting new authors.

It’s always of great interest to me to see what comes out of this process, and I thought that you, our readers, would find some value in it as well. I’ll list a few of the top issues on our minds when we met this July. I recog-nize that, unlike what I do in most of

staffLead Editor

Brian Brannon [email protected]

Content Editor Camber Agrelius

Manager, Editorial Services Jenny Stout

Publications Coordinator [email protected]

Design and Production Editor Jennie Zhu-Mai

Contributor Alex Torres

Cover Artist Eero Johannes

Director, Products & Services Evan Butterfield

Senior Manager, Editorial Services Robin Baldwin

Senior Business Development Manager Sandra Brown

Membership Development Manager Cecelia Huffman

Senior Advertising Coordinator Marian Anderson

[email protected]

cs publications board

Thomas M. Conte (chair), Alain April, David Bader, Angela R. Burgess, Greg Byrd,

Koen DeBosschere, Frank E. Ferrante, Paolo Montuschi, Linda I. Shafer,

and Per Stenström

Magazine operations coMMittee

Paolo Montuschi (Chair), Erik R. Altman, Nigel Davies, Lars Heide, Simon Liu,

Cecilia Metra, Shari Lawrence Pfleeger, Michael Rabinovich, Forrest Shull,

John R. Smith, Gabriel Taubin, George K. Thiruvathukal, Ron Vetter,

and Daniel Zeng

Editorial: All submissions are subject to editing for clarity, style, and space. Unless otherwise

stated, bylined articles and departments, as well as product and service descriptions,

reflect the author’s or firm’s opinion. Inclusion in IEEE Software does not necessarily constitute

endorsement by IEEE or the IEEE Computer Society.

To Submit: Access the IEEE Computer Society’s Web-based system, ScholarOne, at

http://mc.manuscriptcentral.com/sw-cs. Be sure to se-lect the right manuscript type when submitting. Articles must be original and not exceed 4,700 words including

figures and tables, which count for 200 words each.

IEEE prohibits discrimination, harassment and bullying: For more information, visit www.ieee.org/

web/aboutus/whatis/policies/p9-26.html.

softWare experts suMMit 2013Speaking of hot topics, big data analytics clearly continues to be high on almost everyone’s list. For that reason, we dedicated our annual Software Experts Sum-mit to an investigation of various facets of that issue. This year, our agenda fea-tured a range of compelling speakers who discussed the latest developments and research. We gave our speakers the challenge to discuss “smart data,” mean-ing that rather than focus on the mechanics of dealing with increasingly large amounts of data, we asked them to examine how users get accurate meaning and actionable insights from real-world data, coming as it often does from mul-tiple sources, formats, and media?

Videos and presentations from our speakers will be placed on the event web-site, www.computer.org/ses13, as they become available. Our lineup this year included keynotes from Paul Zikopoulos (IBM) on how organizations can get real-time, actionable insights from the data encoded in social media and other sources, and James Whittaker (Microsoft), who shared ongoing work that processes data to allow computer interfaces to understand and respond to the intention behind a user’s interactions.

Additional technical talks included Ayse Bener (Ryerson University) discuss-ing how sampling can be used to find smaller datasets more tractable to analysis and providing robust insights; Wolfgang Schulte (Microsoft) on how data analyt-ics is applied to software development data at Microsoft to support evidence-based decision making; John Howie (Cloud Security Alliance), who looked at the trade-offs and risks involved with privacy in big data; and Jeromy Carriere (Google) who described the infrastructural advances that have allowed the practi-cal application of big data analytics.

Finally, a panel led by Hakan Erdogmus (Kalemun Research) kicked off a re-flection on the day’s content with experts from diverse application domains such as defense, medical, and outsourcing, then invited the audience members to add their own perspectives.

SES is a public event that brings together some of the key thought leaders as-sociated with IEEE Software (board members, authors, interviewees, and guest editors) as well as local experts to tackle a problem of compelling interest. We select expert speakers who clearly communicate the technical issues on which they work and design the day’s agenda to allow for interactivity and networking. We’re already planning SES 2014, so watch this space for future announcements!

Page 3: The Only Constant Is Change - Semantic Scholar · The Only Constant Is Change Forrest Shull What topics ill software deW-velopers be talking about a year from now? The fast-changing

6 IEEE SoftwarE | www.computEr.org/SoftwarE

From the editor

my columns, this installment is going to present more questions than an-swers—but I find the insight into the worries that are on thought leaders’ minds is an important source of infor-mation, and I hope you will too.

refactoring/reengineeringAlthough the practice of refactoring is hardly new, it seems to be taking on

additional relevance these days. One reason for this is the increasing inter-est in technical debt, which is refocus-ing many developers on the questions of how and when to refactor their soft-ware so as to deliver the most business value over the lifetime of a project and make the right technical trade-offs.

As with many of the other topics that the boards and I came up with,

refactoring becomes more difficult and raises many technical issues that aren’t well understood when applied in prac-tice to the types of systems that devel-opers work with today. Large-scale and high-complexity systems are difficult enough, to be sure, but polyglot and integrated systems make the trade-offs and “optimal” outcomes even harder to parse. Also relevant to this discus-

softWare engineering in practice aWard

IEEE Software continues its policy of sponsoring best paper awards at major conferences. It does this both to recognize the best work going on in our field and to call extra attention to the types of content that we, its editors, particularly prize: practical work with concrete applications for software developers that is also rigorously analyzed and reported.

The International Conference on Software Engineering (ICSE) is one of the flagship conferences for software engineering researchers, and we have a strong affinity for the “Software En-gineering in Practice” (SEiP) track, which highlights work being done to address real and current software development prob-lems. The SEiP goal of fostering more communication between

researchers and software developers, and helping communicate state-of-the-practice case studies, is one that resonates well. Because this year’s ICSE was held in Silicon Valley, in close proximity to some of the great hotbeds of software innova-tion and development, the SEiP track was quite substantial and robust. Several of the events, including keynotes from industry and a panel on technical debt, were standing room only. For more information about the unique aspects of the SEiP track, and our award there, see my short interview with track cochair (and IEEE Software editorial board member) Jane Cleland-Huang at www.computer.org/software-multimedia.

Our award this year went to a paper that contained a wealth of experience on finding and fixing bugs that are characteristic to big data systems. The authors of the winning paper, “Characteristic Study on Failures of Production Distributed Data-Parallel Programs,” are Sihan Li, Hucheng Zhou, Haoxiang Lin, Tian Xiao, Haibo Lin, Wei Lin, and Tao Xie.

As always with our best paper awards, a short list of nominated pa-pers was created by the track chairs and a selection committee drawn from the track organizers and our magazine boards. This year, our se-lection committee consisted of Ipek Ozkaya, Frances Paulisch, Bob Hall, and Erik Simmons. I’d like to again say congratulations to our award winners and thanks to our selection committee!IEEE Software editor in chief Forrest Shull with best paper award winners Haibo Lin, Sihan

Li, and Tao Xie.

Page 4: The Only Constant Is Change - Semantic Scholar · The Only Constant Is Change Forrest Shull What topics ill software deW-velopers be talking about a year from now? The fast-changing

SEptEmbEr/octobEr 2013 | IEEE SoftwarE 7

From the editor

sion are explorations of the effective-ness of code, design, and architectural “smells” for detecting when portions of the system should be refactored. There are a lot of intuitive-sounding ideas here, but which are effective and for which types of systems? Can expe-riences and case studies help software engineers further develop their skillsets for effective refactoring?

a fresh look at the science of MeasurementIn grad school, I once took a class with a professor of artificial intelligence (AI) who said that, in his view at least, AI too often got an undeservedly bad rep-utation as a research field. Anytime an effective solution was developed for a particular problem, it was spun off and became its own field, while the

things left under the umbrella of AI were the hardest and most intractable problems remaining in the realm of ba-sic research. I often feel that the same has happened to software metrics: as an abstract field, some critics look at metrics as an unexciting area that can be divorced from their needs. And yet, metrics that have proven successful are woven into day-to-day practice: any project has to do some estimation of schedule and cost (and an array of tech-niques exist that are both usable and useful), agile teams are often skilled with using measures of velocity to steer project decisions, and many organiza-tions have their own toolsets that pro-vide useful measurement-based insights.

Given all of the exciting work go-ing on in software analytics, this seems an opportune time to revisit measure-

ment science and take a new look at where metrics have already successfully embedded themselves into software practice, becoming so intuitive that we rarely notice them. It would also be interesting to examine the extent to which we can make truly evidence- based decisions during software devel-opment to maximize our chances of success. The tension between collect-ing nonintrusive metrics and meaning-ful metrics, as always, is relevant here. Technical debt, another topic of an earlier special issue, is also highly re-lated as the research community and tool vendors increasingly analyze code and process metrics to detect debt that might be accumulating unintentionally and to provide triggers to alert soft-ware developers when debt might be getting out of hand.

Page 5: The Only Constant Is Change - Semantic Scholar · The Only Constant Is Change Forrest Shull What topics ill software deW-velopers be talking about a year from now? The fast-changing

8 IEEE SoftwarE | www.computEr.org/SoftwarE

From the editor

Ongoing challenges include the ap-plication of metrics to contemporary technologies and at contemporary scales—for example, how accurate can we be in estimating and monitoring performance in the cloud?

designing the user experienceAs software and systems become more ubiquitous, users have to deal with ever-larger amounts of information and a multitude of capabilities. Poorly designed interfaces and poorly inte-grated systems lead users to unpleas-ant experiences with technology or “IT overload,” which prevent effective use of available options. A constel-lation of related questions comes up around how to address this problem:

Whose job is it to consider the user ex-perience during software design—and what tools can be leveraged to help do it well? How do you train developers to design software effectively? Can software help address the problem it-self—for example, by having interfaces with some intelligence behind them?

As if all of that wasn’t complicated enough, can we reason about the com-posability of the user experience—that is, if we know something about component usability, can we reason about how easy or cumbersome a user will find it to work with the whole system? And how do requirements engineers and software developers handle unusual (but increasingly com-mon) nonfunctional requirements re-

lated to the user experience, such as a computer game that should be “fun” or “pleasurable?”

the effective software ManagerNot that anyone has recently stopped worrying about how to be an effec-tive manager of software projects, but given recent trends, this might be a particularly good time to bring together some thoughts on what it means to manage well under current conditions. A particularly interesting question is what effective strategies exist for combining bottom-up em-powerment with top-down manage-ment, which is certainly related to the question of how to manage effectively in an agile context. But we need not be

www.computer.org/software

storytelling for software

professionals // 9

In Defense of Boring // 16

Beyond Data mining // 92

may/June 2013

ANYTIME, ANYWHERE ACCESS

DIGITAL MAGAZINESKeep up on the latest tech innovations with new digital maga-zines from the IEEE Computer Society. At more than 65% off regular print prices, there has never been a better time to try one. Our industry experts will keep you informed. Digital magazines are:

• Easy to save. Easy to search.• Email noti� cation. Receive an alert as soon as each digi-

tal magazine is available. • Two formats. Choose the enhanced PDF version OR the

web browser-based version.• Quick access. Download the full issue in a � ash.• Convenience. Read your digital magazine anytime, any-

where—on your laptop, iPad, or other mobile device.• Digital archives. Subscribers can access the digital issues

archive dating back to January 2007.

Interested? Go to www.computer.org/digitalmagazines to subscribe and see sample articles.

Page 6: The Only Constant Is Change - Semantic Scholar · The Only Constant Is Change Forrest Shull What topics ill software deW-velopers be talking about a year from now? The fast-changing

SEptEmbEr/octobEr 2013 | IEEE SoftwarE 9

From the editor

limited to agile teams: What recently emerged best practices do managers use on long-lived, mission- or safety-critical projects to safeguard users as well as the large investment in cost?

A recent line of research within software engineering focuses on mak-ing sure that teams’ technical deci-sions align with business value—but how well are the resulting methods working in practice, and are they making their way into the hands of practicing managers? How do manag-ers deal with multicultural issues on large, geographically distributed proj-ect teams?

a s I mentioned, these are just a few of the priorities we identified, but I’d be happy

to hear from you, our readers, if you have hot topics of your own or want to react to the ideas here. Contact me at [email protected].

Many thanks to our board mem-bers who participated in this year’s discussion: Ayse Bener (Ryerson Uni-versity), Anita Carleton (Software En-gineering Institute), Hakan Erdogmus (Kalemun Research), Magnus Larsson (ABB), Steve McConnell (Construx Software), Grigori Melnik (Micro-soft), Ipek Ozkaya (Software Engi-neering Institute), Rafael Prikladnicki (Pontifical Catholic University of Rio Grande do Sul), Linda Rising (inde-pendent consultant), Wolfgang Stri-gel (independent consultant), Girish Suryanarayana (Siemens), Michiel van Genuchten (mt:onyx), Adam Welc (Oracle Labs), James Whittaker (Mi-

crosoft), Rebecca Wirfs-Brock (Wirfs-Brock Associates), and Olaf Zimmer-mann (University of Applied Sciences, Rapperswil, Switzerland).

forrest shull is a division director at the Fraunhofer Center for Experimental Software Engineering in Maryland, a nonprofit research and tech transfer organization, where he leads the Measurement and Knowledge Management Division. He’s also an adjunct professor at the University of Maryland College Park and editor in chief of IEEE Software. Contact him at [email protected].

See www.computer.org/software -multimedia for multimedia content related to this article.