Notification:
We are currently experiencing intermittent issues impacting performance. We apologize for the inconvenience.
By Topic

Software, IEEE

Issue 4 • Date July-Aug. 2013

Filter Results

Displaying Results 1 - 24 of 24
  • Front Cover

    Publication Year: 2013 , Page(s): c1
    Save to Project icon | Request Permissions | PDF file iconPDF (381 KB)  
    Freely Available from IEEE
  • Table of Contents

    Publication Year: 2013 , Page(s): 1 - 2
    Save to Project icon | Request Permissions | PDF file iconPDF (2587 KB)  
    Freely Available from IEEE
  • Getting an Intuition for Big Data

    Publication Year: 2013 , Page(s): 3 - 6
    Save to Project icon | Request Permissions | PDF file iconPDF (756 KB) |  | HTML iconHTML  
    Freely Available from IEEE
  • David Notkin: 1955-2013

    Publication Year: 2013 , Page(s): 7
    Save to Project icon | Request Permissions | PDF file iconPDF (209 KB) |  | HTML iconHTML  
    Freely Available from IEEE
  • Mars Rover

    Publication Year: 2013 , Page(s): 8
    Cited by:  Papers (1)
    Save to Project icon | Request Permissions | PDF file iconPDF (267 KB) |  | HTML iconHTML  
    Freely Available from IEEE
  • Integrate End to End Early and Often

    Publication Year: 2013 , Page(s): 9 - 14
    Save to Project icon | Request Permissions | Click to expandQuick Abstract | PDF file iconPDF (1779 KB) |  | HTML iconHTML  

    This column is all about stories, and this one is as exciting as a paperback whodunit. The details are all included, and I hate to spoil it, but there's a happy ending. The story is about something old--designing and implementing a new system when the old one was really old (two decades!) and something new--using outside research consultants to save the day with a secret sauce. Enjoy! View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Rock Stars of Big Data Advertisement

    Publication Year: 2013 , Page(s): 15
    Save to Project icon | Request Permissions | PDF file iconPDF (1876 KB)  
    Freely Available from IEEE
  • The Wonder Years

    Publication Year: 2013 , Page(s): 16 - 17
    Save to Project icon | Request Permissions | PDF file iconPDF (475 KB) |  | HTML iconHTML  
    Freely Available from IEEE
  • Meet Elaine: A Persona-Driven Approach to Exploring Architecturally Significant Requirements

    Publication Year: 2013 , Page(s): 18 - 21
    Cited by:  Papers (2)
    Save to Project icon | Request Permissions | Click to expandQuick Abstract | PDF file iconPDF (476 KB) |  | HTML iconHTML  

    Software-intensive projects are driven by quality concerns; however, these can be difficult to elicit and manage in early stages of a project. Architecturally savvy personas provide a tangible approach for capturing performance, reliability, security, and other quality goals and for reasoning about their impact on system design. The Web extra at http://youtu.be/N_LksckqOO8 is an audio podcast of author Jane Cleland-Huang reading her Requirements column, in which she discusses how architecturally-savvy personas provide a tangible approach for capturing performance, reliability, security, and other quality goals and for reasoning about their impact on system design. View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Portability: Goodies vs. the Hair Shirt

    Publication Year: 2013 , Page(s): 22 - 23
    Save to Project icon | Request Permissions | Click to expandQuick Abstract | PDF file iconPDF (284 KB) |  | HTML iconHTML  

    Deciding whether to write portable code or not should be the outcome of a cost-benefit analysis. The key reason to favor portable code is that it opens up the selection of resources available to our project. Diverse technology choices free us from vendor lock-in, allowing us to select the best technology in each area based on quality and price, and minimize technology risks. However, portable code can degrade functionality, expressiveness, and efficiency. A middle course involves drawing boundaries around the non-portable code to isolate it from the rest of the application. Another approach is to admit defeat and write code that gives the best native experience. In the long term, separately maintained code bases can be less complex than a unified one. The Web extra at http://youtu.be/Lgqu_9Kc2Sc is an audio podcast of author Diomidis Spinellis reading his Tools of the Trade column, in which he discusses how whether to write portable code or not should be the outcome of a cost-benefit analysis. View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Product Line Engineering

    Publication Year: 2013 , Page(s): 24 - 30
    Cited by:  Papers (1)
    Save to Project icon | Request Permissions | Click to expandQuick Abstract | PDF file iconPDF (1338 KB) |  | HTML iconHTML  

    Product line engineering (PLE) is one of the few industry-ready methods to manage reuse and variability in a defined way and thus bring software development maturity to a more advanced stage. The goal is to deliver specific product variants with fast cycle times at a manageable life-cycle cost with a defined quality level. Many IT and software organizations have started PLE but fail in industrializing the concepts and thus do not achieve sustainable benefits. Authors Klaus Schmid and Eduardo Santana de Almeida look at current technology for modeling and managing variation and thus facilitate PLE. The Web extra at http://youtu.be/R1gybFwAy10 is a video interview with David Weiss discussing the benefits of using software product line engineering to produce software families. View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Software Analytics: So What?

    Publication Year: 2013 , Page(s): 31 - 37
    Cited by:  Papers (1)
    Save to Project icon | Request Permissions | PDF file iconPDF (1120 KB) |  | HTML iconHTML  
    Freely Available from IEEE
  • Leveraging the Crowd: How 48,000 Users Helped Improve Lync Performance

    Publication Year: 2013 , Page(s): 38 - 45
    Save to Project icon | Request Permissions | Click to expandQuick Abstract | PDF file iconPDF (1208 KB) |  | HTML iconHTML  

    Performance is a critical component of customer satisfaction with network-based applications. Unfortunately, accurately evaluating the performance of collaborative software that operates in extremely heterogeneous environments is difficult with traditional techniques such as modeling workloads or testing in controlled environments. To evaluate performance of an application in the wild during development, the authors deployed early versions of the software, collecting performance data from application users for key usage scenarios. The analysis package they used produces visualizations to help development teams identify and prioritize performance issues by focusing on performance early in the development cycle, evaluating progress, identifying defects, and estimating timelines. View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Developer Dashboards: The Need for Qualitative Analytics

    Publication Year: 2013 , Page(s): 46 - 52
    Save to Project icon | Request Permissions | Click to expandQuick Abstract | PDF file iconPDF (1433 KB) |  | HTML iconHTML  

    Prominent technology companies including IBM, Microsoft, and Google have embraced an analytics-driven culture to help improve their decision making. Analytics aim to help practitioners answer questions critical to their projects, such as "Are we on track to deliver the next release on schedule?" and "Of the recent features added, which are the most prone to defects?" by providing fact-based views about projects. Analytic results are often quantitative in nature, presenting data as graphical dashboards with reports and charts. Although current dashboards are often geared toward project managers, they aren't well suited to help individual developers. Mozilla developer interviews show that developers face challenges maintaining a global understanding of the tasks they're working on and that they desire improved support for situational awareness, a form of qualitative analytics that's difficult to achieve with current quantitative tools. This article motivates the need for qualitative dashboards designed to improve developers' situational awareness by providing task tracking and prioritizing capabilities, presenting insights on the workloads of others, listing individual actions, and providing custom views to help manage workload while performing day-to-day development tasks. View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Roundtable: What's Next in Software Analytics

    Publication Year: 2013 , Page(s): 53 - 56
    Save to Project icon | Request Permissions | Click to expandQuick Abstract | PDF file iconPDF (401 KB) |  | HTML iconHTML  

    For this special issue, the guest editors asked a panel of six established experts in software analytics to highlight what they thought were the most important, or overlooked, aspect of this field. They all pleaded for a much broader view of analytics than seen in current practice: software analytics should go beyond developers (Ahmed Hassan) and numbers (Per Runeson). Analytics should also prove its relevance to practitioners (Abram Hindle, Martin Shepperd). There are now opportunities for "natural" software analytics based on statistical natural language processing (Prem Devanbu). Lastly, software analytics needs information analysts and field agents like Chloe O'Brian and Jack Bauer in the TV show 24 (Sung Kim). View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Searching under the Streetlight for Useful Software Analytics

    Publication Year: 2013 , Page(s): 57 - 63
    Save to Project icon | Request Permissions | Click to expandQuick Abstract | PDF file iconPDF (1878 KB) |  | HTML iconHTML  

    For more than 15 years, researchers at the Collaborative Software Development Laboratory at the University of Hawaii at Manoa have looked for analytics that help developers understand and improve development processes and products. This article reviews that research and discusses the trade-off between studying easily obtained analytics and studying richer analytics with higher overhead. View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • CODEMINE: Building a Software Development Data Analytics Platform at Microsoft

    Publication Year: 2013 , Page(s): 64 - 71
    Save to Project icon | Request Permissions | Click to expandQuick Abstract | PDF file iconPDF (1022 KB) |  | HTML iconHTML  

    The scale and speed of today's software development efforts impose unprecedented constraints on the pace and quality of decisions made during planning, implementation, and postrelease maintenance and support for software. Decisions during the planning process include level of staffing and choosing a development model given the scope of a project and timelines. Tracking progress, course correcting, and identifying and mitigating risks are key in the development phase, as are monitoring aspects of and improving overall customer satisfaction in the maintenance and support phase. Availability of relevant data can greatly increase both the speed and likelihood of making a decision that leads to a successful software system. This article outlines the process Microsoft has gone through developing CODEMINE--a software development data analytics platform for collecting and analyzing engineering process data—its constraints, and pivotal organizational and technical choices. View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Sustainable Embedded Software Life-Cycle Planning

    Publication Year: 2013 , Page(s): 72 - 80
    Save to Project icon | Request Permissions | Click to expandQuick Abstract | PDF file iconPDF (3174 KB) |  | HTML iconHTML  

    Time to market is a crucial factor in increasing market share in consumer electronics. Furthermore, fierce market competition tends to sharply lower the prices of new consumer electronics products as soon as they're released. Researchers have studied software-intensive embedded system design methods, such as hardware/software co-design, with the goal of reducing development lead time by designing hardware and software simultaneously. However, most studies concentrate on static design methods, in which a design remains unchanged once it's determined. To survive the market competition in consumer electronics requires a dynamic design strategy that takes various market conditions into account for software-intensive embedded systems. This article proposes a sustainable embedded software life-cycle planning (SeSLP) process based on the evolution of embedded software. The SeSLP process provides a dynamic method for both selecting product life-cycle design alternatives and generating a profit-maximizing transition plan that covers the entire product life cycle. View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Defect-Density Assessment in Evolutionary Product Development: A Case Study in Medical Imaging

    Publication Year: 2013 , Page(s): 81 - 87
    Save to Project icon | Request Permissions | Click to expandQuick Abstract | PDF file iconPDF (713 KB) |  | HTML iconHTML  

    Defect density is the ratio between the number of defects and software size. Properly assessing defect density in evolutionary product development requires a strong tool and rigid process support that enables defects to be traced to the offending source code. In addition, it requires waiting for field defects after the product is deployed. To ease the calculation in practice, a proposed method approximates the lifetime number of defects against the software by the number of defects reported in a development period even if the defects are reported against previous product releases. The method uses aggregated code churn to measure the software size. It was applied to two development projects in medical imaging that involved three geographical locations (sites) with about 30 software engineers and 1.354 million lines of code in the released products. The results suggest the approach has some merits and validity, which the authors discuss in the distributed development context. The method is simple and operable and can be used by others with situations similar to ours. View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • How Hadoop Clusters Break

    Publication Year: 2013 , Page(s): 88 - 94
    Cited by:  Papers (2)
    Save to Project icon | Request Permissions | Click to expandQuick Abstract | PDF file iconPDF (1043 KB) |  | HTML iconHTML  

    This article describes an examination of a sample of several hundred support tickets for the Hadoop ecosystem, a widely used group of big data storage and processing systems; a taxonomy of errors and how they are addressed by supporters; and the misconfigurations that are the dominant cause of failures. Some design "antipatterns" and missing platform features contribute to these problems. Developers can use various methods to build more robust distributed systems, thereby helping users and administrators prevent some of these rough edges. View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Toward Learning Teams

    Publication Year: 2013 , Page(s): 95 - 98
    Save to Project icon | Request Permissions | Click to expandQuick Abstract | PDF file iconPDF (742 KB) |  | HTML iconHTML  

    Today's software development challenges require learning teams that can continuously apply new engineering and management practices, new and complex technical skills, cross-functional skills, and experiential lessons learned. The pressure of delivering working software often forces software teams to sacrifice learning-focused practices. Effective learning under pressure involves conscious efforts to implement original agile practices such as retrospectives and adapted strategies such as learning spikes. Teams, their management, and customers must all recognize the importance of creating learning teams as the key to braving the erratic climates and uncharted territories of future software development. View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Metrics with Impact

    Publication Year: 2013 , Page(s): 99 - 101
    Save to Project icon | Request Permissions | Click to expandQuick Abstract | PDF file iconPDF (290 KB) |  | HTML iconHTML  

    Over the past few years, metrics proposed in Impact columns such as Compound Average Growth Rate (CAGR) and software mileage have been applied in real life in organizations around the world. This issue's installment provides some examples and discusses the metrics' applicability and limitations. View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Bells, Whistles, Power, and the Requirements Process

    Publication Year: 2013 , Page(s): 104
    Save to Project icon | Request Permissions | Click to expandQuick Abstract | PDF file iconPDF (474 KB) |  | HTML iconHTML  

    As the software industry has matured, the requirements process has had to cope with unanticipated shifts of power, increasing complexity of the non-technological part of the work, and abandonment of some of the comforting myths of past century. View full abstract»

    Full text access may be available. Click article title to sign in or learn about subscription options.
  • Software Experts Summit Advertisement

    Publication Year: 2013 , Page(s): c4
    Save to Project icon | Request Permissions | PDF file iconPDF (4471 KB)  
    Freely Available from IEEE

Aims & Scope

IEEE Software's mission is to build the community of leading and future software practitioners. The magazine delivers reliable, useful, leading-edge software development information to keep engineers and managers abreast of rapid technology change

Full Aims & Scope

Meet Our Editors

Editor-in-Chief
Diomidis Spinellis
Athens University of Economics and Business
28is Oktovriou 76
Athina 104 33, Greece
dds@computer.org