Issue 3 • Date May-June 2011
Filter Results
-
Front Cover
Publication Year: 2011, Page(s): c1
|
PDF (2042 KB)
-
Table of Contents
Publication Year: 2011, Page(s):c2 - 1
|
PDF (1233 KB)
-
-
Usenix Security Symposium
Publication Year: 2011, Page(s): 6
|
PDF (19528 KB)
-
Tests: The Architect's Best Friend
Publication Year: 2011, Page(s):7 - 9
Cited by: Papers (1)When explicitly considering the testability of software-centric systems, architects tend to be more conscious and thoughtful about their design decisions, be they related to modularization, interfaces, or design choices. The paper discusses how architects can use tests and test-driven development as a design tool. The goal is to avoid or discover architectural deficiencies before they're realized-... View full abstract»
-
The Architect's Journey
Publication Year: 2011, Page(s):10 - 11When we grow a software-intensive system, we start with something that is deeply technical, something that is constrained by the laws of physics and the realities of information theory. We then shape it into something that is as invisible as it can be. This is, curiously, the polar opposite of what theoretical physicists do: they observe the fierce complexity of the cosmos, labor to tease apart th... View full abstract»
-
Virtual Retrospectives for Geographically Dispersed Software Teams
Publication Year: 2011, Page(s):12 - 15One of the biggest challenges that organizations face today in holding and learning from retrospectives is the issue of distributed teams. Although we know that face-to-face meetings are better, we often deal with budget constraints and time pressure. The author was happy to meet John at the 2009 Better Software Conference and learn of his experience at Intel. He has a good, useful story to share ... View full abstract»
-
Open Source Software for Workflow Management: The Case of YAWL
Publication Year: 2011, Page(s):16 - 19
Cited by: Papers (4)Workflow management systems support business process design, execution, and analysis. They must guarantee that work is conducted at the right time-and by the right person or software application-through the execution of a workflow process model. YAWL (Yet Another Workflow Language) was developed in 2002 to show that comprehensive support for workflow patterns is achievable. Soon after the lan guag... View full abstract»
-
Requirements and Aesthetics
Publication Year: 2011, Page(s):20 - 21In our design thinking module, with its focus on creativity and innovation, students seemed to consider the first two principles uncontroversial, even obvious. Creative design should be innovative, and it should be useful with respect to some business objectives or user tasks. The student's acceptance of this was consistent with definitions of creative outcomes. But what got them talking was the t... View full abstract»
-
Software Components beyond Programming: From Routines to Services
Publication Year: 2011, Page(s):22 - 26
Cited by: Papers (23)Software engineering (SE) conference in 1968, Doug Mc Ilroy introduced the concept of software components during his keynote speech, "Mass-Produced Software Components." That components hold such an esteemed place in SE history should come as no surprise: componentization is a fundamental engineering principle. Top-down approaches decompose large systems into smaller parts-components and bottom-up... View full abstract»
-
Facilitating Performance Predictions Using Software Components
Publication Year: 2011, Page(s):27 - 33
Cited by: Papers (4)Component-based software engineering (CBSE) poses challenges for predicting and evaluating software performance but also offers several advantages. Software performance engineering can benefit from CBSE ideas and concepts. The MediaStore, a fictional system, demonstrates how to achieve compositional reasoning about software performance. View full abstract»
-
Components in the Pipeline
Publication Year: 2011, Page(s):34 - 40
Cited by: Papers (6)State-of-the-art scientific instruments and simulations routinely produce massive datasets requiring intensive processing to disclose key features of the artifact or model under study. Scientists commonly call these data-processing pipelines, which are structured according to the pipe and-filter architecture pattern.1 Different stages typically communicate using files; each stage is an ... View full abstract»
-
Rigorous Component-Based System Design Using the BIP Framework
Publication Year: 2011, Page(s):41 - 48
Cited by: Papers (19)An autonomous robot case study illustrates the use of the behavior, interaction, priority (BIP) component framework as a unifying semantic model to ensure correctness of essential system design properties. View full abstract»
-
Managing Evolving Services
Publication Year: 2011, Page(s):49 - 55
Cited by: Papers (15)Services are subject to constant change and variation, leading to continuous redesign and improvement. However, service changes shouldn't be disruptive by requiring radical modifications or by altering the way that business is conducted. In this article, we discuss a causal model of service changes that addresses the effects of both shallow and deep changes. This article is largely based on concep... View full abstract»
-
Point/Counterpoint
Publication Year: 2011, Page(s):56 - 59We have the technology to produce software that has predictable behavior, but doing so requires a better understanding of the economics of confidence and better integration of architecting and programming. I have a long-standing interest in understanding how software components (for present purposes, implementations with interfaces) influence software design. From 2002 to 2008, several colleagues ... View full abstract»
-
Refactoring for Usability in Web Applications
Publication Year: 2011, Page(s):60 - 67
Cited by: Papers (4)Refactoring a Web application's design structure can improve its usability. Characterizing each refactoring according to the usability factor it improves and the bad usability smells it targets can further clarify its intent. View full abstract»
-
Extending Languages by Leveraging Compilers: From Modelica to Optimica
Publication Year: 2011, Page(s):68 - 74Constructing compilers using ordinary object-oriented programming takes advantage of parser generators to construct abstract syntax trees (ASTs) and uses the Visitor design pattern to program traversals that resolve names and types and to generate code. Although this plain approach allows some reuse and modularization, it's possible to go much further by combining object orientation with recent ad... View full abstract»
-
Predictable and Progressive Testing of Multithreaded Code
Publication Year: 2011, Page(s):75 - 83The Chess (Checker for System Software) testing tool repeatedly executes a multithreaded program while guaranteeing predictable and deterministic scheduling and progressively exploring more schedules to uncover errors quickly. View full abstract»
-
Scientific Software Testing: Analysis with Four Dimensions
Publication Year: 2011, Page(s):84 - 90
Cited by: Papers (2)By analyzing our testing exercise through the four dimensions of context, goals, techniques, and adequacy, we developed a better understanding of how to effectively test a piece of scientific software. Once we considered the scientist-tester as part of the testing system, the exercise evolved in a way that made use of and increased his knowledge of the software. One result was an approach to softw... View full abstract»
-
Estimation Tools and Techniques
Publication Year: 2011, Page(s):91 - 94
Cited by: Papers (3)Estimating size or resources is one of the most important topics in software engineering and IT. You won't deliver according to expectations if you don't plan, and you can't plan if you don't know the underlying dependencies and estimates. This column is an overview of estimation. It covers estimation methods and provides an overview and evaluation of popular estimation tools. View full abstract»
-
Choosing and Using Open Source Components
Publication Year: 2011, Page(s): 96
Cited by: Papers (2)The developers of the SQLite open source database engine estimate that it's deployed in roughly half a billion systems around the world. Think of the hundreds of thousands of open source components in just one click away. If the user know how to choose and use them effectively, the project can benefit mightily. View full abstract»
-
Software Experts Summit 2011 Advertisement
Publication Year: 2011, Page(s): c3
|
PDF (12974 KB)
-
Seapine Software Advertisement
Publication Year: 2011, Page(s): c4
|
PDF (1594 KB)
Aims & Scope
IEEE Software delivers reliable, useful, leading-edge software development information to keep engineers and managers abreast of rapid technology change.
Meet Our Editors
Editor-in-Chief
Diomidis Spinellis
Athens University of Economics and Business
28is Oktovriou 76
Athina 104 33, Greece
dds@computer.org

Abstract