%%% -*-BibTeX-*- %%% ==================================================================== %%% BibTeX-file{ %%% author = "Nelson H. F. Beebe", %%% version = "1.00", %%% date = "01 August 2018", %%% time = "17:23:52 MDT", %%% filename = "sigsoft2000.bib", %%% address = "University of Utah %%% Department of Mathematics, 110 LCB %%% 155 S 1400 E RM 233 %%% Salt Lake City, UT 84112-0090 %%% USA", %%% telephone = "+1 801 581 5254", %%% FAX = "+1 801 581 4148", %%% URL = "http://www.math.utah.edu/~beebe", %%% checksum = "25452 51329 265945 2517875", %%% email = "beebe at math.utah.edu, beebe at acm.org, %%% beebe at computer.org (Internet)", %%% codetable = "ISO/ASCII", %%% keywords = "ACM SIGSOFT Software Engineering Notes; %%% bibliography; BibTeX", %%% license = "public domain", %%% supported = "yes", %%% docstring = "This is a COMPLETE bibliography of ACM %%% SIGSOFT Software Engineering Notes (CODEN %%% SFENDP, ISSN 0163-5948 (print), 1943-5843 %%% (electronic)) for the years 2000--2009. %%% Other decades are covered in companion %%% bibliographies named sigsoftYYY0.bib. %%% %%% Publication began with volume 1, number 1, in %%% May 1976, and there are up to 8 issues per %%% annual volume. %%% %%% The journal has Web sites at: %%% %%% http://www.sigsoft.org/ %%% https://dl.acm.org/citation.cfm?id=J728 %%% %%% At version 1.00, the COMPLETE year coverage %%% looked like this: %%% %%% 2000 ( 221) 2004 ( 161) 2008 ( 70) %%% 2001 ( 146) 2005 ( 398) 2009 ( 133) %%% 2002 ( 102) 2006 ( 156) %%% 2003 ( 26) 2007 ( 90) %%% %%% Article: 1503 %%% %%% Total entries: 1503 %%% %%% The checksum field above contains a CRC-16 %%% checksum as the first value, followed by the %%% equivalent of the standard UNIX wc (word %%% count) utility output of lines, words, and %%% characters. This is produced by Robert %%% Solovay's checksum utility.", %%% } %%% ==================================================================== @Preamble{ "\ifx \undefined \booktitle \def \booktitle #1{{{\em #1}}} \fi" # "\ifx \undefined \TM \def \TM {${}^{\sc TM}$} \fi" } %%% ==================================================================== %%% Acknowledgement abbreviations: @String{ack-nhfb = "Nelson H. F. Beebe, University of Utah, Department of Mathematics, 110 LCB, 155 S 1400 E RM 233, Salt Lake City, UT 84112-0090, USA, Tel: +1 801 581 5254, FAX: +1 801 581 4148, e-mail: \path|beebe@math.utah.edu|, \path|beebe@acm.org|, \path|beebe@computer.org| (Internet), URL: \path|http://www.math.utah.edu/~beebe/|"} %%% ==================================================================== %%% Journal abbreviations: @String{j-SIGSOFT = "ACM SIGSOFT Software Engineering Notes"} %%% ==================================================================== %%% Bibliography entries, sorted by publication order with ``bibsort %%% --byvolume'': @Article{Neumann:2000:RPCa, author = "Peter G. Neumann", title = "Risks to the public in computers and related systems", journal = j-SIGSOFT, volume = "25", number = "1", pages = "22--26", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.340856", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Demeyer:2000:WOO, author = "Serge Demeyer and Harald Gall", title = "{Workshop on Object-Oriented Reengineering (WOOR'99)}", journal = j-SIGSOFT, volume = "25", number = "1", pages = "27", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.340857", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Rajlich:2000:RWS, author = "V. T. Rajlich and S. Rank and N. Wilde and K. H. Bennett", title = "Report on a workshop on software change and evolution", journal = j-SIGSOFT, volume = "25", number = "1", pages = "28--29", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.340858", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper provides a brief overview and report on the main out-comes of the software change and evolution (SCE99) workshop held in Los Angeles on May 17, 1999, as part of the International Conference on Software Engineering 1999. The purpose of the workshop was to gather the most active of researchers and practitioners in the field of software evolution and change. The overall conclusion of the workshop was that this is a topic of enormous importance to industry, and there is a growing community of both practitioners and researchers who are working in the field. It would therefore make sense to arrange further workshops to support this expanding community.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Evangelist:2000:NIT, author = "Michael Evangelist", title = "The {NSF} information technology research program", journal = j-SIGSOFT, volume = "25", number = "1", pages = "30", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.340859", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Tracz:2000:NSE, author = "Will Tracz and Wayne Stidolph", title = "{NSF} software engineering and language program summaries", journal = j-SIGSOFT, volume = "25", number = "1", pages = "30--32", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.352130", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Alur:2000:CAV, author = "Rajeev Alur", title = "Computer-aided verification of reactive systems", journal = j-SIGSOFT, volume = "25", number = "1", pages = "32--33", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.340861", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Ammann:2000:STM, author = "Paul Ammann", title = "System testing via mutation analysis of model checking specifications", journal = j-SIGSOFT, volume = "25", number = "1", pages = "33", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.340862", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Attie:2000:EFM, author = "Paul C. Attie", title = "Efficient formal methods for the synthesis of concurrent programs", journal = j-SIGSOFT, volume = "25", number = "1", pages = "34", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.340864", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Bastani:2000:RP, author = "Farokh B. Bastani", title = "Relational programs", journal = j-SIGSOFT, volume = "25", number = "1", pages = "34--35", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.340865", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The objective of this research is to produce useful, low-cost methods for developing correct concurrent programs from formal specifications. In particular, we address the design and verification of the synchronization and communication portions of such programs. Often, this portion can be implemented using a fixed, finite amount of synchronization related data, i.e., it is ``finite-state.'' Nevertheless, even when each program component contains only one bit of synchronization related data, the number of possible global synchronization states for K components is about $ 2^K $, in general. Because of this ``state-explosion'' phenomenon, the manual verification of large concurrent programs typically requires lengthy, and therefore error-prone, proofs. Using a theorem prover increases reliability, but requires extensive formal labor to axiomatize and solve verification problems. Automatic verification methods (such as reachability analysis and temporal logic model checking) use state-space exploration to decide if a program satisfies its specification, and are therefore also subject to state-explosion. To date, proposed techniques for ameliorating state-explosion either require significant manual labor, or work well only when the program is highly symmetric and regular (e.g., many functionally similar components connected in similar ways). To overcome these drawbacks, we advocate the synthesis of programs from specifications. This approach performs the refinement from specifications to programs automatically. Thus, the amount of formal labor is reduced to writing a formal specification and applying the appropriate synthesis step at each stage of the derivation. While nontrivial, writing a formal specification is necessary in any methodology that guarantees correctness.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Binkley:2000:RCR, author = "David Binkley", title = "Reducing the cost of regression testing", journal = j-SIGSOFT, volume = "25", number = "1", pages = "35--36", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.340866", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Boothe:2000:FCB, author = "Bob Boothe", title = "A fully capable bidirectional debugger", journal = j-SIGSOFT, volume = "25", number = "1", pages = "36--37", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.340867", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The goal of this research project is to develop a bidirectional program debugger with which one can move as easily backwards as current debuggers move forward. We believe this will be a vastly more useful debugger. A programmer will be able to start at the manifestation of a bug and proceed backwards investigating how the program arrived at the incorrect state, rather than the current and often tedious practice of the user stepping and breakpointing monotonically forward and then being forced to start over from the beginning if they skip past a point of interest. Our experimental debugger has been implemented to work with C and C++ programs on Digital/Compaq Alpha based UNIX workstations.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Bultan:2000:CMC, author = "Tevfik Bultan", title = "A composite model checking toolset for analyzing software systems", journal = j-SIGSOFT, volume = "25", number = "1", pages = "37--38", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.340868", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Burnett:2000:NAV, author = "Margaret M. Burnett", title = "{NYI} award: visual programming languages", journal = j-SIGSOFT, volume = "25", number = "1", pages = "38", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.340870", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Carter:2000:CCR, author = "Larry Carter and Jeanne Ferrante", title = "{CROPS}: coordinated restructuring of programs and storage", journal = j-SIGSOFT, volume = "25", number = "1", pages = "38--39", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.340871", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Carver:2000:SBT, author = "Richard H. Carver", title = "Specification-based testing of concurrent programs", journal = j-SIGSOFT, volume = "25", number = "1", pages = "39--40", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.340872", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Cheng:2000:IOO, author = "Betty H. C. Cheng", title = "Integrating object-oriented analysis and formal specifications", journal = j-SIGSOFT, volume = "25", number = "1", pages = "40--41", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.340873", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Clarke:2000:AVH, author = "Edmund M. Clarke", title = "Automatic verification of hardware and software systems", journal = j-SIGSOFT, volume = "25", number = "1", pages = "41--42", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.340875", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Cleaveland:2000:SFC, author = "Rance Cleaveland", title = "Specification formalisms for component-based concurrent systems", journal = j-SIGSOFT, volume = "25", number = "1", pages = "42--43", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.340876", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This project builds on my ongoing research into design formalisms for, and the automatic verification of, concurrent systems. The difficulties such systems pose for system engineers are well-known and result in large part from the the complexities of process interaction and the possibilities for nondeterminism. My work is motivated by a belief that mathematically rigorous specification and verification techniques will ultimately lead to better and easier-to-build concurrent systems. My specific research interests lie in the development of fully automatic analysis methods and process-algebraic design formalisms for modeling system behavior. I have worked on algorithms for checking properties of, and refinement relations between, system descriptions [CH93, CS93]; the implementation and release of a verification tool, the CWB-NC [CS96] (see http://www.cs.sunysb.edu/~rance to obtain the distribution); case studies [BCL99, ECB97]; and the formalization of system features, such as real time, probability, and priority, in process algebra [BCL99, CDSYar]. The aims of this project include the development of expressive and usable formalisms for specifying and reasoning about properties of open, component-based concurrent systems. More specifically, my colleagues and I have been investigating new approaches for describing component requirements and automated techniques for determining when finite-state components meet their requirements. The key topics under study include the following. A temporal logic for open systems. We are working on a notation for conveniently expressing properties constraining the behavior of open systems. Implicit specifications. Implicit specifications use system contexts, or ``test harness,'' to define requirements for open systems. We are studying expressiveness issues and model-checking algorithms for such specifications. Automatic model-checker generation. We have been developing a model-checker generator that, given a temporal logic and ``proof rules'' for the logic, automatically produces an efficient model checker.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Cleaveland:2000:PTD, author = "Rance Cleaveland and Philip M. Lewis and Scott A. Smolka", title = "Practical techniques for the design, specification, verification, and implementation of concurrent systems", journal = j-SIGSOFT, volume = "25", number = "1", pages = "43--44", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.340878", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Cook:2000:SPA, author = "Jonathan E. Cook", title = "Software process analysis: integrating models and data", journal = j-SIGSOFT, volume = "25", number = "1", pages = "44", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.340881", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Devanbu:2000:FDD, author = "Premkumar Devanbu", title = "Framework for debugging domain-specific languages", journal = j-SIGSOFT, volume = "25", number = "1", pages = "45", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.340882", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Dillon:2000:AST, author = "Laura K. Dillon", title = "Automated support for testing and debugging of real-time programs using oracles", journal = j-SIGSOFT, volume = "25", number = "1", pages = "45--46", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.340884", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Dwyer:2000:APL, author = "Matthew B. Dwyer and John Hatcliff", title = "Adapting programming languages technologies for finite-state verification", journal = j-SIGSOFT, volume = "25", number = "1", pages = "46--49", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.340885", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Program verification and program transformation are two research areas that have different goals. Program verification aims to increase confidence in software through the use of formal methods and systematic testing. Program transformation rearranges the structure of programs to increase their efficiency or to make them more amenable to some other form of processing. Despite being funded under different NSF awards from the Software Engineering and Languages program on the two different areas above the authors are collaborating to apply results from both awards to develop a set of tools, called Bandera, for transforming Java programs into a form that is amenable to verification using existing model checking tools.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Emerson:2000:AFM, author = "E. Allen Emerson", title = "Automated formal methods: model checking and beyond", journal = j-SIGSOFT, volume = "25", number = "1", pages = "49", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.340886", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Felleisen:2000:CPA, author = "Matthias Felleisen", title = "Components and program analyses", journal = j-SIGSOFT, volume = "25", number = "1", pages = "49--50", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.340887", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Model checking has been applied quite successfully to hardware verification and shows promise for software verification. The key obstacle is the well-known state explosion problem. This report describes work done by the investigator under NSF support, in particular grants CCR 980-4736 and CCR 941-5496, to ameliorate state explosion.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Anonymous:2000:AES, author = "Anonymous", title = "Assessing and enhancing software testing effectiveness", journal = j-SIGSOFT, volume = "25", number = "1", pages = "50--51", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.340888", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Although many techniques for testing software have been proposed over the last twenty years, there is still not enough solid evidence to indicate which (if any) of these techniques are effective. It is difficult to perform meaningful comparisons of the cost and effectiveness of testing techniques; in fact, even defining these terms in a meaningful way is problematic. Consider an erroneous program P, its specification S, and a test data adequacy criterion C (such as 100\% branch coverage). Even if we restrict the size of the test sets to be considered, there are a huge number of different test sets that satisfy criterion C for P and S. Since these adequate test sets typically have different properties, in order to investigate effectiveness (or other properties) rigorously, the entire space of test sets must be considered (according to some reasonable probability distribution) and appropriate probabilistic analysis and/or statistical sampling techniques must be used. In earlier research, supported by NSF Grant CCR-9206910, we developed analytical tools and an experiment design to address these issues and applied them to comparing a number of well-known testing techniques. The primary measure of effectiveness considered was probability that an adequate test set would detect at least one fault and the most of the experiment subjects were fairly small. The main thread of this research project extends that work in several directions: additional measures of cost and effectiveness are considered, analytical and experimental tools are developed for these measures, and experiments are conducted on larger programs.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Goguen:2000:HAC, author = "Joseph Goguen", title = "Hidden algebra and concurrent distributed software", journal = j-SIGSOFT, volume = "25", number = "1", pages = "51--52", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.340889", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Cleverly designed software often fails to strictly satisfy its specifications, but instead satisfies them behaviorally, in the sense that they appear to be true under all possible experiments. Hidden algebra extends prior work on abstract data types and algebraic specification [2, 6] to concurrent distributed systems, in a surprisingly simple way that also handles nondeterminism, internal states, and more [4, 3]. Advantages of an algebraic approach include decidability results for problems that are undecidable for more expressive logics, and powerful algorithms like term rewriting and unification, for implementing equational logic tools. Much work in formal methods has addressed code verification, but since empirical studies show that little of software cost comes from coding errors, our approach focuses on behavioral specification and verification at the design level, thus avoiding the distracting complications of programming language semantics.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Goyal:2000:ADS, author = "Deepak Goyal and Y. Annie Liu", title = "Automated development of software for program analysis and transformation", journal = j-SIGSOFT, volume = "25", number = "1", pages = "52--53", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.340890", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Gunter:2000:AAS, author = "Carl A. Gunter", title = "Automated analysis of standard {ML}", journal = j-SIGSOFT, volume = "25", number = "1", pages = "53", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.340950", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Gunter:2000:FSE, author = "Carl A. Gunter and Elsa L. Gunter and Pamela Zave", title = "Formal software engineering", journal = j-SIGSOFT, volume = "25", number = "1", pages = "54", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.340951", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Gupta:2000:PIP, author = "Gopal Gupta", title = "Parallel implementation of {Prolog}: the {ACE} project", journal = j-SIGSOFT, volume = "25", number = "1", pages = "54--55", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.340954", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Heineman:2000:MDA, author = "George T. Heineman", title = "A model for designing adaptable software components", journal = j-SIGSOFT, volume = "25", number = "1", pages = "55--56", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.340956", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "An important aim of software engineering is to produce reliable and robust software systems. As software systems grow in size, however, it becomes infeasible to design and construct software systems from scratch. Most software developers are familiar with reusing code from component libraries to speed up tedious programming tasks, such as constructing graphical user interfaces. However, it is still an elusive goal to construct applications entirely from pre-existing, independently developed components. We believe that such component-based development will only occur when application builders can adapt software components to suit their needs. The goal of this research is to develop novel techniques for designing software components that provide a mechanism for adapting their behavior. We aim to achieve higher levels of component use/reuse than existing approaches for reusing software components. The Active Interface technique we propose enables software components to provide two interfaces --- one for behavior and one for adapting that behavior as needed. We make a distinction between software evolution, where the component designer modifies the software component, and adaptation, where an application builder adapts the component for a different use. We also differentiate adaptation from customization; an end-user customizes a software component by choosing from a fixed set of options. An end-user adapts a software component by writing new code to alter existing functionality.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Henzinger:2000:NDC, author = "Thomas A. Henzinger", title = "New directions in computer-aided verification", journal = j-SIGSOFT, volume = "25", number = "1", pages = "56--57", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.340957", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Hind:2000:NNP, author = "Michael Hind", title = "{NPIC} --- {New Paltz interprocedural compiler}", journal = j-SIGSOFT, volume = "25", number = "1", pages = "57--58", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.340958", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Horwitz:2000:DRT, author = "Susan Horwitz", title = "Debugging via run-time type checking", journal = j-SIGSOFT, volume = "25", number = "1", pages = "58", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.340960", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Java programmers have the security of knowing that errors like out-of-bounds array indexes or attempts to dereference a null pointer will be detected and reported at run time. C and C++ programmers count on tools like Purify to achieve a similar level of confidence. The run-time checks provided by Purify have proved to be extremely useful to programmers in debugging their programs. Java also provides security via its strong type system. For example: * There are no union types in Java, so it is not possible for a program to write into a field of one type and then access that value via a field of a different type. * Only very restricted kinds of casting are allowed; for example, it is not possible to treat a pointer as if it were an integer or vice versa. * When an object is down-cast to a subtype, a run-time check will be performed to ensure that the actual type of the object is consistent with the cast. However, tools like Purify do not provide similar checks for C/C++ programs. This research involves the design and implementation of a tool to provide new kinds of run-time checks based on type information. That is, the goal of the tool is to help C/C++ programmers find errors in their programs that manifest themselves as bad run-time types, in the same way that Purify helps programmers find errors in their programs that manifest themselves as bad run-time memory accesses. The basic idea is to associate a run-time type with every piece of data. Whenever data is used by some operation, a check is performed to ensure that its run-time type is consistent with the type expected by the operation. For example, when a pointer is dereferenced, its run-time type must be ``pointer'' (not ``int'', ``float'', ``uninitialized'', etc). When an integer multiplication is performed, the operands' run-time types must be ``int'' (not ``pointer'', ``float'', ``uninitialized'', etc).", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Hudak:2000:PFR, author = "Paul Hudak", title = "Principles of functional reactive programming", journal = j-SIGSOFT, volume = "25", number = "1", pages = "59", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.340961", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Jagadeesan:2000:TP, author = "R. Jagadeesan and K. L{\"a}ufer and V. Gupta", title = "The {Triveni} project", journal = j-SIGSOFT, volume = "25", number = "1", pages = "59", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.340962", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Jayaraman:2000:RSC, author = "Bharat Jayaraman", title = "Research on sets, constraints, and preferences", journal = j-SIGSOFT, volume = "25", number = "1", pages = "60", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.340963", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Johann:2000:TEP, author = "Patricia Johann", title = "Testing and enhancing a prototype program fusion engine", journal = j-SIGSOFT, volume = "25", number = "1", pages = "60--61", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.340964", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Johnson:2000:PLL, author = "Philip M. Johnson", title = "Project {LEAP}: lightweight, empirical, anti-measurement dysfunction, and portable software developer improvement", journal = j-SIGSOFT, volume = "25", number = "1", pages = "61", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.340966", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Kfoury:2000:TTR, author = "A. J. Kfoury", title = "Type theory and rewriting theory for expressive, efficient and reliable programming languages", journal = j-SIGSOFT, volume = "25", number = "1", pages = "61--62", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.340968", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Leavens:2000:FMM, author = "Gary T. Leavens", title = "Formal methods for multimethod software components", journal = j-SIGSOFT, volume = "25", number = "1", pages = "62--63", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.340971", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Mairson:2000:PLF, author = "Harry Mairson", title = "Programming language foundations of computation theory", journal = j-SIGSOFT, volume = "25", number = "1", pages = "63", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.340972", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Mancoridis:2000:TDE, author = "Spiros Mancoridis", title = "Toward a design environment for recovering and maintaining the structure of software systems", journal = j-SIGSOFT, volume = "25", number = "1", pages = "63--64", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.340973", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Mesenguer:2000:SIO, author = "Jos{\'e} Mesenguer and Carolyn Talcott", title = "Semantic interoperation of open systems", journal = j-SIGSOFT, volume = "25", number = "1", pages = "64--65", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.340976", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Minsky:2000:TAI, author = "Naftaly H. Minsky", title = "Towards architectural invariants of evolving systems", journal = j-SIGSOFT, volume = "25", number = "1", pages = "65", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.340977", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Mislove:2000:SMC, author = "Michael W. Mislove", title = "Semantic models for concurrency", journal = j-SIGSOFT, volume = "25", number = "1", pages = "65--66", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.340980", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Nadathur:2000:FRD, author = "Gopalan Nadathur", title = "A framework for realizing derivation systems", journal = j-SIGSOFT, volume = "25", number = "1", pages = "66--67", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.340982", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Necula:2000:LBA, author = "George C. Necula and Shree Rahul", title = "A logic-based approach to software system safety and security", journal = j-SIGSOFT, volume = "25", number = "1", pages = "67--68", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.340983", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Offutt:2000:STA, author = "Jeff Offutt", title = "Software testing and analysis of object-oriented software", journal = j-SIGSOFT, volume = "25", number = "1", pages = "68", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.340986", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Our work has studied new language mechanisms for accessing message invocations in message passing based concurrent programming languages. Invocation handling mechanisms in many concurrent languages have significant limitations that make it difficult or costly to solve common programming situations encountered in program visualization, debugging, and scheduling scenarios. We have defined and implemented new such mechanisms within the SR concurrent language and have gained some experience with them. This work has led us to want a cleaner, higher-level way of defining mechanisms for message invocation. We are, therefore, now taking an object-oriented approach. As a step toward that goal, we are currently applying our ideas to Java. Below, we briefly summarize these two areas.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Olsson:2000:CPL, author = "Ronald A. Olsson", title = "Concurrent programming language support for invocation handling: design and implementation", journal = j-SIGSOFT, volume = "25", number = "1", pages = "68--69", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.340987", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Pierce:2000:EO, author = "Benjamin C. Pierce", title = "The essence of objects", journal = j-SIGSOFT, volume = "25", number = "1", pages = "69--71", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.340989", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "``The Essence of Objects'' is an ongoing program of research in programming languages, type systems, and distributed programming at the University of Pennsylvania, supported by the National Science Foundation under Career grant CCR-9701826, Principled Foundations for Programming with Objects. Papers on most of the topics discussed in this outline can be found via http://www.cis.upenn.edu/bcpierce/papers.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Pontelli:2000:PDE, author = "Enrico Pontelli", title = "Parallel and distributed execution of constraint programs", journal = j-SIGSOFT, volume = "25", number = "1", pages = "71--72", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.340992", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The goal of this research project is to study techniques and methodologies for execution of Constraint logic programs on parallel and distributed architectures. These models will be applied to implicit and explicit parallelization of complex and irregular symbolic applications, such as those arising in Natural Language Processing, Knowledge-based Systems, and Digital Libraries, and to provide novel frameworks for advanced World-Wide Web programming and coordination of software components.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Rajlich:2000:MTC, author = "V{\'a}clav Rajlich", title = "A model and a tool for change propagation in software", journal = j-SIGSOFT, volume = "25", number = "1", pages = "72", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.340993", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Ramakrishnan:2000:TLP, author = "C. R. Ramakrishnan", title = "Tabled logic programming for verification and program analysis", journal = j-SIGSOFT, volume = "25", number = "1", pages = "73", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.340996", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Ramakrishnan:2000:SEL, author = "C. R. Ramakrishnan and I. V. Ramakrishnan and Scott A. Smolka and David S. Warren", title = "Specification and evaluation of logic-based model checking", journal = j-SIGSOFT, volume = "25", number = "1", pages = "73--74", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.340997", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Redmiles:2000:IDI, author = "David F. Redmiles", title = "Improving the design of interactive software", journal = j-SIGSOFT, volume = "25", number = "1", pages = "74--75", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.340999", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This NSF sponsored CAREER project combines elements of research in human-computer interaction with research in software engineering. Three objectives are (1) to develop a model of software development as a process of on-going communication; (2) to support this model through active mechanisms in software tools; and (3) to improve the accessibility and acceptance of usability methods by software practitioners. In general, the objectives reflect a theory of human-centered software development.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Reynolds:2000:DDI, author = "John C. Reynolds", title = "The design, definition and implementation of programming languages", journal = j-SIGSOFT, volume = "25", number = "1", pages = "75", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.341002", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Rine:2000:PCB, author = "D. Rine and N. Nada", title = "Public case-base and tool kit using a validated {RRM}", journal = j-SIGSOFT, volume = "25", number = "1", pages = "76", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.341003", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Software systems are important, yet poorly understood entities. Users, and at times even developers, do not always understand what is occurring within the software in use. The Exploratory Visualization project attempts to address the technical issues involved in helping users understand running computations, especially long-lived distributed computations. The three facets of this problem that we investigate in our project are (1) creating accurate views of a running execution, (2) providing comprehensive and efficient access to a computation, and (3) responding to the user's interactions to promote understanding and optimize data collection.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Roman:2000:EV, author = "Gruia-Catalin Roman and Delbert Hart and Eileen Kraemer", title = "Exploratory visualization", journal = j-SIGSOFT, volume = "25", number = "1", pages = "76--77", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.341005", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Roman:2000:RDD, author = "Gruia-Catalin Roman and Amy L. Murphy", title = "Rapid development of dependable applications over Ad hoc networks", journal = j-SIGSOFT, volume = "25", number = "1", pages = "77--78", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.341007", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Advances in wireless communication and network computing technologies make possible new kinds of applications involving transient interactions among physical components that move across a wide range of spaces, from the confines of a room to the airspace across an ocean, and require no fixed networking infrastructure to communicate with one another. Such components may come together to form ad hoc networks for the purpose of exchanging information or in order to engage in cooperative task-oriented behaviors. Ad hoc networks are assembled, reshaped and taken apart as components move in and out of communication range; all interactions are transient; computations become highly decoupled and rely on weak forms of data consistency; disconnections are frequent and unpredictable; and component behavior is sensitive to changes in location, context, quality of service, or administrative domain. Our objective is to develop software engineering methods and an associated software infrastructure that will facilitate rapid development of dependable mobile applications executing over ad hoc networks.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Rosenblum:2000:CME, author = "David S. Rosenblum", title = "{CAREER}: mechanisms for ensuring the integrity of distributed object systems", journal = j-SIGSOFT, volume = "25", number = "1", pages = "78--79", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.341008", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Rothermel:2000:TME, author = "Gregg Rothermel", title = "Testing and maintaining evolving software systems", journal = j-SIGSOFT, volume = "25", number = "1", pages = "79--80", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.341012", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Rugaber:2000:SEI, author = "Spencer Rugaber and Linda Wills", title = "Software evolution and interleaving", journal = j-SIGSOFT, volume = "25", number = "1", pages = "80", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.341015", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Scedrov:2000:LBS, author = "Andre Scedrov", title = "A language-based security analysis", journal = j-SIGSOFT, volume = "25", number = "1", pages = "80--81", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.341016", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Schmidt:2000:AIP, author = "David Schmidt", title = "Abstract interpretation and program modelling", journal = j-SIGSOFT, volume = "25", number = "1", pages = "81--82", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.341017", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Shao:2000:TCI, author = "Zhong Shao", title = "Typed common intermediate format", journal = j-SIGSOFT, volume = "25", number = "1", pages = "82", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.341019", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Shull:2000:EVP, author = "Forrest Shull and Victor R. Basili and Marvin Zelkowitz", title = "The experimental validation and packaging of software technologies", journal = j-SIGSOFT, volume = "25", number = "1", pages = "82--83", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.341021", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Sistla:2000:FMC, author = "A. Prasad Sistla", title = "Formal methods in concurrent and distributed systems", journal = j-SIGSOFT, volume = "25", number = "1", pages = "84", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.341022", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Smidts:2000:AAG, author = "Carol S. Smidts", title = "An approach to the automatic generation of software functional architecture", journal = j-SIGSOFT, volume = "25", number = "1", pages = "84--85", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.341025", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Smith:2000:BRI, author = "Geoffrey Smith and Dennis Volpano", title = "Basic research in information privacy", journal = j-SIGSOFT, volume = "25", number = "1", pages = "86", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.341026", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Stewart:2000:AAF, author = "David B. Stewart", title = "Automated analysis and fine-tuning of timing properties in embedded real-time systems", journal = j-SIGSOFT, volume = "25", number = "1", pages = "86--87", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.341028", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "An extremely time-consuming task of producing an embedded real-time system is the final analysis and fine-tuning of the system's timing. Existing CASE tools focus on the software specification and design of embedded systems. They provide little, if any, support after the software has been implemented. Even if the developer uses a CASE tool to design their system, it likely does not meet the timing specifications on the first try. This happens because the CASE tool's software design and real-time analysis is based only on estimated data and idealized models. The tools do not take into account practical concerns such as operating system overhead, interrupt handling, limitations of the programming language or processor, inaccuracies in estimating worst-case execution time of each process, and software errors introduced at the implementation phase by the programmers. Performance monitoring tools allow developers to obtain raw data from the underlying embedded system in real-time. These tools provide most, if not all, of the data needed to pinpoint the problem. Such data, however, is not provided in a symbolic fashion, and thus could be very difficult to understand. The monitors only show what happened during run-time, without correlating those results to the original specifications. Performance monitors also do not perform any analysis on the data that is collected. As a result, there is no means to easily differentiate between parts of the execution that are ``normal'' versus those parts that have difficult-to-detect timing errors. Only an expert's eye can quickly spot the differences. We are investigating tools that can help embedded system designers analyze, debug, and fine-tune the timing characteristics of their embedded implementations. Such a tool can have a major impact, by allowing designers whose expertise is in an area other than real-time system analysis, such as communications, controls, or hardware design, to use the tool and obtain valuable information on how to fix their code that is not performing according to specifications.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Swift:2000:PPA, author = "Terrance Swift", title = "Principles, practice, and applications of tabled logic programming", journal = j-SIGSOFT, volume = "25", number = "1", pages = "87--88", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.341031", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Tai:2000:ATC, author = "K. C. Tai", title = "Analysis and testing of concurrent object-oriented software", journal = j-SIGSOFT, volume = "25", number = "1", pages = "88", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.341033", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Tian:2000:EMI, author = "Jeff Tian", title = "Early measurement and improvement of software reliability", journal = j-SIGSOFT, volume = "25", number = "1", pages = "89", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.341034", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{VanHentenryck:2000:CP, author = "Pascal {Van Hentenryck}", title = "Constraint programming", journal = j-SIGSOFT, volume = "25", number = "1", pages = "89--90", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.341036", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{VanderZanden:2000:NVD, author = "Bradley T. {Vander Zanden}", title = "New visualization and debugging technology for one-way dataflow constraints", journal = j-SIGSOFT, volume = "25", number = "1", pages = "90--91", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.341038", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Wand:2000:ABP, author = "Mitchell Wand", title = "Analysis-based program transformations", journal = j-SIGSOFT, volume = "25", number = "1", pages = "91--92", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.341041", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Wand:2000:OMU, author = "Mitchell Wand and William D. Clinger", title = "Optimizing memory usage in higher-order programming languages: theoretical and experimental studies", journal = j-SIGSOFT, volume = "25", number = "1", pages = "92", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.341042", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{White:2000:GSD, author = "Elizabeth L. White", title = "General strategies for dynamic reconfiguration", journal = j-SIGSOFT, volume = "25", number = "1", pages = "93", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.341044", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "In recent years there has been a great deal of attention in the software engineering community on the development of techniques and tools that provide support for dynamic reconfiguration, the ability to make changes to a running application. The changes of interest include (1) adding/removing/moving components; (2) adding/removing bindings (communication channels); (3) changing the characteristics of the components or bindings. My work in this area has focused both on software support for dynamic reconfiguration of parallel applications and on frameworks and static software analysis techniques for determining the validity of component-level adaptations in the context of dynamic reconfiguration.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Zeil:2000:RGM, author = "Steven J. Zeil", title = "Reliability growth modeling from fault failure rates", journal = j-SIGSOFT, volume = "25", number = "1", pages = "94", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.341045", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "A variety of reliability growth models provide quantified measures of test effectiveness in terms that are directly relevant to project management [Lyu96], but at the cost of restricting testing to representative selection, in which test data is chosen to reflect the operational distribution of the program's inputs. During testing, data is collected on the observed times between program failures (or, similarly, numbers of failures within a time interval). These observations are fitted to one of various models, which can then be used to estimate the current reliability of the program.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Stidolph:2000:EDC, author = "Wayne Stidolph", title = "{Evolutionary Design of Complex Software (EDCS)} demonstration days 1999", journal = j-SIGSOFT, volume = "25", number = "1", pages = "95", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.341046", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This report summarizes the Product/Technology demonstrations given at Defense Advanced Research Projects Agency (DARPA) Evolutionary Design of Complex Software (EDCS) Program Demonstration Days, held 28-29 June 1999 at the Sheraton National Hotel, Arlington, VA.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Anonymous:2000:AA, author = "Anonymous", title = "{Acme} and {AcmeStudio}", journal = j-SIGSOFT, volume = "25", number = "1", pages = "96", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.341049", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Scherlis:2000:ACT, author = "William L. Scherlis", title = "Adaptation and commitment technology {(ACT)}", journal = j-SIGSOFT, volume = "25", number = "1", pages = "96", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.341051", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Taylor:2000:Aa, author = "Richard Taylor and David Redmiles", title = "Arabica", journal = j-SIGSOFT, volume = "25", number = "1", pages = "96", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.341053", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Stavridou:2000:AAC, author = "Victoria Stavridou", title = "Architectural analysis of component-based systems", journal = j-SIGSOFT, volume = "25", number = "1", pages = "96--97", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.341061", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Anonymous:2000:AAS, author = "Anonymous", title = "{ARGUS-1}: ``All-Seeing'' architectural analysis", journal = j-SIGSOFT, volume = "25", number = "1", pages = "97", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.341066", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Taylor:2000:Ab, author = "Richard Taylor and David Redmiles", title = "{ArchStudio}", journal = j-SIGSOFT, volume = "25", number = "1", pages = "97", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.341063", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Taylor:2000:AU, author = "Richard Taylor and David Redmiles", title = "{Argo\slash {UML}}", journal = j-SIGSOFT, volume = "25", number = "1", pages = "97", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.341065", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Brannum:2000:CPA, author = "Garry Brannum", title = "Capability packages for avionics software {(CPAS)}", journal = j-SIGSOFT, volume = "25", number = "1", pages = "98", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.341070", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Carlson:2000:E, author = "Bill Carlson and Chris Garrity", title = "Ewatch", journal = j-SIGSOFT, volume = "25", number = "1", pages = "98", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.341069", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Kaiser:2000:IBIa, author = "Gail E. Kaiser", title = "{Internet}-based information management technology", journal = j-SIGSOFT, volume = "25", number = "1", pages = "98", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.341073", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Taylor:2000:C, author = "Richard Taylor and David Redmiles", title = "{Chimera}", journal = j-SIGSOFT, volume = "25", number = "1", pages = "98", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.341074", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Heimbigner:2000:DSE, author = "Dennis Heimbigner and Alexander L. Wolf", title = "Distributed software engineering", journal = j-SIGSOFT, volume = "25", number = "1", pages = "99", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.341078", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Luckham:2000:CEP, author = "David Luckham", title = "Complex event processing {(CEP)}", journal = j-SIGSOFT, volume = "25", number = "1", pages = "99", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.341080", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Teitelbaum:2000:C, author = "Tim Teitelbaum", title = "{CodeSurfer}", journal = j-SIGSOFT, volume = "25", number = "1", pages = "99", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.341076", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Wiederhold:2000:CMS, author = "Gio Wiederhold and Dorothea Beringer and Neal Sample and Laurence Melloul", title = "Composition of multi-site software {(CHAIMS)}", journal = j-SIGSOFT, volume = "25", number = "1", pages = "99--100", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.341082", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Blazer:2000:CBD, author = "Bob Blazer", title = "A {COTS-based} design editor for user specified domains", journal = j-SIGSOFT, volume = "25", number = "1", pages = "100", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.341084", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Richardson:2000:BDA, author = "Debra Richardson", title = "{DAS-BOOT}: design-, architecture- and specification-based approaches to object-oriented testing", journal = j-SIGSOFT, volume = "25", number = "1", pages = "100", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.341085", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Lieberherr:2000:DAP, author = "Karl J. Lieberherr", title = "{Demeter}\slash adaptive programming", journal = j-SIGSOFT, volume = "25", number = "1", pages = "100--101", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.341088", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Rugaber:2000:ECS, author = "Spencer Rugaber", title = "Esprit de {Corps} Suite", journal = j-SIGSOFT, volume = "25", number = "1", pages = "101", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.341094", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Taylor:2000:E, author = "Richard Taylor and David Redmiles", title = "Endeavors", journal = j-SIGSOFT, volume = "25", number = "1", pages = "101", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.341092", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Taylor:2000:EDE, author = "Richard Taylor and David Redmiles", title = "Expectation-driven event monitoring", journal = j-SIGSOFT, volume = "25", number = "1", pages = "101", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.341095", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Vestal:2000:D, author = "Steve Vestal", title = "{DoME}", journal = j-SIGSOFT, volume = "25", number = "1", pages = "101", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.341089", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Osterweil:2000:F, author = "Leon Osterweil and Lori A. Clarke", title = "{FLAVERS}", journal = j-SIGSOFT, volume = "25", number = "1", pages = "101--102", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.341098", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Bailin:2000:FAM, author = "Sidney Bailin and Dean Allemang", title = "Formal alternative management integrating logical inference and rationals {(FAMILIAR)}", journal = j-SIGSOFT, volume = "25", number = "1", pages = "102", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.341100", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Vestal:2000:ICE, author = "Steve Vestal", title = "Incremental constraint engine", journal = j-SIGSOFT, volume = "25", number = "1", pages = "102--103", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.341102", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Kaiser:2000:IBIb, author = "Gail E. Kaiser", title = "{Internet}-based information management technology", journal = j-SIGSOFT, volume = "25", number = "1", pages = "103", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.341107", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Lehoczky:2000:IIS, author = "John Lehoczky", title = "{INSERT} --- {Incremental Software Evolution for Real-Time Systems}", journal = j-SIGSOFT, volume = "25", number = "1", pages = "103", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.341104", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Batory:2000:JTS, author = "Don Batory", title = "{Jakarta Tool Suite (JTS)}", journal = j-SIGSOFT, volume = "25", number = "1", pages = "103--104", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.341108", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Meseguer:2000:M, author = "Jose Meseguer and Carolyn Talcott", title = "{Maude}", journal = j-SIGSOFT, volume = "25", number = "1", pages = "104", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.341115", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Osterweil:2000:LJ, author = "Leon Osterweil and Lori A. Clarke", title = "{Little-JIL}", journal = j-SIGSOFT, volume = "25", number = "1", pages = "104", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.341113", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Taylor:2000:KD, author = "Richard Taylor and David Redmiles", title = "Knowledge depot", journal = j-SIGSOFT, volume = "25", number = "1", pages = "104", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.341111", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Boehm:2000:MBS, author = "Barry Boehm and Neno Medvidovic", title = "Model-based (systems) architecting and software engineering {(MBASE)}", journal = j-SIGSOFT, volume = "25", number = "1", pages = "104--105", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.341117", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Johnson:2000:MAG, author = "Lewis Johnson and Stacy Marsella", title = "{MediaDoc}: automated generation of multimedia explanatory presentations", journal = j-SIGSOFT, volume = "25", number = "1", pages = "105", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.341121", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Karsai:2000:MIC, author = "Gabor Karsai", title = "Model integrated computing {(MIC)}", journal = j-SIGSOFT, volume = "25", number = "1", pages = "105", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.341125", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Vestal:2000:M, author = "Steve Vestal", title = "{MetaH}", journal = j-SIGSOFT, volume = "25", number = "1", pages = "105", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.341124", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Reed:2000:OVC, author = "Daniel Reed and Simon Kaplan", title = "{ORBIT\slash VIRTUE} --- collaboration and visualization support for complex systems evolution", journal = j-SIGSOFT, volume = "25", number = "1", pages = "105--106", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.341127", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Boehm:2000:SAA, author = "Barry Boehm and Neno Medvidovic", title = "Software architecture, analysis, generation, and evolution {(SAAGE)}", journal = j-SIGSOFT, volume = "25", number = "1", pages = "106", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.341131", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Young:2000:HAT, author = "Michal Young", title = "High assurance technologies", journal = j-SIGSOFT, volume = "25", number = "1", pages = "106", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.341130", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Balzer:2000:SWC, author = "Bob Balzer", title = "Securely wrapping {COTS} products", journal = j-SIGSOFT, volume = "25", number = "1", pages = "106--107", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.341134", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Richardson:2000:SAT, author = "Debra Richardson", title = "Siddhartha --- automated test driver-oracle synthesis", journal = j-SIGSOFT, volume = "25", number = "1", pages = "106--107", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.341136", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{McDonald:2000:S, author = "Jim McDonald", title = "Specware", journal = j-SIGSOFT, volume = "25", number = "1", pages = "107", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.341139", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Richardson:2000:SSB, author = "Debra Richardson", title = "{SoBelt}: structural and behavioral execution instrumentation tool", journal = j-SIGSOFT, volume = "25", number = "1", pages = "107", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.341138", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Egyed:2000:UAS, author = "Alexander Egyed", title = "{UML\slash Analyzer} --- a system for defining and analyzing the conceptual integrity of {UML} models", journal = j-SIGSOFT, volume = "25", number = "1", pages = "108", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.341142", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Richardson:2000:TST, author = "Debra Richardson", title = "{TestTalk}: software test description language", journal = j-SIGSOFT, volume = "25", number = "1", pages = "108", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.341141", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Taylor:2000:W, author = "Richard Taylor and David Redmiles", title = "{WebDAV}", journal = j-SIGSOFT, volume = "25", number = "1", pages = "108", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.341143", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Raccoon:2000:WNK, author = "L. B. S. Raccoon", title = "A whole new kind of engineering", journal = j-SIGSOFT, volume = "25", number = "1", pages = "109--113", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.341144", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "There is a lot of momentum for software engineering to become a title act branch of engineering. A brochure from McMaster University (www.cas.mcmaster.ca/cas/undergraduate/SEbrochure.pdf, Fall 1999), reads, ``At McMaster we have taken the position that software engineering is a branch of engineering and have applied well established principles of engineering education in this new specialty.'' And, the Texas Board of Professional Engineers is certifying software engineers as title act engineers, today. If other states follow then software engineering will become a title act branch of engineering by fiat. While I agree that software engineering resembles traditional engineering in many ways, I also believe that software engineering is a whole new kind of engineering that is equal to, parallel to, and independent of traditional engineering. I believe that if software engineers want to be licensed, they should recognize their unique reality and become licensed in a way that reflects this reality. Software engineers should be professionalized on their own terms, with their own regulatory structure. Software engineers should create a whole new kind of engineering, and not just follow the path trodden by traditional engineers. In the first section, I argue that software engineering is a real profession that stands on its own and that its culture differs substantially from that of traditional engineering. Software engineering is big: it counts nearly as many practitioners as traditional engineering; diverse: it has many areas of specialized practice; and enduring: it has grown steadily for more than fifty years. Every facet of software engineering, from technology to attitude to origins, differs from traditional engineering, which profoundly affects the culture of software engineering. Software engineering is not a branch of traditional engineering. In the second section, I argue that all-of-software-engineering-combined should resemble all-of-traditional-engineering-combined. Four kinds of traditional engineering regulation are practiced today that software engineering can emulate: unregulated, title-act, practice-act, and all-of-engineering-combined. Of these four kinds, title-act and all-of-engineering-combined are the most likely outcomes. There is a lot of momentum to regulate software engineering as a title-act branch of engineering. However, regulating software engineering like all-of-engineering-combined will give software engineers more control over their destiny, let them define their own identity and culture, wield their own power, and set their own curriculum and immigration policy.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Traas:2000:SCM, author = "Vincent Traas and Jos van Hillegersberg", title = "The software component market on the {Internet}: current status and conditions for growth", journal = j-SIGSOFT, volume = "25", number = "1", pages = "114", month = jan, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/340855.341145", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Component Based Development (CBD) promises a large step forward in the quest for maximizing reuse in software development. Although a variety of definitions of CBD exists, key to CBD is the process of building systems by way of combination and integration of pre-engineered and pre-tested software components. For CBD to be the long awaited breakthrough in software development, the efficient reuse of software components has to be organized by a market system; ``Components develop their full potential only in a component market'' [5]. Organizations may benefit from organizing an internal component market. Software components can then be reused over multiple projects saving valuable resources. However, the most appropriate marketplace to buy and sell components would be the Internet: an international, freely accessible network, which is perfectly suited for offering, promoting and distributing components. A flourishing component market on the Internet would really allow organizations to buy and reuse against low-costs. Developers would only need to focus on functionality specific to the project, and on locating and integrating available components. Industry watchers have predicted huge growth figures for the software component market. Gartner predicts the component market will grow to \$7 billion in 2001, of which \$2 billion directly comes from component sales [1]. Giga information group predicts an off-the-shelf component market of \$3,3 billion in 2001 [6]. Ovum goes further by estimating the size of the software component market to be \$64 billion in 2002 [3]. But does a component market on the Internet already exist, and if so, what is its status? Also, if a component market is so important for CBD to fulfil its promises, what are the conditions for growth towards maturity? Apart from rough estimations of the future size of the market, little research has been done to investigate the current component market and its growth. It is the objective of the research reported on in this paper to gain insight into these questions. The research described in this article contained two phases: First, an overview of the current status of the component market on the Internet was created. Next, based on this overview and a literature study, conditions for growth of the market were developed. An email-survey was held in which experts were asked to rate these conditions by importance and comment on them. Section two and three describe the results of these research phases respectively.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Griswold:2000:GVC, author = "William G. Griswold", title = "Guilds or virtual countries? the future of software professionals", journal = j-SIGSOFT, volume = "25", number = "2", pages = "2--2", month = mar, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/346057.346061", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:56 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Doernhoefer:2000:SNSa, author = "Mark Doernhoefer", title = "Surfing the net for {{\booktitle{Software Engineering Notes}}}", journal = j-SIGSOFT, volume = "25", number = "2", pages = "8--16", month = mar, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/346057.346062", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:56 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Neumann:2000:RPCb, author = "Peter G. Neumann", title = "Risks to the public in computers and related systems", journal = j-SIGSOFT, volume = "25", number = "2", pages = "17--21", month = mar, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/346057.346063", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:56 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Pulvermuller:2000:TGC, author = "Elke Pulverm{\"u}ller and Andreas Speck", title = "Towards generative components", journal = j-SIGSOFT, volume = "25", number = "2", pages = "22--24", month = mar, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/346057.346064", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:56 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "On September, 28 --- 30, 1999, the First International Symposium on Generative and Component-based Software Engineering (GCSE'1999) took place at Erfurt, Germany. This was the origin of a new international forum bundling the research on all generative techniques within the software development process, especially those focused on components. The next Symposium GCSE'2000 is intended to take place on October, 10--12, 2000, Erfurt. This time co-hosted with NET.OBJECTDAYS'2000.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Munson:2000:RTS, author = "Ethan V. Munson", title = "Representations, tools, and services for the complete integration of software development documents", journal = j-SIGSOFT, volume = "25", number = "2", pages = "25--25", month = mar, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/346057.346065", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:56 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Mamone:2000:DT, author = "Salvatore Mamone", title = "Documentation testing", journal = j-SIGSOFT, volume = "25", number = "2", pages = "26--29", month = mar, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/346057.346066", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:56 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "One definition of documentation is 'Any written or pictorial information describing, defining, specifying, reporting, or certifying activities, requirements, procedures, or results.' (1). Documentation is as important to a product's success as the product itself. If the documentation is poor, non-existent, or wrong, it reflects on the quality of the product and the vendor. At the Bell Atlantic Systems Integration \& Testing Center documentation testing is an important function that receives as much attention as the testing of software and hardware. Because the Bell Atlantic Systems Integration \& Testing Center is ISO9001 certified, an enormous effort was undertaken to ensure quality assurance of all products including documentation. Both a test procedure and test plan for documentation has been implemented to ensure this quality. This article will describe what documentation is, why document testing is important, and how document testing is performed at the Bell Atlantic Systems Integration \& Testing Center. Other information pertaining to documentation, such as human factors, how to achieve document comprehensiveness, and comprehensibility, although important, are beyond the reach of this report.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Adams:2000:GI, author = "Tom Adams", title = "The {God} of inspection", journal = j-SIGSOFT, volume = "25", number = "2", pages = "30--30", month = mar, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/346057.346067", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:56 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Agarwal:2000:OEL, author = "Rakesh Agarwal and Arup Ratan Raha and Bhaskar Ghosh", title = "Our experience and learning in {ERP} implementation", journal = j-SIGSOFT, volume = "25", number = "2", pages = "31--34", month = mar, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/346057.346068", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:56 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Information systems developed to support the functional units of a complete enterprise (referred in this paper as ``application package'') only serve standard industry processes. Very often, the business processes that differentiate an organization from another are the processes that define their competitive edge. This competitive edge can be achieved if the implemented processes are based on the best practices supported by these packages. This requires a strong knowledge of Business Processes, adept IT capability and a sound, tested implementation. This paper describes our experience in using the COTS package application MAC-PAC v10 for TOSHIBA sales \& services (a subsidiary of Toshiba Corporation).", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Juric:2000:ILS, author = "Matjaz B. Juric and Ivan Rozman and Marjan Hericko and Tomaz Domajnko", title = "Integrating legacy systems in distributed object architecture", journal = j-SIGSOFT, volume = "25", number = "2", pages = "35--39", month = mar, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/346057.346069", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:56 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The ability of a new technology to reuse legacy systems is very important for its economic success. This paper presents a method for integrating legacy systems within distributed object architectures. The necessary steps required for integration are defined. It is explained how to define object interfaces. A detailed overview of how to implement the wrappers is given. The paper also answers the question which distributed object model is most suitable for legacy integration. Therefore a decision model is defined and the evaluation results are presented.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Mei:2000:CAR, author = "Hong Mei", title = "A complementary approach to requirements engineering---software architecture orientation", journal = j-SIGSOFT, volume = "25", number = "2", pages = "40--45", month = mar, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/346057.346070", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:56 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper presents the idea of Software Architecture Oriented Requirements Engineering, a complementary approach to existing requirements engineering processes and methods. The main objective is to introduce concepts and principles of software architecture into requirement analysis and requirement specification, supporting requirement reuse, traceability between requirement specifications and system design, and consistency in the whole software development process more effectively. The paper views connectors as the first-class entities in the problem space, not just in the solution space as most of current research on software architecture does, hence the connector recognition and specification are same important as component recognition and specification in requirements engineering. Based on this idea, the paper presents a new software development process and corresponding requirements engineering process, gives some guidelines for connector recognition, and borrows the notations of software architecture description to specify the functional and behavioural requirements at a high abstraction level. It must be pointed out that the approach presented in this paper is not a substitute for existing ones, but a complement to them from another perspective and at a different abstraction level.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Albizuri-Romero:2000:RVC, author = "Miren Bego{\~n}a Albizuri-Romero", title = "A retrospective view of {CASE} tools adoption", journal = j-SIGSOFT, volume = "25", number = "2", pages = "46--50", month = mar, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/346057.346071", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:56 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper provides a retrospective view of the adoption of CASE tools in organizations using some empirical data from various research studies in this field. First, relevant factors that influence the decision to adopt such a tool are discussed. Such factors include elements related to the organization adopting such a technology, as well as other characteristics associated with the application environment and the alternative development methods being used. Then, the advantages and disadvantages of using CASE tools are discussed and some critical success factors are identified. Finally, a taxonomy of CASE tools in the 90's is presented. The paper provides some explanations of why some organizations are successful in adopting CASE tools and gives recommendations for making a better use of such a technology.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Ramaswamy:2000:LDS, author = "Ramkumar Ramaswamy", title = "Latency in distributed, sequential application designs", journal = j-SIGSOFT, volume = "25", number = "2", pages = "51--55", month = mar, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/346057.346072", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:56 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Despite advances in hardware, communications and software technology, latency remains a pressing problem for designers of distributed applications. Even after application functionality has been carefully distributed amongst multiple sites, there is the problem of the detailed design of client requests so that network trips are efficiently made. Most solution approaches (or compromises) for detailed design that are encountered in practice either tend to be ad-hoc, or are intended for use with a specific class of development environment, such as object-oriented languages. In this paper we take a fresh look at the problem of designing client requests in the presence of latency. We treat the client machine as a black box, thus ignoring the details of intra-machine communication and staying clear of specific environments such as OO. We propose a generic, intuitively appealing principle for the sequential design of client requests that allows a designer to systematically work around latency to meet response-time requirements. Applicability of this principle is shown using some simple but realistic examples of business transactions.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Yuan:2000:OCH, author = "Xiaodong Yuan and Ying Feng", title = "The optimization of class hierarchy in object-oriented design", journal = j-SIGSOFT, volume = "25", number = "2", pages = "56--59", month = mar, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/346057.346073", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:56 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Constructing class hierarchies is an important step in object-oriented design, but no formal and effective methods of optimizing class hierarchies were previously established. In this paper, we first divide the relationship between object sets into four categories: inclusion, superposition, separation, and cross. Then the genres of inheritance are discussed from the point of view of object set. Following that, we introduce the concept of maximal uncrossed set used to optimize a class hierarchy. Through finding all of these maximal uncrossed sets, we present the method and steps of constructing a reasonable, clear, and complete class hierarchy. Various representations of inheritance relationship in a class hierarchy diagram and a recursion algorithm to get all the maximal uncrossed sets are also provided in this paper.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Han:2000:CSO, author = "Yan Han and Xu Chun-Gen and Zhang Gong-Xuan and Liu Feng-Yu", title = "Constraint specification for object model of access control based on role", journal = j-SIGSOFT, volume = "25", number = "2", pages = "60--63", month = mar, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/346057.346074", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:56 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Constraint specifications for access control organize a set of constraints to control human-computer interaction for users to perform their duties securely and efficiently. Constraint specifications are imperative for the access control and security management of large and complex multi-user interactive applications. Existing specifications of Role-based Access Control are incomplete and complicated. This paper proposes a framework of well-defined constraint specifications for developers to build application-level access control based on users' roles. They ensure that each role is configured with consistent privileges, each actor is authorized to proper roles and then each actor can activate and play his authorized roles without interest conflicts. These formal specifications are consistent and inferable, complete and simplified, abundant and scalable for diversified multi-user applications.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Han:2000:OOM, author = "Yan Han and Liu Fengyu and Zhang Hong", title = "An object-oriented model of access control based on role", journal = j-SIGSOFT, volume = "25", number = "2", pages = "64--68", month = mar, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/346057.346075", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:56 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "At present, majority access control models mainly deal with data-protection at the back-end of applications. However, they are not applicable for large and complex multi-user applications. Though Object Technology has turned into one of the mainstream approaches for large and complex applications development, it still lacks a general model of application-level access control. While the existing models of role-based access control could simplify privilege management, they neglect the dynamic features of activated roles. This paper proposes an object-oriented model in Unified Modeling Language supporting application-level access control based on users' roles. In the model, an interface type is provided containing a set of operations as user services, which are authorized to users via their roles. To represent the activated roles, Role-Playing is introduced, and it is modeled as an active class. Every object of Role-Playing runs in particular context, which restrict users' rights dynamically and control users' interaction actively. The model is suitable for multi-user interactive computing and distributed information-processing systems.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Notkin:2000:SNS, author = "David Notkin", title = "Surfing the net for {{\booktitle{Software Engineering Notes}}}", journal = j-SIGSOFT, volume = "25", number = "3", pages = "5--10", month = may, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505863.505865", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:57 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Neumann:2000:RPCc, author = "Peter G. Neumann", title = "Risks to the public in computers and related systems", journal = j-SIGSOFT, volume = "25", number = "3", pages = "15--23", month = may, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505863.505866", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:57 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Conradi:2000:SES, author = "Reidar Conradi", title = "Summary from {7th European Software Process Workshop (EWSPT'7), Kaprun near Salzburg, 21--25 Feb. 2000}", journal = j-SIGSOFT, volume = "25", number = "3", pages = "23--23", month = may, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505863.505868", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:57 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Kumar:2000:SAM, author = "Bharath M. Kumar and R. Lakshminarayanan and Y. N. Srikant", title = "A study of automatic migration of programs across the {Java} event models", journal = j-SIGSOFT, volume = "25", number = "3", pages = "24--29", month = may, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505863.505870", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:57 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Evolution of a framework forces a change in the design of an application, which is based on the framework. The same is the case when the Java event model changed from the Inheritance model to the Event Delegation model. We summarize our experiences when attempting an automatic and elegant migration across the event models. Further, we also necessitate the need for extra documentation in patterns that will help programs evolve better.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Lather:2000:SAS, author = "Anu Singh Lather and Shakti Kumar and Yogesh Singh", title = "Suitability assessment of software developers: a fuzzy approach", journal = j-SIGSOFT, volume = "25", number = "3", pages = "30--31", month = may, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505863.505871", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:57 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The right selection of software personnels helps keep project cost low, deliver better quality software and avoids the schedule slippage of a software project. We have identified the 3 most essential abilities/aptitudes which can decide comparative merit of the software developers. These are Verbal Reasoning (VR), Numerical Ability (NA) and Abstract Reasoning (AR). As a fuzzy model is a best choice for managing ambiguous, doubtful, contradicting and diverging opinions we propose a three input and single output fuzzy model to unify the crisp output of the 3 tests (i.e., VR, NA, AR). The output of the proposed fuzzy model a single numerical value that decides the merit of a developer based on the scores he obtains in VR, NA and AR.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Chen:2000:EME, author = "Wang Chen and Zhou Ying and Zhang Defu", title = "An efficient method for expressing active object in {C++}", journal = j-SIGSOFT, volume = "25", number = "3", pages = "32--35", month = may, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505863.505872", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:57 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Object-Oriented technology is fit for the construction of open systems. However, how to express distributed or concurrent objects has not been resolved in nowadays OO language. The active object concept is one kind of generalization of concurrent or distributed objects. We analyzed the characters of active objects in detail and propose an efficient method to express active behaviors in Object-Oriented language such as C++. What we lay stress on is to express active objects' two major features: concurrency and cooperative, especially the latter. The reusability of active objects is emphasized as well.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{PanYunhe:2000:AOA, author = "Zhou Yonglin PanYunhe", title = "Agent-oriented analysis and modeling", journal = j-SIGSOFT, volume = "25", number = "3", pages = "36--40", month = may, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505863.505873", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:57 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Traditional requirements engineering (RE) are facing challenge. With the continuous change of application environment and software market, as well as the development of new design approaches (e.g. software architecture and component-based software engineering), RE should also move its eyes from product-oriented and function-centered view to problem-domain-oriented and structure-centered view. In this paper we proposed a new analysis and modeling approach: Agent-Oriented Approach (AOA). AOA is problem-domain-oriented and implementation-independent. It searches for a solution strategy for a families of problems rather than a special software requirements specification(SRS). It focuses on entities with active behavior in problem domain and pay attention to their interaction. It can describe parallel and distributed entities commonly existing in problem domains and it is more stable and reuseful than SRS.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Kokol:2000:ASS, author = "Peter Kokol and Vili Podgorelec and Ana Isabel Cardoso and Francis Dion", title = "Assessing the state of the software process development using the chaos theory", journal = j-SIGSOFT, volume = "25", number = "3", pages = "41--43", month = may, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505863.505874", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:57 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Computer software and the software development process belong to the class of complex systems. As a consequence software development process can be analysed by techniques and concepts used in the chaos theory. It is the aim of this paper to present how we can use the chaos theory (in particular the Logistic map concept) to identify the state of the software development process.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Kokol:2000:IES, author = "Peter Kokol and Vili Podgorelec and Francis Dion and Rich de Loach", title = "Intellectual energy in software design", journal = j-SIGSOFT, volume = "25", number = "3", pages = "44--45", month = may, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505863.505875", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:57 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "In the paper we use the sequential study approach to empirical software engineering to research a novel idea about assessing the intellectual energy built into the software products. The study showed that we can use product of Function Points and {\alpha} metric to calculate both the intellectual energy reflected in the software and the intellectual energy spend during the software design.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Milicev:2000:COG, author = "Dragan Milicev", title = "Customizable output generation in modeling environments using pipelined domains", journal = j-SIGSOFT, volume = "25", number = "3", pages = "46--50", month = may, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505863.505876", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:57 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Domain-specific modeling and metamodeling environments most often base their output generation capability on wizards, output templates, grammar-based transformers, or hard-coded output generators. The complexity of the specification process for such generators, and their dependence on the domain do not encourage customization, flexibility, and reuse. This paper proposes a solution to this problem. In the proposed approach, the domains are (meta) modeled using the standard object-oriented paradigm. Second, the generation of a model in the target domain from a model in the source domain is specified using extended UML object diagrams that allow specification of conditional, repetitive, and sequential creation of instances of the target domain's abstractions. Finally, the transformation of models may be performed in a pipelined fashion, where each domain model and mapping may be either created from the scratch or reused from the repository. This approach allows more efficient, incremental building of more abstract domains and their mapping into less abstract domains, because each transformation step is much less complicated to specify, maintain, and reuse. Furthermore, by simple choosing another pipeline, different versions of the ultimate implementation from the same initial high-level, user-defined model may be obtained automatically. A prototypical supporting tool has been implemented and briefly presented in the paper.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Mondal:2000:CMW, author = "Sakib Abdul Mondal and Kingshuk Das Gupta", title = "Choosing a middleware for web-integration of a legacy application", journal = j-SIGSOFT, volume = "25", number = "3", pages = "50--53", month = may, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505863.505877", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:57 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Business applications today often face two contradictory constraints: they have to deal with heterogeneous platforms and at the same time meet the quality requirements. A larger number of middleware products are available to meet the first objective. An architect invariably faces a problem of picking up the right kind of middleware for the problem at hand. Fortunately, the second objective of quality requirements help an architect narrow down the choices of middleware. In this article, we demonstrate this fact through a project of web-integration of a legacy invoicing system.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Zhao:2000:SQR, author = "Luyin Zhao and Sebastian Elbaum", title = "A survey on quality related activities in open source", journal = j-SIGSOFT, volume = "25", number = "3", pages = "54--57", month = may, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505863.505878", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:57 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/gnu.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Anantharam:2000:MS, author = "Parasuram Anantharam", title = "Modelling systems", journal = j-SIGSOFT, volume = "25", number = "3", pages = "58--58", month = may, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505863.505880", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:57 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Anderson:2000:DSS, author = "Tom Anderson", title = "The distributed {Smalltalk} survival guide", journal = j-SIGSOFT, volume = "25", number = "3", pages = "58--58", month = may, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505863.505881", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:57 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Benedicenti:2000:RSO, author = "Luigi Benedicenti", title = "Rethinking smart objects: building artificial intelligence with objects", journal = j-SIGSOFT, volume = "25", number = "3", pages = "59--59", month = may, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505863.505882", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:57 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Boyer:2000:TPI, author = "Kenneth W. {Boyer, Jr.}", title = "Test process improvement: a practical step-by-step guide to structured testing", journal = j-SIGSOFT, volume = "25", number = "3", pages = "59--60", month = may, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505863.505883", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:57 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Caci:2000:TOO, author = "Claude Caci", title = "Testing object-oriented systems", journal = j-SIGSOFT, volume = "25", number = "3", pages = "60--61", month = may, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505863.505884", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:57 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Claussen:2000:TPL, author = "Peter Claussen", title = "Theories of programming languages", journal = j-SIGSOFT, volume = "25", number = "3", pages = "61--62", month = may, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505863.505885", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:57 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Claussen:2000:CPM, author = "Peter Claussen", title = "Concurrent programming in {ML}", journal = j-SIGSOFT, volume = "25", number = "3", pages = "62--63", month = may, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505863.505886", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:57 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Dinishak:2000:OIF, author = "Ron Dinishak", title = "The optimal implementation of functional programming languages", journal = j-SIGSOFT, volume = "25", number = "3", pages = "63--63", month = may, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505863.505887", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:57 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Liu:2000:TRA, author = "Chang Liu", title = "Term rewriting and all that", journal = j-SIGSOFT, volume = "25", number = "3", pages = "63--63", month = may, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505863.505888", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:57 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Nedunuri:2000:FAP, author = "Srinivas Nedunuri", title = "The functional approach to programming", journal = j-SIGSOFT, volume = "25", number = "3", pages = "63--65", month = may, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505863.505889", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:57 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Varma:2000:AST, author = "Tathagat Varma", title = "Automated software testing: introduction, management and performance", journal = j-SIGSOFT, volume = "25", number = "3", pages = "65--65", month = may, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505863.505890", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:57 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Weber-Wulff:2000:OOS, author = "Debora Weber-Wulff", title = "Object-oriented software engineering: conquering complex and changing systems", journal = j-SIGSOFT, volume = "25", number = "3", pages = "65--66", month = may, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505863.505891", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:57 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Green:2000:STA, author = "Bradley S. Green", title = "Software test automation", journal = j-SIGSOFT, volume = "25", number = "3", pages = "66--66", month = may, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505863.505892", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:57 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Neumann:2000:RPCd, author = "Peter G. Neumann", title = "Risks to the public in computers and related systems", journal = j-SIGSOFT, volume = "25", number = "4", pages = "7--11", month = jul, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/352342.352344", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:59 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Doernhoefer:2000:SNSb, author = "Mark Doernhoefer", title = "Surfing the net for {{\booktitle{Software Engineering Notes}}}", journal = j-SIGSOFT, volume = "25", number = "4", pages = "12--20", month = jul, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/352342.352345", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:59 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Schmietendorf:2000:MBA, author = "Andreas Schmietendorf and Reiner Dumke and Erik Foltin", title = "Metrics based asset assessment", journal = j-SIGSOFT, volume = "25", number = "4", pages = "51--55", month = jul, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/352342.352347", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:59 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The re-use of software components during the software development is considered to be an important factor to improve the quality and productivity and thus to reduce the time to market of the final product. In this paper we will present a proposal for a description model for re-usable components. We will also present the results of case studies concerned with both telecom specific and ``generic'' IT-components. These components have been examined using the description model and a further set of (empirical) criterions. Based on the results a model concept for the empirical assessment of JavaBeans, which is currently under development, is presented.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Bojic:2000:REU, author = "Dragan Bojic and Dusan Velasevic", title = "Reverse Engineering of Use Case Realizations in {UML}", journal = j-SIGSOFT, volume = "25", number = "4", pages = "56--61", month = jul, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/352342.2317216", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:59 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "We propose a novel technique for recovering certain elements of the UML model of a software system. These include relationships between use cases as well as class roles in collaborations that realize each use case, identifying common functionality and thus establishing a hierarchical view of the model. The technique is based on dynamic analysis of the system for the selected test cases that cover relevant use cases. The theory of formal concept analysis is applied to obtain classification of model elements, obtained by a static analysis of code, in terms of use case realizations.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Cimpan:2000:OLS, author = "Sorana C{\^\i}mpan and Flavio Oquendo", title = "{OMEGA}: a language and system for on-line monitoring of software-intensive processes", journal = j-SIGSOFT, volume = "25", number = "4", pages = "62--68", month = jul, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/352342.352350", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:59 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper presents an environment for monitoring software-intensive processes: the Omega environment (Omega stands for On-line Monitoring Environment: General and Adaptable). The environment provides the language Omega/MDL (Monitoring Definition Language) for defining monitoring models as well as a mechanism for the execution of such models Omega/EM (Execution Mechanism). The executing monitoring models (i.e. monitoring systems), observe the subject process and detect deviations between it and an expected behavior, i.e. indicated by the process model instantiation. For monitoring modeling, Omega proposes a novel approach based on fuzzy logic. This approach allows to establish the level of conformance between the process enactment and the process model for different aspects of the process, like progress, cost, structure (order between activities), etc. The use of fuzzy logic enables the system to cope with uncertain and imprecise information.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Manolescu:2000:BRP, author = "Dragos Manolescu", title = "Book Review: {{\booktitle{Production Workflow-Concepts and Techniques}} by Frank Leymann and Dieter Roller (Prentice Hall PTR, 2000, ISBN 0-13-02175-0, 479 pp.)}", journal = j-SIGSOFT, volume = "25", number = "4", pages = "69", month = jul, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/352342.", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:13:59 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Pincus:2000:ANF, author = "Jon Pincus", title = "Analysis is necessary, but far from sufficient (abstract only): Experiences building and deploying successful tools for developers and testers", journal = j-SIGSOFT, volume = "25", number = "5", pages = "1--1", month = sep, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/347636.347826", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:00 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Why are there so few successful ``real-world'' programming and testing tools based on academic research? This talk focuses on program analysis tools, and proposes a surprisingly simple explanation with interesting ramifications. For a tool aimed at developers or testers to be successful, people must use it --- and must use it to help accomplish their existing tasks, rather than as an end in itself. If the tool does not help them get their job done, or the effort to learn and/or use the tool is too great, users will not perceive enough value; the tool will not get significant usage, even if it is free. This talk focuses on the often-overlooked consequences of this seemingly basic statement in two major areas: program analysis, and the work beyond core analysis that must be done to make a successful tool. Examples will be drawn from tools that have been successfully used in industry (sold commercially, and developed for internal use).", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Bhargavan:2000:VFA, author = "Karthikeyan Bhargavan and Carl A. Gunter and Moonjoo Kim and Insup Lee and Davor Obradovic and Oleg Sokolsky and Mahesh Viswanathan", title = "{Verisim}: Formal analysis of network simulations", journal = j-SIGSOFT, volume = "25", number = "5", pages = "2--13", month = sep, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/347636.347833", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:00 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Why are there so few successful ``real-world'' programming and testing tools based on academic research? This talk focuses on program analysis tools, and proposes a surprisingly simple explanation with interesting ramifications. For a tool aimed at developers or testers to be successful, people must use it --- and must use it to help accomplish their existing tasks, rather than as an end in itself. If the tool does not help them get their job done, or the effort to learn and/or use the tool is too great, users will not perceive enough value; the tool will not get significant usage, even if it is free. This talk focuses on the often-overlooked consequences of this seemingly basic statement in two major areas: program analysis, and the work beyond core analysis that must be done to make a successful tool. Examples will be drawn from tools that have been successfully used in industry (sold commercially, and developed for internal use).", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Jackson:2000:FBC, author = "Daniel Jackson and Mandana Vaziri", title = "Finding bugs with a constraint solver", journal = j-SIGSOFT, volume = "25", number = "5", pages = "14--25", month = sep, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/347636.383378", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:00 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Lev-Ami:2000:PSA, author = "Tal Lev-Ami and Thomas Reps and Mooly Sagiv and Reinhard Wilhelm", title = "Putting static analysis to work for verification: a case study", journal = j-SIGSOFT, volume = "25", number = "5", pages = "26--38", month = sep, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/347636.348031", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:00 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "A method for finding bugs in code is presented. For given small numbers j and k, the code of a procedure is translated into a relational formula whose models represent all execution traces that involve at most j heap cells and k loop iterations. This formula is conjoined with the negation of the procedure's specification. The models of the resulting formula, obtained using a constraint solver, are counterexamples: executions of the code that violate the specification. The method can analyze millions of executions in seconds, and thus rapidly expose quite subtle flaws. It can accommodate calls to procedures for which specifications but no code is available. A range of standard properties (such as absence of null pointer dereferences) can also be easily checked, using predefined specifications.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Buy:2000:ATC, author = "Ugo Buy and Alessandro Orso and Mauro Pezze", title = "Automated Testing of Classes", journal = j-SIGSOFT, volume = "25", number = "5", pages = "39--48", month = sep, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/347636.348870", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:00 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Programs developed with object technologies have unique features that often make traditional testing methods inadequate. Consider, for instance, the dependence between the state of an object and the behavior of that object: The outcome of a method executed by an object often depends on the state of the object when the method is invoked. It is therefore crucial that techniques for testing of classes exercise class methods when the method's receiver is in different states. The state of an object at any given time depends on the sequence of messages received by the object up to that time. Thus, methods for testing object-oriented software should identify sequences of method invocations that are likely to uncover potential defects in the code under test. However, testing methods for traditional software do not provide this kind of information. In this paper, we use data flow analysis, symbolic execution, and automated deduction to produce sequences of method invocations exercising a class under test. Since the static analysis techniques that we use are applied to different subproblems, the method proposed in this paper can automatically generate information relevant to testing even when symbolic execution and automated deduction cannot be completed successfully.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Souter:2000:OST, author = "Amie L. Souter and Lori L. Pollock", title = "{OMEN}: a strategy for testing object-oriented software", journal = j-SIGSOFT, volume = "25", number = "5", pages = "49--59", month = sep, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/347636.348871", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:00 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper presents a strategy for structural testing of object-oriented software systems with possibly unknown clients and unknown information about invoked methods. By exploiting the combined points-to and escape analysis developed for compiler optimization, our testing paradigm does not require a whole program representation to be in memory simultaneously for testing analysis. Potential effects from outside the component under test are easily identified and reported to the tester. As client and server methods become known, the graph representation of object relationships is easily extended, allowing the computation of test tuples to be performed in a demand-driven manner, without requiring unnecessary computation of test tuples based on predictions of potential clients.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Hartmann:2000:UBI, author = "Jean Hartmann and Claudio Imoberdorf and Michael Meisinger", title = "{UML-Based} integration testing", journal = j-SIGSOFT, volume = "25", number = "5", pages = "60--70", month = sep, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/347636.348872", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:00 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Increasing numbers of software developers are using the Unified Modeling Language (UML) and associated visual modeling tools as a basis for the design and implementation of their distributed, component-based applications. At the same time, it is necessary to test these components, especially during unit and integration testing. At Siemens Corporate Research, we have addressed the issue of testing components by integrating test generation and test execution technology with commercial UML modeling tools such as Rational Rose; the goal being a design-based testing environment. In order to generate test cases automatically, developers first define the dynamic behavior of their components via UML Statecharts, specify the interactions amongst them and finally annotate them with test requirements. Test cases are then derived from these annotated Statecharts using our test generation engine and executed with the help of our test execution tool. The latter tool was developed specifically for interfacing to components based on COM/DCOM and CORBA middleware. In this paper, we present our approach to modeling components and their interactions, describe how test cases are derived from these component models and then executed to verify their conformant behavior. We outline the implementation strategy of our TnT environment and use it to evaluate our approach by means of a simple example.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Hamlet:2000:STP, author = "Dick Hamlet", title = "On subdomains: Testing, profiles, and components", journal = j-SIGSOFT, volume = "25", number = "5", pages = "71--76", month = sep, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/347636.348873", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:00 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Subdomains of a program's input space are a concept around which ideas about testing can be organized. This paper considers the questions, ``What are the best subdomains for testing to detecting failures defining operational profiles measuring component reliability?''", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Peters:2000:RBM, author = "Dennis K. Peters and David L. Parnas", title = "Requirements-based monitors for real-time systems", journal = j-SIGSOFT, volume = "25", number = "5", pages = "77--85", month = sep, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/347636.348874", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:00 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Before designing safety- or mission-critical real-time systems, a specification of the required behaviour of the system should be produced and reviewed by domain experts. After the system has been implemented, it should be thoroughly tested to ensure that it behaves correctly. This is best done using a monitor, a system that observes the behaviour of a target system and reports if that behaviour is consistent with the requirements. Such a monitor can be used both as an oracle during testing and as a supervisor during operation. Monitors should be based on the documented requirements of the system. If the target system is required to monitor or control real-valued quantities, then the requirements, which are expressed in terms of the monitored and controlled quantities, will allow a range of behaviours to account for errors and imprecision in observation and control of these quantities. Even if the controlled variables are discrete valued, the requirements must specify the timing tolerance. Because of the limitations of the devices used by the monitor to observe the environmental quantities, there is unavoidable potential for false reports, both negative and positive. This paper discusses design of monitors for real-time systems, and examines the conditions under which a monitor will produce false reports. We describe the conclusions that can be drawn when using a monitor to observe system behaviour.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Kolano:2000:CSA, author = "Paul Z. Kolano and Richard A. Demmerer", title = "Classification schemes to aid in the analysis of real-time systems", journal = j-SIGSOFT, volume = "25", number = "5", pages = "86--95", month = sep, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/347636.348875", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:00 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper presents three sets of classification schemes for processes, properties, and transitions that can be used to assist in the analysis of real-time systems. These classification schemes are discussed in the context of ASTRAL, which is a formal specification language for real-time systems. Eight testbed systems were specified in ASTRAL, and their proofs were performed to determine proof patterns that occur most often. The specifications were then examined in an attempt to derive specific characteristics that could be used to statically identify each pattern within a specification. Once the classifications were obtained, they were then used to provide systematic guidance for analyzing real-time systems by directing the prover to the proof techniques most applicable to each proof pattern. This paper presents the set of classification schemes that were developed and discusses how they can be used to assist the proof process.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Cobleigh:2000:VPP, author = "Jamieson M. Cobleigh and Lori A. Clark and Leon J. Osterweil", title = "Verifying properties of process definitions", journal = j-SIGSOFT, volume = "25", number = "5", pages = "96--101", month = sep, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/347636.348876", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:00 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "It seems important that the complex processes that synergize humans and computers to solve widening classes of societal problems be subjected to rigorous analysis. One approach is to use a process definition language to specify these processes and to then use analysis techniques to evaluate these definitions for important correctness properties. Because humans demand flexibility in their participation in complex processes, process definition languages must incorporate complicated control structures, such as various concurrency, choice, reactive control, and exception mechanisms. The underlying complexity of these control abstractions, however, often confounds the users' intuitions as well as complicates any analysis. Thus, the control abstraction complexity in process definition languages presents analysis challenges beyond those posed by traditional programming languages. This paper explores some of the difficulties of analyzing process definitions. We explore issues arising when applying the FLAVERS finite state verification system to processes written in the Little-JIL process definition language and illustrate these issues using a realistic auction example. Although we employ a particular process definition language and analysis technique, our results seem more generally applicable.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Elbaum:2000:PTC, author = "Sebastian Elbaum and Alexey G. Malishevsky and Gregg Rothermel", title = "Prioritizing test cases for regression testing", journal = j-SIGSOFT, volume = "25", number = "5", pages = "102--112", month = sep, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/347636.348910", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:00 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Test case prioritization techniques schedule test cases in an order that increases their effectiveness in meeting some performance goal. One performance goal, rate of fault detection, is a measure of how quickly faults are detected within the testing process; an improved rate of fault detection can provide faster feedback on the system under test, and let software engineers begin locating and correcting faults earlier than might otherwise be possible. In previous work, we reported the results of studies that showed that prioritization techniques can significantly improve rate of fault detection. Those studies, however, raised several additional questions: (1) can prioritization techniques be effective when aimed at specific modified versions; (2) what tradeoffs exist between fine granularity and coarse granularity prioritization techniques; (3) can the incorporation of measures of fault proneness into prioritization techniques improve their effectiveness? This paper reports the results of new experiments addressing these questions.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Hind:2000:WPA, author = "Michael Hind and Anthony Pioli", title = "Which pointer analysis should I use?", journal = j-SIGSOFT, volume = "25", number = "5", pages = "113--123", month = sep, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/347636.348916", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:00 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "During the past two decades many different pointer analysis algorithms have been published. Although some descriptions include measurements of the effectiveness of the algorithm, qualitative comparisons among algorithms are difficult because of varying infrastructure, benchmarks, and performance metrics. Without such comparisons it is not only difficult for an implementor to determine which pointer analysis is appropriate for their application, but also for a researcher to know which algorithms should be used as a basis for future advances. This paper describes an empirical comparison of the effectiveness of five pointer analysis algorithms on C programs. The algorithms vary in their use of control flow information (flow-sensitivity) and alias data structure, resulting in worst-case complexity from linear to polynomial. The effectiveness of the analyses is quantified in terms of compile-time precision and efficiency. In addition to measuring the direct effects of pointer analysis, precision is also reported by determining how the information computed by the five pointer analyses affects typical client analyses of pointer information: Mod/Ref analysis, live variable analysis and dead assignment identification, reaching definitions analysis, dependence analysis, and conditional constant propagation and unreachable code identification. Efficiency is reported by measuring analysis time and memory consumption of the pointer analyses and their clients.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Frankl:2000:CDR, author = "Phyllis G. Frankl and Yuetang Deng", title = "Comparison of delivered reliability of branch, data flow and operational testing: a case study", journal = j-SIGSOFT, volume = "25", number = "5", pages = "124--134", month = sep, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/347636.348926", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:00 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Many analytical and empirical studies of software testing effectiveness have used the probability that a test set exposes at least one fault as the measure of effectiveness. That measure is useful for evaluating testing techniques when the goal of testing is to gain confidence that the program is free from faults. However, if the goal of testing is to improve the reliability of the program (by discovering and removing those faults that are most likely to cause failures when the software is in the field) then the measure of test effectiveness must distinguish between those faults that are likely to cause failures and those that are unlikely to do so. Delivered reliability was previously introduced as a means of comparing testing techniques in that setting. This paper empirically compares reliability delivered by three testing techniques, branch testing, the all-uses data flow testing criterion, and operational testing. The subject program is a moderate-sized C-program (about 10,000 LOC) produced by professional programmers and containing naturally occurring faults.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Hildebrandt:2000:SFI, author = "Ralf Hildebrandt and Andreas Zeller", title = "Simplifying failure-inducing input", journal = j-SIGSOFT, volume = "25", number = "5", pages = "135--145", month = sep, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/347636.348938", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:00 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Given some test case, a program fails. Which part of the test case is responsible for the particular failure? We show how our delta debugging algorithm generalizes and simplifies some failing input to a minimal test case that produces the failure. In a case study, the Mozilla web browser crashed after 95 user actions. Our prototype implementation automatically simplified the input to 3 relevant user actions. Likewise, it simplified 896 lines of HTML to the single line that caused the failure. The case study required 139 automated test runs, or 35 minutes on a 500 MHz PC.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Clarke:2000:FSV, author = "Lori A. Clarke", title = "Finite state verification (abstract only): an emerging technology for validating software systems", journal = j-SIGSOFT, volume = "25", number = "5", pages = "146--146", month = sep, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/347636.348946", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:00 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Ever since formal verification was first proposed in the late sixties, the idea of being able to definitively determine if a program meets its specifications has been an appealing, but elusive, goal. Although verification systems based on theorem proving have improved considerably over the years, they are still inherently undecidable and require significant guidance from mathematically astute users. The human effort required for formal verification is so significant that it is usually only applied to the most critical software components. Alternative approaches to theorem proving based verification have also been under development for some time. These approaches usually restrict the problem domain in some way, such as focusing on hardware descriptions, communication protocols, or a limited specification language. These restrictions allow the problem to be solved by using reasoning algorithms that are guaranteed to terminate and by representing the problem with a finite state model, and thus these approaches have been called finite state verification. Systems based on these approaches are starting to be effectively applied to interesting software systems and there is increasing optimism that such approaches will become widely applicable. In this presentation, I will overview some of the different approaches to finite state verification. In particular I will describe symbolic model checking, integer necessary constraints, and incremental data flow analysis approaches. The strengths and weaknesses of these approaches will be described. In addition, I will outline the major challenges that must be addressed before finite state verification will become a common tool for the typical well-trained software engineer.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Chays:2000:FTD, author = "David Chays and Saikat Dan and Phyllis G. Frankl and Filippos I. Vokolos and Elaine J. Weyuker", title = "A framework for testing database applications", journal = j-SIGSOFT, volume = "25", number = "5", pages = "147--157", month = sep, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/347636.348954", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:00 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Database systems play an important role in nearly every modern organization, yet relatively little research effort has focused on how to test them. This paper discusses issues arising in testing database systems and presents an approach to testing database applications. In testing such applications, the state of the database before and after the user's operation plays an important role, along with the user's input and the system output. A tool for populating the database with meaningful data that satisfy database constraints has been prototyped. Its design and its role in a larger database application testing tool set are discussed.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Steven:2000:JCR, author = "John Steven and Pravir Chandra and Bob Fleck and Andy Podgurski", title = "{jRapture}: a Capture\slash Replay tool for observation-based testing", journal = j-SIGSOFT, volume = "25", number = "5", pages = "158--167", month = sep, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/347636.348993", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:00 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib; http://www.math.utah.edu/pub/tex/bib/virtual-machines.bib", abstract = "We describe the design of jRapture: a tool for capturing and replaying Java program executions in the field. jRapture works with Java binaries (byte code) and any compliant implementation of the Java virtual machine. It employs a lightweight, transparent capture process that permits unobtrusive capture of a Java programs executions. jRapture captures interactions between a Java program and the system, including GUI, file, and console inputs, among other types, and on replay it presents each thread with exactly the same input sequence it saw during capture. In addition, jRapture has a profiling interface that permits a Java program to be instrumented for profiling --- after its executions have been captured. Using an XML-based profiling specification language a tester can specify various forms of profiling to be carried out during replay.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Woodward:2000:TFS, author = "Martin R. Woodward and Zuhoor A. Al-Khanjari", title = "Testability, fault size and the domain-to-range ratio: an eternal triangle", journal = j-SIGSOFT, volume = "25", number = "5", pages = "168--172", month = sep, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/347636.349016", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:00 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "A number of different concepts have been proposed that, loosely speaking, revolve around the notion of software testability. Indeed, the concept of testability itself has been interpreted in a variety of ways by the software community. One interpretation is concerned with the extent of the modifications a program component requires, in terms of its input and output variables, so that the entire behaviour of the component is observable and controllable. Another interpretation is the ease with which faults, if present in a program, can be revealed by the testing process and the propagation, infection and execution (PIE) model has been proposed as a method of estimating this. It has been suggested that this particular interpretation of testability might be linked with the metric domain-to-range ratio (DRR), i.e. the ratio of the cardinality of the set of all inputs (the domain) to the cardinality of the set of all outputs (the range). This paper reports work in progress exploring some of the connections between the concepts mentioned. In particular, a simple mathematical link is established between domain-to-range ratio and the observability and controllability aspects of testability. In addition, the PIE model is re-considered and a relationship with fault size is observed. This leads to the suggestion that it might be more straightforward to estimate PIE testability by an adaptation of traditional mutation analysis. The latter suggestion exemplifies the main goals of the work described here, namely to seek greater understanding of testability in general and, ultimately, to find easier ways of determining it.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Schroeder:2000:BBT, author = "Patrick J. Schroeder and Bogdan Korel", title = "Black-box test reduction using input-output analysis", journal = j-SIGSOFT, volume = "25", number = "5", pages = "173--177", month = sep, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/347636.349042", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:00 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Test reduction is an important issue in black-box testing. The number of possible black-box tests for any non-trivial software application is extremely large. For the class of programs with multiple inputs and outputs, the number of possible tests grows very rapidly as combinations of input test data are considered. In this paper, we introduce an approach to test reduction that uses automated input-output analysis to identify relationships between program inputs and outputs. Our initial experience with the approach has shown that it can significantly reduce the number of black-box tests.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Wittenberg:2000:PTC, author = "Craig H. Wittenberg", title = "Progress in testing component-based software (abstract only)", journal = j-SIGSOFT, volume = "25", number = "5", pages = "178", month = sep, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/347636.349099", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:00 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Software components enable practical reuse of software parts and amortization of investments over multiple applications. Each part or component is well defined and independently deployable. Composition is the key technique by which systems of software components are constructed. The composition step can be done before or after the delivery of the system. It is this late composition (or at least the possibility of it) which yields the greatest challenges from a testing standpoint. That is, a component-based application may be composed out of parts that were never tested together. Thus the most useful and reliable parts are those which have been tested independently in as many ways as possible. The Component Applications Group in Microsoft Research is developing tools, techniques, and a large component library to enable the development of sophisticated office, home and web-based applications. For the past three and a half years we have been working on two main efforts. First, we have created a prototype of a highly factored (i.e., customizable, flexible, etc.) architecture for the construction of the UI of applications. Our work can be applied to traditional window-ed applications as well as to the look and feel of Web applications. During this effort we have developed a variety of design techniques, two different composition mechanisms, a visual tool for compositions, and have built several application prototypes out of the same set of components. Most of our time has been spent on tools and techniques for building reliable components. Certain pieces of our infrastructure formed the domain in which we tried out our ideas. The first component we tested was one of our composition mechanisms. That was followed by the testing of a dynamic, binary, aspect composition mechanism and of a particularly generic implementation of collection classes. Our well-factored, versioned build system will also be described. All of the results of our work are compatible with COM. The talk will focus on our key lessons in composition, specification, processes, and tools with a particular emphasis on our test harness and our results in testing. A discussion of the last few bugs found in each of several projects should prove interesting. Some comparisons will be made with other projects inside and outside Microsoft. Since we can only claim progress, not perfection, there are still many areas for further research. As an example, we are looking at ways we can use language annotations to simplifying whole classes of problems (e.g., tests for reentrancy). One of the points here is that we can improve our ability to create reliable components by improving the languages used to implement them (like Java has popularized the use of a garbage collector). Another example is that we hope to improve the automation of the sequencing of test cases. Finally, as a tribute to the power of standing on other's shoulders, many of the roots of our ideas will be traced to techniques published elsewhere. You might say we only composed together many already good ideas. Our group includes people who developed COM itself (myself and Tony Williams), many people from within Microsoft who have delivered successful component-based products (e.g., in Visual Studio), and world-renowned component-ologist (:-) Clemens Szyperski who wrote Component Software: Beyond Object-Oriented Programming.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Dill:2000:MCJ, author = "David Dill", title = "Model checking {Java} programs (abstract only)", journal = j-SIGSOFT, volume = "25", number = "5", pages = "179", month = sep, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/347636.349113", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:00 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.math.utah.edu/pub/tex/bib/multithreading.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Automatic state exploration tools (model checkers) have had some success when applied to protocols and hardware designs, but there are fewer success stories about software. This is unfortunate, since the software problem is worsening even faster than the hardware and protocol problems. Model checking of concurrent programs is especially interesting, because they are notoriously difficult to test, analyze, and debug by other methods. This talk will be a description of our initial efforts to check Java programs using a model checker. The model checker supports dynamic allocation, thread creation, and recursive procedures (features that are not necessary for hardware verification), and has some special optimizations and checks tailored to multi-threaded Java program. I will also discuss some of the challenges for future efforts in this area.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Nanda:2000:SCP, author = "Mangala Gowri Nanda and S. Ramesh", title = "Slicing concurrent programs", journal = j-SIGSOFT, volume = "25", number = "5", pages = "180--190", month = sep, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/347636.349121", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:00 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Slicing is a well-known program analysis technique for analyzing sequential programs and found useful in debugging, testing and reverse engineering. This paper extends the notion of slicing to concurrent programs with shared memory, interleaving semantics and mutual exclusion. Interference among concurrent threads or processes complicates the computation of slices of concurrent programs. Further, unlike slicing of sequential programs, a slicing algorithm for concurrent programs needs to differentiate between loop-independent data dependence and certain loop-carried data dependences. We show why previous methods do not give precise solutions in the presence of nested threads and loops and describe our solution that correctly and efficiently computes precise slices. Though the complexity of this algorithm is exponential on the number of threads, a number of optimizations are suggested. Using these optimizations, we are able to get near linear behavior for many practical concurrent programs.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Siegel:2000:IPI, author = "Stephen F. Siegel and George S. Avrunin", title = "Improving the precision of {INCA} by preventing spurious cycles", journal = j-SIGSOFT, volume = "25", number = "5", pages = "191--200", month = sep, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/347636.349130", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:00 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The Inequality Necessary Condition Analyzer (INCA) is a finite-state verification tool that has been able to check properties of some very large concurrent systems. INCA checks a property of a concurrent system by generating a system of inequalities that must have integer solutions if the property can be violated. There may, however, be integer solutions to the inequalities that do not correspond to an execution violating the property. INCA thus accepts the possibility of an inconclusive result in exchange for greater tractability. We describe here a method for eliminating one of the two main sources of these inconclusive results.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Schulz:2000:TAD, author = "Daniel Schulz and Frank Mueller", title = "A thread-aware debugger with an open interface", journal = j-SIGSOFT, volume = "25", number = "5", pages = "201--211", month = sep, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/347636.349141", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:00 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "While threads have become an accepted and standardized model for expressing concurrency and exploiting parallelism for the shared-memory model, debugging threads is still poorly supported. This paper identifies challenges in debugging threads and offers solutions to them. The contributions of this paper are threefold. First, an open interface for debugging as an extension to thread implementations is proposed. Second, extensions for thread-aware debugging are identified and implemented within the Gnu Debugger to provide additional features beyond the scope of existing debuggers. Third, an active debugging framework is proposed that includes a language-independent protocol to communicate between debugger and application via relational queries ensuring that the enhancements of the debugger are independent of actual thread implementations. Partial or complete implementations of the interface for debugging can be added to thread implementations to work in unison with the enhanced debugger without any modifications to the debugger itself. Sample implementations of the interface for debugging have shown its adequacy for user-level threads, kernel threads and mixed thread implementations while providing extended debugging functionality at improved efficiency and portability at the same time.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{DeMillo:2000:SDN, author = "Richard A. DeMillo", title = "Software development for next generation communication networks", journal = j-SIGSOFT, volume = "25", number = "6", pages = "1", month = nov, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/357474.355047", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:02 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Even casual observes have to notice the dramatic changes in the telecommunications industry that have taken place in the last five years. Giant companies split, merge and are sometimes displaced by newer ones that did not exist a decade ago. The business of running the mighty circuit-switched telephone netwok is under constant assault on one side from packet networks and on the other side from the bewildering array of wireless networks. Service providers compete for customer sometimes with no network infrastructure at all.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Robillard:2000:DRJ, author = "Martin P. Robillard and Gail C. Murphy", title = "Designing robust {Java} programs with exceptions", journal = j-SIGSOFT, volume = "25", number = "6", pages = "2--10", month = nov, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/357474.355046", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:02 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Exception handling mechanisms are intended to help developers build robust systems. Although an exception handling mechanism provides a basis for structuring source code dealing with unusual situations, little information is available to help guide a developer in the appropriate application of the mechanism. In our experience, this lack of guidance leads to complex exception structures. In this paper, we reflect upon our experiences using the Java exception handling mechanism. Based on these experiences, we discuss two issues we believe underlie the difficulties encountered: exceptions are a global design problem, and exception sources are often difficult to predict in advance. We then describe a design approach, based on work by Litke for Ada programs, which we have used to simplify exception structure in existing Java programs.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Hollingsworth:2000:ERU, author = "Joseph E. Hollingsworth and Lori Blankenship and Bruce W. Weide", title = "Experience report: using {RESOLVE\slash C++} for commercial software", journal = j-SIGSOFT, volume = "25", number = "6", pages = "11--19", month = nov, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/357474.355048", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:02 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Academic research sometimes suffers from the ``ivory tower'' problem: ideas that sound good in theory do not necessarily work well in practice. An example of research that potentially could impact practice over the next few years is a novel set of component-based software engineering design principles, known as the RESOLVE discipline. This discipline has been taught to students for several years [23], and previous papers (e.g., [24]) have reported on student-sized software projects constructed using it. Here, we report on a substantial commercial product family that was engineered using the same principles --- an application that we designed, built, and continue to maintain for profit, not as part of a research project. We discuss the impact of adhering to a very prescriptive set of design principles and explain our experience with the resulting applications. Lessons learned should benefit others who might be considering adopting such a component-based software engineering discipline in the future.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Behrends:2000:UMA, author = "Reimer Behrends and R. E. Kurt Stirewalt", title = "The universe model: an approach for improving the modularity and reliability of concurrent programs", journal = j-SIGSOFT, volume = "25", number = "6", pages = "20--29", month = nov, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/357474.355049", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:02 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "We present the universe model, a new approach to concurrency management that isolates concurrency concerns and represents them in the modular interface of a component. This approach improves program comprehension, module composition, and reliability for concurrent systems. The model is founded on designer-specified invariant properties, which declare a component's dependencies on other concurrent components. Process scheduling is then automatically derived from these invariants. We illustrate the advantages of this approach by applying it to a real-world example.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Memon:2000:ATO, author = "Atif M. Memon and Martha E. Pollack and Mary Lou Soffa", title = "Automated test oracles for {GUIs}", journal = j-SIGSOFT, volume = "25", number = "6", pages = "30--39", month = nov, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/357474.355050", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:02 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Graphical User Interfaces (GUIs) are critical components of today's software. Because GUIs have different characteristics than traditional software, conventional testing techniques do not apply to GUI software. In previous work, we presented an approach to generate GUI test cases, which take the form of sequences of actions. In this paper we develop a test oracle technique to determine if a GUI behaves as expected for a given test case. Our oracle uses a formal model of a GUI, expressed as sets of objects, object properties, and actions. Given the formal model and a test case, our oracle automatically derives the expected state for every action in the test case. We represent the actual state of an executing GUI in terms of objects and their properties derived from the GUI's execution. Using the actual state acquired from an execution monitor, our oracle automatically compares the expected and actual states after each action to verify the correctness of the GUI for the test case. We implemented the oracle as a component in our GUI testing system, called Planning Assisted Tester for grapHical user interface Systems (PATHS), which is based on AI planning. We experimentally evaluated the practicality and effectiveness of our oracle technique and report on the results of experiments to test and verify the behavior of our version of the Microsoft WordPad's GUI.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Godefroid:2000:AST, author = "Patrice Godefroid and Lalita J. Jagadeesan and Radha Jagadeesan and Konstantin L{\"a}ufer", title = "Automated systematic testing for constraint-based interactive services", journal = j-SIGSOFT, volume = "25", number = "6", pages = "40--49", month = nov, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/357474.355051", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:02 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Constraint-based languages can express in a concise way the complex logic of a new generation of interactive services for applications such as banking or stock trading, that must support multiple types of interfaces for accessing the same data. These include automatic speech-recognition interfaces where inputs may be provided in any order by users of the service. We study in this paper how to systematically test event-driven applications developed using such languages. We show how such applications can be tested automatically, without the need for any manually-written test cases, and efficiently, by taking advantage of their capability of taking unordered sets of events as inputs.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Butkevich:2000:CTS, author = "Sergey Butkevich and Marco Renedo and Gerald Baumgartner and Michal Young", title = "Compiler and tool support for debugging object protocols", journal = j-SIGSOFT, volume = "25", number = "6", pages = "50--59", month = nov, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/357474.355052", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:02 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "We describe an extension to the Java programming language that supports static conformance checking and dynamic debugging of object ``protocols,'' i.e., sequencing constraints on the order in which methods may be called. Our Java protocols have a statically checkable subset embedded in richer descriptions that can be checked at run time. The statically checkable subtype conformance relation is based on Nierstrasz' proposal for regular (finite-state) process types, and is also very close to the conformance relation for architectural connectors in the Wright architectural description language by Allen and Garlan. Richer sequencing properties, which cannot be expressed by regular types alone, can be specified and checked at run time by associating predicates with object states. We describe the language extensions and their rationale, and the design of tool support for static and dynamic checking and debugging.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Ye:2000:IAI, author = "Yunwen Ye and Gerhard Fischer and Brent Reeves", title = "Integrating active information delivery and reuse repository systems", journal = j-SIGSOFT, volume = "25", number = "6", pages = "60--68", month = nov, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/357474.355053", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:02 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Although software reuse can improve both the quality and productivity of software development, it will not do so until software developers stop believing that it is not worth their effort to find a component matching their current problem. In addition, if the developers do not anticipate the existence of a given component, they will not even make an effort to find it in the first place. Even the most sophisticated and powerful reuse repositories will not be effective if developers don't anticipate a certain component exists, or don't deem it worthwhile to seek for it. We argue that this crucial barrier to reuse is overcome by integrating active information delivery, which presents information without explicit queries from the user, and reuse repository systems. A prototype system, CodeBroker, illustrates this integration and raises several issues related to software reuse.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Walker:2000:ICE, author = "Robert J. Walker and Gail C. Murphy", title = "Implicit context: easing software evolution and reuse", journal = j-SIGSOFT, volume = "25", number = "6", pages = "69--78", month = nov, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/357474.355054", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:02 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Software systems should consist of simple, conceptually clean software components interacting along narrow, well-defined paths. All too often, this is not reality: complex components end up interacting for reasons unrelated to the functionality they provide. We refer to knowledge within a component that is not conceptually required for the individual behaviour of that component as extraneous embedded knowledge (EEK). EEK creeps into a system in many forms, including dependences upon particular names and the passing of extraneous parameters. This paper proposes the use of implicit context as a means for reducing EEK in systems by combining a mechanism to reflect upon what has happened in a system, through queries on the call history, with a mechanism for altering calls to and from a component. We demonstrate the benefits of implicit context by describing its use to reduce EEK in the Java{\TM} Swing library.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Pethia:2000:BP, author = "Richard D. Pethia", title = "Bugs in the programs", journal = j-SIGSOFT, volume = "25", number = "6", pages = "79", month = nov, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/357474.355056", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:02 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Security on the Internet is receiving increasing attention as more and more organizations are becoming dependent on the network. The use of the Internet for electronic commerce, government operations, research activities, and entertainment has now reached the point that attacks against the network and the systems connected to it have become major news items. While the press highlights a few high-profile incidents, the actual number of attacks is much higher. The CERT Coordination Center works with the Internet community to deal with incidents and responded to over 8,000 incidents in 1999. The incident projection for year 2000 is 17,000 to 20,000. At the same time, the amount of damage resulting from the incidents is also increasing. While the press often focuses on cases of web site graffiti, more serious cases of financial fraud, extortion, and debilitating denial of service attacks are being reported at increasing rates.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Yamamoto:2000:AVF, author = "Tetsuo Yamamoto and Makoto Matsushita and Katsuro Inoue", title = "Accumulative versioning file system Moraine and its application to metrics environment {MAME}", journal = j-SIGSOFT, volume = "25", number = "6", pages = "80--87", month = nov, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/357474.355057", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:02 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "It is essential to manage versions of software products created during software development. There are various versioning tools actually used in these days, although most of them require the developers to issue management commands for consistent versioning. In this paper, we present a novel versioning file system Moraine, which accumulatively and automatically collects all files created or modified. Those files are versioned and stored as compressed forms. The older versions are easily retrieved from Moraine by the time-stamps or tags if required. Using Moraine system, we have developed a metrics (measurement) environment called MAME (Moraine As a Metrics Environment). MAME can collect various metrics data for on-going or past projects, since its basis, Moraine, is able to retrieve all versions of all products (files). Both Moraine and MAME have been implemented. Using these systems, we have evaluated the performance of Moraine and MAME with various test data and student project data. The result shows that disk space required by this approach is several times larger than ordinary approaches; however, it is acceptable at the current tendency of disk price decrease. By this approach, an ideal metrics environment has been easily established by developing simple data-collection tools for version files.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Chu-Carroll:2000:CBB, author = "Mark C. Chu-Carroll and Sara Sprenkle", title = "{Coven}: brewing better collaboration through software configuration management", journal = j-SIGSOFT, volume = "25", number = "6", pages = "88--97", month = nov, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/357474.355058", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:02 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Our work focuses on building tools to support collaborative software development. We are building a new programming environment with integrated software configuration management which provides a variety of features to help programming teams coordinate their work. In this paper, we detail a hierarchy-based software configuration management system called Coven, which acts as a collaborative medium for allowing teams of programmers to cooperate. By providing a family of inter-related mechanisms, our system provides powerful support for cooperation and coordination in a manner which matches the structure of development teams.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Sweeney:2000:ELB, author = "Peter F. Sweeney and Frank Tip", title = "Extracting library-based object-oriented applications", journal = j-SIGSOFT, volume = "25", number = "6", pages = "98--107", month = nov, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/357474.355059", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:02 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "In an increasingly popular model of software distribution, software is developed in one computing environment and deployed in other environments by transfer over the internet. Extraction tools perform a static whole-program analysis to determine unused functionality in applications in order to reduce the time required to download applications. We have identified a number of scenarios where extraction tools require information beyond what can be inferred through static analysis: software distributions other than complete applications, the use of reflection, and situations where an application uses separately developed class libraries. This paper explores these issues, and introduces a modular specification language for expressing the information required for extraction. We implemented this language in the context of Jax, an industrial-strength application extractor for Java, and present a small case study in which different extraction scenarios are applied to a commercially available library-based application.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Osterweil:2000:IPP, author = "Leon J. Osterweil and Lori A. Clarke and Michael Evangelist and Jeffrey Kramer and Dieter Rombach and Alexander L. Wolf", title = "The impact project (panel session): determining the impact of software engineering research upon practice", journal = j-SIGSOFT, volume = "25", number = "6", pages = "108--109", month = nov, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/357474.355060", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:02 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The purpose of this panel is to introduce the Impact Project to the community, and to engage the community in a broad ranging discussion of the project's goals, approaches, and methods. Some of the project's early findings and directions will be presented.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Hay:2000:CFR, author = "Jonathan D. Hay and Joanne M. Atlee", title = "Composing features and resolving interactions", journal = j-SIGSOFT, volume = "25", number = "6", pages = "110--119", month = nov, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/357474.355061", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:02 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "One of the accepted techniques for developing and maintaining feature-rich applications is to treat each feature as a separate concern. However, most features are not separate concerns because they override and extend the same basic service. That is, ``independent'' features are coupled to one another through the system's basic service. As a result, seemingly unrelated features subtly interfere with each other when trying to override the system behaviour in different directions. The problem is how to coordinate features' access to the service's shared variables. This paper proposes coordinating features via feature composition. We model each feature as a separate labelled-transition system and define a 1conflict-free (CF) composition operator that prevents enabled transitions from synchronizing if they interact: if several features' transitions are simultaneously enabled but have conflicting actions, a non-conflicting subset of the enabled transitions are synchronized in the composition. We also define a conflict- and violation-free (CVF) composition operator that prevents enabled transitions from executing if they violate features' invariants. Both composition operators use priorities among features to decide whether to synchronize transitions.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Luttgen:2000:CAS, author = "Gerald L{\"u}ttgen and Michael von der Beeck and Rance Cleaveland", title = "A compositional approach to statecharts semantics", journal = j-SIGSOFT, volume = "25", number = "6", pages = "120--129", month = nov, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/357474.355062", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:02 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Statecharts is a visual language for specifying reactive system behavior. The formalism extends traditional finite-state machines with notions of hierarchy and concurrency, and it is used in many popular software design notations. A large part of the appeal of Statecharts derives from its basis in state machines, with their intuitive operational interpretation. The classical semantics of Statecharts, however, suffers from a serious defect; it is not compositional, meaning that the behavior of system descriptions cannot be inferred from the behavior of their subsystems. Compositionality is a prerequisite for exploiting the modular structure of Statecharts for simulation, verification, and code generation, and it also provides the necessary foundation for reusability. This paper suggests a new compositional approach to formalizing Statecharts semantics as flattened labeled transition systems in which transitions represent system steps. The approach builds on ideas developed for timed process calculi and employs structural operational rules to define the transitions of a Statecharts expression in terms of the transitions of its subexpressions. It is first presented for a simple dialect of Statecharts, with respect to a variant of Pnueli and Shalev's semantics, and is illustrated by means of a small example. To demonstrate its flexibility, the proposed approach is then extended to deal with practically useful features available in many Statecharts variants, namely state references, history states, and priority concepts along state hierarchies.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Jackson:2000:AFO, author = "Daniel Jackson", title = "Automating first-order relational logic", journal = j-SIGSOFT, volume = "25", number = "6", pages = "130--139", month = nov, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/357474.355063", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:02 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "An automatic analysis method for first-order logic with sets and relations is described. A first-order formula is translated to a quantifier-free boolean formula, which has a model when the original formula has a model within a given scope (that is, involving no more than some finite number of atoms). Because the satisfiable formulas that occur in practice tend to have small models, a small scope usually suffices and the analysis is efficient. The paper presents a simple logic and gives a compositional translation scheme. It also reports briefly on experience using the Alloy Analyzer, a tool that implements the scheme.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Bernardo:2000:FAT, author = "Marco Bernardo and Paolo Ciancarini and Lorenzo Donatiello", title = "On the formalization of architectural types with process algebras", journal = j-SIGSOFT, volume = "25", number = "6", pages = "140--148", month = nov, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/357474.355064", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:02 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Architectural styles play an important role in software engineering as they convey codified principles and experience which help the construction of software systems with high levels of efficiency and confidence. We address the problem of formalizing and analyzing architectural styles in an operational setting by introducing the intermediate abstraction of architectural type. We develop the concept of architectural type in a process algebraic framework because of its modeling adequacy and the availability of means, such as Milner's weak bisimulation equivalence, which allow us to reason compositionally and efficiently about the well formedness of architectural types.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Jackson:2000:CRT, author = "Daniel Jackson and Kevin Sullivan", title = "{COM} revisited: tool-assisted modelling of an architectural framework", journal = j-SIGSOFT, volume = "25", number = "6", pages = "149--158", month = nov, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/357474.355065", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:02 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Designing architectural frameworks without the aid of formal modeling is error prone. But, unless supported by analysis, formal modeling is prone to its own class of errors, in which formal statements fail to match the designer's intent. A fully automatic analysis tool can rapidly expose such errors, and can make the process of constructing and refining a formal model more effective. This paper describes a case study in which we recast a model of Microsoft COM's query interface and aggregation mechanism into Alloy, a lightweight notation for describing structures. We used Alloy's analyzer to simulate the specification, to check properties and to evaluate changes. This allowed us to manipulate our model more quickly and with far greater confidence than would otherwise have been possible, resulting in a much simpler model and a better understanding of its key properties.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Naumovich:2000:CPA, author = "Gleb Naumovich and Lori A. Clarke", title = "Classifying properties: an alternative to the safety-liveness classification", journal = j-SIGSOFT, volume = "25", number = "6", pages = "159--168", month = nov, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/357474.355066", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:02 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Traditionally, verification properties have been classified as safety or liveness properties. While this taxonomy has an attractive simplicity and is useful for identifying the appropriate analysis algorithm for checking a property, determining whether a property is safety, liveness, or neither can require significant mathematical insight on the part of the analyst. In this paper, we present an alternative property taxonomy. We argue that this taxonomy is a more natural classification of the kinds of questions that analysts want to ask. Moreover, most classes in our taxonomy have a known, direct mapping to the safety-liveness classification, and thus the appropriate analysis algorithm can be automatically determined.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Rashid:2000:STC, author = "Richard F. Rashid", title = "The shape of things to come?", journal = j-SIGSOFT, volume = "25", number = "6", pages = "169", month = nov, year = "2000", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/357474.355067", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:02 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The future of software engineering isn't what it used to be. The nature of the software we write, the reasons we write it and the way we write it and maintain it have changed rapidly and dramatically over the last few years. And software development is likely change even faster over the next decade. In this talk I will reflect on how commercial software has evolved and what it might look like in the not-to-distant future.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Bagert:2001:FSE, author = "Donald J. Bagert", title = "{FASE}: a software engineering, education, training and professional issues publication", journal = j-SIGSOFT, volume = "26", number = "1", pages = "6--6", month = jan, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505894.505896", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:04 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "FASE (pronounced like ``phase''), the Forum for Advancing Software engineering Education, was started in 1991 by members of the software engineering education community in order to have a electronic forum for the dissemination and discussion of events related to software engineering education. The original acronym for FASE was Forum for Academic Software Engineering, but was subsequently changed so that it was more inclusive to industrial and government training issues (which led to a co-editor in that area). In recent years, FASE has also covered a wide variety of professional issues (e.g. licensing, certification, ethics, body of knowledge, and accreditation), which has also led to the addition of yet another co-editor for this area.FASE is an independently-published newsletter, not affiliated with ACM, IEEE-CS or any other organization. As of October 2000, 129 issues have been published. Since August 1997, FASE has been published monthly, and is released on the 15th of each month in ASCII format. FASE has several hundred subscribers in over 50 countries and provinces. There is also a FASE-TALK discussion list. The FASE web page is at http://www.cs.ttu.edu/fase. It contains subscription information, article submission guidelines, and an archive of all FASE issues and FASE-TALK postings to date. The FASE Staff: Thomas B. Hilburn, Academic Editor Embry-Riddle Aeronautical University David Carter, Corporate/Government Editor Independent Consultant Donald J. Bagert, P.E., Professional Issues Editor Texas Tech University Laurie Werth, Advisory Committee Member The University of Texas at Austin Nancy Mead, Advisory Committee Member Software Engineering Institute", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Omitol:2001:AFP, author = "Tope Omitol", title = "{ACM Fellow} profile: {Roger Needham}", journal = j-SIGSOFT, volume = "26", number = "1", pages = "7--10", month = jan, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505894.505898", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:04 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Doernhoefer:2001:SNSa, author = "Mark Doernhoefer", title = "Surfing the net for {{\booktitle{Software Engineering Notes}}}", journal = j-SIGSOFT, volume = "26", number = "1", pages = "11--13", month = jan, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505894.505899", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:04 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Neumann:2001:RPCa, author = "Peter G. Neumann", title = "Risks to the public in computers and related systems", journal = j-SIGSOFT, volume = "26", number = "1", pages = "14--38", month = jan, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505894.505900", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:04 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Meseguer:2001:RE, author = "Jos{\'e} Meseguer", title = "Report on {ETAPS} 2000", journal = j-SIGSOFT, volume = "26", number = "1", pages = "39--39", month = jan, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505894.505902", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:04 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Penix:2001:FIW, author = "John Penix and Nigel Tracey and Willem Visser", title = "The {First International Workshop on Automated Program Analysis, Testing and Verification}", journal = j-SIGSOFT, volume = "26", number = "1", pages = "40--40", month = jan, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505894.505903", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:04 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper reports on the First International Workshop on Automated Program Analysis, Testing and Verification (WAPATV) held in Limerick on the 4th-5th June 2000, as part of the International Conference on Software Engineering 2000. We begin by presenting an overview of the workshop aims and then focus on the workshop's technical program.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Jahnke:2001:ITI, author = "Jens H. Jahnke and Joerg P. Wadsack", title = "{ISE3: the Third International Workshop on Intelligent Software Engineering} open issues, new techniques, challenge problems in software engineering", journal = j-SIGSOFT, volume = "26", number = "1", pages = "43--43", month = jan, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505894.505904", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:04 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Sim:2001:WWS, author = "Susan Elliot Sim and Rainer Koschke", title = "{WoSEF: Workshop on Standard Exchange Format}", journal = j-SIGSOFT, volume = "26", number = "1", pages = "44--49", month = jan, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505894.505905", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:04 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "A workshop was held at ICSE 2000 in Limerick, Ireland to further efforts in the development of a standard exchange format (SEF) for data extracted from and about source code. WoSEF (Workshop on Standard Exchange Format) brought together people with expertise in a variety of formats, such as RSF, TA, GraX, FAMIX, XML, and XMI, from across the software engineering discipline. We had five sessions consisting of a presentation and discussion period and a working session with three subgroups. The five sessions were: (1) Survey and Overview, (2) Language-level schemas and APIs, (3) High-level schemas, (4) MOF/XMI/UML and CDIF, and (5) Meta schemas and Typed Graphs. During that time we reviewed previous work and debated a number of important issues. This report includes descriptions of the presentations made during these sessions. The main result of the workshop is the agreement of the majority of participants to work on refining GXL (Graph eXchange Language) to be the SEF. GXL is an XML-based notation that uses attributed, typed graphs as a conceptual data model. It is currently a work in progress with contributors from reverse engineering and graph transformation communities in multiple countries. There is a great deal of work to be done to finalise the syntax and to establish reference models for schemas. Anyone interested is welcome to join the effort and instructions on how to get involved are found at the end of the workshop report. Three papers from the workshop have been reprinted here to promote reflection and encourage participation in the work to develop an SEF.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Godfrey:2001:PDE, author = "Michael W. Godfrey", title = "Practical data exchange for reverse engineering frameworks: some requirements, some experience, some headaches", journal = j-SIGSOFT, volume = "26", number = "1", pages = "50--52", month = jan, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505894.505906", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:04 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Reverse engineering systems hold great promise in aiding developers regain control over long-lived software projects whose architecture has been allowed to ``drift''. However, it is well known that these systems have relative strengths and weaknesses, and to date relatively little work has been done on integrating various subtools within other reverse engineering systems. The design of a common interchange format for data used by reverse engineering tools is therefore of critical importance. In this position paper, we describe some of our previous work with TAXFORM (Tuple Attribute eXchange FORMat) [2,6], and in integrating various ``fact extractors'' into the PBS reverse engineering system. For example, we have recently created translation mechanisms that enable the Acacia system's C and C++ extractors to be used within PBS, and we have used these mechanisms to create software architecture models of two large software systems: the Mozilla web browser (2.2 MLOC of C++ and C) and the VIM text editor (150 KLOC of C) [6]. We also describe our requirements for an exchange format for reverse engineering tools and some problems that must be resolved.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Lapierre:2001:DTS, author = "S{\'e}bastien Lapierre and Bruno Lagu{\"e} and Charles Leduc", title = "Datrix {\TM} source code model and its interchange format: lessons learned and considerations for future work", journal = j-SIGSOFT, volume = "26", number = "1", pages = "53--56", month = jan, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505894.505907", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:04 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The Datrix team within Bell Canada has been offering its source code analysis tools to the research community for a number of years. These tools perform a number of analyses that revolve around a central model (Datrix-ASG) developed by the Datrix team, and use an interchange format similar to TA, which we call Datrix-TA. This paper intends to communicate the modeling choices that were made when creating this information model, and the lessons learned over a few years of usage.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Kienle:2001:EFB, author = "Holger M. Kienle", title = "Exchange format bibliography", journal = j-SIGSOFT, volume = "26", number = "1", pages = "56--60", month = jan, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505894.505908", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:04 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper gives a brief bibliographical overview of exchange formats and related research areas. We classify exchange formats and try to give a brief assessment of the more interesting ones.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Dean:2001:CWC, author = "John Dean and Patricia Oberndorf and Mark Vigder and Chris Abts and Hakan Erdogmus and Neil Maiden and Michael Looney and George Heineman and Michael Guntersdorfer", title = "{COTS} workshop: continuing collaborations for successful {COTS} development", journal = j-SIGSOFT, volume = "26", number = "1", pages = "61--73", month = jan, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505894.505909", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:04 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "In early June of 2000 a COTS Workshop entitled ``Continuing Collaborations for Successful COTS Development'' was held in Limerick, Ireland in conjunction with ICSE 2000. The purpose of the workshop was to collect experience reports regarding the use of commercial off-the-shelf (COTS) software to build systems, identify best-practices for the use of COTS software, and to establish a research agenda for those researchers interested in COTS-based software systems. This one and a half day workshop was an extension of the work begun during the workshop entitled ``Ensuring Successful COTS Development'' held in conjunction with ICSE '99. Results from that workshop demonstrated that there were a number of common research areas, including acquisition, planning and management, architecture and implementation, and evaluation and testing, for which researchers saw the possibility of collaboration. These areas included specific topics such as estimating the effort required to implement COTS-based systems, classification of architectural styles, and certification of COTS products for reliability and safety. The group will reconvene at ICSE'01 (www.csr.uvic.ca/icse2001) to discuss further the results achieved. The ICSE 2000 Workshop had about 26 participants and was formatted as a combination of plenary sessions and small breakout groups that worked on specific issues related to COTS-based systems. The breakout groups investigated the impact of COTS software usage in the following areas: Economic and financial issues. Requirements definition Software engineering process. Integration, maintenance and system management. Business models. Each breakout group tried to identify the current state of the art in COTS software usage as well as open questions that could provide the basis for further research in the coming years. Each group was responsible for producing a written summary of their discussions which are included, without major editing, below. A more complete description of the workshop, as well as all the participants' position papers, can be found at:http://seg.iit.nrc.ca/projects/cots/icse2000wkshp/index.html", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Palanque:2001:DSV, author = "Philippe Palanque and Fabio Patern{\`o}", title = "Design, specification, and verification of interactive systems", journal = j-SIGSOFT, volume = "26", number = "1", pages = "74--75", month = jan, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505894.505910", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:04 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "More and more software applications are being developed to allow users to access data and communicate information. The parts of such applications dedicated to supporting user interactions is increasingly important and requires novel methods and techniques to develop effective user interfaces. DSV-IS'2000 provided experts from many countries of the world with the unique opportunity to meet and discuss the current state of art and new research results in this area.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Deshpande:2001:SSI, author = "Yogesh Deshpande and San Murugesan", title = "Summary of the {Second ICSE workshop on Web Engineering}", journal = j-SIGSOFT, volume = "26", number = "1", pages = "76--77", month = jan, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505894.505911", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:04 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The series of workshops on Web Engineering started in 1998 with the World Wide Web Conference WWW7 in Brisbane, Australia, and has continued with WWW8 (Toronto, 1999) and WWW9 (Amsterdam, 2000). The first such workshop with the International Conference on Software Engineering (ICSE) took place in 1999 in Los Angeles. The second workshop was held on 4-5 June 2000 in Limerick, Ireland and attracted about 30 participants. The main purpose behind these workshops is to share and pool the collective experience of people, both academics and practitioners, who are actively working on Web-based systems. This workshop consisted of two keynote addresses, 11 contributed papers and two sessions of open discussions. The call for papers elicited 18 submissions of which 11 were accepted after peer reviews. The papers presented at the workshop appear in the book Web Engineering (San Murugesan and Yogesh Deshpande (eds.), LNCS, Springer-Verlag, 2000).", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Tarr:2001:WMD, author = "Peri Tarr and William Harrison and Harold Ossher and Anthony Finkelsteiin and Bashar Nuseibeh and Dewayne Perry", title = "{Workshop on Multi-Dimensional Separation of Concerns in Software Engineering}", journal = j-SIGSOFT, volume = "26", number = "1", pages = "78--81", month = jan, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505894.505912", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:04 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Separation of concerns has been central to software engineering for decades, yet its many advantages are still not fully realized. A key reason is that traditional modularization mechanisms do not allow simultaneous decomposition according to multiple kinds of (overlapping and interacting) concerns. This workshop was intended to bring together researchers working on more advanced modularization mechanisms, and practitioners who have experienced the need for them, as a step towards a common understanding of the issues, problems and research challenges.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Raccoon:2001:DD, author = "L. B. S. Raccoon", title = "Definitions and demographics", journal = j-SIGSOFT, volume = "26", number = "1", pages = "82--91", month = jan, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505894.505914", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:04 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Who are software engineers? Answering this question properly, by defining the profession clearly and counting practitioners accurately, will help all software engineers. Practitioners will better understand the career paths that are available. Managers will better understand the jobs that employees fill. Researchers will better predict how the field will evolve. The software engineering community will better understand its identity and will better wield its influence. And, everyone will be able to make more responsible distinctions between who is and is not a software engineer. In the first section, I propose a definition of software engineers as those who focus primarily on software development and who have some depth and breadth of experience in the process, and I propose a scaling model of software engineering demographics. In the second section, I discuss the difficulty of distinguishing between software engineers and non-engineers. I believe that credentials will evolve to help clarify this distinction. And in the third section, I call for a new demographic study tailored to the needs of software engineers. This study should create a complete portrait of the field.I also respond to several criticisms of A Whole New Kind of Engineering: I explain why I believe that in 1998, about 1,000,000 software engineers existed in the U.S. and why software engineers do not need computer science or even technical degrees to prove themselves today, though this will surely change in the future.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Raccoon:2001:CEG, author = "L. B. S. Raccoon", title = "A conversation with Erwin Goodhack", journal = j-SIGSOFT, volume = "26", number = "1", pages = "92--92", month = jan, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505894.505915", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:04 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Abrahams:2001:PRT, author = "Alan Abrahams", title = "Planning for real time event response management", journal = j-SIGSOFT, volume = "26", number = "1", pages = "93--94", month = jan, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505894.505917", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:04 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Ben-Menachem:2001:WEU, author = "Mordechai Ben-Menachem", title = "Writing effective use cases", journal = j-SIGSOFT, volume = "26", number = "1", pages = "94--95", month = jan, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505894.505918", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:04 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Boyer:2001:MCG, author = "Kenneth W. {Boyer, Jr.}", title = "More {C++} gems", journal = j-SIGSOFT, volume = "26", number = "1", pages = "95--95", month = jan, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505894.505919", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:04 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Frazer:2001:ACP, author = "Ken Frazer", title = "Accelerated {C++}: practical programming by example", journal = j-SIGSOFT, volume = "26", number = "1", pages = "95--96", month = jan, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505894.505920", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:04 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Huber:2001:CHP, author = "Andy Huber", title = "Creating high performance software development teams", journal = j-SIGSOFT, volume = "26", number = "1", pages = "96--97", month = jan, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505894.505921", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:04 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Larsen:2001:JPB, author = "Albert L. Larsen", title = "{Java} programming: from the beginning", journal = j-SIGSOFT, volume = "26", number = "1", pages = "97--98", month = jan, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505894.505922", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:04 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Law:2001:SPA, author = "Jim Law", title = "Selected papers on analysis of algorithms", journal = j-SIGSOFT, volume = "26", number = "1", pages = "98--99", month = jan, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505894.505923", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:04 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Madrigal:2001:FOD, author = "Victor M. {Madrigal III}", title = "Fundamentals of {OOP} and data structures in {Java}", journal = j-SIGSOFT, volume = "26", number = "1", pages = "99--99", month = jan, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505894.505924", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:04 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Manolescu:2001:PWC, author = "Dragos Manolescu", title = "Production workflow: concepts and techniques", journal = j-SIGSOFT, volume = "26", number = "1", pages = "99--100", month = jan, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505894.505925", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:04 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Kulak:2001:UCR, author = "Daryl Kulak and Eamonn Guiney", title = "Use cases: requirements in context", journal = j-SIGSOFT, volume = "26", number = "1", pages = "101--101", month = jan, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505894.505926", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:04 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Neumann:2001:RPCb, author = "Peter G. Neumann", title = "Risks to the public in computers and related systems", journal = j-SIGSOFT, volume = "26", number = "2", pages = "5--11", month = mar, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505776.505778", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:06 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Cooper:2001:AFPa, author = "Greg Cooper", title = "{ACM Fellow} profile: {Frank L. Friedman}", journal = j-SIGSOFT, volume = "26", number = "2", pages = "12--13", month = mar, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505776.505779", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:06 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Doernhoefer:2001:SNSb, author = "Mark Doernhoefer", title = "Surfing the net for {{\booktitle{Software Engineering Notes}}}", journal = j-SIGSOFT, volume = "26", number = "2", pages = "14--23", month = mar, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505776.505780", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:06 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Systa:2001:SRO, author = "Tarja Syst{\"a} and Rudolf K. Keller and Kai Koskimies", title = "Summary report of the {OOPSLA 2000 Workshop on Scenario-Based Round-Trip Engineering}", journal = j-SIGSOFT, volume = "26", number = "2", pages = "24--28", month = mar, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505776.505782", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:06 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This report summarizes the Workshop on Scenario-Based Round-Trip Engineering held in Minneapolis, Minnesota, USA, on October 16, 2000, in conjunction with the International Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA 2000). The workshop consisted of a keynote and seven presentations, which were organized into three sessions: From Interaction Diagrams to State Machines, Forward Engineering, and Reverse Engineering. Altogether nine position papers were accepted. The workshop web page, including the papers, the presentations, and the electronic version of this report, can be found at \url{http://www.cs.uta.fi/~cstasy/oopsla2000/workshop.html}.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Knauber:2001:PSP, author = "Peter Knauber and Giancarlo Succi", title = "Perspectives on software product lines: report on {First International Workshop on Software Product Lines: Economics, Architectures, and Implications Workshop} \#15 at {22nd International Conference on Software Engineering (ICSE)}", journal = j-SIGSOFT, volume = "26", number = "2", pages = "29--33", month = mar, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505776.505783", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:06 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Product line engineering is a concept that has emerged in the 80's in the business schools and is now among the hottest topics in software engineering. Software product lines aim at achieving scope economies through synergetic development of software products. Diverse benefits like cost reduction, decreased time-to-market, and quality improvement can be expected from reuse of domain-specific software assets. But also non-technical benefits can be expected as result of network externalities, product branding, and sharing organizational costs. Product lines introduce additional complexity. In a sense they go against the common adage of ``divide and conquer.'' Planning and/or developing of more than one product at a time have to be managed technically and organizationally. However, the rate of innovation of the technology and the intrinsic nature of software products do not let alternatives to developers: users like to jump into the bandwagon of new products, and old products often drive preferences to new products. Research has been conducted in software product lines for the past few years. Some of it has focused on demonstrating that existing systems and approaches were indeed instrumental for product line development, such as generative techniques, domain analysis and engineering and software components. Another portion of the research effort has tried to determine how it is possible to create a comprehensive methodology and an associated tool for product lines, starting from the business idea of line of products down to the development of a product and trying to exploit all the possible synergies existing at each phase, from network externalities to component reuse.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Bernstein:2001:TOS, author = "Lawrence Bernstein and David Klappholz", title = "Teaching old software dogs, old tricks", journal = j-SIGSOFT, volume = "26", number = "2", pages = "33--34", month = mar, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505776.505785", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:06 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Laguna:2001:URE, author = "Miguel Angel Laguna and Jos{\'e} Manuel Marqu{\'e}s and Francisco Jos{\'e} Garc{\'\i}a", title = "A user requirements elicitation tool", journal = j-SIGSOFT, volume = "26", number = "2", pages = "35--37", month = mar, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505776.505786", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:06 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Use cases are nowadays the favoured technique for defining the functional requirements of a software system. Their use implies that most of the desired functionality of the new system is well known. The aim of this work is a methodological proposal (and a tool to support it) to accurately define this functionality, starting from the way the end users currently do their work. This method and tool are independent of the development paradigm and could generate useful results for the most frequently used CASE tools with the addition of the appropriate translators.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Mihajlovic:2001:TSP, author = "Zorica Mihajlovic and Dusan Velasevic", title = "Tracking software projects with the integrated version control in {SMIT}", journal = j-SIGSOFT, volume = "26", number = "2", pages = "38--43", month = mar, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505776.505787", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:06 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The purpose of the software project tracking and oversight process is to provide visibility into actual progress so that management can take corrective actions when the project's performance deviates significantly from the plans. The sequence of the project's performances forms the project's change history. The new SMIT tool for planning and tracking software projects with the additional capability to process the project's change history is presented in the paper. This additional capability is based upon the integration of version control into the standard planning and tracking capabilities of the tool. It facilitates the project's post-mortem analysis and helps us to manage future projects. Since the history contains valuable data it enables us to learn from mistakes and good examples. Comparing two performances is the important type of processing the project's change history. SMIT accomplishes this type of processing in the context of tracking and thus surpasses the solution based on the standard tools for project management and version control. In addition, SMIT reduces the number of interactions needed to compare two performances from 61\% to 88\% for the example projects considered.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Zhang:2001:VUC, author = "Lu Zhang and Dan Xie and Wei Zou", title = "Viewing use cases as active objects", journal = j-SIGSOFT, volume = "26", number = "2", pages = "44--48", month = mar, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505776.505788", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:06 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "In this paper, we propose an idea of viewing use cases as active objects in the analysis model. Based on the idea, we present a new approach to use case-driven object-oriented analysis. This approach gives a systematic and natural way of incorporating use cases into the analysis model, and an effective way of localizing the effect of requirement changes.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Shaofeng:2001:RJR, author = "Wang Shaofeng", title = "The role of {Java RMI} in designing workflow management system", journal = j-SIGSOFT, volume = "26", number = "2", pages = "49--52", month = mar, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505776.505789", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:06 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The development of the workflow management system(WfMS) has become one of the most important research areas in information system. The design of the WfMS is a very complicated process, involving many difficult tasks. In this paper, We discuss the design of Java RMI-based workflow management system JWfMS, mainly on the designing framework of the JWfMS. According to our experience, we found that Java RMI is suitable and practical for the design of heterogeneous, distributed system such as WfMS because Java RMI makes the design and maintenance work much simpler.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Mei:2001:SCM, author = "Hong Mei and Lu Zhang and Fuqing Yang", title = "A software configuration management model for supporting component-based software development", journal = j-SIGSOFT, volume = "26", number = "2", pages = "53--58", month = mar, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505776.505790", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:06 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Software configuration management (SCM) is viewed as an important key technology in software development and is being adopted in software industry more and more widely. And component-based software development (CBSD) is an emerging paradigm in software development. However, the traditional SCM method can not support CBSD effectively and efficiently. In this paper, we analyze the objects that need to be managed in CBSD and present a component-based SCM model to improve CBSD with effective SCM support. In this model, components, as the integral logical constituents in a system, are managed as the basic configuration items in SCM, and relationships between/among components are defined and maintained, in order to support version control of large objects and logical modeling of system architecture. Also some key issues in the model are discussed and an SCM system that supports this model is introduced.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Sukhodolsky:2001:OSP, author = "Jacob Sukhodolsky", title = "Optimizing software process control", journal = j-SIGSOFT, volume = "26", number = "2", pages = "59--63", month = mar, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505776.505791", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:06 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "An important problem in software project management is taking control decisions when a schedule slip occurs. Usually such decisions are based only on the manager's experience and intuition. They are often prohibitively costly and still do not guarantee the project's success. This article presents a method for finding the optimal control actions the manager should take to meet a project's deadline in a situation when a schedule slip occurs. The method is based on using a discrete optimization technique, such as dynamic programming. Validation of the method's effectiveness is also included.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Bird:2001:XBA, author = "Colin Bird and Andrew Sermon", title = "An {XML-based} approach to automated software testing", journal = j-SIGSOFT, volume = "26", number = "2", pages = "64--65", month = mar, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505776.505792", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:06 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The advantages of automating the functional testing of application software are well-known, but the manner of automation can lead to difficulties in authenticating the test coverage. In this paper we consider the class of automated tests in which a driver tool simulates the input and responses of a human operator and sequentially checks the output generated by the application software. The driver tool commonly employs its own language to describe the tasks it can be required to perform, for example: $ \bullet $ Issue a sequence of characters that simulate input from the keyboard. $ \bullet $ Verify that a segment of the display buffer contains the expected bit pattern. Although these tasks are simply stated, the language to effect them in a test script can become complex and hard to maintain. Furthermore, reading the driver tool program is not an effective way to confirm that the test script performs its tasks to the test specification. XML (eXtensible Markup Language) [1] scripts offer a rigorous intermediate description that can be readily translated into both the driver tool test script and a readable statement of the task the test performs. The advantages accruing from the use of XML are: $ \bullet $ The XML scripts are easy to edit, simplifying basic script maintenance. New steps can be included for testing bug fixes. $ \bullet $ Content review becomes much easier, as the relevant aspects of the script can be rendered in a readily readable form, such as HTML; $ \bullet $ Global changes become feasible, as the structured nature of XML documents makes it possible to search for specific element content; $ \bullet $ The structure of the XML document can itself be checked, for example using a validating editor such as Xeena [2]. In the next section we describe an example of automated testing using a driver tool, based on XML scripts. The application being tested is called Wired for Learning [3] and provides the IT infrastructure for schools to: $ \bullet $ Enhance communication between teachers, students and parents. $ \bullet $ Enable teachers to plan and share ideas for lessons and activities, linking in with national standards. $ \bullet $ Organize team projects involving teachers and students across classes and schools, with the option of inviting members of the community to provide additional information. $ \bullet $ Provide an events calendar to keep everyone up to date with what is happening in the school. $ \bullet $ Allow teachers easily to create their own home pages for information dissemination.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Romanovsky:2001:CAA, author = "Alexander Romanovsky", title = "Coordinated atomic actions: how to remain {ACID} in the modern world", journal = j-SIGSOFT, volume = "26", number = "2", pages = "66--68", month = mar, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505776.505793", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:06 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Bowen:2001:ETZ, author = "Jonathan P. Bowen", title = "Experience teaching Z with tool and web support", journal = j-SIGSOFT, volume = "26", number = "2", pages = "69--75", month = mar, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505776.505794", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:06 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This short paper describes experiences of presenting the formal Z notation on one and later two course modules to computer science undergraduates, especially with respect to providing supporting web-based resources and using tool support. The modules were part of a more general course unit on formal methods.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Anantharam:2001:EJP, author = "Parasuram Anantharam", title = "Essentials of the {Java} programming language: a hands-on guide", journal = j-SIGSOFT, volume = "26", number = "2", pages = "76--76", month = mar, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505776.505796", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:06 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Pentinmaki:2001:SCI, author = "Isaac Pentinmaki", title = "{Standard C++ IOStreams} and locales: advanced programmer's guide and reference", journal = j-SIGSOFT, volume = "26", number = "2", pages = "76--77", month = mar, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505776.505797", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:06 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Tanuan:2001:BAS, author = "Meyer Tanuan", title = "Building application servers", journal = j-SIGSOFT, volume = "26", number = "2", pages = "77--77", month = mar, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505776.505798", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:06 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Sitaraman:2001:PSS, author = "Murali Sitaraman and Greg Kulczycki and Joan Krone and William F. Ogden and A. L. N. Reddy", title = "Performance specification of software components", journal = j-SIGSOFT, volume = "26", number = "3", pages = "3--10", month = may, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/379377.375223", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:07 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Component-based software engineering is concerned with predictability in both functional and performance behavior, though most formal techniques have typically focused their attention on the former. Reasoning about the (functional or performance) behavior of a component-based system must be compositional in order to be scalable. Compositional performance reasoning demands that components include performance specifications, in addition to descriptions of functional behavior. Unfortunately, as explained in this paper, classical techniques and notations for performance analysis are either unsuitable or unnatural to capture performance behaviors of generic software components. They fail to work in the presence of parameterization and layering. The paper introduces elements of a compositional approach to performance analysis using a detailed example. It explains that performance specification problems are so basic that there are unresolved research issues to be tackled even for the simplest reusable components. These issues must be tackled by any practical proposal for sound performance reasoning. Only then will software developers be able to engineer new systems by choosing and assembling components that best fit their performance (time and space) requirements.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Rakic:2001:ICS, author = "Marija Rakic and Nenad Medvidovic", title = "Increasing the confidence in off-the-shelf components: a software connector-based approach", journal = j-SIGSOFT, volume = "26", number = "3", pages = "11--18", month = may, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/379377.375228", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:07 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The promise of component-based software development is that larger, more complex systems can be built reasonably quickly and reliably from pre-fabricated (`` off-the-shelf'') building blocks. Additionally, such systems can be upgraded incrementally, simply by replacing individual components with their new versions. However, practice has shown that while it may improve certain aspects of an existing component, a new component version frequently introduces unforeseen problems. These problems include less efficient utilization of system resources, errors in the newly introduced functionality, and even new errors in the functionality carried over from the old version. This paper presents an approach intended to alleviate such problems. Our approach is based on explicit software architectures and leverages flexible software connectors in ensuring that component versions can be added and removed in the deployed, running system. Our connectors, called multi-versioning connectors, also unintrusively collect and compare the execution statistics of the running component versions (e.g., execution time and results of invocations). We illustrate our approach with the help of an example application.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Braga:2001:UMO, author = "Regina M. M. Braga and Marta Mattoso and Cl{\'a}udia M. L. Werner", title = "The use of mediation and ontology technologies for software component information retrieval", journal = j-SIGSOFT, volume = "26", number = "3", pages = "19--28", month = may, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/379377.375229", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:07 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Component Based Developed aims at constructing software through the inter-relationship between pre-existing components. However, these components should be bound to a specific application domain in order to be effectively reused. Reusable domain components and Their related documentation are usually stored in a great variety of data sources. Thus, a possible solution for accessing this information is to use a software layer that integrates different component information sources. We present a component information integration data layer, based on mediators. Through mediators, domain ontology acts as a technique/formalism for specifying ontological commitments or agreements between component users and providers, enabling more accurate software component information search.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Maruyama:2001:AME, author = "Katsuhisa Maruyama", title = "Automated method-extraction refactoring by using block-based slicing", journal = j-SIGSOFT, volume = "26", number = "3", pages = "31--40", month = may, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/379377.375233", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:07 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Refactoring improves the design of existing code but is not complex to do by hand. This paper proposes a mechanism that automatically refactors methods of object-oriented programs by using program slicing. To restructure a method without changing its observable behavior, the mechanism uses block-based slicing that does not extract the fragments of code from the whole program but from the region consisting of some consecutive basic-blocks of the program. A refactoring tool implementing the mechanism constructs a new method that contains the extracted code and re-forms the source method that contains this tool, a programmer indicates only a variable of interest in the code that he/she wants to refactor and then selects a suitable method from among the candidates created by the tool. The programmer does not have to test the refactored code since the mechanism is based on data-and control-flow analysis. Thus the tool enables programmers to avoid manual refactoring whose process is error-prone and time-consuming", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Price:2001:PRO, author = "Margaretha W. Price and Donald M. Needham and Steven A. {Demurjian, Sr.}", title = "Producing reusable object-oriented components: a domain-and-organization-specific perspective", journal = j-SIGSOFT, volume = "26", number = "3", pages = "41--50", month = may, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/379377.375236", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:07 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Developing reusable object-oriented software requires a designer to determine how to structure a software system so as to achieve the necessary functionality, while at the same time increasing the reuse potential of the software. We introduce a set of reusability metrics intended to be iteratively applied during the design and implementation parts of the software life-cycle to help guide the production and identification of reusable components. Component identification centers on the application's domain, with reuse focusing specifically on an organization's future systems. Our approach requires the developer to subjectively categorize classes, identify component boundaries, and specify where components are related. Our metrics provide reuse valuations on the couplings between components. Based upon the results of applying our metrics, we provide refactoring guidelines to increase the separation between components in a manner that improves component reusability. We include an application of our metrics to a commercial object-oriented framework.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Butler:2001:CRF, author = "Greg Butler and Lugang Xu", title = "Cascaded refactoring for framework", journal = j-SIGSOFT, volume = "26", number = "3", pages = "51--57", month = may, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/379377.375239", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:07 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Refactoring of source code has been studied as a preliminary step in the evolution of object-oriented software. We extend the concept of refactoring to the whole range of models used to describe a framework in our methodology: feature model, use case model, architecture, design, and code. We view framework evolution as a two-step process: refactoring and extension. The refactoring step is a set of refactorings, one for each model, that cascades through them. The refactorings chosen for a model become the rationale or constraints for the choice of refactorings of the next model. The cascading of refactorings is aided by the alignment of the models. Alignment is a traceable mapping between models that preserves the commonality-variability aspects of the models.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Jang:2001:ADR, author = "Jun-Jang Jang", title = "An approach to designing reusable service frameworks via virtual service machine", journal = j-SIGSOFT, volume = "26", number = "3", pages = "58--66", month = may, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/379377.375242", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:07 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper proposes a new service-computing platform named Virtual Service Machine (VSM). Service computing is a new paradigm for manufacturing IT artifacts, lifting up traditional focus of software development from the level of applications to that of services. Applications are constructed for machines; services are built for people. Applications are targeted to run on a particular platform; services are aimed for serving user's needs. While service computing is getting much more attention than before, its progress is slow and outcomes are not so gratifying. Many service-computing developers are striving to solve the same problems encountered in their counterparts on application development. Middleware is one of many means to address the issue of development barriers for services. However, current forms and functions of middleware software are still impeded by customary mindsets that have been exercised for last couple of decades. We need a new breed of platforms that can further relieve the developers from low-level platform concerns, e.g. hardware, OS, or even middleware itself. VSM is a way towards more effective service- computing development. It provides developers with a reusable service- computing platform to develop their service- based frameworks and applications. This paper proposes an approach of designing reusable service- computing platform via VSM. VSM works by taking incoming service requests and converting them to the executable tasks of the underlying middleware or machine that it is running on. This paper emphasizes on presenting the functionality and major components inside VSM. The comparative study with other service- computing platforms with not be the focus of this paper.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Gomaa:2001:RCI, author = "Hassan Gomaa and Daniel A. Menasc{\'e} and Michael E. Shin", title = "Reusable component interconnection patterns for distributed software architectures", journal = j-SIGSOFT, volume = "26", number = "3", pages = "69--77", month = may, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/379377.375252", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:07 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper investigates the design of reusable component interconnection in client/ server systems. In particular, the paper describes the design of component interconnection patterns, which define and encapsulate the way client and server components communicate with each other. This paper uses the Unified Modeling Language (UML) to describe the component interconnection patterns for synchronous, asynchronous, and brokered communication. When designing a new distributed application, the appropriate component interaction patterns may then be selected and reused.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Tahara:2001:SEM, author = "Yasuyuki Tahara and Nobukazu Toshiba and Akihiko Ohsuga and Shinichi Honiden", title = "Secure and efficient mobile agent application reuse using patterns", journal = j-SIGSOFT, volume = "26", number = "3", pages = "78--85", month = may, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/379377.375255", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:07 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "As wide-area open networks like the Internet and intranets grow larger, mobile agent technology is attracting more attention. Mobile agents are units of software that can deal with environmental changes and the various requirements of open networks through features such as autonomy, mobility, intelligence, cooperation, and reactivity. In addition, some people consider the agent technology as a promising solution to the reuse issue because of the aspect of the agents as highly adaptable software components. However, since the usual development methods of secure mobile agent applications are not sufficiently investigated, the technology is not yet widespread. In this paper, we propose a formal framework that supports mobile agent application development and reuse with consideration of the trade-offs between the security issues and the performance issues. In our framework, we design a mobile agent application by building a computational cost model and a security model, and combining patterns so that the combination satisfies the models. Therefore we can develop the application considering the security and the performance trade-offs. Since the models and the patterns are presented according to a formal framework, we can make sure that the pattern combination satisfies the models rigorously. In addition, if the security policy of the new environment is different from the old one in reusing the system in a new organization, we can easily modify and adapt the behavior because the pattern application can be figured out automatically by an algorithm.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Stirewalt:2001:GVC, author = "R. E. Kurt Stirewalt and Laura K. Dillon", title = "Generation of visitor components that implement program transformations", journal = j-SIGSOFT, volume = "26", number = "3", pages = "86--94", month = may, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/379377.375258", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:07 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The visitor pattern is appealing to developers of program-analysis tools because it separates the design of the data structures that represent a program from the design of software that traverses these structures. Unfortunately, the visitor pattern is difficult to apply when the analysis involves transformation logic that involves multiple program fragments simultaneously. We encountered this problem in our work on the {\proj} project and discovered a novel way to use multiple cooperating visitor objects to systematically implement such functions when they are specified via a set of transformation rules. This paper introduces our {\em curried-visitor framework} and illustrates how we applied it to implement a key component in the {\proj} framework. We are working on a code generator that will automatically synthesize curried-visitor frameworks from a description of a program's abstract syntax and a set of pattern-matching transformation rules.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Mittermeir:2001:GDC, author = "Roland T. Mittermeir and Andreas Bollin and Heinz Pozewaunig and Dominik Rauner-Reithmayer", title = "Goal-driven combination of software comprehension approaches for component based development", journal = j-SIGSOFT, volume = "26", number = "3", pages = "95--102", month = may, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/379377.375264", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:07 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper reports on our approaches to combine various software comprehension techniques (and technologies) in order to establish confidence whether a given reusable component satisfies the needs of the intended reuse situation. Some parts of the problem we are addressing result from differences in knowledge representation about a component depending on whether this component is a well documented in-house development, some externally built componentry, or a COTS-component.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Gacek:2001:IPL, author = "Critina Gacek and Michalis Anastasopoules", title = "Implementing product line variabilities", journal = j-SIGSOFT, volume = "26", number = "3", pages = "109--117", month = may, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/379377.375269", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:07 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Software product lines have numerous members. Thus, a product line infrastructure must cover various systems. This is the significant difference to usual software systems and the reason for additional requirements on the various assets present during software product line engineering. It is imperative that they support the description of the product line as a whole, as well as its instantiation for the derivation of individual products. Literature has already addressed how to create and instantiate generic product line assets, such as domain models and architectures to generate instance specific ones [1, 2, 3], yet little attention has been given on how to actually deal with this genericity at the code level. This paper addresses the issue of handling product line variability at the code level. To this end various implementation approaches are examined with respect to their use in a product line context.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Niemela:2001:PLS, author = "Eila Niemel{\"a} and Tuomas Ihme", title = "Product line software engineering of embedded systems", journal = j-SIGSOFT, volume = "26", number = "3", pages = "118--125", month = may, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/379377.375271", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:07 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "In order to be able to determine whether the product line approach is suitable, a company needs to analyse its business drivers, commonality of existing products, domain knowledge owned by the engineering staff, and quality of the representations of existing software artefacts. In this paper we present evaluation criteria for the development of a product line and give an overview of the current state of practices in the embedded software area. Evaluation criteria are divided into three classes. Business drivers of a product line are defined by analysing product assortment and business manners. Domains and personnel are considered in the analysis of the preconditions and targets of a product line. In the development of core assets, elements that affect assets engineering are considered as well as the mechanisms needed in their maintenance. A product line architecture that brings about a balance between subdomains and their most important properties is an investment that must be looked after. However, the subdomains need flexibility to use, change and manage their own technologies, and evolve separately, but in a controlled way.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Bachmann:2001:MVS, author = "Felix Bachmann and Len Bass", title = "Managing variability in software architectures", journal = j-SIGSOFT, volume = "26", number = "3", pages = "126--132", month = may, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/379377.375274", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:07 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper presents experience with explicitly managing variability within a software architecture. Software architects normally plan for change and put mechanisms in the architecture to support those changes. Understanding the situations where change has been planned for and recording the options possible within particular situations is usually not done explicitly. This becomes important if the architecture is used for many product versions over a long period or in a product line context where the architecture is used to build a variety of different products. That is, it is important to explicitly represent variation and indicate within the architecture locations for which change has been allowed. We will describe how the management of variations in an architecture can be made more explicit and how the use of variation points connected to the choices a customer has when ordering a product can help to navigate to the appropriate places in the architecture.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Savolainen:2001:VAF, author = "Juha Savolainen and Juha Kuusela", title = "Violatility analysis framework for product lines", journal = j-SIGSOFT, volume = "26", number = "3", pages = "133--141", month = may, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/379377.375277", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:07 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Evolution of a software intensive system is unavoidable. In fact, evolution can be seen as a part of reuse process. During the evolution of the software asset, the major part of the system functionality is normally reused. So the key issue is to identify the volatile parts of the domain requirements. Additionally, there is promise that tailored tool support may help supporting evolution in software intensive systems. In this paper, we describe the volatility analysis method for product lines. This highly practical method has been used in multiple domains and is able to express and estimate common types of evolutional characteristics. The method is able to represent volatility in multiple levels and has capacity to tie the volatility estimation to one product line member specification. We also briefly describe current tool support for the method. The main contribution of this paper is a volatility analysis framework that can be used to describe how requirements are estimated to evolve in the future. The method is based on the definition hierarchy framework.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Eckstein:2001:TLC, author = "Silke Eckstein and Peter Ahlbrecht and Karl Neumann", title = "Techniques and language constructs for developing generic informations systems: a case study", journal = j-SIGSOFT, volume = "26", number = "3", pages = "145--154", month = may, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/379377.375279", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:07 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "When creating a family of systems, i.e. several systems of similar type which differ within some aspects, it is desirable to be able to express these differences already at the level of the specification, and to automatically obtain systems from it which are ready to run. The use of generic methods may lead to substantial progress in this area. This report explores two aspects: parameterization concepts at the specification level, which can be used to describe variants of a system, and generator programs, which produce runnable systems from prefabricated components.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Daneva:2001:EVA, author = "Maya Daneva", title = "Evaluating the value-added benefits of using requirements reuse metrics in {ERP} projects", journal = j-SIGSOFT, volume = "26", number = "3", pages = "155--163", month = may, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/379377.375283", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:07 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Measurement programs often go astray and fail to reach full success because of misconceptions and differences in expectations about the benefits to be realized as a result of a measurement exercise. This paper suggests how to plan and apply requirements reuse measurement in a business focussed way, by doing frequent benefits assessments. We describe an approach to analyzing, evaluating and tracking the reuse metrics usage patterns in Enterprise Resource Planning (ERP) projects and the benefits gained from integrating requirements reuse measurement practices in the ERP requirements elicitation--modelling--negotiation cycle. Relationships between requirements measurement activities and requirements engineering activities and deliverables are studied in the context of SAP R/ 3 implementation projects.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Wong:2001:XIF, author = "Tak Wong and Stan Jarzabek and Soe Myat Swe and Ru Shen and Hongyu Zhang", title = "{XML} implementation of frame processor", journal = j-SIGSOFT, volume = "26", number = "3", pages = "164--172", month = may, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/379377.375285", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:07 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "A quantitative study has shown that frame technology [1] supported by Fusion toolset can lead to reduction in time-to-market (70\%) and project costs (84\%). Frame technology has been developed to handle large COBOL-based business software product families. We wished to investigate how the principle of frame approach can be applied to support product families in other application domains, in particular to build distributed component-based systems written in Object-Oriented languages. As Fusion is tightly coupled with COBOL, we implemented our own tools based on frame concepts using the XML technology. In our solution, a generic architecture for a product family is a hierarchy of XML documents. Each such document contains a reusable program fragment instrumented for change with XML tags. We use a tool built on top of XML parsing framework JAXP to process documents in order to produce a custom member of a product family. Our solution is cost-effective and extensible. In the paper, we describe our solution, illustrating its use with examples. We intend to make our solution available to public in order to encourage investigation of frame concepts in other application domains, implementation languages and platforms.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Zand:2001:CPP, author = "Manzour Zand and Paul Bassett and Rub{\'e}n Prieto-D{\'\i}az", title = "Closing panel (panel session): where are we standing? can we say ``reuse is dead, long live reuse'' or is it too soon?", journal = j-SIGSOFT, volume = "26", number = "3", pages = "173--175", month = may, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/379377.375289", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:07 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Desikan:2001:MEE, author = "Rajagopalan Desikan and Doug Burger and Stephen W. Keckler", title = "Measuring experimental error in microprocessor simulation", journal = j-SIGSOFT, volume = "26", number = "3", pages = "266--277", month = may, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/379377.379271", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:07 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Neumann:2001:RPCc, author = "Peter G. Neumann", title = "Risks to the public in computers and related systems", journal = j-SIGSOFT, volume = "26", number = "4", pages = "3--12", month = jul, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505482.505484", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:09 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Cooper:2001:AFPb, author = "Greg Cooper", title = "{ACM Fellow} profile: {Eugene H. Spafford}", journal = j-SIGSOFT, volume = "26", number = "4", pages = "13--16", month = jul, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505482.505485", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:09 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Doernhoefer:2001:SNSc, author = "Mark Doernhoefer", title = "Surfing the net for {{\booktitle{Software Engineering Notes}}}", journal = j-SIGSOFT, volume = "26", number = "4", pages = "17--26", month = jul, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505482.505486", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:09 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Mens:2001:FFS, author = "Tom Mens and Michel Wermelinger", title = "{Formal Foundations of Software Evolution}: workshop report", journal = j-SIGSOFT, volume = "26", number = "4", pages = "27--29", month = jul, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505482.505488", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:09 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The workshop on Formal Foundations of Software Evolution was co-located with the 5th European Conference on Software Maintenance and Reengineering (CSMR 2001), which took place at the Centro de Congressos do Instituto Superior Tcnico in Lisbon, Portugal, March 14 to 16, 2001. The workshop was organised in the context of the Scientific Research Network on Foundations of Software Evolution. This is a research consortium coordinated by the Programming Technology Lab of the Vrije Universiteit Brussel (Belgium), and it involves 9 research institutes from universities in 5 different European countries (Belgium, Germany, Austria, Switzerland, and Portugal). The consortium is financed by the Fund for Scientific Research --- Flanders (Belgium). One full day was allocated for the workshop (March 13, 2001). There were 14 participants, that all contributed with a position paper which was reviewed and revised before the workshop. Next to the submissions of the research consortium partners, there were also participants from research institutes in Spain, United Kingdom, Finland, and Japan. In preparation to the workshop, participants were requested to read all other submissions, and asked to prepare a clear position statement and questions that were likely to stimulate discussion. The goal of the workshop was to get more insight into how formal techniques can alleviate software evolution problems, and how they can lead to tools for the evolution of large and complex software systems that are more robust and more widely applicable without sacrificing efficiency. Preferably, the evolution-support tools should not be restricted to a particular phase of software evolution [BR00], but should be generally applicable throughout the entire application lifetime. The tools should also provide support for different aspects of software engineering, such as forward engineering, reverse engineering, re-engineering, and team engineering. In order to stimulate discussions, three general important questions were posed to the participants at the beginning of the workshop: Which aspects of software evolution need to be automated by tools? Where and how can formalisms help us to achieve tool support? How can we build formally-founded tools that are as general and flexible as possible? Note that the generality and flexibility of a tool involves many different aspects: --- independence of the programming language for which support should be provided; --- customisability by the user of the tool;--- applicability in or across different stages of software evolution; --- interoperability with other tools; --- scalability to large and complex software systems with multiple developers; --- usable for static (design-time) as well as dynamic (runtime) evolution; --- applicable to forward, reverse, and re-engineering; --- usable before, during, and after evolution; --- usable for facilitating, supporting, as well as analysing evolution; --- to deal with the what and why as well as the how of software evolution", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Anonymous:2001:LSE, author = "Anonymous", title = "Limits to software estimation", journal = j-SIGSOFT, volume = "26", number = "4", pages = "54--59", month = jul, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505482.505490", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:09 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Algorithmic (KCS) complexity results can be interpreted as indicating some limits to software estimation. While these limits are abstract they nevertheless contradict enthusiastic claims occasionally made by commercial software estimation advocates. Specifically, if it is accepted that algorithmic complexity is an appropriate definition of the complexity of a programming project, then claims of purely objective estimation of project complexity, development time, and programmer productivity are necessarily incorrect.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Anonymous:2001:ESP, author = "Anonymous", title = "Estimating software projects", journal = j-SIGSOFT, volume = "26", number = "4", pages = "60--67", month = jul, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505482.505491", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:09 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Software Cost Estimation (SCE) continues to be a weak link in software project management. It is the responsibility of the project manager to make accurate estimations of effort and cost. This is particularly true for projects subject to competitive bidding where a bid too high compared with competitors would result in loosing the contract or a bid too low could result in a loss to the organization. From an estimate, the management often decides whether to proceed with the project. Industry has a need for accurate estimates of effort and size at a very early stage in a project. However, when software cost estimates are done early in the software development process the estimate can be based on wrong or incomplete requirements. Software cost estimate process is the set of techniques and procedures that organizations use to arrive at an estimate. Why SCE is difficult and error prone?- Software cost estimation requires a significant amount of effort to perform it correctly.- SCE is often done hurriedly, without an appreciation for the effort required.- You need experience at developing estimates, especially for large projects.- Human bias i.e. an Estimator is likely to consider how long a certain portion of the system would take, and then to merely extrapolate this estimate to the rest of the system, ignoring the non-linear aspects of software development.- Costs and schedules are often pre-determined by an outside source.- An in-depth analysis of the software development process was not undertaken or in many cases, is not fully understood. There is a general lack of acceptance that developing software is an expensive endeavor. The causes of poor and inaccurate estimation are: (a) imprecise and drifting requirements. (b) New software projects are nearly always different form the last. (c) Software practitioners don't collect enough information about past projects. (d) Estimates are forced to match the resources available. The software estimation process discussed in this paper describes the steps required for establishing initial software Life Cycle Cost estimates and then tracking and refining those estimates throughout the life of the project. Establishment of this process early in the life cycle will result in greater accuracy and credibility of estimates and a clearer understanding of the factors that influence software development costs.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Long:2001:SRA, author = "John Long", title = "Software reuse antipatterns", journal = j-SIGSOFT, volume = "26", number = "4", pages = "68--76", month = jul, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505482.505492", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:09 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Software reuse is a productivity technique attempted by many development organizations, with mixed success. In analyzing reuse failures, a number of antipatterns emerge. Antipatterns are obvious, but wrong, solutions to recurring problems. This article outlines a number of reuse antipatterns that have been observed within the software industry.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Rangarajan:2001:PQF, author = "Krishnan Rangarajan and N. Swaminathan and Vishu Hegde and Jacob Jacob", title = "Product quality framework: a vehicle for focusing on product quality goals", journal = j-SIGSOFT, volume = "26", number = "4", pages = "77--82", month = jul, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505482.505493", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:09 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Quality focus is generally on process quality, the avoidance and elimination of defects. This is the most relevant for manufacturing processes. In engineering design, there is as much emphasis also on product quality aspects, such as availability, performance, usability, maintainability etc. Current systems and software engineering practice generally puts the burden of optimizing these attributes solely on the knowledge, intuition and ability of architects and designers. The product quality framework provides a systematic approach that includes techniques for specifying, optimizing, analyzing and measuring these attributes. The framework also puts explicit emphasis on tradeoffs between attributes, providing a direct relationship between design and customer concerns. This paper describes the framework and its use as a vehicle for the engineering of high availability systems.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Anonymous:2001:AOV, author = "Anonymous", title = "An automated oracle for verifying {GUI} objects", journal = j-SIGSOFT, volume = "26", number = "4", pages = "83--88", month = jul, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505482.505494", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:09 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Recently, software testers have relied more on automated testing to test software. Automated testing method consists of the three modules: test case design, execution, and verification. Yet, to accomplish these three phases, we are always in a dilemma due to a lack of a verification function. Nearly all the commercial automated testing tools cannot efficiently compare graphic objects though GUI (Graphic User Interface) software is now more crucial than text based user interface. This research develops a technique that aids automatic behavior verification for a particularly difficult problem: determining the correction of screen output. Methodology to capture and compare screen output is presented and a case study using Microsoft{\reg} PowerPoint{\reg} is described.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Anantharam:2001:PR, author = "Parasuram Anantharam", title = "Programming ruby", journal = j-SIGSOFT, volume = "26", number = "4", pages = "89--89", month = jul, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505482.505496", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:09 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Boyer:2001:FPA, author = "Kenneth W. {Boyer, Jr.}", title = "Function point analysis: measurement practices for successful software projects", journal = j-SIGSOFT, volume = "26", number = "4", pages = "90--90", month = jul, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505482.505497", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:09 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Horning:2001:BRS, author = "Jim Horning", title = "Book Review: {{\booktitle{Software fundamentals: collected papers}} by David L. Parnas}", journal = j-SIGSOFT, volume = "26", number = "4", pages = "91--91", month = jul, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505482.505498", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:09 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Law:2001:QCQ, author = "Jim Law", title = "Quantum computation and quantum information", journal = j-SIGSOFT, volume = "26", number = "4", pages = "91--91", month = jul, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505482.505499", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:09 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Rosenblum:2001:TAE, author = "David Rosenblum", title = "Taming architectural evolution", journal = j-SIGSOFT, volume = "26", number = "5", pages = "1--10", month = sep, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/503271.503211", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:10 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "In the world of software development everything evolves. So, then, do software architectures. Unlike source code, for which the use of a configuration management (CM) system is the predominant approach to capturing and managing evolution, approaches to capturing and managing architectural evolution span a wide range of disconnected alternatives. This paper contributes a novel architecture evolution environment, called Mae, which brings together a number of these alternatives. The environment facilitates an incremental design process in which all changes to all architectural elements are integrally captured and related. Key to the environment is a rich system model that combines architectural concepts with those from the field of CM. Not only does this system model form the basis for Mae, but in precisely capturing architectural evolution it also facilitates automated support for several innovative capabilities that rely on the integrated nature of the system model. This paper introduces three of those: the provision of design guidance at the architectural level, the use of specialized software connectors to ensure run-time reliability during component upgrades, and the creation of component-level patches to be applied to deployed system configurations.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Morisawa:2001:ASP, author = "Yoshitomi Morisawa and Koji Torii", title = "An architectural style of product lines for distributed processing systems, and practical selection method", journal = j-SIGSOFT, volume = "26", number = "5", pages = "11--20", month = sep, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/503271.503212", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:10 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "When implementing an application system in a distributed computing environment, several architectural questions arise, such as how and where computing resources are arranged, and how the communication among computing resources are implemented. To simplify the process of making these choices, we have developed an architectural style for distributed processing system. The style classifies product lines for distributed processing systems into nine categories based on the location of data storage and the style of processing between client and server. This paper describes our architectural style and proposes a simple but practical method to select an appropriate architectural style for developing an application system. We apply this selection method in concrete real application systems.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Wermelinger:2001:GBA, author = "Michel Wermelinger and Ant{\'o}nia Lopes and Jos{\'e} Luiz Fiadeiro", title = "A graph based architectural (Re)configuration language", journal = j-SIGSOFT, volume = "26", number = "5", pages = "21--32", month = sep, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/503271.503213", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:10 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "For several different reasons, such as changes in the business or technological environment, the configuration of a system may need to evolve during execution. Support for such evolution can be conceived in terms of a language for specifying the dynamic reconfiguration of systems. In this paper, continuing our work on the development of a formal platform for architectural design, we present a high-level language to describe architectures and for operating changes over a configuration (i.e., an architecture instance), such as adding, removing or substituting components or interconnectons. The language follows an imperative style and builds on a semantic domain established in previous work. Therein, we model architectures through categorical diagrams and dynamic reconfiguration through algebraic graph rewriting.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Sliski:2001:AFE, author = "Timothy J. Sliski and Matthew P. Billmers and Lori A. Clarke and Leon J. Osterweil", title = "An architecture for flexible, evolvable process-driven user-guidance environments", journal = j-SIGSOFT, volume = "26", number = "5", pages = "33--43", month = sep, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/503271.503214", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:10 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Complex toolsets can be difficult to use. User interfaces can help by guiding users through the alternative choices that might be possible at any given time, but this tends to lock users into the fixed interaction models dictated by the user-interface designers. Alternatively, we propose an approach where the tool utilization model is specified by a process, written in a process definition language. Our approach incorporates a user-interface specification that describes how the user-interface is to respond to, or reflect, progress through the execution of the process definition. By not tightly binding the user-guidance process, the associated user-interfaces, and the toolset, it is easy to develop alternative processes that provide widely varying levels and styles of guidance and to be responsive to evolution in the processes, user interfaces, or toolset. In this paper, we describe this approach for developing process-driven user-guidance environments, a lossely coupled architecture for supporting this separation of concerns, and a generator for automatically binding the process and the user interface. We report on a case study using this approach. Although this case study used a specific process definition language and a specific toolset, the approach is applicable to other process definition languages and toolsets, provided they meet some basic, sound software engineering requirements.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Kaveh:2001:DDD, author = "Nima Kaveh and Wolfgang Emmerich", title = "Deadlock detection in distribution object systems", journal = j-SIGSOFT, volume = "26", number = "5", pages = "44--51", month = sep, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/503271.503216", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:10 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The behaviour of a distributed system is largely determined by the use of synchronization primitives and threading policies of the underlying middleware. The inherent parallel nature of distributed systems may cause liveness problems, such as deadlocks and livelocks. An increasing number of distributed systems is built using object middleware. We exploit the fact that modern object middleware offers only a few built-in synchronization and threading primitives by suggesting UML stereotypes to represent each of these primitives in distributed object design. We define the semantics of the stereotypes using a process algebra. We use that semantics to translate UML diagrams into behaviourally equivalent process algebra representations and can then use model checking techniques to find potential deadlocks. The paper also shows how the model checking results can be related back to the original UML diagrams.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Jagannathan:2001:ICS, author = "Ramesh Jagannathan and Paolo A. G. Sivilotti", title = "Increasing client-side confidence in remote component implementations", journal = j-SIGSOFT, volume = "26", number = "5", pages = "52--61", month = sep, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/503271.503217", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:10 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "When a client makes use of a remote component, it does not have direct access to the remote component's implementation or state information. By observing the component's interactions with its environment, however, the client can determine whether the component's behavior conforms to its promised specification. We present a distributed infrastructure with which a client can make these observations and thereby increase its confidence in the correctness of the remote component. This infrastructure supports temporal specifications of distributed components with autonomous threads of control. It also supports multiple levels of confidence, with commensurate performance costs. As a proof-of-concept for this design, we have implemented a prototype in Java for distributed systems built using CORBA.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Jackson:2001:MM, author = "Daniel Jackson and Ilya Shlyakhter and Manu Sridharan", title = "A micromodularity mechanism", journal = j-SIGSOFT, volume = "26", number = "5", pages = "62--73", month = sep, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/503271.503219", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:10 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "A simple mechanism for structuring specifications is described. By modelling structures as atoms, it remains entirely first-order and thus amenable to automatic analysis. And by interpreting fields of structures as relations, it allows the same relational operators used in the formula language to be used for dereferencing. An extension feature allows structures to be developed incrementally, but requires no textual inclusion nor any notion of subtyping. The paper demonstrates the flexibility of the mechanism by application in a variety of common idioms.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Uchitel:2001:DIS, author = "Sebastian Uchitel and Jeff Kramer and Jeff Magee", title = "Detecting implied scenarios in message sequence chart specifications", journal = j-SIGSOFT, volume = "26", number = "5", pages = "74--82", month = sep, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/503271.503220", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:10 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Scenario-based specifications such as Message Sequence Charts (MSCs) are becoming increasingly popular as part of a requirements specification. Scenario describe how system components, the environment and users work concurrently and interact in order to provide system level functionality. Each scenario is a partial story which, when combined with other scenarios, should conform to provide a complete system description. However, although it is possible to build a set of components such that each component behaves in accordance with the set of scenarios, their composition may not provide the required system behaviour. Implied scenarios may appear as a result of unexpected component interaction. In this paper, we present an algorithm that builds a labelled transition system (LTS) behaviour model that describes the closest possible implementation for a specification based on basic and high-level MSCs. We also present a technique for detecting and providing feedback on the existence of implied scenarios. We have integrated these procedures into the Labelled Transition System Analyser (LTSA), which allows for model checking and animation of the behaviour model.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Wendorff:2001:FAA, author = "Peter Wendorff", title = "A formal approach to the assessment and improvement of terminological models used in information systems engineering", journal = j-SIGSOFT, volume = "26", number = "5", pages = "83--87", month = sep, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/503271.503221", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:10 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "In the design and implementation of any information system identifiers are used to designate concepts. Typical examples are names of classes, variables, modules, database fields, etc. A terminological model is a set of identifiers together with a set of abstractions and a set of links between identifiers and abstractions. Naturally, terminological models embody important knowledge of a system, and therefore they play an important role during the development of information systems. In this paper we propose a metamodel for terminological models that is based on category theory as conceptual and notational framework.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Coady:2001:UAI, author = "Yvonne Coady and Gregor Kiczales and Mike Feeley and Greg Smolyn", title = "Using {aspectC} to improve the modularity of path-specific customization in operating system code", journal = j-SIGSOFT, volume = "26", number = "5", pages = "88--98", month = sep, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/503271.503223", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:10 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Layered architecture in operating system code is often compromised by execution path-specific customizations such as prefetching, page replacement and scheduling strategies. Path-specific customizations are difficult to modularize in a layered architecture because they involve dynamic context passing and layer violations. Effectively they are vertically integrated slices through the layers. An initial experiment using an aspect-oriented programming language to refactor prefetching in the FreeBSD operating system kernal shows significant benefits, including easy (un)pluggability of prefetching modes, independent development of prefetching modes, and overall improved comprehensibility.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Sullivan:2001:SVM, author = "Kevin J. Sullivan and William G. Griswold and Yuanfang Cai and Ben Hallen", title = "The structure and value of modularity in software design", journal = j-SIGSOFT, volume = "26", number = "5", pages = "99--108", month = sep, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/503271.503224", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:10 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The concept of information hiding modularity is a cornerstone of modern software design thought, but its formulation remains casual and its emphasis on changeability is imperfectly related to the goal of creating added value in a given context. We need better explanatory and prescriptive models of the nature and value of information hiding. We evaluate the potential of a new theory---developed to account for the influence of modularity on the evolution of the computer industry---to inform software design. The theory uses design structure matrices to model designs and real options techniques to value them. To test the potential utility of the theory for software we apply it to Parnas's KWIC designs. We contribute an extension to design structure matrices, and we show that the options results are consistent with Parnas's conclusions. Our results suggest that such a theory does have potential to help inform software design.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{deAlfaro:2001:IA, author = "Luca de Alfaro and Thomas A. Henzinger", title = "Interface automata", journal = j-SIGSOFT, volume = "26", number = "5", pages = "109--120", month = sep, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/503271.503226", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:10 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Conventional type systems specify interfaces in terms of values and domains. We present a light-weight formalism that captures the temporal aspects of software component interfaces. Specifically, we use an automata-based language to capture both input assumptions about the order in which the methods of a component are called, and output guarantees about the order in which the component calls external methods. The formalism supports automatic compatability checks between interface models, and thus constitutes a type system for component interaction. Unlike traditional uses of automata, our formalism is based on an optimistic approach to composition, and on an alternating approach to design refinement. According to the optimistic approach, two components are compatible if there is some environment that can make them work together. According to the alternating approach, one interface refines another if it has weaker input assumptions, and stronger output guarantees. We show that these notions have game-theoretic foundations that lead to efficient algorithms for checking compatibility and refinement.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Inverardi:2001:ASD, author = "Paola Inverardi and Massimo Tivoli", title = "Automatic synthesis of deadlock free connectors for {COM\slash DCOM} applications", journal = j-SIGSOFT, volume = "26", number = "5", pages = "121--131", month = sep, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/503271.503227", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:10 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Many software projects are based on the integration of independently designed software components that are acquired on the market rather than developed within the project itself. Sometimes interoperability and composition mechanisms provided by component based integration frameworks cannot solve the problem of binary component integration in an automatic way. Notably, in the context of component based concurrent systems, the binary component integration may cause deadlocks within the system. In this paper we present a technique to allow connectors synthesis for deadlock-free component based architectures [2] in a real scale context, namely in the context of COM/DCOM applications. This technique is based on an architectural, connector-based approach which consists of synthesizing a COM/DCOM connector as a COM/DCOM server that can route requests of the clients through a deadlock free policy. This work also provides guide lines to implement an automatic tool that derives the implementation of routing dead-lock-free policy within the connector from the dynamic behavior specification of the COM components. It is then possible to avoid the deadlock by using COM composition mechanisms to insert the synthesized connector within the system while letting the system COM servers unimodified. We present a successful application of this technique on the (COM version of the) problem known as ``The dining philosophers''. Depending on the type of deadlock we have a strategy that automatically operates on the connector part of the system architecture in order to obtain a suitably equivalent version of the system which is deadlock-free.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Davis:2001:NPA, author = "L. Davis and R. Gamble and J. Payton and G. J{\'o}nsd{\'o}ttir and D. Underwood", title = "A notation for problematic architecture interactions", journal = j-SIGSOFT, volume = "26", number = "5", pages = "132--141", month = sep, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/503271.503228", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:10 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The progression of component-based software engineering (CBSE) is essential to the rapid, cost-effective development of complex software systems. Given the choice of well-tested components, CBSE affords reusability and increases reliability. However, applications developed according to this practice can often suffer from difficult maintenance and control, problems that stem from improper or inadequate integrate solutions. Avoiding such unfortunate results requires knowledge of what causes the interoperability problems in the first place. The time for this assessment is during application design. In this paper, we define problematic architecture interactions using a simple notation with extendable properties. Furthermore, we delineate a multi-phase process for pre-integration analysis that relies on this notation. Through this effort, potential problematic architecture interactions can be illuminated and used to form the initial requirements of an integration architecture.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Coen-Porisini:2001:USE, author = "Alberto Coen-Porisini and Giovanni Denaro and Carlo Ghezzi and Mauro Pezz{\'e}", title = "Using symbolic execution for verifying safety-critical systems", journal = j-SIGSOFT, volume = "26", number = "5", pages = "142--151", month = sep, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/503271.503230", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:10 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Safety critical systems require to be highly reliable and thus special care is taken when verifying them in order to increase the confidence in their behavior. This paper addresses the problem of formal verification of safety critical systems by providing empirical evidence of the practical applicability of symbolic execution and of its usefulness for checking safety-related properties. In this paper, symbolic execution is used for building an operational model of the software on which safety properties, expressed by means of a Path Description Language (PDL), can be assessed.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Fisler:2001:MVC, author = "Kathi Fisler and Shriram Krishnamurthi", title = "Modular verification of collaboration-based software designs", journal = j-SIGSOFT, volume = "26", number = "5", pages = "152--163", month = sep, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/503271.503231", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:10 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Most existing modular model checking techniques betray their hardware roots: they assume that modules compose in parallel. In contrast, collaboration-based software designs, which have proven very successful in several domains, are sequential in the simplest case. Most interesting collaboration-based designs are really quasi-sequential compositions of parallel compositions. These designs demand and inspire new verification techniques. This paper presents algorithms that exploit the software's modular decomposition to verify collaboration-based designs. Our technique can verify most properties locally in the collaborations; we also characterize when a global state space construction is unavoidable. We have validated our proposal by testing it on several designs.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Choi:2001:AAM, author = "Yunja Choi and Sanjai Rayadurgam and Mats P. E. Heimdahl", title = "Automatic abstraction for model checking software systems with interrelated numeric constraints", journal = j-SIGSOFT, volume = "26", number = "5", pages = "164--174", month = sep, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/503271.503232", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:10 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Model checking techniques have not been effective in important classes of software systems characterized by large (or infinite) input domains with interrelated linear and non-linear constraints over the input variables. Various model abstraction techniques have been proposed to address this problem. In this paper, we wish to propose domain abstraction based on data equivalence and trajectory reduction as an alternative and complement to other abstraction techniques. Our technique applies the abstraction to the input domain (environment) instead of the model and is applicable to constraint-free and deterministic constrained data transition system. Our technique is automatable with some minor restrictions.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Ramsey:2001:AAF, author = "Norman Ramsey and El{\H{o}}d Csirmaz", title = "An algebraic approach to file synchronization", journal = j-SIGSOFT, volume = "26", number = "5", pages = "175--185", month = sep, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/503271.503233", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:10 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "A file synchronizer restores consistency after multiple replicas of a filesystem have been changed independently. We present an algebra for reasoning about operations on filesystems and show that it is sound and complete with respect to a simple model. The algebra enables us to specify a file-synchronization algorithm that can be combined with several different conflict-resolution policies. By contrast, previous work builds the conflict-resolution policy into the specification, or worse, does not specify the synchronizer's behavior precisely. We classify synchronizers by asking whether conflicts can be resolved at a single disconnected replica and whether all replicas are identical after synchronization. We also discuss timestamps and argue that there is no good way to propagate timestamps when there is severe clock skew between replicas.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Engels:2001:MSA, author = "Gregor Engels and Jochem M. K{\"u}ster and Reiko Heckel and Luuk Groenewegen", title = "A methodology for specifying and analyzing consistency of object-oriented behavioral models", journal = j-SIGSOFT, volume = "26", number = "5", pages = "186--195", month = sep, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/503271.503235", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:10 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Object-oriented modeling favors the modeling of object behavior from different viewpoints and the successive refinement of behavioral models in the development process. This gives rise to consistency problems of behavioral models. The absence of a formal semantics for UML models and the numerous possibilities of employing behavioral models within the development process lead to the rise of a number of different consistency notions. In this paper, we discuss the issue of consistency of behavioral models in the UML and present a general methodology how consistency problems can be dealt with. According to the methodology, those aspects of the models relevant to the consistency are mapped to a semantic domain in which precise consistency tests can be formulated. The choice of the semantic domain and the definition of consistency conditions can be used to construct different consistency notions. We show the applicability of our methodology by giving an example of a concrete consistency problem of concurrent object-oriented models.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Lavazza:2001:CUF, author = "Luigi Lavazza and Gabriele Quaroni and Matteo Venturelli", title = "Combining {UML} and formal notations for modelling real-time systems", journal = j-SIGSOFT, volume = "26", number = "5", pages = "196--206", month = sep, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/503271.503236", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:10 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This article explores a dual approach to real-time software development. Models are written in UML, as this is expected to be relatively easy and economic. Then models are automatically translated into a formal notation that supports the verification of properties such as safety, utility, liveness, etc. In this way, developers can exploit the advantages of formal notations while skipping the complex and expensive formal modelling phase. The proposed approach is applied to the Generalised Railroad Crossing (GRC) problem, one of the best known benchmarks proposed in the literature. A UML model of the GRC is built, and then translated into TRIO (a first order temporal logic). The resulting specification properties are tested by a history checking tool which exploits the formality of TRIO. The work described here highlights the shortcomings of UML as a real-time modelling language, proposes enhancements and workarounds to overcome UML limitations, and demonstrates the viability of using UML as a front-end for a formal real-time notation. By translating the GRC model into TRIO, we also give formal semantics to some of the UML constructs.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Luer:2001:WEC, author = "Chris L{\"u}er and David S. Rosenblum", title = "{WREN} --- an environment for component-based development", journal = j-SIGSOFT, volume = "26", number = "5", pages = "207--217", month = sep, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/503271.503238", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:10 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Prior research in software environments focused on three important problems---tool integration, artifact management, and process guidance. The context for that research, and hence the orientation of the resulting environments, was a traditional model of development in which an application is developed completely from scratch by a single organization. A notable characteristic of component-based development is its emphasis on integrating independently developed components produced by multiple organizations. Thus, while component-based development can benefit from the capabilities of previous generations of environments, its special nature induces requirements for new capabilities not found in previous environments. This paper is concerned with the design of component-based development environments, or CBDEs. We identify seven important requirements for CBDEs and discuss their rationale, and we describe a prototype environment called WREN that we are building to implement these requirements and to further evaluate and study the role of environment technology in component-based development. Important capabilities of the environment include the ability to locate potential components of interest from component distribution sites, to evaluate the identified components for suitability to an application, to incorporate selected components into application design models, and to physically integrate selected components into the application.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Jahnke:2001:ECB, author = "Jens H. Jahnke", title = "Engineering component-based net-centric systems for embedded applications", journal = j-SIGSOFT, volume = "26", number = "5", pages = "218--228", month = sep, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/503271.503239", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:10 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The omnipresence of the Internet and the World Wide Web (Web) via phone lines, cable-TV, power lines, and wireless RF devices has created an inexpensive media for telemonitoring and remotely controlling distributed electronic appliances. The great variety of potential benefits of aggregating and connecting embedded systems over the Internet is matched by the currently unsolved problem of how to design, test, maintain, and evolve such heterogeneous, collaborative systems. Recently, component-oriented software development has shown great potential for cutting production costs and improving the maintainability of systems. We discuss component-oriented engineering of embedded control software in the light of emerging requirements of distributed, net-centric systems. Our approach is baed on applying the graphical specification language SDL for composing complex networks of embedded software components. From the SDL specification, we generate internet-aware connector components to local embedded controller networks. The described research is carried out in a collaborative effort between industry and academia.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Findler:2001:BCB, author = "Robert Bruce Findler and Mario Latendresse and Matthias Felleisen", title = "Behavioral contracts and behavioral subtyping", journal = j-SIGSOFT, volume = "26", number = "5", pages = "229--236", month = sep, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/503271.503240", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:10 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Component-based software manufacturing has the potential to bring division-of-labor benefits to the world of software engineering. In order to make a market of software components viable, however, producers and consumers must agree on enforceable software contracts. In this paper, we show how to enforce contracts if components are manufactured from class and interface hierarchies. In particular, we focus on one style of contract: pre- and post-conditions. Programmers annotate class and interface methods with pre- and post-conditions and the run-time system checks these conditions during evaluation. These contracts guarantee that methods are called properly and provide appropriate results. In procedural languages, the use of pre- and post-condition contracts is well-established and studies have demonstrated its value. In object-oriented languages, however, assigning blame for pre- and post-condition failures poses subtle and complex problems. Specifically, assigning blame for malformed class and interface hierarchies is so difficult that none of the existing contract monitoring tools correctly assign blame for these failures. In this paper, we show how to overcome these problems in the context of Java. Our work is based on the notion of behavioral subtyping.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Edvardsson:2001:ACS, author = "Jon Edvardsson and Mariam Kamkar", title = "Analysis of the constraint solver in {UNA} based test data generation", journal = j-SIGSOFT, volume = "26", number = "5", pages = "237--245", month = sep, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/503271.503242", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:10 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "In a series of articles Gupta et al. develop a framework for automatic test data generation for computer programs. In general, their approach consists of a branch predicate collector, which derives a system of linear inequalities representing the branch predicates for a given path in the program. This system is solved using a solving technique of theirs called the Unified Numerical Approach (UNA) [5, 7]. In this paper we show that in contrast to traditional optimization methods the UNA is not bounded by the size of the solved system. Instead it depends on how input is composed. That is, even for very simple systems consisting of one variable we can easily get more than a thousand iterations. We will also give a formal proof that UNA does not always find a mixed integer solution when there is one. Finally, we suggest using some traditional optimization method instead, like the simplex method in combination with branch-and-bound and/or a cutting-plane algorithm as a constraint solver.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Dickinson:2001:PFD, author = "William Dickinson and David Leon and Andy Podgurski", title = "Pursuing failure: the distribution of program failures in a profile space", journal = j-SIGSOFT, volume = "26", number = "5", pages = "246--255", month = sep, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/503271.503243", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:10 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Observation-based testing calls for analyzing profiles of executions induced by potential test cases, in order to select a subset of executions to be checked for conformance to requirements. A family of techniques for selecting such a subset is evaluated experimentally. These techniques employ automatic cluster analysis to partition executions, and they use various sampling techniques to select executions from clusters. The experimental results support the hypothesis that with appropriate profiling, failures often have unusual profiles that are revealed by cluster analysis. The results also suggest that failures often form small clusters or chains in sparsely-populated areas of the profile space. A form of adaptive sampling called failure-pursuit sampling is proposed for revealing failures in such regions, and this sampling method is evaluated experimentally. The results suggest that failure-pursuit sampling is effective.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Memon:2001:CCG, author = "Atif M. Memon and Mary Lou Soffa and Martha E. Pollack", title = "Coverage criteria for {GUI} testing", journal = j-SIGSOFT, volume = "26", number = "5", pages = "256--267", month = sep, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/503271.503244", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:10 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "A widespread recognition of the usefulness of graphical user interfaces (GUIs) has established their importance as critical components of today's software. GUIs have characteristics different from traditional software, and conventional testing techniques do not directly apply to GUIs. This paper's focus is on coverage criteria for GUIs, important rules that provide an objective measure of test quality. We present new coverage criteria to help determine whether a GUI has been adequately tested. These coverage criteria use events and event sequences to specify a measure of test adequacy. Since the total number of permutations of event sequences in any non-trivial GUI is extremely large, the GUI's hierarchical structure is exploited to identify the important event sequences to be tested. A GUI is decomposed into GUI components, each of which is used as a basic unit of testing. A representation of a GUI component, called an event-flow graph, identifies the interaction of events within a component and intra-component criteria are used to evaluate the adequacy of tests on these events. The hierarchical relationship among components is represented by an integration tree, and inter-component coverage criteria are used to evaluate the adequacy of test sequences that cross components. Algorithms are given to construct event-flow graphs and an integration tree for a given GUI, and to evaluate the coverage of a given test suite with respect to the new coverage criteria. A case study illustrates the usefulness of the coverage report to guide further testing and an important correlation between event-based coverage of a GUI and statement coverage of its software's underlying code.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Conradi:2001:ESU, author = "Reidar Conradi and Tore Dyb{\aa}", title = "An empirical study on the utility of formal routines to transfer knowledge and experience", journal = j-SIGSOFT, volume = "26", number = "5", pages = "268--276", month = sep, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/503271.503246", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:10 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Most quality and software process improvement frameworks emphasize written (i.e. formal) documentation to convey recommended work practices. However, there is considerable skepticism among developers to learn from and adhere to prescribed process models. The latter are often perceived as overly ``structured'' or implying too much ``control''. Further, what is relevant knowledge has often been decided by ``others''---often the quality manager. The study was carried out in the context of a national software process improvement program in Norway for small- and medium-sized companies to assess the attitude to formalized knowledge and experience sources. The results show that developers are rather skeptical at using written routines, while quality and technical managers are taking this for granted. This is an explosive combination. The conclusion is that formal routines must be supplemented by collaborative, social processes to promote effective dissemination and organizational learning. Trying to force a (well-intended) quality system down the developers' throats is both futile and demoralizing. The wider implications for quality and improvement work is that we must strike a balance between the ``disciplined'' or ``rational'' and the ``creative'' way of working.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Freimut:2001:ICS, author = "Bernd Freimut and Susanne Hartkopf and Peter Kaiser and Jyrki Kontio and Werner Kobitzsch", title = "An industrial case study of implementing software risk management", journal = j-SIGSOFT, volume = "26", number = "5", pages = "277--287", month = sep, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/503271.503247", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:10 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Explicit risk management is gaining ground in industrial software development projects. However, there are few empirical studies that investigate the transfer of explicit risk management into industry, the adequacy of the risk management approaches to the constraints of industrial contexts, or their cost-benefit. This paper presents results from a case study that introduced a systematic risk management method, namely the Riskit method, into a large German telecommunication company. The objective of the case study was (1) to analyze the usefulness and adequacy of the Riskit method and (2) to analyze the cost-benefit of the Riskit method in this industrial context. The results of (1) also aimed at improvement and customization of the Riskit method. Moreover, we compare our findings with results of previous case studies to obtain more generalized conclusions on the Riskit method. Our results showed that the Riskit method is practical, adds value to the project, and that its key concepts are understood and usable in practice. Additionally, many lessons learned are reported that are useful for the general audience who wants to transfer risk management into new projects.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Shull:2001:EMI, author = "Forrest Shull and Jeffrey Carver and Guilherme H. Travassos", title = "An empirical methodology for introducing software processes", journal = j-SIGSOFT, volume = "26", number = "5", pages = "288--296", month = sep, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/503271.503248", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:10 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "There is a growing interest in empirical study in software engineering, both for validating mature technologies and for guiding improvements of less-mature technologies. This paper introduces an empirical methodology, based on experiences garnered over more than two decades of work by the Empirical Software Engineering Group at the University of Maryland and related organizations, for taking a newly proposed improvement to development processes from the conceptual phase through transfer to industry. The methodology presents a series of questions that should be addressed, as well as the types of studies that best address those questions. The methodology is illustrated by a specific research program on inspection processes for Object-Oriented designs. Specific examples of the studies that were performed and how the methodology impacted the development of the inspection process are also described.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Brada:2001:CRI, author = "P{\v{r}}emysl Brada", title = "Component revision identification based on {IDL\slash ADL} component specification", journal = j-SIGSOFT, volume = "26", number = "5", pages = "297--298", month = sep, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/503271.503250", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:10 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Although software components have become one of the mainstream technologies, they still lack a supportive versioning scheme. This paper describes a system for revision identification of released components with well defined semantics. It is based on the analysis of changes in the component IDL or ADL specification structured into a hierarchy of traits and categories of declarations.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Estublier:2001:MMS, author = "J. Estublier and H. Verjus and P. Y. Cunin", title = "Modelling and managing software federations", journal = j-SIGSOFT, volume = "26", number = "5", pages = "299--300", month = sep, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/503271.503251", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:10 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Building large software applications from Commercial Off The Shelf tools (COTS) is not an industrial reality so far. This work presents a new approach to solve the different problems found when building a federation of COTS.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Clarke:2001:STG, author = "Duncan Clarke and Thierry J{\'e}ron and Vlad Rusu and Elena Zinovieva", title = "{STG}: a tool for generating symbolic test programs and oracles from operational specifications", journal = j-SIGSOFT, volume = "26", number = "5", pages = "301--302", month = sep, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/503271.503252", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:10 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "We report on a tool we have developed that automates the derivation of tests from specifications. The tool implements conformance testing techniques to derive symbolic tests that incorporate their own oracles from formal operational specifications. It was applied for testing a simple version of the CEPS (Common Electronic Purse Specification).", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Basin:2001:FDM, author = "David Basin and Frank Rittinger and Luca Vigan{\`o}", title = "A formal data-model of the {CORBA} security service", journal = j-SIGSOFT, volume = "26", number = "5", pages = "303--304", month = sep, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/503271.503253", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:10 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "We use the formal language Z to specify and analyze the security service of CORBA. In doing so, we tackle the problem of how one can apply lightweight formal methods to improve the precision and aid the analysis of a substantial, informal specification. Our approach is scenario-driven: we use representative scenarios to determine which parts of the informal specification should be formalized and then verify the formal specification against the requirements of these scenarios.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Sreedhar:2001:YPS, author = "Vugranam C. Sreedhar", title = "{York}: programming software components", journal = j-SIGSOFT, volume = "26", number = "5", pages = "305--306", month = sep, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/503271.503254", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:10 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Ambriola:2001:EWS, author = "Vincenzo Ambriola and R. Mark Greenwood", title = "{8th European Workshop on Software Process Technology}: report and future directions", journal = j-SIGSOFT, volume = "26", number = "5", pages = "307--308", month = sep, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/503271.503256", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:10 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "In this paper we report on the 8th European Workshop on Software Process Technology held in Witten (Germany) in June 2001. We also report on the outcome of a working session about the future directions of research in software process technology that will be addressed in the next workshop of this series.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Nord:2001:SAC, author = "Robert L. Nord and Daniel J. Paulish and Robert W. Schwanke and Dilip Soni", title = "Software architecture in a changing world: developing design strategies that anticipate change", journal = j-SIGSOFT, volume = "26", number = "5", pages = "309--310", month = sep, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/503271.503258", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:10 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "It is now generally accepted that separating software architecture into multiple views can help in reducing complexity and in making sound decisions about design trade-offs. Our four views are based on current practice; they are loosely coupled, and address different engineering concerns [1]. This tutorial will teach you how global analysis can improve your design, and how to use UML to describe these views. You will learn: (1) the purpose of having separate software architecture views, (2) the difference between using UML for software architecture and the use of UML for designing OO implementations, (3) how to apply global analysis to analyze factors that influence the architecture and to develop strategies that guide the design, (4) the importance of designing for anticipated change to produce more maintainable architectures, and (5) how to incorporate software architecture design in your software process. This tutorial is aimed at experienced software engineers, architects, and technical managers. It is assumed that participants know the basic UML diagrams. Experience in developing models and software design is helpful.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Emmerich:2001:CTJ, author = "Wolfgang Emmerich and Nima Kaveh", title = "Component technologies: {Java Beans}, {COM}, {CORBA}, {RMI}, {EJB} and the {CORBA Component Model}", journal = j-SIGSOFT, volume = "26", number = "5", pages = "311--312", month = sep, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/503271.503259", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:10 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This one-day tutorial is aimed at software engineering practitioners and researchers, who are familiar with object-oriented analysis, design and programming and want to obtain an overview of the technologies that are enabling component-based development. We introduce the idea of component-based development by defining the concept and providing its economic rationale. We describe how object-oriented programming evolved into local component models, such as Java Beans and distributed object technologies, such as the Common Object Request Broker Architecture (CORBA), Java Remote Method Invocation (RMI) and the Component Object Model (COM). We then address how these technologies matured into distributed component models, in particular Enterprise Java Beans (EJB) and the CORBA Component Model (CCM). We give an assessment of the maturity of each of these technologies and sketch how they are used to build distributed architectures.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Kiczales:2001:AOP, author = "Gregor Kiczales and Erik Hilsdale", title = "Aspect-oriented programming", journal = j-SIGSOFT, volume = "26", number = "5", pages = "313", month = sep, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/503271.503260", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:10 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Aspect-oriented programming (AOP) is a technique for improving separation of concerns in software design and implementation. AOP works by providing explicit mechanisms for capturing the structure of crosscutting concerns. This tutorial shows how to use AOP to implement crosscutting concerns in a concise modular way. It works with AspectJ, a seamless aspect-oriented extension to the Java(tm) programming language, and with AspectC, an aspect-oriented extension to C in the style of AspectJ. It also includes a description of their underlying model, in terms of which a wide range of AOP languages can be understood.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Wallnau:2001:HDT, author = "Kurt Wallnau and Scott Hissam and Robert C. Seacord", title = "Half day tutorial in methods of component-based software engineering essential concepts and classroom experience", journal = j-SIGSOFT, volume = "26", number = "5", pages = "314--315", month = sep, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/503271.503262", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:10 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The question of which design methods are appropriate for component-based development (CBD) is complicated by different understandings of the end objectives CBD. A further complication is different understandings of what is meant by ``component.'' These differences lead to entirely distinct classes of design problem. The aim of this tutorial is to, first, outline the differing interpretations of CBD, and, second, to outline the required methodological responses to these design problems.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Lippert:2001:AXC, author = "Martin Lippert and Stefan Roock", title = "Adapting {XP} to complex application domains", journal = j-SIGSOFT, volume = "26", number = "5", pages = "316--317", month = sep, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/503271.503263", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:10 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Extreme programming (XP) works well for small software projects in not-too-complex application domains. In many of these projects the rather simple requirements engineering of XP (customers write story cards) has proved suitable. But today we are more often faced with complex application domains in which the classical XP techniques will not suffice. The tutorial shows how to adapt extreme programming to complex application domains and to demanding development tasks. We focus mainly on the requirements engineering part and show how to enhance XP with interviews, scenarios and system visions. We also integrate the management perspective into the ``planning game'' reconciling this perspective to users' needs. We propose a set of best-practice methods we have used in a number of industrial high-risk projects for different complex application domains.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Kirda:2001:EWS, author = "Engin Kirda", title = "Engineering of {Web} services with {XML} and {XSL}", journal = j-SIGSOFT, volume = "26", number = "5", pages = "318--319", month = sep, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/503271.503264", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:10 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The important role of Web services in businesses and organizations is undisputed today. The construction and management of large Web services is still a challenge. The life cycle of a Web service includes the analysis, design, implementation and maintenance stages and Web service engineering covers all phases of Web service life cycle. The majority of Web tools developed so far only address the implementation phase and lack support for the other stages. Furthermore, emerging requirements such as the support for mobile devices have introduced new challenges and problems developers have to deal with. The World Wide Web Consortium's eXtensible Markup Language (XML) and the eXtensible Stylesheet Language (XSL) are standards defined in the interest of multi-purpose publishing and content reuse and are increasingly being deployed in the construction of Web services. This tutorial shows how to design, implement, and manage adaptable XML/XSL-based Web services. It discusses and presents our experiences in maintaining and building the Vienna International Festival Web service. It gives a brief overview of popular Web engineering technologies and some tools we have developed. The tutorial also examines the common difficulties, non-difficulties, and solutions of Web service engineering and presents work being done in the area.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Grunbacher:2001:EGS, author = "Paul Gr{\"u}nbacher and Barry Boehm", title = "{EasyWinWin}: a groupware-supported methodology for requirements negotiation", journal = j-SIGSOFT, volume = "26", number = "5", pages = "320--321", month = sep, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/503271.503265", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:10 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "EasyWinWin is a requirements definitions methodology that builds on the win-win negotiation approach and leverages collaborative technology to improve the involvement and interaction of key stakeholders. With EasyWinWin, stakeholders move through a step-by-step win-win negotiation where they collect, elaborate, and prioritize their requirements, and then surface and resolve issues.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Mannion:2001:RBP, author = "Mike Mannion and Hermann Kaindl", title = "Requirements-based product line engineering", journal = j-SIGSOFT, volume = "26", number = "5", pages = "322--323", month = sep, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/503271.503266", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:10 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Reuse and requirements are very important for efficient and successful systems development. This tutorial presents the experiences of requirements reuse using a Method for Requirements Authoring and Management (MRAM). MRAM is a method for establishing and selecting from product line requirements. A product line is a group of products within the same market segment e.g. mobile phones. TRAM (Tool for Requirements Authoring and Management) is a software tool to support MRAM that utilises current proven office technology (MS-Word, MS-Access). The tutorial presents the results of MRAM/TRAM as it has been applied to product line engineering of a real-world application.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Zundorf:2001:UCC, author = "Albert Z{\"u}ndorf", title = "From use cases to code --- rigorous software development with {UML}", journal = j-SIGSOFT, volume = "26", number = "5", pages = "324--325", month = sep, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/503271.503267", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:10 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The Rational Unified Process lacks technical guidance for the development of object-oriented applications. This tutorial fills this gap. We first use UML scenario diagrams to analyze use-cases. Next, we show a method to analyze scenarios and to derive UML class diagrams and UML behavior modeling for active classes and methods. We show how to choose and embed design patterns in a design and how to employ different architectural styles. From such a precise design, smart CASE tools generate fully functional implementations. We explain state-of-the-art code generation concepts for UML and assess current CASE tools for their code generation capabilities and for their support through all software development phases more generally.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Aberer:2001:PPI, author = "Karl Aberer and Manfred Hauswirth", title = "Peer-to-peer information systems: concepts and models, state-of-the-art, and future systems", journal = j-SIGSOFT, volume = "26", number = "5", pages = "326--327", month = sep, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/503271.503268", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:10 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The limitations of client/server systems become evident in an Internet-scale distributed environment. P2P systems offer an alternative to traditional client/server systems: Every node acts both as a client and a server and ``pays'' its participation by providing access to its computing resources. Systems such as Napster and Gnutella have proven their practical applicability. In this tutorial we position the P2P paradigm in the design space of distributed information systems, present underlying models and concepts, and show the structure, protocols, and algorithms of current systems. Then we elaborate on the novel requirements for P2P algorithms (resource discovery, complexity, and scalability) and present future research areas.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Ran:2001:FCP, author = "Alexander Ran", title = "Fundamental concepts for practical software architecture", journal = j-SIGSOFT, volume = "26", number = "5", pages = "328--329", month = sep, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/503271.503269", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:10 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Architecture of software is a collection of design decisions that are expensive to change. How to identify which design decisions are expensive to change? What are architecture views and which views are needed to adequately describe the architecture of a specific system? How to create and manage software architecture for a product family? This tutorial offers answers to these and other questions that arise in the context of complex software development. We introduce a system of concepts useful in order to understand, design, and evaluate architecture of software intensive systems and system families. Our approach utilizes different software structures in order to control important system qualities related to its development, performance, and evolution. We draw our experience primarily from software embedded in voice and data communication systems. However the same principles can be applied to software architecture in other domains. This tutorial should be useful to engineers and technical managers involved in construction or evaluation of complex software.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Neumann:2001:RPCd, author = "Peter G. Neumann", title = "Risks to the public in computers and related systems", journal = j-SIGSOFT, volume = "26", number = "6", pages = "6--15", month = nov, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505532.505534", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:13 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Pfleeger:2001:PSR, author = "Shari Lawrence Pfleeger and Barbara A. Kitchenham", title = "Principles of survey research: part 1: turning lemons into lemonade", journal = j-SIGSOFT, volume = "26", number = "6", pages = "16--18", month = nov, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505532.505535", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:13 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Doernhoefer:2001:SNSd, author = "Mark Doernhoefer", title = "Surfing the net for {{\booktitle{Software Engineering Notes}}}", journal = j-SIGSOFT, volume = "26", number = "6", pages = "19--28", month = nov, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505532.505536", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:13 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Maurer:2001:IWS, author = "Frank Maurer and Carmen Zannier", title = "{4th ICSE workshop on ``Software Engineering over the Internet''}", journal = j-SIGSOFT, volume = "26", number = "6", pages = "29--31", month = nov, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505532.505538", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:13 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The 4th ICSE workshop on ``Software Engineering over the Internet'' brought together researchers and practitioners that are trying to use Internet technologies to overcome problems in distributed software development. The goal of the workshop was to exchange ideas how distributed projects can utilize the Internet to overcome communication, collaboration, and coordination problems. We summarize the presented papers of the workshop", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Tiako:2001:PSD, author = "Pierre F. Tiako and Tim Lindquist and Volker Gruhn", title = "{Process Support for Distributed Team-Based Software Development Workshop}", journal = j-SIGSOFT, volume = "26", number = "6", pages = "31--33", month = nov, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505532.505539", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:13 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This report summarizes the 2$^{nd}$ International Workshop on Process Support for Distributed Team-based Software Development held at the Sheraton World Resort of Orlando, Florida, on July 25, 2000 in conjunction with the Information Systems, Analysis and Synthesis (ISAS2000) International Conference. An overall twenty people attended the workshop consisting of seven technical presentations in two plenary sessions. In the following, we outline the presentations and subsequent discussions, which included modeling and distributing process component, evolution and change, web-based framework, consistency management, and reuse and interoperability. The hardcopy of the papers selected for PDTSD'00 are published by the International Institute of Informatics and Systemics as a part of the `` Industrial Systems '' volume of ISAS 2000, ISBN 980-07-6695-2.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Crnkovic:2001:IWC, author = "Ivica Crnkovic and Heinz Schmidt and Judith Stafford and Kurt Wallnau", title = "{4th ICSE Workshop on Component-Based Software Engineering: Component Certification and System Prediction}", journal = j-SIGSOFT, volume = "26", number = "6", pages = "33--40", month = nov, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505532.505540", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:13 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper gives a short overview of the 4th ICSE Workshop on Component-based Software Engineering. The workshop brought together researchers and practitioners from three communities: component technology, software architecture, and software certification. The goal of the workshop was to find a common understanding and to discuss the topics related to the component composition. The workshop was divided in eight sessions held in sequence, starting with invited talks and ended with a final discussion. A model problem, to be used for further research and work in future workshops, was discussed and later selected. The paper gives a comprehensive summary of the sessions and plans for future work.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Thompson:2001:IWC, author = "J. Barrie Thompson", title = "{ICSE2001} workshop to consider global aspects of software engineering professionalism", journal = j-SIGSOFT, volume = "26", number = "6", pages = "40--44", month = nov, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505532.505541", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:13 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The prime aim of the workshop was to provide a forum to consider global aspects of a Software Engineering profession and determine the relevance and usefulness of an initiative concerning the harmonization of professional standards which had been produced under the auspices of the International Federation of Information Processing. In particular the workshop addressed: the current situation with regard to models of certification and/or licensing in different countries, the drivers and constraints regarding Software Engineering professionalism, the roles of: international bodies and organisations, professional bodies, and learned societies. Also open questions and actions for the future were identified. The planned and the actual operation of the workshop are described. The discussion sessions are outlined and the major issues resulting from these discussions are presented. Post workshop conclusions are reported, as are relevant international developments that have occurred in the three months following the workshop. Also included are two appendices: one providing background information to the workshop the other providing a copy of the IFIP harmonization document.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Castro:2001:SRA, author = "Jaelson Castro and Jeff Kramer", title = "From software requirements to architectures {(STRAW01)}", journal = j-SIGSOFT, volume = "26", number = "6", pages = "49--51", month = nov, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505532.505542", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:13 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The First International Workshop From SofTware Requirements to Architectures (STRAW'01) was held in Toronto, Ontario, Canada, on May 14, 2001, just before the 23$^{rd}$ International Conference on Software Engineering (ICSE). In the following we give an overview of the motivation, goals, selection process and participation, workshop structure and activities, which includes a summary of presentations and discussions that took place during the workshop.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Feller:2001:MSB, author = "Joseph Feller and Brian Fitzgerald and Andr{\'e} van der Hoek", title = "Making sense of the bazaar: {1st Workshop on Open Source Software Engineering}", journal = j-SIGSOFT, volume = "26", number = "6", pages = "51--52", month = nov, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505532.505543", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:13 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/gnu.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Since the coining of the term ``Open Source'' in 1998, there has been a surge of academic and industrial research on the topic. Making Sense of the Bazaar: 1$^{st}$ Workshop on Open Source Software Engineering brought together 30 researchers and practitioners from 8 countries to discuss Open Source Software as an emerging Software Engineering paradigm. The full proceedings of the workshop have been made available online, and the full workshop report will be published in a special issue of IEE Proceedings --- Software on Open Source Software Engineering.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Loconsole:2001:RMS, author = "Annabella Loconsole and Daniel Rodriguez and J{\"u}rgen B{\"o}rstler and Rachel Harrison", title = "Report on metrics 2001: the science and practice of software metrics conference", journal = j-SIGSOFT, volume = "26", number = "6", pages = "52--57", month = nov, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505532.505544", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:13 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper reports on the IEEE 7$^{th}$ International Software Metrics Symposium (METRICS 2001), held in London, England, from the 4$^{th}$ to 6$^{th}$ April 2001 and co-hosted with the 12$^{th}$ European Software Control and Metrics conference (ESCOM 2001). Metrics Symposia are the premier event in the area of software metrics and attract most of the leading researchers and industrial practitioners.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{vanderHoek:2001:IWS, author = "Andr{\'e} van der Hoek", title = "{International Workshop on Software Configuration Management (SCM-10)}: new practices, new challenges, and new boundaries", journal = j-SIGSOFT, volume = "26", number = "6", pages = "57--58", month = nov, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505532.505545", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:13 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This report provides a brief summary of SCM-10, the ICSE 2001 10$^{th}$ International Workshop on Software Configuration Management. The primary goal of this workshop was to broaden the scope of SCM and establish ties with other disciplines that are strongly related to SCM---whether requiring some form of novel, advanced SCM functionality or influencing the field of SCM with newly available technology. As demonstrated by the accepted set of position papers and the lively discussion in the workshop, SCM-10 succeeded in achieving this goal and raised many new and important questions to be addressed in the years to come.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Hansen:2001:SDE, author = "W. J. Hansen and J. T. Foreman and C. C. Albert and E. Axelband and L. L. Brownsword and E. C. Forrester", title = "Spiral development and evolutionary acquisition: the {SEI-CSE} workshop", journal = j-SIGSOFT, volume = "26", number = "6", pages = "59--59", month = nov, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505532.505546", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:13 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Mascolo:2001:FIW, author = "Cecilia Mascolo and Wolfgang Emmerich and Anthony Finkelsteiin", title = "{First ICSE 2001 Workshop on XML Technologies and Software Engineering}", journal = j-SIGSOFT, volume = "26", number = "6", pages = "59--61", month = nov, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505532.505547", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:13 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Harman:2001:SWR, author = "Mark Harman and Bryan F. Jones", title = "The {SEMINAL} workshop: reformulating software engineering as a metaheuristic search problem", journal = j-SIGSOFT, volume = "26", number = "6", pages = "62--66", month = nov, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505532.505548", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:13 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper reports on the first international Workshop on Software Engineering using Metaheuristic INnovative ALgorithms. The aim of the workshop was to bring together researchers in search-based metaheuristic techniques with researchers and practitioners in Software Engineering. The workshop sought to support and develop the embryonic community which straddles these two communities and which is working on the application of metaheuristic search-based techniques to problems in Software Engineering. The paper outlines the nature of the nascent field of Search-Based Software Engineering, and briefly outlines the papers presented at the workshop and the discussions which took place.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Roman:2001:WSE, author = "Gruia-Catalin Roman and Gian Pietro Picco", title = "{Workshop on Software Engineering and Mobility}", journal = j-SIGSOFT, volume = "26", number = "6", pages = "67--70", month = nov, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505532.505549", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:13 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Mobility is redefining the hardware and software fabric of distributed systems. Wireless communication allows network hosts to participate in a distributed computation while on the move. Novel middleware technologies allow software components to migrate across hosts for enhanced flexibility or performance. Workshop participants were invited to analyze the software engineering implications of this wave of technological changes, by discussing fundamental models, emerging themes, research opportunities, technological trends, and market forces.http://www.elet.polimi.it/~picco/ICSE01mobility", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{vanDeursen:2001:CIE, author = "Arie van Deursen", title = "Customer involvement in extreme programming: {XP2001} workshop report", journal = j-SIGSOFT, volume = "26", number = "6", pages = "70--73", month = nov, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505532.505550", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:13 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper covers customer involvement challenges in light-weight software development processes. The report summarizes the presentations and discussions of the Workshop on Customer Involvement held during XP2001, the Second International Conference on Extreme Programming and Flexible Processes in Software Engineering, Cagliari, Italy, May 21, 2001.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Butler:2001:GTP, author = "Greg Butler", title = "Generative techniques for product lines", journal = j-SIGSOFT, volume = "26", number = "6", pages = "74--76", month = nov, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505532.505551", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:13 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "A software product line leverages the knowledge of one or more domains in order to achieve short time-to-market, cost savings, and high quality software. The highest level of reuse comes by using domain-specific languages or visual builders to describe a member of the product line, and to generate the member from the description. Generative techniques can help us to capture the configuration knowledge for a product line and use it to generate concrete family members. This workshop focuses on technical issues of product lines, rather than economic issues.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Easterbrook:2001:IWL, author = "Steve Easterbrook and Marsha Chechik", title = "{2nd International Workshop on Living with Inconsistency (IWLWI01)}", journal = j-SIGSOFT, volume = "26", number = "6", pages = "76--78", month = nov, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505532.505552", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:13 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "IWLWI-01 --- The Second International Workshop on Living with Inconsistency, took place in Toronto, Canada, on May 13, 2001 as part of ICSE-01. The following is a short overview of this workshop.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Kruchten:2001:IWD, author = "Philippe Kruchten and Wojtek Kozaczynski and Bran Selic", title = "{ICSE 2001 Workshop on Describing Software Architecture with UML}", journal = j-SIGSOFT, volume = "26", number = "6", pages = "78--79", month = nov, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505532.505553", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:13 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Srinivasa:2001:CPS, author = "Srinath Srinivasa", title = "Connotations of problem solving", journal = j-SIGSOFT, volume = "26", number = "6", pages = "80--82", month = nov, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505532.505555", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:13 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "A lot of interest has been focused on analysis and design models during information system (IS) design. But fundamentally, information systems are tools of ``problem solving'' where the term ``problem solving'' can take on different connotations. In this paper, we introduce seven different connotations of problem solving that describe IS functionality. Such a knowledge can help the system designer in transitioning between the analysis and design phases.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Dash:2001:DMD, author = "Ashiss Kumar Dash and Rakesh Agarwal", title = "Dimensional modeling for a data warehouse", journal = j-SIGSOFT, volume = "26", number = "6", pages = "83--84", month = nov, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505532.505556", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:13 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "A multidimensional database stores data as groups of field category values into dimensions, and then groups these dimensions into multidimensional arrays. Specific field category values that may occur in data identify either the rows or columns of array dimensions. The specific grouped field categories themselves identify the row or column array dimensions. This view, when presented to the end user, bring in more relevance and business sense for practical decision making than the views presented by standard relational tables and flat file databases. On-Line Analytical Processing (OLAP) is based on the multidimensional representation of data which is supported by multidimensional databases, relational engines or a combination of both. In this paper we propose a model for multidimensional databases that we had used and implemented.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Stalica:2001:MCO, author = "Mark Stalica", title = "Mobile commerce: opportunities, applications, and technologies of wireless business", journal = j-SIGSOFT, volume = "26", number = "6", pages = "85--85", month = nov, year = "2001", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/505532.505558", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:13 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Neumann:2002:RPCa, author = "Peter G. Neumann", title = "Risks to the public in computers and related systems", journal = j-SIGSOFT, volume = "27", number = "1", pages = "7--17", month = jan, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/566493.566494", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:16 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Kitchenham:2002:PSRa, author = "Barbara A. Kitchenham and Shari Lawrence Pfleeger", title = "Principles of survey research part 2: designing a survey", journal = j-SIGSOFT, volume = "27", number = "1", pages = "18--20", month = jan, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/566493.566495", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:16 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This second article of our series looks at the process of designing a survey. The design process begins with reviewing the objectives, examining the target population identified by the objectives, and deciding how best to obtain the information needed to address those objectives. However, we also need to consider factors such as determining the appropriate sample size and ensuring the largest possible response rate. To illustrate our ideas, we use the three surveys described in Part 1 of this series to suggest good and bad practice in software engineering survey research.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Doernhoefer:2002:SNSa, author = "Mark Doernhoefer", title = "Surfing the net for {{\booktitle{Software Engineering Notes}}}", journal = j-SIGSOFT, volume = "27", number = "1", pages = "21--29", month = jan, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/566493.566496", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:16 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Kim:2002:VRE, author = "Hyoseob Kim", title = "Visit report: {2nd European COTS User Working Group Workshop (ECUA2001)}", journal = j-SIGSOFT, volume = "27", number = "1", pages = "30--30", month = jan, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/566493.1148025", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:16 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{dAdderio:2002:PEC, author = "Luciana d'Adderio and Rick Dewar and Ashley Lloyd and Perdita Stevens", title = "Has the pattern emperor any clothes?: a controversy in three acts", journal = j-SIGSOFT, volume = "27", number = "1", pages = "31--35", month = jan, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/566493.1148026", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:16 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The following is a light-hearted attempt to expose some difficulties in the use of patterns, including some places where naive ways of thinking about how they are used may be insufficient. We'd very much welcome comments, to feed into a more ``academic'' paper on the same subject.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Garcia:2002:PLV, author = "Francisco Jos{\'e} Garc{\'\i}a and Juan-Antonio Barras and Miguel {\'A}ngel Laguna and Jos{\'{}}e Manuel Marqu{\'e}s", title = "Product line variability support by {FORM} and Mecano model integration", journal = j-SIGSOFT, volume = "27", number = "1", pages = "35--38", month = jan, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/566493.1148027", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:16 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "A product line definition must cover several systems, for this reason additional requirements are included as product line assets during domain engineering. Generic assets are presented to cover all components the product line instances are built from, and their corresponding composition rules. These generic assets embrace common and variable product aspects supporting the variability in product line definition and instantiation. This paper is devoted to present the problem of handling product line variability in every life-cycle stage by the integration of the ideas of the domain engineering method FORM (Feature-Oriented Reuse Method) and the Mecano Model, which defines a coarse-grained reusable element structure.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Duran:2002:VSR, author = "Amador Dur{\'a}n and Antonio Ruiz and Beatriz Bern{\'a}rdez and Miguel Toro", title = "Verifying software requirements with {XSLT}", journal = j-SIGSOFT, volume = "27", number = "1", pages = "39--44", month = jan, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/566493.1148028", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:16 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "In this article, we present an approach for the automatic verification of software requirements documents. This approach is based on the representation of software requirements in XML and the usage of the XSLT language not only to automatically generate requirements documents, but also to verify some desired quality properties and to compute some metrics. These ideas have been implemented in REM, an experimental requirements management tool that is also described in this paper.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{M:2002:UCL, author = "Bharath Kumar M. and Y. N. Srikant and Lakshminarayanan R.", title = "On the use of connector libraries in distributed software architectures", journal = j-SIGSOFT, volume = "27", number = "1", pages = "45--52", month = jan, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/566493.1148029", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:16 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Recent developments in the field of software architecture have emphasized the concept of first class connectors, which capture the interaction between components. The concept of first class connectors aids the development of distributed software architectures since it can be used to separate concerns of remote interaction between components. A library of prewritten connectors would help prototype, develop, maintain and reconfigure distributed software architectures. Completely automating the usage of connector libraries in distributed software architectures is not trivial since code fragments implementing the connectors have to be partitioned, deployed and instantiated in different machines. In this paper we discuss these issues in connector refinement and instantiation imposed by distributed software architectures and present the construction of a tool that works alongside a connector library to automatically partition, deploy and instantiate architectural entities in various machines. Scalability of the tool to allow for new connector types has been an important issue in its design and function. We also demonstrate the high flexibility and reconfigurability achieved on an interesting application by using a connector library along with our tool.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Xiaochun:2002:AIN, author = "Xu Xiaochun and Xu Guanghui and Xu Yongsen", title = "Architectural issues in network-centric computing", journal = j-SIGSOFT, volume = "27", number = "1", pages = "53--57", month = jan, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/566493.1148030", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:16 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The widespread use of the Internet has led to great changes in traditional computational models. The concept of the network-centric computing is becoming more and more popular. Software architecture, as an emerging discipline, focuses on the high-level structures of large complex software systems. With the critical challenges from the new computational model, many open issues of software architectures emerge. In this paper, we present some requisite technologies that are still not completely settled and offer some suggestions based on a survey of relevant study experience to date.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Bo:2002:EOO, author = "Gao Bo and Fei Qi and Chen Xueguang", title = "Exploiting object-oriented methodologies to model {MAS} on organizations", journal = j-SIGSOFT, volume = "27", number = "1", pages = "58--62", month = jan, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/566493.1148031", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:16 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Researchers have recognized multi-agent systems (MAS) as being a promising means to cope with distributed and complex problems. However, how to analyze and design an agent-based system in practical environments is still difficult. Based on the inherent consistency between objects and agents, MAS and human social organizations, we propose an approach using comparatively mature object-oriented (OO) methodologies and tools (mostly UML) to model MAS from the point of view of organization depiction. This paper uses a distributed logistics management system (DLMS) as an example and describes a method to model MAS based on extended UML from the following three aspects: $ \bullet $ extracting roles for agent organizations based on the theory of use cases, $ \bullet $ depicting the static organizational structures of MAS based on the semantics and syntax of class diagrams, and $ \bullet $ extending collaboration diagrams, sequence diagrams and state chart diagrams to portray the interactive behaviors among agent roles and the reasoning behaviors within agent roles themselves.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Aggarwal:2002:CPW, author = "K. K. Aggarwal and Yogesh Singh and Jitender Kumar Chhabra", title = "Computing program weakness using module coupling", journal = j-SIGSOFT, volume = "27", number = "1", pages = "63--65", month = jan, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/566493.566497", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:16 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "In this paper, a method has been developed to measure the weakness of the program using module weakness and different types of module coupling. The paper justifies the need of considering coupling effect on program weakness. Various types of coupling are computed using parameters/variables and module weakness is found using average number of live variables and average life of variables in the module. The module coupling and module weakness values are used to compute program weakness, which can be used to indicate the maintainability and testability of the program.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Benedicenti:2002:SCM, author = "Luigi Benedicenti", title = "Software Configuration Management Strategies and Rational {ClearCase(r)}", journal = j-SIGSOFT, volume = "27", number = "1", pages = "67--67", month = jan, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/566493.566499", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:16 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Neumann:2002:RPCb, author = "Peter G. Neumann", title = "Risks to the public in computers and related systems", journal = j-SIGSOFT, volume = "27", number = "2", pages = "5--19", month = mar, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/511152.511154", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:17 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Kitchenham:2002:PSRb, author = "Barbara A. Kitchenham and Shari Lawrence Pfleeger", title = "Principles of survey research: part 3: constructing a survey instrument", journal = j-SIGSOFT, volume = "27", number = "2", pages = "20--24", month = mar, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/511152.511155", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:17 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "In this article, we discuss how to construct a questionnaire. We point out the need to use any previous research results to reduce the overheads of survey construction. We identify a number of issues to consider when selecting questions, constructing questions, deciding on the type of question and finalizing the format of the questionnaire.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Doernhoefer:2002:SNSb, author = "Mark Doernhoefer", title = "Surfing the net for {{\booktitle{Software Engineering Notes}}}", journal = j-SIGSOFT, volume = "27", number = "2", pages = "25--34", month = mar, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/511152.511156", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:17 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{BenAchour-Salinesi:2002:RWS, author = "Camille {Ben Achour-Salinesi} and Andreas Opdahl and Matti Rossi", title = "{REFSQ '2001} workshop summary: {Seventh International Workshop on Requirements Engineering: Foundations for Software Quality}", journal = j-SIGSOFT, volume = "27", number = "2", pages = "35--49", month = mar, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/511152.511158", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:17 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The Seventh International Workshop on RE: Foundation for Software Quality (REFSQ'2001) was held in conjunction with CAiSE*01 in Interlaken, Switzerland on June 4th and 5th 2001. The workshop was organised by Camille Ben Achour --- Salinesi, Andreas L. Opdahl and Matti Rossi, with Eric Dubois and Klaus Pohl serving on the REFSQ Advisory Board. This workshop summary gives an overview of the presentations and numerous fruitful discussions that took place at REFSQ'2001", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Knauber:2002:PSP, author = "Peter Knauber and Giancarlo Succi", title = "Perspectives on Software Product Lines: report on {Second International Workshop on Software Product Lines: Economics, Architectures, and Implications Workshop} at {23rd International Conference on Software Engineering (ICSE)}", journal = j-SIGSOFT, volume = "27", number = "2", pages = "40--45", month = mar, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/511152.511159", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:17 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Product line engineering is a recent concept and one of the hottest topics in software engineering aiming at synergy effects in software development. Diverse benefits like cost reduction, decreased time-to-market, and quality improvement can be expected from reuse of domain-specific software assets, several successful product line projects have been performed and documented [3]. Also non-technical benefits as result of network externalities, product branding, and sharing organizational costs have been observed. Following the remarkable success of the ``First International Workshop on Software Product Lines: Economics, Architectures, and Implications'' held at ICSE 2000 in Limerick [1], this second workshop stresses more the non-technical, that is, business and organizational aspects of product line adoption and institutionalization. Another major topic of interest are product line tools, as tool support seems to become more and more critical for the success of product line approaches. Different tool concepts have been proposed and discussed during the workshop. Requirements for tools and respective solutions seem to become more concrete, maybe resulting from the fact that the technical concepts and solutions of product line approaches are better understood and can therefore be better supported with tools. The strong emphasis on establishing contacts and giving experts and practitioners from academia and industry a platform for discussion has been continued during this second workshop. Section 2 of this workshop summary describes the formal structure of the workshop. In Section 3, a short summary of the invited talk on issues and opportunities in product line research is given. Section 4 summarizes key points of the presentations of the workshop participants that were given based on their submitted papers that are fully available at [2]. In Section 5, the plenary discussion is described and its major lessons learned are summarized. Section 6 concludes this paper.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Raccoon:2002:PDG, author = "L. B. S. Raccoon", title = "Practitioners do good work", journal = j-SIGSOFT, volume = "27", number = "2", pages = "46--52", month = mar, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/511152.511160", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:17 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "I believe that software engineers have done, are doing, and will continue to do good work. Practitioners contribute to the well-being of society and add value to the economy. Working applications enable hundreds of millions of users around the world to productively do things that would otherwise be impossible.I do not claim that software engineers are perfect. Bugs seem to lurk in almost all programs. Reliable schedules and budgets remain elusive. And, software has created whole new slates of problems, like hacking and viruses. For now, I rely on Peter Neumann and his Risks columns to document these concerns. I consider this paper a companion to counterpoint Neumann's columns. My primary purpose is to claim that software engineers are successful, in spite of their shortcomings. In the first section, I argue that practitioners create enormous social and economic value. In the second section, I discuss the ongoing improvement that software engineers make in their practice. In the third section, I propose documenting the greatest twenty achievements of software engineering to show the success of practitioners. And in the fourth section, I argue that practitioners earn their keep. My secondary propose is to respond to and elaborate on comments made at the Why Don't We Get More (Self?) Respect panel at ICSE 2000 and the Impact Project Panel at ICSE 2001. I discuss how software engineers contribute to projects like the world wide web, and I echo Larry Bernstein's comments that software engineers deliver value.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Workman:2002:CMT, author = "David A. Workman", title = "A class and method taxonomy for object-oriented programs", journal = j-SIGSOFT, volume = "27", number = "2", pages = "53--58", month = mar, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/511152.511161", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:17 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The object-oriented approach to software design together with the programming languages (C++, Java, and Ada95) and design notations (e.g. UML) that support this paradigm, have precipitated new interest in developing and tailoring software metrics to more effectively quantify properties of OO systems. To be specific, this research on OO software is motivated by two related problems. (1) In many computer science courses instructors are torn between two conflicting goals: (a) increasing the number and difficulty of programming assignments to raise students' problem solving skills and maturity, while on the other hand, (b) giving meaningful feedback on the correctness and quality of programs they write. To address this problem, we are developing an automated Java program grading system. This system will compare student programs to an oracle program prepared by the instructor for a given assignment. The oracle program represents the ``ideal'' solution. In addition to computing a quantitative score for a student program, the grading program will also provide feedback on modifications or changes the student could or should make to improve the quality of the design of his or her solution. (2) A problem that is all too common in the computing industry is software theft. This has led to much copyright infringement litigation within our court system. As an expert witness in such cases, one of the tasks I have been frequently asked to perform is evaluate two programs to determine the nature and extent of their similarity. A tool, such as our planned program grading system, is needed to facilitate the kind of analysis required in such cases. In the academic world, the equivalent to software theft is plagiarism. Therefore, as an application complementary to program grading, our proposed system will also serve as a tool for identifying ``cheaters'' by comparing two student programs to one another, rather than to the oracle. So, in summary, our goal is to develop the key algorithms and eventually a program analysis system that will effectively determine the similarity of two programs written in the same language. Since Java is becoming one of the most widely used programming languages, and because of its relatively ``clean'' syntax and semantics, Java will provide the focus for our initial investigation. Java programs are composed of three essential building blocks: packages, classes, and methods. Methods are the functional or procedural units that perform or realize the algorithms necessary to solve a computational problem. Methods are grouped with encapsulated data to define classes -new types that extend Java's set of primitive types. Finally, classes are organized into subsystems or libraries using packages. Thus, when comparing two Java programs to determine their similarity, we must establish a correspondence between the packages, classes, and methods of the two programs under consideration. This suggests we must ascertain for a given pair of units, one from each program whether or not they are sufficiently similar to warrant being identified as ``matching'' in our correspondence analysis. To be similar, they must be ``doing the essentially the same thing'' -that is, they must both serve the same computational purpose. Assuming we are successful in developing some technique for determining similarity of purpose, we are still faced with the potentially large numbers of unit-pairs that must be considered in our analysis. The sheer magnitude of our computational problem thus looms as a major obstacle to obtaining any real practical solution. Using the names of units to limit what pairs need to be compared, while certainly reducing the potential computational load, is not a very reliable strategy --- particularly if the author of one program has made a deliberate attempt to disguise similarity with another program by uniformly changing names. Thus, in an attempt to address the computational load problem and the identification problem for comparison analysis, we plan to make an initial pass over each program to categorize methods and classes according to their purpose. The rationale for this is: two units will be selected for detailed comparison analysis only if they belong to of the same purpose category. The focus of this paper, therefore, is to present definitions and examples of the purpose categories for methods and classes. How these purpose categories will be used in a larger comparison strategy is beyond the scope of this work. Refer to Lan[13] for further a more complete and detailed description of our methodology.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Sagheb-Tehrani:2002:SDP, author = "Mehdi Sagheb-Tehrani and Arbi Ghazarian", title = "Software development process: strategies for handling business rules and requirements", journal = j-SIGSOFT, volume = "27", number = "2", pages = "58--62", month = mar, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/511152.511162", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:17 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "A successful project demands a correct and thorough requirements specification. This paper proposes techniques and strategies for handling business rules and requirements. The guidelines we provide are based on our own experiences with the development of large-scale enterprise applications as well as research we have done on best practices for requirements management proposed by other authors. The techniques are based on recursively classifying software requirements into logical coherent classes of requirements so that they improve developers' conception of the requirements and streamline the navigation to the next steps in the process. The techniques proposed in this paper, provide a mechanism for keeping track of requirements and help the development team to test the software in a more efficient way.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Vogt:2002:IEC, author = "Christian Vogt", title = "Intractable {ERP}: a comprehensive analysis of failed enterprise-resource-planning projects", journal = j-SIGSOFT, volume = "27", number = "2", pages = "62--68", month = mar, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/511152.511163", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:17 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "An enterprise-resource-planning system --- or ERP system, for short --- is by definition ``any software system designed to support and automate the business processes of medium and large businesses.'' [16] Integrated ERP systems became popular in the early 1990's. Single monolithic pieces of software, ERP systems promised to do away with inconsistent data, incompatible formats, and uncooperative applications. Still, ERP systems come with their own, unexpected difficulties. Their tremendous generality and enormous complexity make them prone to glitches and low performance, difficult to maintain, and nightmarish to implement. This study takes a close look at four ERP-implementation failures, all of which occurred recently in American industry. It analyses possible causes that led to the disasters, and suggests software-engineering processes that help avoiding such outcomes. The Model-Based Architecting and Software Engineering (MBASE) guidelines, developed by Professors Barry Boehm and Daniel Port at the Center for Software Engineering (CSE) at USC, provide a base for these elaborations. The original workout is actually far more extensive than the abridgement published here. It can be downloaded from the CSE web page. Alternatively, it may be ordered from the author directly through email.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Anantharam:2002:PWD, author = "Parasuram Anantharam", title = "Practical {WAP}: developing applications for the wireless web", journal = j-SIGSOFT, volume = "27", number = "2", pages = "69--69", month = mar, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/511152.511165", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:17 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Bielikova:2002:WWM, author = "M{\'a}ria Bielikov{\'a}", title = "Wireless {Web}: a manager's guide", journal = j-SIGSOFT, volume = "27", number = "2", pages = "69--70", month = mar, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/511152.511166", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:17 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Boyer:2002:CD, author = "Kenneth W. {Boyer, Jr.}", title = "{CMMI} distilled", journal = j-SIGSOFT, volume = "27", number = "2", pages = "70--70", month = mar, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/511152.511167", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:17 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Boyer:2002:AUC, author = "Kenneth W. {Boyer, Jr.}", title = "Advanced use case modeling: software systems", journal = j-SIGSOFT, volume = "27", number = "2", pages = "71--71", month = mar, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/511152.511168", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:17 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Frazer:2002:BSS, author = "Ken Frazer", title = "Building secure software: how to avoid security problems the right way", journal = j-SIGSOFT, volume = "27", number = "2", pages = "71--72", month = mar, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/511152.511169", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:17 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Huber:2002:PRS, author = "Andy Huber", title = "Peer reviews in software: a practical guide", journal = j-SIGSOFT, volume = "27", number = "2", pages = "72--73", month = mar, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/511152.511170", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:17 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Pentinmaki:2002:MED, author = "Isaac Pentinmaki", title = "Mastering {ENVY\slash Developer}", journal = j-SIGSOFT, volume = "27", number = "2", pages = "73--73", month = mar, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/511152.511171", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:17 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Shakir:2002:TAB, author = "Maha Shakir", title = "Technology acquisition: buying the future of your business", journal = j-SIGSOFT, volume = "27", number = "2", pages = "73--74", month = mar, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/511152.511172", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:17 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Neumann:2002:RPCc, author = "Peter G. Neumann", title = "Risks to the public in computers and related systems", journal = j-SIGSOFT, volume = "27", number = "3", pages = "5--19", month = may, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/638574.638578", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:18 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Kitchenham:2002:PSRc, author = "Barbara Kitchenham and Shari Lawrence Pfleeger", title = "Principles of survey research part 4: questionnaire evaluation", journal = j-SIGSOFT, volume = "27", number = "3", pages = "20--23", month = may, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/638574.638580", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:18 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This article discusses how to avoid biased questions in survey instruments, how to motivate people to complete instruments and how to evaluate instruments. In the context of survey evaluation, we discuss how to assess survey reliability i.e. how reproducible a survey's data is and survey validity i.e. how well a survey instrument measures what it sets out to measure.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Doernhoefer:2002:SNSc, author = "Mark Doernhoefer", title = "Surfing the net for {{\booktitle{Software Engineering Notes}}}", journal = j-SIGSOFT, volume = "27", number = "3", pages = "24--33", month = may, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/638574.638582", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:18 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Lawrie:2002:IDO, author = "Tony Lawrie and Cristina Gacek", title = "Issues of dependability in open source software development", journal = j-SIGSOFT, volume = "27", number = "3", pages = "34--37", month = may, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/638574.638584", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:18 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/gnu.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper presents issues raised by the articles, presentations, and discussions concerning Open Source Software, Trustworthiness, and Dependability at the Open Source Development Workshop held in Newcastle upon Tyne, UK, on the 25$^{th}$ and 26$^{th}$ of February 2002.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Inverardi:2002:SPS, author = "Paola Inverardi", title = "The {SALADIN} project: summary report", journal = j-SIGSOFT, volume = "27", number = "3", pages = "38--43", month = may, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/638574.638585", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:18 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "It is apparent that, in the near future, software production will be more and more involved with applications running on heterogeneous networks, often with mobile components. Witness the increasing availability of reliable broadband communication networks, which span local, metropolitan and worldwide areas, and the high popularity of newly conceived applications on Internet, such as the World Wide Web. The development of applications for heterogeneous distributed networks that support mobile components (in short, programming mobile agents) demands innovative design and programming techniques. In this report we summarize the activities and results achieved in the SALADIN project, an Italian National project funded by the Italian Ministry of University and Research. We consider our experience interesting for the Software Engineering community because it has been a successful experiment in putting together teams whose expertise was sensibly different and complementary. This has allowed us to exploit the cooperation of different complementary competencies that are needed to reach significant results in an area where methods and tools, which are specific of several area of computing come naturally together.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Liu:2002:RDR, author = "Chang Liu and Debra J. Richardson", title = "Research directions in {RAIC}", journal = j-SIGSOFT, volume = "27", number = "3", pages = "43--46", month = may, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/638574.638586", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:18 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Redundant arrays of independent components (RAIC) was a technology developed to use groups of similar software components to build reliable applications. The principles of RAIC, however, can be applied to other types of components. This paper briefly introduces RAIC and discusses future research directions in RAIC.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Crnkovic:2002:CBS, author = "Ivica Crnkovic and Stig Larsson and Judith Stafford", title = "Component-based software engineering: building systems from components at {9th IEEE Conference and Workshops on Engineering of Computer-Based Systems}", journal = j-SIGSOFT, volume = "27", number = "3", pages = "47--50", month = may, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/638574.638587", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:18 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper gives a short overview of the Workshop on Component-based Software Engineering --- Building Systems from Components held at 9th IEEE Conference and Workshops on Engineering of Computer-Based Systems in Lund, Sweden, April, 2002. The aim of the workshop was to bring together researches and practitioners from system engineering, software architecture and from component-based software engineering communities in order to exchange experiences and research results from these domains.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Vogt:2002:ACR, author = "Christian Vogt", title = "Admission control and resource reservation on the internet", journal = j-SIGSOFT, volume = "27", number = "3", pages = "80--87", month = may, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/638574.638575", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:18 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Software engineers used to have a hard time developing real-time and interactive Web applications, Most of such software requires high and stable throughput, a prerequisite which the Internet's best-effort service does not provide. Hence, a large body of effort has recently gone, and is currently going, into modifications to the Internet architecture. Software engineers should closely monitor this research, and leverage new technologies to build applications that get the most from the Web. This study explains how the Internet Engineering Task Force's (IETF) working groups IntServ and DiffServ seek to transition the Internet into a robust platform for high quality of service. It elaborates on the Resource Reservation Protocol's (RSVP) method of procedure to reserve bandwidth and buffer space in IP routers along a data flow's sender-receiver path. It presents the Subnet Bandwidth Manager's (SBM) mapping of RSVP functionality onto local- and metropolitan-area networks that use a shared medium. Furthermore, it discovers a way to implement demanding, yet adaptive, Web applications that are content with traditional best effort. The paper concludes with the Common Open Policy Service (COPS), a framework for policy decision-making and enforcement.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Han:2002:VIM, author = "Hong Han and Jun Lu and Xianliang Lu", title = "Virtual Interface Machine: a design pattern to solve the problem of coupling and efficiency in software design", journal = j-SIGSOFT, volume = "27", number = "3", pages = "88--92", month = may, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/638574.638576", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:18 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "In this paper, we try to tackle three relative problems in software design. The first one is the separation of user interface (UI) from logic layer. The second one is the decoupling of components of UI. The last one is how to combine high reusability design with efficiency of drag-and-drop mode of rapid application development (RAD) tools. As far as decoupling is concerned, there are many design patterns to tackle it, such as MVC (Model-View-Controller), Mediator, Observer, Visual Proxy, etc, which are not satisfying, because of the obvious disadvantage that collaborative components are actually tightly coupled by a specific object (like mediator, controller, etc). As for the last problem, many hold that drag-and-drop mode of RAD would compromise the reusability and maintainability of OO design. We use a method called drag-drop-and-add to achieve both reusability and efficiency. This paper presents a pattern called Virtual Interface Machine that let us separate UI from logic layer, decouple components of UI entirely and enjoy efficiency of RAD in UI design without compromising reusability and maintainability of the whole design. By the thorough decoupling, we could even change both logic layer and UI at run time, which is impossible to other patterns. In practice, we implemented the pattern in our Intrusion Detection System (IDS).", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Law:2002:MDI, author = "James Law", title = "Mechatronics and the design of intelligent machines and systems", journal = j-SIGSOFT, volume = "27", number = "3", pages = "93--93", month = may, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/638574.638589", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:18 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Saur:2002:ERP, author = "Joe Saur", title = "Effective requirements practices", journal = j-SIGSOFT, volume = "27", number = "3", pages = "93--94", month = may, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/638574.638590", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:18 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Tanuan:2002:LSD, author = "Meyer Tanuan", title = "Leading a software development team", journal = j-SIGSOFT, volume = "27", number = "3", pages = "94--94", month = may, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/638574.638591", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:18 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Weber-Wulff:2002:HCI, author = "Debora Weber-Wulff", title = "Human-computer interaction in the new millennium", journal = j-SIGSOFT, volume = "27", number = "3", pages = "94--95", month = may, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/638574.638592", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:18 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Milanova:2002:POS, author = "Ana Milanova and Atanas Rountev and Barbara G. Ryder", title = "Parameterized object sensitivity for points-to and side-effect analyses for {Java}", journal = j-SIGSOFT, volume = "27", number = "4", pages = "1--11", month = jul, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/566171.566174", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:20 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The goal of points-to analysis for Java is to determine the set of objects pointed to by a reference variable or a reference objet field. Improving the precision of practical points-to analysis is important because points-to information has a wide variety of client applications in optimizing compilers and software engineering tools. In this paper we present object sensitivity, a new form of context sensitivity for flow-insensitive points-to analysis for Java. The key idea of our approach is to analyze a method separately for each of the objects on which this method is invoked. To ensure flexibility and practicality, we propose a parameterization framework that allows analysis designers to control the tradeoffs between cost and precision in the object-sensitive analysis. Side-effect analysis determines the memory locations that may be modified by the execution of a program statement. This information is needed for various compiler optimizations and software engineering tools. We present a new form of side-effect analysis for Java which is based on object-sensitive points-to analysis. We have implemented one instantiation of our parameterized object-sensitive points-to analysis. We compare this instantiation with a context-insensitive points-to analysis for Java which is based on Andersen's analysis for C [4]. On a set of 23 Java programs, our experiments show that the two analyses have comparable cost. In some cases the object-sensitive analysis is actually faster than the context-insensitive analysis. Our results also show that object sensitivity significantly improves the precision of side-effect analysis, call graph construction, and virtual call resolution. These experiments demonstrate that object-sensitive analyses can achieve significantly better precision than context-insensitive ones, while at the same time remaining efficient and practical.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Groce:2002:MCJ, author = "Alex Groce and Willem Visser", title = "Model checking {Java} programs using structural heuristics", journal = j-SIGSOFT, volume = "27", number = "4", pages = "12--21", month = jul, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/566171.566175", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:20 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "We describe work introducing heuristic search into the Java PathFinder model checker, which targets Java bytecode. Rather than focusing on heuristics aimed at a particular kind of error (such as deadlocks) we describe heuristics based on a modification of traditional branch coverage metrics and other structure measures, such as thread inter-dependency. We present experimental results showing the utility of these heuristics, and argue for the usefulness of structural heuristics as a class.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Liang:2002:EPS, author = "Donglin Liang and Maikel Pennings and Mary Jean Harrold", title = "Evaluating the precision of static reference analysis using profiling", journal = j-SIGSOFT, volume = "27", number = "4", pages = "22--32", month = jul, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/566171.566176", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:20 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Program analyses and optimizations of Java programs require reference information that determines the instances that may be accessed through dereferences. Reference information can be computed using reference analysis. This paper presents a set of studies that evaluate the precision of two existing approaches for identifying instances and one approach for computing reference information in a reference analysis. The studies use dynamic reference information collected during run-time as a lower bound approximation to the precise reference information. The studies measure the precision of an existing approach by comparing the information computed using the approach with the lower bound approximation. The paper also presents case studies that attempt to identify the cases under which an existing approach is not effective. The presented studies provide information that may guide the usage of existing reference-analysis techniques and the development of new reference analysis techniques.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Naumovich:2002:CAC, author = "Gleb Naumovich", title = "A conservative algorithm for computing the flow of permissions in {Java} programs", journal = j-SIGSOFT, volume = "27", number = "4", pages = "33--43", month = jul, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/566171.566178", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:20 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Open distributed systems are becoming increasingly popular. Such systems include components that may be obtained from a number of different sources. For example, Java allows run-time loading of software components residing on remote machines. One unfortunate side-effect of this openness is the possibility that ``hostile'' software components may compromise the security of both the program and the system on which it runs. Java offers a built-in security mechanism, using which programmers can give permissions to distributed components and check these permissions at run-time. This security model is flexible, but using it is not straightforward, which may lead to insufficiently tight permission checking and therefore breaches of security. In this paper, we propose a data flow algorithm for automated analysis of the flow of permissions in Java programs. Our algorithm produces, for a given instruction in the program, a set of permissions that are checked on all possible executions up to this instruction. This information can be used in program understanding tools or directly for checking properties that assert what permissions must always be checked before access to certain functionality is allowed. The worst-case complexity of our algorithm is low-order polynomial in the number of program statements and permission types, while comparable previous approaches have exponential costs.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Stoller:2002:DPO, author = "Scott D. Stoller", title = "Domain partitioning for open reactive systems", journal = j-SIGSOFT, volume = "27", number = "4", pages = "44--54", month = jul, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/566171.566179", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:20 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Testing or model-checking an open reactive system often requires generating a model of the environment. We describe a static analysis for Java that computes a partition of a system's inputs: inputs in the same equivalence class lead to identical behavior. The partition provides a basis for generation of code for a most general environment of the system, i.e., one that exercises all possible behaviors of the system. The partition also helps the generated environment avoid exercising the same behavior multipletimes. Many distributed systems with security requirements can be regarded as open reactive systems whose environment is an adversary-controlled network. We illustrate our approach by applying it to a fault-tolerant and intrusion-tolerant distributed voting system and model-checking the system together with the generated environment.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Ostrand:2002:DFL, author = "Thomas J. Ostrand and Elaine J. Weyuker", title = "The distribution of faults in a large industrial software system", journal = j-SIGSOFT, volume = "27", number = "4", pages = "55--64", month = jul, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/566171.566181", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:20 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "A case study is presented using thirteen releases of a large industrial inventory tracking system. Several types of questions are addressed in this study. The first involved examining how faults are distributed over the different files. This included making a distinction between the release during which they were discovered, the lifecycle stage at which they were first detected, and the severity of the fault. The second category of questions we considered involved studying how the size of modules affected their fault density. This included looking at questions like whether or not files with high fault densities at early stages of the lifecycle also had high fault densities during later stages. A third type of question we considered was whether files that contained large numbers of faults during early stages of development, also had large numbers of faults during later stages, and whether faultiness persisted from release to release. Finally, we examined whether newly written files were more fault-prone than ones that were written for earlier releases of the product. The ultimate goal of this study is to help identify characteristics of files that can be used as predictors of fault-proneness, thereby helping organizations determine how best to use their testing resources.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Orso:2002:GSC, author = "Alessandro Orso and Donglin Liang and Mary Jean Harrold and Richard Lipton", title = "Gamma system: continuous evolution of software after deployment", journal = j-SIGSOFT, volume = "27", number = "4", pages = "65--69", month = jul, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/566171.566182", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:20 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "In this paper, we present the GAMMA system, which facilitates remote monitoring of deployed software using a new approach that exploits the opportunities presented by a software product being used by many users connected through a network. GAMMA splits monitoring tasks across different instances of the software, so that partial information can be collected from different users by means of light-weight instrumentation, and integrated to gather the overall monitoring information. This system enables software producers (1) to perform continuous, minimally intrusive analyses of their software's behavior, and (2) to use the information thus gathered to improve and evolve their software.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Briand:2002:IUA, author = "L. C. Briand and Y. Labiche and H. Sun", title = "Investigating the use of analysis contracts to support fault isolation in object oriented code", journal = j-SIGSOFT, volume = "27", number = "4", pages = "70--80", month = jul, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/566171.566183", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:20 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "A number of activities involved in testing software are known to be difficult and time consuming. Among them is the isolation of faults once failures have been detected. In this paper, we investigate how the instrumentation of contracts could address this issue. Contracts are known to be a useful technique to specify the precondition and postcondition of operations and class invariants, thus making the definition of object-oriented analysis or design elements more precise. Our aim in this paper is to reuse and instrument contracts to ease testing. A thorough case study is run where we define contracts, instrument them using a commercial tool, and assess the benefits and limitations of doing so to support the isolation of faults. We then draw practical conclusions regarding the applicability of the approach and its limitations.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Hiller:2002:PEE, author = "Martin Hiller and Arshad Jhumka and Neeraj Suri", title = "{PROPANE}: an environment for examining the propagation of errors in software", journal = j-SIGSOFT, volume = "27", number = "4", pages = "81--85", month = jul, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/566171.566184", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:20 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "In order to produce reliable software, it is important to have knowledge on how faults and errors may affect the software. In particular, designing efficient error detection mechanisms requires not only knowledge on which types of errors to detect but also the effect these errors may have on the software as well as how they propagate through the software. This paper presents the Propagation Analysis Environment (PROPANE) which is a tool for profiling and conducting fault injection experiments on software running on desktop computers. PROPANE supports the injection of both software faults (by mutation of source code) and data errors (by manipulating variable and memory contents). PROPANE supports various error types out-of-the-box and has support for user-defined error types. For logging, probes are provided for charting the values of variables and memory areas as well as for registering events during execution of the system under test. PROPANE has a flexible design making it useful for development of a wide range of software systems, e.g., embedded software, generic software components, or user-level desktop applications. We show examples of results obtained using PROPANE and how these can guide software developers to where software error detection and recovery could increase the reliability of the software system.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Tikir:2002:EIC, author = "Mustafa M. Tikir and Jeffrey K. Hollingsworth", title = "Efficient instrumentation for code coverage testing", journal = j-SIGSOFT, volume = "27", number = "4", pages = "86--96", month = jul, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/566171.566186", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:20 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Evaluation of Code Coverage is the problem of identifying the parts of a program that did not execute in one or more runs of a program. The traditional approach for code coverage tools is to use static code instrumentation. In this paper we present a new approach to dynamically insert and remove instrumentation code to reduce the runtime overhead of code coverage. We also explore the use of dominator tree information to reduce the number of instrumentation points needed. Our experiments show that our approach reduces runtime overhead by 38-90\% compared with purecov, a commercial code coverage tool. Our tool is fully automated and available for download from the Internet.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Srivastava:2002:EPT, author = "Amitabh Srivastava and Jay Thiagarajan", title = "Effectively prioritizing tests in development environment", journal = j-SIGSOFT, volume = "27", number = "4", pages = "97--106", month = jul, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/566171.566187", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:20 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Software testing helps ensure not only that the software under development has been implemented correctly, but also that further development does not break it. If developers introduce new defects into the software, these should be detected as early and inexpensively as possible in the development cycle. To help optimize which tests are run at what points in the design cycle, we have built Echelon, a test prioritization system, which prioritizes the application's given set of tests, based on what changes have been made to the program. Echelon builds on the previous work on test prioritization and proposes a practical binary code based approach that scales well to large systems. Echelon utilizes a binary matching system that can accurately compute the differences at a basic block granularity between two versions of the program in binary form. Echelon utilizes a fast, simple and intuitive heuristic that works well in practice to compute what tests will cover the affected basic blocks in the program. Echelon orders the given tests to maximally cover the affected program so that defects are likely to be found quickly and inexpensively. Although the primary focus in Echelon is on program changes, other criteria can be added in computing the priorities. Echelon is part of a test effectiveness infrastructure that runs under the Windows environment. It is currently being integrated into the Microsoft software development process. Echelon has been tested on large Microsoft product binaries. The results show that Echelon is effective in ordering tests based on changes between two program versions.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Vaysburg:2002:DAR, author = "Boris Vaysburg and Luay H. Tahat and Bogdan Korel", title = "Dependence analysis in reduction of requirement based test suites", journal = j-SIGSOFT, volume = "27", number = "4", pages = "107--111", month = jul, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/566171.566188", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:20 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Requirement-based automated test case generation is a model-based technique for generating test suites related to individual requirements. The technique supports test generation from EFSM (Extended Finite State Machine) system models. Several requirement-based selective test generation techniques were proposed. These techniques may significantly reduce a number of test cases with respect to a requirement under test as opposed to a complete system testing. However, the number of test cases may still be very large especially for large systems. In this paper, we present an approach of reduction of requirement based test suites using EFSM dependence analysis. Different types of dependencies are identified between elements of the EFSM system model. These dependencies capture potential interactions between elements of the model and are used to determine parts of the model that affect a requirement under test. This information is used to reduce the test suite by identifying repetitive tests, i.e., tests that exhibit the same pattern of interactions with respect to the requirement under test. Our initial experience shows that this approach may significantly reduce the size of selective test suites.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Grieskamp:2002:GFS, author = "Wolfgang Grieskamp and Yuri Gurevich and Wolfram Schulte and Margus Veanes", title = "Generating finite state machines from abstract state machines", journal = j-SIGSOFT, volume = "27", number = "4", pages = "112--122", month = jul, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/566171.566190", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:20 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "We give an algorithm that derives a finite state machine (FSM) from a given abstract state machine (ASM) specification. This allows us to integrate ASM specs with the existing tools for test case generation from FSMs. ASM specs are executable but have typically too many, often infinitely many states. We group ASM states into finitely many hyperstates which are the nodes of the FSM. The links of the FSM are induced by the ASM state transitions.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Boyapati:2002:KAT, author = "Chandrasekhar Boyapati and Sarfraz Khurshid and Darko Marinov", title = "{Korat}: automated testing based on {Java} predicates", journal = j-SIGSOFT, volume = "27", number = "4", pages = "123--133", month = jul, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/566171.566191", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:20 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper presents Korat, a novel framework for automated testing of Java programs. Given a formal specification for a method, Korat uses the method precondition to automatically generate all (nonisomorphic) test cases up to a given small size. Korat then executes the method on each test case, and uses the method postcondition as a test oracle to check the correctness of each output. To generate test cases for a method, Korat constructs a Java predicate (i.e., a method that returns a boolean) from the method's pre-condition. The heart of Korat is a technique for automatic test case generation: given a predicate and a bound on the size of its inputs, Korat generates all (nonisomorphic) inputs for which the predicate returns true. Korat exhaustively explores the bounded input space of the predicate but does so efficiently by monitoring the predicate's executions and pruning large portions of the search space. This paper illustrates the use of Korat for testing several data structures, including some from the Java Collections Framework. The experimental results show that it is feasible to generate test cases from Java predicates, even when the search space for inputs is very large. This paper also compares Korat with a testing framework based on declarative specifications. Contrary to our initial expectation, the experiments show that Korat generates test cases much faster than the declarative framework.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Friedman:2002:PSM, author = "G. Friedman and A. Hartman and K. Nagin and T. Shiran", title = "Projected state machine coverage for software testing", journal = j-SIGSOFT, volume = "27", number = "4", pages = "134--143", month = jul, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/566171.566192", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:20 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Our research deals with test generation for software based on finite state machine (FSM) models of the program specification. We describe a set of coverage criteria and testing constraints for use in the automatic generation of test suites. We also describe the algorithms used to generate test suites based on these coverage criteria, and the implementation of these algorithms as an extension of the {Mur$ \phi $ v} model checker[4]. The coverage criteria are simple but powerful in that they generate test suites of high quality and moderate volume, without requiring the user to have a sophisticated grasp of the test generation technology. The testing constraints are used to combat the endemic problem of state explosion, typically encountered in FSM techniques. We illustrate our techniques on several well-known problems from the literature and describe two industrial trials, to demonstrate the validity of our claims.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Latella:2002:TCR, author = "Diego Latella and Mieke Massink", title = "On testing and conformance relations for {UML} statechart diagrams behaviours", journal = j-SIGSOFT, volume = "27", number = "4", pages = "144--153", month = jul, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/566171.566194", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:20 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "In this paper we study the formal relationship between testing preorder/equivalences for a behavioural subset of UML Statechart Diagrams and a conformance relation for implementations with respect to specifications given using such diagrams. We study the impact of stuttering on the above mentioned relationship. In the context of UMLSDs, stuttering occurs when no transition of the UMLSD is enabled by the current event in the current (global) state of the underlying state-machine. We consider both the case in which the semantics underlying the testing relations does not model stuttering explicitly --- we call it the non-stuttering semantics --- and the case in which it does it --- i.e. the stuttering semantics. We show that in the first case the conformance relation is stronger than the reverse of the MUST preorder and, consequently, stronger than the MAY preorder. Much more interesting results can be proven in the second case, possibly under proper conditions on the sets of events under consideration. In fact the conformance relation is shown to coincide with the MAY preorder, and thus be implied by the reverse MUST preorder. Finally, we show important substitutivity properties which hold in the case of stuttering semantics.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Moors:2002:EAT, author = "Tim Moors and Malathi Veeraraghavan and Zhifeng Tao and Xuan Zheng and Ramesh Badri", title = "Experiences in automating the testing of {SS7} signalling transfer points", journal = j-SIGSOFT, volume = "27", number = "4", pages = "154--158", month = jul, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/566171.566195", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:20 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Signalling System 7 (SS7) is widely used for telephone signalling. Service providers need to frequently test their Signalling Transfer Points (STPs), which switch SS7 messages, for both protocol conformance and interoperability. This paper describes a system that automatically analyzes the data collected during STP tests. It consists of files that describe how the STPs are expected to behave during the test, and Perl code that translates this Expected Behavior into a program that can search the data collected during the test for the expected events, and report on whether the system passed the test. The system readily processed over 30,000 events for each test run, and identified abnormal behavior that could interfere with interoperability and protocol conformance.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Cardell-Oliver:2002:CTE, author = "Rachel Cardell-Oliver", title = "Conformance test experiments for distributed real-time systems", journal = j-SIGSOFT, volume = "27", number = "4", pages = "159--163", month = jul, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/566171.566196", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:20 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper introduces a new technique for testing that a distributed real-time system satisfies a formal timed automata specification. It outlines how to write test specifications in the language of Uppaal timed automata, how to translate those specifications into program code for executing the tests, and describes the results of test experiments on a distributed real-time system with limited hardware and software resources.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Cheng:2002:RDM, author = "Yung-Pin Cheng", title = "Refactoring design models for inductive verification", journal = j-SIGSOFT, volume = "27", number = "4", pages = "164--168", month = jul, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/566171.566198", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:20 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Systems composed of many identical processes can sometimes be verified inductively using a network invariant, but systems whose component processes vary in some systematic way are not amenable to direct application of that method. We describe how variations in behavior can be ``factored out'' into additional processes, thus enabling induction over the number of processes. The process is semi-automatic: The designer must choose from among a set of idiomatic transformations, but each transformation is applied and checked automatically.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Yavuz-Kahveci:2002:SVS, author = "Tuba Yavuz-Kahveci and Tevfik Bultan", title = "Specification, verification, and synthesis of concurrency control components", journal = j-SIGSOFT, volume = "27", number = "4", pages = "169--179", month = jul, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/566171.566199", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:20 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Run-time errors in concurrent programs are generally due to the wrong usage of synchronization primitives such as monitors. Conventional validation techniques such as testing become ineffective for concurrent programs since the state space increases exponentially with the number of concurrent processes. In this paper, we propose an approach in which (1) the concurrency control component of a concurrent program is formally specified, (2) it is verified automatically using model checking, and (3) the code for concurrency control component is automatically generated. We use monitors as the synchronization primitive to control access to a shared resource by multipleconcurrent processes. Since our approach decouples the concurrency control component from the rest of the implementation it is scalable. We demonstrate the usefulness of our approach by applying it to a case study on Airport Ground Traffic Control. We use the Action Language to specify the concurrency control component of a system. Action Language is a specification language for reactive software systems. It is supported by an infinite-state model checker that can verify systems with boolean, enumerated and unbounded integer variables. Our code generation tool automatically translates the verified Action Language specification into a Java monitor. Our translation algorithm employs symbolic manipulation techniques and the specific notification pattern to generate an optimized monitor class by eliminating the context switch overhead introduced as a result of unnecessary thread notification. Using counting abstraction, we show that we can automatically verify the monitor specifications for arbitrary number of threads.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Bishop:2002:RRB, author = "Peter G. Bishop", title = "Rescaling reliability bounds for a new operational profile", journal = j-SIGSOFT, volume = "27", number = "4", pages = "180--190", month = jul, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/566171.566201", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:20 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "One of the main problems with reliability testing and prediction is that the result is specific to a particular operational profile. This paper extends an earlier reliability theory for computing a worst case reliability bound. The extended theory derives a re-scaled reliability bound based on the change in execution rates of the code segments in the program. In some cases it is possible to derive a maximum failure rate bound that applies to any change in the profile. It also predicts that (in principle) a ``fair'' test profile can be derived where the reliability bounds are relatively insensitive to the operational profile. In addition the theory allows unit and module test coverage measures to be incorporated into an operational reliability bound prediction. The implications of the theory are discussed, and the theory is evaluated by applying it to two example programs with known faults.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Chen:2002:SPI, author = "T. Y. Chen and T. H. Tse and Zhiquan Zhou", title = "Semi-proving: an integrated method based on global symbolic evaluation and metamorphic testing", journal = j-SIGSOFT, volume = "27", number = "4", pages = "191--195", month = jul, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/566171.566202", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:20 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "We present a semi-proving method for verifying necessary conditions for program correctness. Our approach is based on the integration of global symbolic evaluation and metamorphic testing. It is relatively easier than conventional program proving, and helps to alleviate the problem that software testing cannot show the absence of faults.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Hamlet:2002:CSS, author = "Dick Hamlet", title = "Continuity in software systems", journal = j-SIGSOFT, volume = "27", number = "4", pages = "196--200", month = jul, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/566171.566203", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:20 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Most engineering artifacts behave in a continuous fashion, and this property is generally believed to underlie their dependability. In contrast, software systems do not have continuous behavior, which is taken to be an underlying cause of their undependability. The theory of software reliability has been questioned because technically the sampling on which it is based applies only to continuous functions. This paper examines the role of continuity in engineering, particularly in testing and certifying artifacts, then considers the analogous software situations and the ways in which software is intrinsically unlike other engineered objects. Several definitions of software 'continuity' are proposed and related to ideas in software testing. It is shown how 'continuity' can be established in practice, and the consequences for testing and analysis of knowing that a program is 'continuous. Underlying any use of software 'continuity' is the continuity of its specification in the usual mathematical sense. However, many software applications are intrinsically discontinuous and one reason why software is so valuable is its natural ability to handle these applications, where it makes no sense to seek software 'continuity' or to blame poor dependability on its absence.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Bertolino:2002:IPI, author = "Antonia Bertolino", title = "{ISSTA} 2002 panel: is {ISSTA} research relevant to industrial users?", journal = j-SIGSOFT, volume = "27", number = "4", pages = "201--202", month = jul, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/566171.566205", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:20 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "ISSTA is at its twelfth edition. Also this year, researchers from academy and industry have contributed with many interesting studies and experience reports in software analysis and testing. We --- the ISSTA partakers --- have (or at least believe to have) clear ideas about which are the problems to be solved, which are the real challenges, and probably each of us has already settled an agenda of the next steps to take for solving them looking ahead to the next ISSTA edition. Are we doing right? Do we know which are the real issues in the field? Is our research addressing relevant points, or just aesthetic questions? Do, and how much, industrial users ---the ISSTA addressees- value our papers and our achievements? This panel will address such questions by grouping a set of managers from different industries around a table and asking their opinions. As the above questions are very general, in the intent to tackle the theme in a concrete way, we will trigger the discussion by looking at the research results in terms of their potential impact in their respective enterprises. We would like to know which are currently the costs of testing and analysis activities in their industries, which are the items summing up such costs, and how we ISSTA researchers could help improving them.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Encontre:2002:IRR, author = "Vincent Encontre", title = "Is {ISSTA} research relevant to industrial users? {Panel} --- {ISSTA 2002}: empowering the developer to be a tester too!", journal = j-SIGSOFT, volume = "27", number = "4", pages = "203--204", month = jul, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/566171.566206", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:20 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "In this paper --- scoped for the panel discussion at ISSTA 2002 --- we are discussing some techniques to ease the adoption of testing techniques by the developers, by extending the debugging activity. We also briefly discuss a longer term vision where the same paradigm applies but at model level, when coding will be achieved using visual notations such as UML.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Hartman:2002:IRR, author = "A. Hartman", title = "Is {ISSTA} research relevant to industry?", journal = j-SIGSOFT, volume = "27", number = "4", pages = "205--206", month = jul, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/566171.566207", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:20 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Peciola:2002:ELI, author = "Emilia Peciola", title = "{Ericsson} lab {Italy}: is {ISSTA} research relevant to industrial users?", journal = j-SIGSOFT, volume = "27", number = "4", pages = "207--207", month = jul, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/566171.566208", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:20 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Sreenivas:2002:PDI, author = "Ashok Sreenivas", title = "Panel discussion: is {ISSTA} testing research relevant to industrial users?", journal = j-SIGSOFT, volume = "27", number = "4", pages = "208--209", month = jul, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/566171.566209", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:20 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "We discuss the direct relevance of on-going testing research to the 'users' of the research, namely the industrial practitioners. The current state-of-the-practice in software testing is quite ad-hoc and provides little or no assertions about the quality of the delivered software product. We propose the view that research that is aligned with formal approaches to software development is the best bet to achieve this goal.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Choi:2002:IFI, author = "Jong-Deok Choi and Andreas Zeller", title = "Isolating failure-inducing thread schedules", journal = j-SIGSOFT, volume = "27", number = "4", pages = "210--220", month = jul, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/566171.566211", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:20 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/multithreading.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Consider a multi-threaded application that occasionally fails due to non-determinism. Using the DEJAVU capture/replay tool, it is possible to record the thread schedule and replay the application in a deterministic way. By systematically narrowing down the difference between a thread schedule that makes the program pass and another schedule that makes the program fail, the Delta Debugging approach can pinpoint the error location automatically---namely, the location(s) where a thread switch causes the program to fail. In a case study, Delta Debugging isolated the failure-inducing schedule difference from 3.8 billion differences in only 50 tests.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Whaley:2002:AEO, author = "John Whaley and Michael C. Martin and Monica S. Lam", title = "Automatic extraction of object-oriented component interfaces", journal = j-SIGSOFT, volume = "27", number = "4", pages = "218--228", month = jul, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/566171.566212", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:20 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib; http://www.math.utah.edu/pub/tex/bib/virtual-machines.bib", abstract = "Component-based software design is a popular and effective approach to designing large systems. While components typically have well-defined interfaces, sequencing information---which calls must come in which order---is often not formally specified. This paper proposes using multiple finite statemachine (FSM) submodels to model the interface of a class. A submodel includes a subset of methods that, for example, implement a Java interface, or access some particular field. Each state-modifying method is represented as a state in the FSM, and transitions of the FSMs represent allow able pairs of consecutive methods. In addition, state-preserving methods are constrained to execute only under certain states. We have designed and implemented a system that includes static analyses to deduce illegal call sequences in a program, dynamic instrumentation techniques to extract models from execution runs, and a dynamic model checker that ensures that the code conforms to the model. Extracted models can serve as documentation; they can serve as constraints to be enforced by a static checker; they can be studied directly by developers to determine if the program is exhibiting unexpected behavior; or they can be used to determine the completeness of a test suite. Our system has been run on several large code bases, including the joeq virtual machine, the basic Java libraries, and the Java 2 Enterprise Edition library code. Our experience suggests that this approach yields useful information.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Nimmer:2002:AGP, author = "Jeremy W. Nimmer and Michael D. Ernst", title = "Automatic generation of program specifications", journal = j-SIGSOFT, volume = "27", number = "4", pages = "229--239", month = jul, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/566171.566213", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:20 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Producing specifications by dynamic (runtime) analysis of program executions is potentially unsound, because the analyzed executions may not fully characterize all possible executions of the program. In practice, how accurate are the results of a dynamic analysis? This paper describes the results of an investigation into this question, determining how much specifications generalized from program runs must be changed in order to be verified by a static checker. Surprisingly, small test suites captured nearly all program behavior required by a specific type of static checking; the static checker guaranteed that the implementations satisfy the generated specifications, and ensured the absence of runtime exceptions. Measured against this verification task, the generated specifications scored over 90\% on precision, a measure of soundness, and on recall, a measure of completeness. This is a positive result for testing, because it suggests that dynamic analyses can capture all semantic information of interest for certain applications. The experimental results demonstrate that a specific technique, dynamic invariant detection, is effective at generating consistent, sufficient specifications for use by a static checker. Finally, the research shows that combining static and dynamic analyses over program specifications has benefits for users of each technique, guaranteeing soundness of the dynamic analysis and lessening the annotation burden for users of the static analysis.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Neumann:2002:RPCd, author = "Peter G. Neumann", title = "Risks to the public in computers and related systems", journal = j-SIGSOFT, volume = "27", number = "5", pages = "6--16", month = sep, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/571681.571685", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:22 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Kitchenham:2002:PSRd, author = "Barbara Kitchenham and Shari Lawrence Pfleeger", title = "Principles of survey research: part 5: populations and samples", journal = j-SIGSOFT, volume = "27", number = "5", pages = "17--20", month = sep, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/571681.571686", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:22 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This article is the fifth installment of our series of articles on survey research. In it, we discuss what we mean by a population and a sample and the implications of each for survey research. We provide examples of correct and incorrect sampling techniques used in software engineering surveys.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Doernhoefer:2002:SNSd, author = "Mark Doernhoefer", title = "Surfing the net for {{\booktitle{Software Engineering Notes}}}", journal = j-SIGSOFT, volume = "27", number = "5", pages = "21--30", month = sep, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/571681.571687", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:22 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Estublier:2002:IRC, author = "Jacky Estublier and David Leblang and Geoff Clemm and Reidar Conradi and Walter Tichy and Andr{\'e} van der Hoek and Darcy Wiborg-Weber", title = "Impact of the research community on the field of software configuration management: summary of an impact project report", journal = j-SIGSOFT, volume = "27", number = "5", pages = "31--39", month = sep, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/571681.571689", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:22 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Software Configuration Management (SCM) is an important discipline in professional software development and maintenance. The importance of SCM has increased as programs have become larger and more complex and mission/life-critical. This paper discusses the evolution of SCM technology from the early days of software development to present and the impact university and industrial research has had along the way. It also includes a survey of the industrial state-of-the-practice and research directions. The paper published here is not intended to be a definitive assessment. Rather, our intention is to solicit comments and corrections from the community to help refine the work. If you would like to provide further information, please contact the first author. A longer version of this report can be found at http://wwwadele.imag.fr/SCMImpact.pdf.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Rhodes:2002:SEE, author = "Donna H. Rhodes", title = "Systems engineering: an essential discipline for the 21st century", journal = j-SIGSOFT, volume = "27", number = "5", pages = "40--45", month = sep, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/571681.571690", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:22 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Davis:2002:OSD, author = "Chad Davis and Coskun Bayrak", title = "Open source development and the {World Wide Web}: a certain tension", journal = j-SIGSOFT, volume = "27", number = "5", pages = "93--97", month = sep, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/571681.571682", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:22 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/gnu.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The development of the World Wide Web over the course of the past ten years has run rampant. The course it has taken has been both swift and unpredictable. The largest distributed system in the world began as a utopian notion of an interconnected and open web of information, the dream of the academic and intellectual alike. Today it is indeed a massive interconnected web of communication and content, but the content, largely on the more popular, if not pornographic, end of the mass media spectrum, is not what the founders intended. Coinciding with the rapid growth of the web has been the equally speedy rise of the open source development community, which can best be understood as a distributed system in its own right. Indeed, the development of the web has been, outside of the Linux project, the largest arena for open source development. And current trends, witnessed by such significant open source projects as Mozilla and Apache, seem to suggest that the open source way of doing things is quickly becoming the web way of doing things. However, there is a certain tension growing between those who would like to control, for economic profit or for the gratification of control itself, the direction of the web's development and those open source developers who are responsible for a large portion of that growth. This paper explores the natural relationship, as well as the growing tension within this relationship, between the open source development community and the World Wide Web.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Li:2002:AIF, author = "Bixin Li", title = "Analyzing information-flow in {Java} program based on slicing technique", journal = j-SIGSOFT, volume = "27", number = "5", pages = "98--103", month = sep, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/571681.571683", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:22 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Traditional information-flow analysis is mainly based on dataflow and control-flow analysis. In object-oriented program, because of pointer aliasing, inheritance, and polymorphism, information-flow analysis become very complicated. Especially, it is difficult to rely only on normal data and control-flow analysis techniques. some new approaches are required to analyze the information-flow between components in object-oriented program. In this paper, object-oriented program slicing technique is introduced. By this technique, the amount of information-flow, the width of information-flow and correlation coefficient between components can be computed. Some applications of the information-flow are also discussed and analyzed in this paper.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Alexander:2002:DSS, author = "Larry Alexander", title = "Decision support systems in the 21st century", journal = j-SIGSOFT, volume = "27", number = "5", pages = "104--104", month = sep, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/571681.571692", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:22 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Frazer:2002:CAI, author = "Ken Frazer", title = "{C++} in action: industrial-strength programming techniques", journal = j-SIGSOFT, volume = "27", number = "5", pages = "104--105", month = sep, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/571681.571693", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:22 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Tanuan:2002:TIS, author = "Meyer Tanuan", title = "Testing it: an off-the-shelf software testing process", journal = j-SIGSOFT, volume = "27", number = "5", pages = "105--105", month = sep, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/571681.571694", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:22 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Tracz:2002:RTL, author = "Will Tracz", title = "Roundtable on technical leadership: a {SHAPE} forum dialog", journal = j-SIGSOFT, volume = "27", number = "5", pages = "106--107", month = sep, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/571681.571695", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:22 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Zeller:2002:ICE, author = "Andreas Zeller", title = "Isolating cause-effect chains from computer programs", journal = j-SIGSOFT, volume = "27", number = "6", pages = "1--10", month = nov, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/605466.605468", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:23 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Consider the execution of a failing program as a sequence of program states. Each state induces the following state, up to the failure. Which variables and values of a program state are relevant for the failure? We show how the Delta Debugging algorithm isolates the relevant variables and values by systematically narrowing the state difference between a passing run and a failing run --- by assessing the outcome of altered executions to determine whether a change in the program state makes a difference in the test outcome. Applying Delta Debugging to multiple states of the program automatically reveals the cause-effect chain of the failure --- that is, the variables and values that caused the failure. In a case study, our prototype implementation successfully isolated the cause--effect chain for a failure of the GNU C compiler: ``Initially, the C program to be compiled contained an addition of 1.0; this caused an addition operator in the intermediate RTL representation; this caused a cycle in the RTL tree --- and this caused the compiler to crash.''", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Nimmer:2002:IIS, author = "Jeremy W. Nimmer and Michael D. Ernst", title = "Invariant inference for static checking: an empirical evaluation", journal = j-SIGSOFT, volume = "27", number = "6", pages = "11--20", month = nov, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/605466.605469", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:23 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Static checking can verify the absence of errors in a program, but often requires written annotations or specifications. As a result, static checking can be difficult to use effectively: it can be difficult to determine a specification and tedious to annotate programs. Automated tools that aid the annotation process can decrease the cost of static checking and enable it to be more widely used. This paper describes an evaluation of the effectiveness of two techniques, one static and one dynamic, to assist the annotation process. We quantitatively and qualitatively evaluate 41 programmers using ESC/Java in a program verification task over three small programs, using Houdini for static inference and Daikon for dynamic inference. We also investigate the effect of unsoundness in the dynamic analysis. Statistically significant results show that both inference tools improve task completion; Daikon enables users to express more correct invariants; unsoundness of the dynamic analysis is little hindrance to users; and users imperfectly exploit Houdini. Interviews indicate that beginning users found Daikon to be helpful; Houdini to be neutral; static checking to be of potential practical use; and both assistance tools to have unique benefits. Our observations not only provide a critical evaluation of these two techniques, but also highlight important considerations for creating future assistance tools.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Julien:2002:ECA, author = "Christine Julien and Gruia Catalin Roman", title = "Egocentric context-aware programming in ad hoc mobile environments", journal = j-SIGSOFT, volume = "27", number = "6", pages = "21--30", month = nov, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/605466.605471", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:23 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Some of the most dynamic systems being built today consist of physically mobile hosts and logically mobile agents. Such systems exhibit frequent configuration changes and a great deal of resource variability. Applications executing under these circumstances need to react continuously and rapidly to changes in operating conditions and must adapt their behavior accordingly. The development of such applications demands a reexamination of the notion of context and the mechanisms used to manage the application's response to contextual changes. This paper introduces EgoSpaces, a coordination model and middleware for ad hoc mobile environments. EgoSpaces focuses on the needs of application development in ad hoc environments by proposing an agent-centered notion of context, called a view, whose scope extends beyond the local host to data and resources associated with hosts and agents within a subnet surrounding the agent of interest. An agent may operate over multiple views whose definitions may change over time. An agent uses declarative specifications to constrain the contents of each view by employing a rich set of constraints that take into consideration properties of the individual data items, the agents that own them, the hosts on which the agents reside, and the physical and logical topology of the ad hoc network. This paper formalizes the concept of view, explores the notion of programming against views, discusses possible implementation strategies for transparent context maintenance, and describes our current prototype of the system. We include examples to illustrate the expressive power of the view abstraction and to relate it to other research on coordination models and middleware.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Capra:2002:MEA, author = "Licia Capra and Wolfgang Emmerich and Cecilia Mascolo", title = "A micro-economic approach to conflict resolution in mobile computing", journal = j-SIGSOFT, volume = "27", number = "6", pages = "31--40", month = nov, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/605466.605472", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:23 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Mobile devices, such as mobile phones and personal digital assistants, have gained wide-spread popularity. These devices will increasingly be networked, thus enabling the construction of distributed mobile applications. These have to adapt to changes in context, such as variations in network bandwidth, exhaustion of battery power or reachability of services on other devices. We show how the construction of adaptive and context-aware mobile applications can be supported using a reflective middleware. The middleware provides software engineers with primitives to describe how context changes are handled using policies. These policies may conflict. In this paper, we classify the different types of conflicts that may arise in mobile computing. We argue that conflicts cannot be resolved statically at the time applications are designed, but, rather, need to be resolved at execution time. We demonstrate a method by which these policy conflicts can be treated. This method uses a micro-economic approach that relies on a particular type of sealed-bid auction.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Lopes:2002:APD, author = "Ant{\'o}nia Lopes and Jos{\'e} Luiz Fiadeiro and Michel Wermelinger", title = "Architectural primitives for distribution and mobility", journal = j-SIGSOFT, volume = "27", number = "6", pages = "41--50", month = nov, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/605466.605473", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:23 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "In this paper, we address the integration of a distribution dimension in an architectural approach to system development and evolution based on the separation between coordination and computation. This third dimension allows us to separate key concerns raised by mobility, thus contributing to our ability to handle the complexity that is inherent to systems required to operate in ``Internet time and space''.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Xie:2002:URF, author = "Yichen Xie and Dawson Engler", title = "Using redundancies to find errors", journal = j-SIGSOFT, volume = "27", number = "6", pages = "51--60", month = nov, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/605466.605475", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:23 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper explores the idea that redundant operations, like type errors, commonly flag correctness errors. We experimentally test this idea by writing and applying four redundancy checkers to the Linux operating system, finding many errors. We then use these errors to demonstrate that redundancies, even when harmless, strongly correlate with the presence of traditional hard errors (e.g., null pointer dereferences, unreleased locks). Finally we show that how flagging redundant operations gives a way to make specifications ``fail stop'' by detecting dangerous omissions.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Bruns:2002:SPA, author = "Glenn Bruns and Satish Chandra", title = "Searching for points-to analysis", journal = j-SIGSOFT, volume = "27", number = "6", pages = "61--70", month = nov, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/605466.605476", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:23 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The complexity of points-to analysis is well understood, but the approximations used to carry out points-to analysis efficiently are less well understood. In this paper we characterize points-to analysis as a reachability problem on a program's state space. Reachability analysis can be performed approximately but more efficiently for a program to which certain basic program transformations have been applied. We show the source of approximation and efficiency in several existing points-to analysis algorithms in terms of these generic program transformations.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Mock:2002:IPS, author = "Markus Mock and Darren C. Atkinson and Craig Chambers and Susan J. Eggers", title = "Improving program slicing with dynamic points-to data", journal = j-SIGSOFT, volume = "27", number = "6", pages = "71--80", month = nov, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/605466.605477", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:23 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Program slicing is a potentially useful analysis for aiding program understanding. However, slices of even small programs are often too large to be generally useful. Imprecise pointer analyses have been suggested as one cause of this problem. In this paper, we use dynamic points-to data, which represents optimal or optimistic pointer information, to obtain a bound on the best case slice size improvement that can be achieved with improved pointer precision. Our experiments show that slice size can be reduced significantly for programs that make frequent use of calls through function pointers because for them the dynamic pointer data results in a considerably smaller call graph, which leads to fewer data dependences. Programs without or with only few calls through function pointers, however, show only insignificant improvement. We identified Amdahl's law as the reason for this behavior: C programs appear to have a large fraction of direct data dependences so that reducing spurious dependences via pointers is only of limited benefit. Consequently, to make slicing useful in general for such programs, improvements beyond better pointer analyses will be necessary. On the other hand, since we show that collecting dynamic function pointer information can be performed with little overhead (average slowdown of 10\% for our benchmarks), dynamic pointer information may be a practical approach to making slicing of programs with frequent function pointer use more successful in reality.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Holzmann:2002:LB, author = "Gerard J. Holzmann", title = "The logic of bugs", journal = j-SIGSOFT, volume = "27", number = "6", pages = "81--87", month = nov, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/605466.605479", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:23 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Real-life bugs are successful because of their unfailing ability to adapt. In particular this applies to their ability to adapt to strategies that are meant to eradicate them as a species. Software bugs have some of these same traits. We will discuss these traits, and consider what we can do about them.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Li:2002:VCC, author = "Harry Li and Shriram Krishnamurthi and Kathi Fisler", title = "Verifying cross-cutting features as open systems", journal = j-SIGSOFT, volume = "27", number = "6", pages = "89--98", month = nov, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/605466.605481", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:23 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Feature-oriented software designs capture many interesting notions of cross-cutting, and offer a powerful method for building product-line architectures. Each cross-cutting feature is an independent module that fundamentally yields an open system from a verification perspective. We describe desiderata for verifying such modules through model checking and find that existing work on the verification of open systems fails to address most of the concerns that arise from feature-oriented systems. We therefore provide a new methodology for verifying such systems. To validate this new methodology, we have implemented it and applied it to a suite of modules that exhibit feature interaction problems. Our model checker was able to automatically locate ten problems previously found through a laborious simulation-based effort.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Chu-Carroll:2002:SAF, author = "Mark C. Chu-Carroll and James Wright and David Shields", title = "Supporting aggregation in fine grained software configuration management", journal = j-SIGSOFT, volume = "27", number = "6", pages = "99--108", month = nov, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/605466.605482", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:23 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Fine-grained software configuration management offers substantial benefits for large-scale collaborative software development, enabling a variety of interesting and useful features including complexity management, support for aspect-oriented software development, and support for communication and coordination within software engineering teams, described in [4]. However, fine granularity by itself is not sufficient to achieve these benefits. Most of the benefits of fine granularity result from the ability to combine fine-grained artifacts in various ways: supporting multiple overlapping organizations of program source by combining fine-grained artifacts into virtual source files (VSFs); supporting coordination by allowing developers to precisely mark the set of artifacts affected by a change; associating products from different phases of the development process; etc. In this paper, we describe how a general aggregation mechanism can be used to support the various functionality enabled by fine grained SCM. We present a set of requirements that an aggregation facility must provide in order to yield these benefits, and we provide a description of the implementation of such an aggregation system in our experimental SCM system.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Uchitel:2002:NSI, author = "Sebastian Uchitel and Jeff Kramer and Jeff Magee", title = "Negative scenarios for implied scenario elicitation", journal = j-SIGSOFT, volume = "27", number = "6", pages = "109--118", month = nov, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/605466.605484", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:23 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Scenario-based specifications such as Message Sequence Charts (MSCs) are popular for requirement elicitation and specification. MSCs describe two distinct aspects of a system: on the one hand they provide examples of intended system behaviour and on the other they outline the system architecture. A mismatch between architecture and behaviour may give rise to implied scenarios. Implied scenarios occur because a component's local view of the system state is insufficient to enforce specified system behaviour. An implied scenario indicates a gap in the MSC specification that needs to be clarified. It may simply mean that an acceptable scenario has been overlooked and should be added to the scenario specification. Alternatively, it may represent an unacceptable behaviour which should be documented and avoided in the final implementation. Thus implied scenarios can be used to iteratively drive requirements elicitation. However, in order to do so, tools for coping with rejected implied scenarios are needed. The contributions of this paper are twofold. Firstly, we define a language for describing negative scenarios. Secondly, we complement existing implied scenario detection methods with techniques for accommodating negative scenarios.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Letier:2002:DOS, author = "Emmanuel Letier and Axel van Lamsweerde", title = "Deriving operational software specifications from system goals", journal = j-SIGSOFT, volume = "27", number = "6", pages = "119--128", month = nov, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/605466.605485", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:23 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Goal orientation is an increasingly recognized paradigm for eliciting, modeling, specifying and analyzing software requirements. Goals are statements of intent organized in AND/OR refinement structures; they range from high-level, strategic concerns to low-level, technical requirements on the software-to-be and assumptions on its environment. The operationalization of system goals into specifications of software services is a core aspect of the requirements elaboration process for which little systematic and constructive support is available. In particular, most formal methods assume such operational specifications to be given and focus on their a posteriori analysis. The paper considers a formal, constructive approach in which operational software specifications are built incrementally from higher-level goal formulations in a way that guarantees their correctness by construction. The operationalization process is based on formal derivation rules that map goal specifications to specifications of software operations; more specifically, these rules map real-time temporal logic specifications to sets of pre-, post- and trigger conditions. The rules define operationalization patterns that may be used for guiding and documenting the operationalization process while hiding all formal reasoning details; the patterns are formally proved correct once and for all. The catalog of operationalization patterns is structured according to a rich taxonomy of goal specification patterns. Our constructive approach to requirements elaboration requires a multiparadigm specification language that supports incremental reasoning about partial models. The paper also provides a formal semantics for goal operationalization and discusses several semantic features of our language that allow for such incremental reasoning.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Vetterling:2002:SSD, author = "Monika Vetterling and Guido Wimmel and Alexander Wisspeintner", title = "Secure systems development based on the common criteria: the {PalME} project", journal = j-SIGSOFT, volume = "27", number = "6", pages = "129--138", month = nov, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/605466.605486", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:23 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Security is a very important issue in information processing, especially in open network environments like the Internet. The Common Criteria (CC) is the standard requirements catalogue for the evaluation of security critical systems. Using the CC, a large number of security requirements on the system itself and on the system development can be defined. However, the CC does not give methodological support. In this paper, we show how integrate security aspects into the software engineering process. The activities and documents from the Common Criteria are tightly intertwined with the system development, which improves the quality of the developed system and reduces the additional cost and effort due to high security requirements. For modelling and verification of critical parts of the system, we use formal description techniques and model checking (supported by the graphical CASE tool AUTOFOCUS), which increases both the understanding of the system specification and the system's reliability. We demonstrate our ideas by means of a case-study, the PalME project--an electronic purse application for Palm handhelds.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Gurfinkel:2002:MET, author = "Arie Gurfinkel and Benet Devereux and Marsha Chechik", title = "Model exploration with temporal logic query checking", journal = j-SIGSOFT, volume = "27", number = "6", pages = "139--148", month = nov, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/605466.605488", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:23 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "A temporal logic query is a temporal logic formula with placeholders. Given a model, a solution to a query is a set of assignments of propositional formulas to placeholders, such that replacing the placeholders with any of these assignments results in a temporal logic formula that holds in the model. Query checking, first introduced by William Chan [2], is an automated technique for finding solutions to temporal logic queries. It allows discovery of the temporal properties of the system and as such may be a useful tool for model exploration and reverse engineering. This paper describes an implementation of a temporal logic query checker. It then suggests some applications of this tool, ranging from invariant computation to test case generation, and illustrates them using a Cruise Control System.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Niu:2002:CSM, author = "Jianwei Niu and Joanne M. Atlee and Nancy A. Day", title = "Composable semantics for model-based notations", journal = j-SIGSOFT, volume = "27", number = "6", pages = "149--158", month = nov, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/605466.605489", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:23 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "We propose a unifying framework for model-based specification notations. Our framework captures the execution semantics that are common among model-based notations, and leaves the distinct elements to be defined by a set of parameters. The basic components of a specification are non-concurrent state-transition machines which are combined by composition operators to form more complex, concurrent specifications. We define the step-semantics of these basic components in terms of an operational semantics template whose parameters specialize both the enabling of transitions and transitions' effects. We also provide the operational semantics of seven composition operators, defining each as the concurrent execution of components, with changes to their shared variables and events to reflect inter-component communication and synchronization; the definitions of these operators use the template parameters to preserve in composition notation-specific behaviour. By separating a notation's step-semantics from its composition and concurrency operators, we simplify the definitions of both. Our framework is sufficient to capture the semantics of basic transition systems, CSP, CCS, basic LOTOS, ESTELLE, a subset of SDL88, and a variety of statecharts notations. We believe that a description of a notation's semantics in our framework can be used as input to a tool that automatically generates formal analysis tools.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Cobleigh:2002:CUH, author = "Jamieson M. Cobleigh and Leon J. Osterweil and Alexander Wise and Barbara Staudt Lerner", title = "Containment units: a hierarchically composable architecture for adaptive systems", journal = j-SIGSOFT, volume = "27", number = "6", pages = "159--165", month = nov, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/605466.605491", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:23 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Software is increasingly expected to run in a variety of environments. The environments themselves are often dynamically changing when using mobile computers or embedded systems, for example. Network bandwidth, available power, or other physical conditions may change, necessitating the use of alternative algorithms within the software, and changing resource mixes to support the software. We present Containment Units as a software architecture useful for recognizing environmental changes and dynamically reconfiguring software and resource allocations to adapt to those changes. We present examples of Containment Units used within robotics along with the results of actual executions, and the application of static analysis to obtain assurances that those Containment Units can be expected to demonstrate the robustness for which they were designed.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Sengupta:2002:TMS, author = "Bikram Sengupta and Rance Cleaveland", title = "Triggered message sequence charts", journal = j-SIGSOFT, volume = "27", number = "6", pages = "167--176", month = nov, year = "2002", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/605466.605492", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:23 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "We propose an extension to Message Sequence Charts called Triggered Message Sequence Charts (TMSCs) that are intended to capture system specifications involving nondeterminism in the form of conditional scenarios. The visual syntax of TMSCs closely resembles that of MSCs; the semantics allows us to translate a TMSC specification into a framework that supports a notion of refinement based on Denicola's and Hennessy's must preorder. A simple but non-trivial example illustrates the utility of our extension to MSCs.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Notkin:2003:LPA, author = "David Notkin", title = "Longitudinal program analysis", journal = j-SIGSOFT, volume = "28", number = "1", pages = "1--1", month = jan, year = "2003", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/634636.586095", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:25 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The field of program analysis has made significant improvements recently, but still faces some major obstacles. In this talk I argue that considering analysis as applying longitudinally across the multitude of versions created during a program's lifetime -rather than to a given instance of a program --- shows significant promise in overcoming some of these obstacles. I focus on identifying a set of opportunities that arise when this shift in outlook is taken. Most program analysis techniques have focused on questions of the form ``Does program P satisfy a given property A?'' or ``What program points in P satisfy a given property A?'' Type-checking is the classic example of the first form, while lexical, syntactic, and semantic analyses are examples of the second form. The key point (with respect to this talk) is that a single program P is being analyzed. Some analyses expand this view and explicitly consider a pair of programs, P and P', where P' represents a modified version of P. Test selection and prioritization techniques are among the best examples of this approach: the idea is to analyze the delta between P and P', and to use that information to determine which test cases must be re-run (for test selection) or should be re-run (for test prioritization). There are dozens of results in these areas; Harrold et al.'s empirical study is one recent example of test selection [1], and the recent work at Microsoft Research is an example of test prioritization [2]. There are at least three ways in which a longitudinal approach could improve analysis. Second, we can use previously computed information to better inform analysis on a newer version. One recent example of this is the work by Kim and Porter that uses historical information about the application of tests of a set of versions as a basis for test prioritization algorithms [3]. Third, we can imagine applying otherwise ``intractable'' analyses over the lifetime of (multiple versions of) a program, as opposed to the (much more limited) time available to analyze a specific version. In essence, there is an opportunity to compute the analysis in stages, with the goal of completing the analysis by specific important points in the program lifetime (e.g., external releases). Work on vertical staging of analyses for runtime compilation is one place to look for ideas and techniques for this kind of ``horizontal'' staging [4]. The traditional view of software evolution says that (to accommodate needed change) program structure degrades and program size increases [5][6]; this in turn tends to increase the difficult of analysis. I propose here some opportunities for viewing time and change as potential benefits with respect to analysis, rather than as roadblocks. This provides potential for significantly improving software dependability over time.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Bowring:2003:MDS, author = "Jim Bowring and Alessandro Orso and Mary Jean Harrold", title = "Monitoring deployed software using software tomography", journal = j-SIGSOFT, volume = "28", number = "1", pages = "2--9", month = jan, year = "2003", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/634636.586099", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:25 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Software products are often released with missing functionality or errors that result in failures in the field. In previous work, we presented the Gamma technology, which facilitates remote monitoring of deployed software and allows for a prompt reaction to failures. In this paper, we investigate one of the principal technologies on which Gamma is based: software tomography. Software tomography splits monitoring tasks across many instances of the software, so that partial information can be (1) collected from users by means of light-weight instrumentation and (2) merged to gather the overall monitoring information. After describing the technology, we illustrate an instance of software tomography for a specific monitoring task. We also present two case studies that we performed to evaluate the presented technique on a real program. The results of the studies show that software tomography can be successfully applied to collect accurate monitoring information using only minimal instrumentation on each deployed program instance.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Tikir:2003:RDS, author = "Mustafa M. Tikir and Jeffrey K. Hollingsworth and Guei-Yuan Lueh", title = "Recompilation for debugging support in a {JIT-compiler}", journal = j-SIGSOFT, volume = "28", number = "1", pages = "10--17", month = jan, year = "2003", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/634636.586100", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:25 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib; http://www.math.utah.edu/pub/tex/bib/virtual-machines.bib", abstract = "A static Java compiler converts Java source code into a verifiably secure and compact architecture-neutral intermediate format, called Java byte codes. The Java byte codes can be either interpreted by a Java Virtual Machine or translated into native code by Java Just-In-Time compilers. Static Java compilers embed debug information in the Java class files to be used by the source level debuggers. However, the debug information is generated for architecture independent byte codes and most of the debug information is valid only when the byte codes are interpreted. Translating byte codes into native instructions puts a limitation on the amount of usable debug information that can be used by source level debuggers. In this paper, we present a new technique to generate valid debug information when Just-In-Time compilers are used. Our approach is based on the dynamic recompilation of Java methods by a fast code generator and lazily generates debug information when it is required. We also present three implementations for field watch support in the Java Virtual Machine Debugger Interface to investigate the runtime overhead and code size growth by our approach.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Akgul:2003:ILR, author = "Tankut Akgul and Vincent J. {Mooney III}", title = "Instruction-level reverse execution for debugging", journal = j-SIGSOFT, volume = "28", number = "1", pages = "18--25", month = jan, year = "2003", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/634636.586101", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:25 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The ability to execute a program in reverse is advantageous for shortening debug time. This paper presents a reverse execution methodology at the assembly instruction-level with low memory and time overheads. The core idea of this approach is to generate a reverse program able to undo, in almost all cases, normal forward execution of an assembly instruction in the program being debugged. The methodology has been implemented on a PowerPC processor in a custom made debugger. Compared to previous work --- all of which use a variety of state saving techniques --- the experimental results show 2.5X to 400X memory overhead reduction for the tested benchmarks. Furthermore, the results with the same benchmarks show an average of 4.1X to 5.7X time overhead reduction.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Morrisett:2003:AIC, author = "Greg Morrisett", title = "Analysis issues for cyclone", journal = j-SIGSOFT, volume = "28", number = "1", pages = "26--26", month = jan, year = "2003", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/634636.586096", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:25 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Cyclone [1, 2] is an experimental, type-safe programming language based upon the syntax, semantics, and spirit of C. The primary goal of the language is to provide a type-safe environment that is close enough to C in both appearance and functionality, that systems programmers will find it attractive and useful. The most challenging aspect of the design is capturing the spirit of C without compromising type-safety. In particular, systems programmers expect to have good control over data representations, memory management, and performance. Yet, these features are usually absent from high-level, type-safe languages (e.g., Java). Another challenge is validating a sufficiently wide set of idioms that are in fact type-safe, but which conventional type systems reject. To address these issues, we have used a novel combination of typing features in conjunction with some interesting inference and dataflow techniques. The most novel typing feature is the support for region-based memory management which was summarized in an earlier paper [1]. However, this paper did not discuss the inference techniques we use to validate the regions and effects. In this talk, I will briefly summarize the Cyclone type system and then focus on the analysis issues that arise in its implementation, including (a) kind and type inference, (b) region and effect inference, and (c) dataflow analysis for validating initialization, array subscripts, and linear pointers.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Brown:2003:SFE, author = "Rhodes Brown and Karel Driesen and David Eng and Laurie Hendren and John Jorgensen and Clark Verbrugge and Qin Wang", title = "{STEP}: a framework for the efficient encoding of general trace data", journal = j-SIGSOFT, volume = "28", number = "1", pages = "27--34", month = jan, year = "2003", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/634636.586103", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:25 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib; http://www.math.utah.edu/pub/tex/bib/virtual-machines.bib", abstract = "Traditional tracing systems are often limited to recording a fixed set of basic program events. This limitation can frustrate an application or compiler developer who is trying to understand and characterize the complex behavior of software systems such as a Java program running on a Java Virtual Machine. In the past, many developers have resorted to specialized tracing systems that target a particular type of program event. This approach often results in an obscure and poorly documented encoding format which can limit the reuse and sharing of potentially valuable information. To address this problem, we present STEP, a system designed to provide profiler developers with a standard method for encoding general program trace data in a flexible and compact format. The system consists of a trace data definition language along with a compiler and an architecture that simplifies the client interface by encapsulating the details of encoding and interpretation.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Apiwattanapong:2003:SPP, author = "Taweesup Apiwattanapong and Mary Jean Harrold", title = "Selective path profiling", journal = j-SIGSOFT, volume = "28", number = "1", pages = "35--42", month = jan, year = "2003", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/634636.586104", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:25 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Recording dynamic information for only a subset of program entities can reduce monitoring overhead and can facilitate efficient monitoring of deployed software. Program entities, such as statements, can be monitored using probes that track the execution of those entities. Monitoring more complicated entities, such as paths or definition-use associations, requires more sophisticated techniques that track not only the execution of the desired entities but also the execution of other entities with which they interact. This paper presents an approach for monitoring subsets of one such program entity---acyclic paths in procedures. Our selective path profiling algorithm computes values for probes that guarantee that the sum of the assigned value along each acyclic path (path sum) in the subset is unique; acyclic paths not in the subset may or may not have unique path sums. The paper also presents the results of studies that compare the number of probes required for subsets of various sizes with the number of probes required for profiling all paths, computed using Ball and Larus' path profiling algorithm. Our results indicate that the algorithm performs well on many procedures by requiring only a small percentage of probes for monitoring the subset.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Eng:2003:CSD, author = "David Eng", title = "Combining static and dynamic data in code visualization", journal = j-SIGSOFT, volume = "28", number = "1", pages = "43--50", month = jan, year = "2003", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/634636.586105", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:25 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The task of developing, tuning, and debugging compiler optimizations is a difficult one which can be facilitated by software visualization. There are many characteristics of the code which must be considered when studying the kinds of optimizations which can be performed. Both static data collected at compile-time and dynamic runtime data can reveal opportunities for optimization and affect code transformations. In order to expose the behavior of such complex systems, visualizations should include as much information as possible and accommodate the different sources from which this information is acquired. This paper presents a visualization framework designed to address these issues. The framework is based on a new, extensible language called JIL which provides a common format for encapsulating intermediate representations and associating them with compile-time and runtime data. We present new contributions which extend existing compiler and profiling frameworks, allowing them to export the intermediate languages, analysis results, and code metadata they collect as JIL documents. Visualization interfaces can then combine the JIL data from separate tools, exposing both static and dynamic characteristics of the underlying code. We present such an interface in the form of a new web-based visualizer, allowing JIL documents to be visualized online in a portable, customizable interface.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Chelf:2003:HWS, author = "Benjamin Chelf and Dawson Engler and Seth Hallem", title = "How to write system-specific, static checkers in metal", journal = j-SIGSOFT, volume = "28", number = "1", pages = "51--60", month = jan, year = "2003", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/634636.586097", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:25 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Naumovich:2003:UOD, author = "Gleb Naumovich", title = "Using the observer design pattern for implementation of data flow analyses", journal = j-SIGSOFT, volume = "28", number = "1", pages = "61--68", month = jan, year = "2003", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/634636.586107", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:25 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Data flow analysis is used widely in program compilation, understanding, design, and analysis tools. In data flow analysis, problem-specific information is associated with nodes and/or edges in the flow graph representation of a program or component and re-comp\-uted iteratively. A popular data flow analysis design relies on a worklist that stores all nodes and edges whose data flow information has to be re-computed. While this approach is straightforward, it has some drawbacks. First, the presence of the worklist makes data flow algorithms centralized, which may reduce effectiveness of parallel implementations of these algorithms. Second, the worklist approach is difficult to implement in a way that minimizes the amount of information passed between flow graph nodes. In this paper, we propose to use the well-known Observer pattern for implementation of data flow analyses. We argue that such implementations are more object-oriented in nature, as well as less centralized, than worklist-based ones. We argue that by adopting this Observer-based view, data flow analyses that minimize the amount of information passed between flow graph nodes can be implemented easier than by using the worklist view. We present experimental data indicating that for some types of data flow problems, even single-threaded implementations of Observer-based data flow analysis have better run times than comparable worklist-based implementations.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Fiskio-Lasseter:2003:FEG, author = "John Fiskio-Lasseter and Michal Young", title = "Flow equations as a generic programming tool for manipulation of attributed graphs", journal = j-SIGSOFT, volume = "28", number = "1", pages = "69--76", month = jan, year = "2003", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/634636.586108", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:25 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The past three decades have seen the creation of several tools that extract, visualize, and manipulate graph-structured representations of program information. To facilitate interconnection and exchange of information between these tools, and to support the prototyping and development of new tools, it is desirable to have some generic support for the specification of graph transformations and exchanges between them. GenSet is a generic programmable tool for transformation of graph-structured data. The implementation of the GenSet system and the programming paradigm of its language are both based on the view of a directed graph as a binary relation. Rather than use traditional relational algebra to specify transformations, however, we opt instead for the more expressive class of flow equations. Flow equations---or, more generally, systems of simultaneous fixpoint equations---have seen fruitful applications in several areas, including data and control flow analysis, formal verification, and logic programming. In GenSet, they provide the fundamental construct for the programmer to use in defining new transformations.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Sutherland:2003:CMC, author = "Dean F. Sutherland and Aaron Greenhouse and William L. Scherlis", title = "The code of many colors: relating threads to code and shared state", journal = j-SIGSOFT, volume = "28", number = "1", pages = "77--83", month = jan, year = "2003", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/634636.586109", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:25 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "We introduce a thread colors model as a way to express design intent concerning the relationships between threads, executable code, and shared state. By expressing the model as annotations in code, it is possible to formally link the model with source code and to analyze the consistency of model and code in a composable manner. By using annotations as cut-points, APIs can be annotated and compliance with library threading policies can be evaluated. This is illustrated using case study examples from published code that show how thread coloring models can assist in assuring policy compliance and in identifying concurrency errors.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Agarwal:2003:RDI, author = "Rakesh Agarwal and Ajit Sarangi and Swati Das", title = "Reengineering of database intensive application", journal = j-SIGSOFT, volume = "28", number = "3", pages = "1--1", month = may, year = "2003", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/773126.773136", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:27 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Reengineering databases has been a challenge since ages and it requires process mapping to understand better and significantly improve the business processes and performance. In this paper we describe a generic architecture for reengineering legacy databases, which is an outcome of working on a real software project. The goal of this research is to formalize a process that is applicable to different database reengineering scenarios and requirements. We elaborate the steps that were actually done for implementing the project.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Tracz:2003:FML, author = "Will Tracz", title = "Front matter (letters and notices)", journal = j-SIGSOFT, volume = "28", number = "3", pages = "1--8", month = may, year = "2003", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/773126.773127", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:27 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Bayrak:2003:LAN, author = "Coskun Bayrak and Chad Davis", title = "The liquid architecture: a non-linear peer-to-peer distributed architecture with polymorphic message passing", journal = j-SIGSOFT, volume = "28", number = "3", pages = "2--2", month = may, year = "2003", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/773126.773137", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:27 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "In terms of benefiting from the potential to be gained from full distribution, today's most common implementations of distributed systems follow only limited linear versions of distribution such as client-server or n-tier models. Even many ``peer to peer'' systems still rely on centralized servers to provide the message passing connectivity between the peers. While these systems do provide increased robustness and computational speedup, they fail to realize the full measure of what fully distributed architectures offer. With many of the techno-historical reasons behind these linear distributed systems becoming obsolete, we should try to think of new, more truly distributed models. Fully distributed architectures should demonstrate the ability to move functionality to a completely contingent set of machines determined at or just prior to run time. Under such an architecture --- a`` liquid'' architecture, functionality and data are completely freed from any fixed locations or functional paths and may flow at will. Especially in the domain of shared space applications such as chat and pseudochat (i.e. instant messaging) services, and virtual collaboration, the flexibility and security to be gained from the full distribution of a liquid architecture represent not only premium benefits but possibly core requisites to their essential purpose and functionality. This paper examines the notion of a liquid architecture and explores a case study implementation of such an architecture via the Virtual Collaboration Tool introduced below.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Billard:2003:LDP, author = "Edward A. Billard", title = "Language-Dependent performance of design patterns", journal = j-SIGSOFT, volume = "28", number = "3", pages = "3--3", month = may, year = "2003", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/773126.773138", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:27 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The Gang of Four design patterns represent a catalog of 23 reusable design solutions to classes of problems that arise in a variety of applications. This study examines the execution performance of the patterns, as implemented in C++, Java (native and JDK 1.0 through 1.4), Smalltalk, and Perl 5.0. Each pattern is implemented independent of an application and, hence, represents just the pure object structure. Because the patterns themselves demonstrate a variety of structures, the results represent a good benchmark for how well the object-oriented compilers actually handle object-oriented programming, in particular, object creation and object reference to methods/attributes. The results indicate that the C++ compiler provided the fastest code, Java was second, followed by Smalltalk, and then Perl. However, Java 1.2 and 1.4 held their own against the optimized version of C++ and even did slightly better than non-optimized C++. Optimized C++ code was the best in 11 of the 23 patterns, with Java 1.2 and 1.4 sharing the remaining honors for the other 12 patterns, that is, a ``winning'' Java compiler can be found for just over half of the design patterns. Smalltalk was an order of magnitude, and Perl two orders of magnitude, slower. Although there is a wide variety of performance among the design patterns, the overall averages are much in-line with the averages of four simple test programs. The results may provide guidelines for future application development.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Brebner:2003:HSJ, author = "Paul Brebner and Jeffrey Gosper", title = "How scalable is {J2EE} technology?", journal = j-SIGSOFT, volume = "28", number = "3", pages = "4--4", month = may, year = "2003", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/773126.773139", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:27 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "ECperf, the widely recognized industry standard J2EE benchmark, has attracted a large number of results submissions and their subsequent publication. However, ECperf places little restriction on the hardware platform, operating systems and databases utilized in the benchmarking process. This, combined with the existence of only two primary metrics, makes it difficult to answer critical questions such as ``Is there a limit to J2EE scalability?'' and ``Is scale-up or scale-out more effective?''. By mining the full-disclosure archives for trends and correlations we have discovered that J2EE technology is very scalable, both in a scale-up and scale-out manner. Other observed trends include, a linear correlation between middle-tier total processing power and throughput, as well as between J2EE Application Server license costs and throughput. However, the results clearly indicate that there is an increasing cost per user with increasing capacity systems, and scale-up is proportionately more expensive than scale-out.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Perez-Martinez:2003:HEU, author = "Jorge Enrique P{\'e}rez-Mart{\'\i}nez", title = "Heavyweight extensions to the {UML} metamodel to describe the {C3} architectural style", journal = j-SIGSOFT, volume = "28", number = "3", pages = "5--5", month = may, year = "2003", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/773126.773140", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:27 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "UML is widely accepted as the standard for representing the various software artifacts generated by a development process. For this reason, there have been attempts to use this language to represent the software architecture of systems as well. Unfortunately, these attempts have ended in the same representations (boxes and lines) already criticized by the software architecture community. In this work we propose an extension to the UML metamodel that is able to represent the syntactics and semantics of the C3 architectural style. This style is derived from C2. The modifications to define C3 are described in section 4. This proposal is innovative regarding UML extensions for software architectures, since previous proposals where based on light extensions to the UML meta-model, while we propose a heavyweight extension of the metamodel. On the other hand, this proposal is less ambitious than previous proposals, since we do not want to represent in UML any architectural style, but only one: C3.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Neumann:2003:RPC, author = "Peter G. Neumann", title = "Risks to the public in computers and related systems", journal = j-SIGSOFT, volume = "28", number = "3", pages = "5--9", month = may, year = "2003", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/773126.773130", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:27 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Heering:2003:QSI, author = "Jan Heering", title = "Quantification of structural information: on a question raised by {Brooks}", journal = j-SIGSOFT, volume = "28", number = "3", pages = "6--6", month = may, year = "2003", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/773126.773141", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:27 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "We introduce the notion of generative software complexity to illustrate some of the problems one may run into when trying to tackle a special case of a question recently raised by Brooks.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Henderson:2003:SEE, author = "Peter B. Henderson", title = "Software engineering education {(SEEd)}", journal = j-SIGSOFT, volume = "28", number = "3", pages = "11--12", month = may, year = "2003", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/773126.773132", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:27 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Doernhoefer:2003:SNS, author = "Mark Doernhoefer", title = "Surfing the net for {{\booktitle{Software Engineering Notes}}}", journal = j-SIGSOFT, volume = "28", number = "3", pages = "13--21", month = may, year = "2003", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/773126.773134", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:27 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{staff:2003:BM, author = "{ACM SIGSOFT Software Engineering Notes Staff}", title = "Back matter", journal = j-SIGSOFT, volume = "28", number = "3", pages = "22--37", month = may, year = "2003", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/773126.773128", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:27 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Ben-Menachem:2003:SYH, author = "Mordechai Ben-Menachem", title = "Software for your head", journal = j-SIGSOFT, volume = "28", number = "3", pages = "24--24", month = may, year = "2003", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/773126.773143", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:27 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Pentinmaki:2003:OMU, author = "Isaac Pentinmaki", title = "Object modeling and user interface design designing interactive systems", journal = j-SIGSOFT, volume = "28", number = "3", pages = "24--24", month = may, year = "2003", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/773126.773144", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:27 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Pentinmaki:2003:IMP, author = "Isaac Pentinmaki", title = "{IT} measurement: practical advice from the experts", journal = j-SIGSOFT, volume = "28", number = "3", pages = "25--25", month = may, year = "2003", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/773126.773145", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:27 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Tracz:2004:FML, author = "Will Tracz", title = "Front matter (letters and notices)", journal = j-SIGSOFT, volume = "29", number = "2", pages = "0--6", month = mar, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/979743.979744", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:31 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Agarwal:2004:IAL, author = "Rakesh Agarwal and Amrita Deo and Swati Das", title = "Intelligent agents in E-learning", journal = j-SIGSOFT, volume = "29", number = "2", pages = "1--1", month = mar, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/979743.979755", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:31 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "In this competitive era, education has become equally demanding and competitive. Innovation in the sphere of education has led to new ways of learning. Internet has now made learning dynamic by introducing the concept of learning through E-learning. The dynamism in E-Learning can be made more powerful with the help of intelligent agents. Intelligent, autonomous, mobile, rational, reactive, persistent and moreover proactive computer code so called as agents represent the next tidal wave of innovation and development in the Information age. These agents perform specific tasks on the behalf of students, instructors, and other members of the educational community including parents and alumni. The agent-based technology is expected to have an effect as profound and lasting as the World Wide Web. It is growing to be a continuously evolving and expanding area. The paper focuses on the use of intelligent agents in the sphere of effective E-learning education.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Wyss:2004:REF, author = "C. M. Wyss and A. James and W. Hasselbring and S. Conrad and Hagen H{\"o}pfner", title = "Report on the {Engineering Federated Information Systems 2003 workshop (EFIS 2003)}", journal = j-SIGSOFT, volume = "29", number = "2", pages = "1--3", month = mar, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/979743.979753", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:31 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper summarizes the EFIS 2003 workshop, held in Coventry, U.K. in July, as part of Coventry University's Data Horizons Week. Major research issues discussed include metadata/ontologies, integration frameworks, data quality and evolution, and mobile interfaces. Topics for future work include evolution, expressiveness, maintenance, and dissemination of FIS.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Gervasi:2004:RFI, author = "Vincenzo Gervasi and Didar Zowghi and Steve Easterbrook and Susan Elliott Sim", title = "Report on the {First International Workshop on Comparative Evaluation in Requirements Engineering}", journal = j-SIGSOFT, volume = "29", number = "2", pages = "1--4", month = mar, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/979743.979751", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:31 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Requirements Engineering (RE) research is believed to be mature enough for the community to be able to make comparative evaluations of alternative tools, techniques, approaches and methods. Commonly used exemplars in RE that have emerged over the years all suffer from well-defined and widely accepted evaluation criteria which makes comparison of the effectiveness of different research outcomes impossible. The first International Workshop on Comparative Evaluation on Requirements Engineering was held in conjunction with the 11$^{th}$ IEEE International Requirements Engineering Conference in Monterey Bay, California. This workshop was conceived to address these issues and facilitate a community initiative in developing a common understanding of evaluation criteria and developing benchmarks for comparative evaluation in RE. Content, of course, is important.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Walenstein:2004:SIW, author = "Andrew Walenstein and Arun Lakhotia and Rainer Koschke", title = "The {Second International Workshop on Detection of Software Clones}: workshop report", journal = j-SIGSOFT, volume = "29", number = "2", pages = "1--5", month = mar, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/979743.979752", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:31 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This report is intended to summarize the proceedings of the Second International Workshop on Detection of Software Clones (IWDSC'2003). The aim of the workshop was to bring together researchers within the field of clone detection to critically assess the current state of research, and to establish new directions and partnerships for research. There were at least 30 people in attendance. Five position papers were presented and discussed. In addition, an index card-based brainstorming technique was used to focus discussion on assessing the current state of clone analysis and detection. A report and analysis of the results of this brainstorming session is the main content of this report. We recommend another international workshop on clones and clone detection be set to be held alongside another conference sometime in 2004.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Cardoso:2004:ASS, author = "Ana Isabel Cardoso and Rui Gustavo Crespo and Peter Kokol", title = "Assessing software structure by entropy and information density", journal = j-SIGSOFT, volume = "29", number = "2", pages = "2--2", month = mar, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/979743.979756", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:31 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "In this paper we show how the long range correlation and the local entropy measures in the software program can give indication about its structure. First we define a long range correlation and local entropy introducing a list of examples of use of those measures across different fields. We then present a method to calculate the long range correlation in the Software Engineering and we use that method in a Case Study. Finally we conclude that the use of those two metrics, borrowed from the complex systems theory, are potential and easier for measuring the object program structure.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Fass:2004:AAP, author = "Leona F. Fass", title = "Approximations, anomalies and {``the proof of correctness wars''}", journal = j-SIGSOFT, volume = "29", number = "2", pages = "3--3", month = mar, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/979743.979757", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:31 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "We discuss approaches to establishing ``correctness'' and describe the usefulness of logic-based model checkers for producing better practical system designs. While we could develop techniques for ``constructing correctness'' in our theoretical behavioral-modeling research, when applied to Real World processes such as software development only approximate correctness might be established and anomalous behaviors subsequently found. This we view as a positive outcome since resultant adaptation, or flaw detection and correction, may lead to improved development and designs. We find researchers employing model checking as a formal methods tool to develop empirical techniques have reached similar conclusions. Thus we cite some applications of model checking to generate tests and detect defects in such Real World processes as aviation system development, fault-detection systems, and security.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Gill:2004:FIC, author = "Nasib S. Gill and P. S. Grover", title = "Few important considerations for deriving interface complexity metric for component-based systems", journal = j-SIGSOFT, volume = "29", number = "2", pages = "4--4", month = mar, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/979743.979758", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:31 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Component-based software engineering (CBSE) represents an exciting and promising paradigm for software development. Software components are one of the key issues in CBSE. The software development community is continuously seeking new methods for improving software quality and enhancing development productivity. There is an increasing need for component-based metrics to help manage and foster quality in component-based software development. The traditional software product and process metrics are neither suitable nor sufficient in measuring the complexity of software components, which ultimately is necessary for quality and productivity improvement within organisations adopting CBSE. In this paper, we propose an interface complexity metric (ICM) aimed at measuring the complexity of a software component based on the interface characterisation model of a software component that mainly include such as interface signature, interface constraints, interface packaging and configurations. Based on the value of this metric, the complexity of the software component could be managed within reasonable complexity limits. In this way, the software components could be kept simple which in turn help in enhancing the quality and productivity.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Guo:2004:KNT, author = "Bing Guo and Yan Shen and Jun Xie and Yong Wang and Guang-Ze Xiong", title = "A kind of new {ToolBus} model research and implementation", journal = j-SIGSOFT, volume = "29", number = "2", pages = "5--5", month = mar, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/979743.979759", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:31 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Nowadays, software architecture of CASE (Computer Aided Software Engineering) environments is evolving from layered structure to bus structure. This bus structure can greatly simplify the interconnection structure among tools and facilitate the construction of distributed CASE environments. In this paper, from the viewpoint that tool integration facilities are separated from tool logic processing function, a pure model of ToolBus first is introduced, then its functional abstraction, internal structure, interface specifications and implementation approaches are explored, last a software prototype LambdaBus which verifies the validity to ToolBus model is implemented based on CORBA specifications.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Javed:2004:SEE, author = "Talha Javed and Manzil-e-Maqsood and Qaiser S. Durrani", title = "A survey to examine the effect of team communication on job satisfaction in software industry", journal = j-SIGSOFT, volume = "29", number = "2", pages = "6--6", month = mar, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/979743.979760", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:31 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Effective communication at work places contributes significantly towards the performance of employees. It gives rise to enhanced job satisfaction, a good feeling of personal accomplishment and increased productivity. In this paper we have investigated the factors (related to team communication) that have a significant influence on job satisfaction. For this study, 23 factors that could possibly affect job satisfaction are taken into consideration. These factors were grouped into categories like working environment, duration of service, personal communication terms, performance feedback, horizontal, vertical and formal communication. Our findings, based on the statistical analysis of industry data, indicate that working environment, quality work, performance appraisals and clarity of information provided by project managers to team members are the factors that positively contribute towards job satisfaction.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Henderson:2004:SEEa, author = "Peter B. Henderson", title = "Software engineering education {(SEEd)}", journal = j-SIGSOFT, volume = "29", number = "2", pages = "6--8", month = mar, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/979743.979747", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:31 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Kanmani:2004:IEO, author = "S. Kanmani and V. Rhymend Uthariaraj and V. Sankaranarayanan and P. Thambidurai", title = "Investigation into the exploitation of Object-Oriented features", journal = j-SIGSOFT, volume = "29", number = "2", pages = "7--7", month = mar, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/979743.979761", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:31 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper discusses the results arrived at employing Object-Oriented (OO) measures on the small-sized programs developed by the Under Graduate (UG) students during the study of C++ laboratory course. The metric values computed reflect the experience/knowledge of the developer in various mechanisms (inheritance, coupling and cohesion) in developing the modules (classes). We propose six hypotheses to validate the measures. For this experiment, the number of attributes and number of methods defined in the class are correlated with the metric values. The result of the experiment shows that the programs used inheritance and cohesion properties appropriately in the design of the class level attributes.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Lu:2004:SRC, author = "Jian Lu", title = "Some research on componentware frameworks based on mobile agent technology", journal = j-SIGSOFT, volume = "29", number = "2", pages = "8--8", month = mar, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/979743.979762", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:31 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "With the development of mobile agent technology and the applications of componentware, the requirements for a new componentware framework based on mobile agent technology are increasing. These requirements include requirements from programming methodology, requirements from componentware, and requirements from mobile agent technology. According to these requirements and after analyzing the limitations of ``traditional'' component software, this paper presents some ideas about what the mobile agent technology can do to overcome these limitations. Then based on the above analysis and the mobile agent technology, this paper proposes three new conceptual componentware frameworks. They include an adjustable componentware framework, a smart componentware framwork, and a flexible framework. These new frameworks provides much more flexibility than the traditional componentware frameworks and more suitable to the open environment of Internet. In order to support previously proposed new conceptual componentware frameworks based on mobile agent technology, some issues about the infrastructure, methodology and technical challenge are also discussed in this paper. Our goal is to build a new componentware framework based on mobile agent technology, overcome the limitations of the current approaches, and further popularize the Internet by giving people greater access to it with less effort.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Neumann:2004:RPCa, author = "Peter G. Neumann", title = "Risks to the public in computers and related systems", journal = j-SIGSOFT, volume = "29", number = "2", pages = "8--16", month = mar, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/979743.979748", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:31 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Rosen:2004:NDS, author = "Clive Rosen", title = "Non-directive software engineering", journal = j-SIGSOFT, volume = "29", number = "2", pages = "9--9", month = mar, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/979743.979763", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:31 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Shimomura:2004:PTF, author = "Takao Shimomura", title = "A page-transition framework for image-oriented {Web} programming", journal = j-SIGSOFT, volume = "29", number = "2", pages = "10--10", month = mar, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/979743.979764", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:31 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "To develop Web applications, various integrated development environments have been used. In addition, several frameworks for efficiently developing those applications have been proposed. This paper presents the image-oriented page-transition framework that models a Web application as a set of transitions of Web pages, and using visual components, makes it easier to write processes executed when a Web page transfers to another Web page. This page-transition framework has the following novel features: (1) The developers of Web applications do not need to write any processes for receiving and analyzing submitted form data. (2) The data submitted by page transfers are stored in the appropriate variables that are automatically generated. Using these automatically generated variables, the developers can write necessary actions for each Web page from which control transfers. (3) The developers can deal with tables used inside the programs as visual components, and can use these components to design dynamic Web pages.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Terekhov:2004:DAI, author = "Andrey A. Terekhov", title = "Dealing with architectural issues: a case study", journal = j-SIGSOFT, volume = "29", number = "2", pages = "11--11", month = mar, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/979743.979765", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:31 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper describes an effort to recover and improve software architecture in a large-scale industrial project. We describe our motivation for architecture recovery and present a summary of its results. We also attempt to generalize our findings by arguing that the current level of understanding of software architecture is not sufficient to determine in advance which factors will be important (i.e., ``architectural'') for a software product in the long term.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Tevanlinna:2004:PFT, author = "Antti Tevanlinna and Juha Taina and Raine Kauppinen", title = "Product family testing: a survey", journal = j-SIGSOFT, volume = "29", number = "2", pages = "12--12", month = mar, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/979743.979766", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:31 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "In this paper we discuss the current state of product family testing. Testing, unlike other areas of software development, has received only little attention in this context despite the problems directly rising from scale, reuse and variability. We present the current approaches to product family testing methodology and processes. We also evaluate the current state-of-the-art in product family testing and highlight problems that need to be addressed in the future.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Zhou:2004:CSG, author = "Yuming Zhou and Jiangtao Lu and Hongmin Lu Baowen Xu", title = "A comparative study of graph theory-based class cohesion measures", journal = j-SIGSOFT, volume = "29", number = "2", pages = "13--13", month = mar, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/979743.979767", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:31 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Among a large number of cohesion measures for classes proposed in last decade, many measures abstract a class by an undirected or directed graph, in which the nodes represent the class members and the edges represent the relationships among these members. This paper compares six typical graph theory-based cohesion measures for classes, and states what problems should be addressed during the development of new cohesion measures.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Doernhoefer:2004:SNSa, author = "Mark Doernhoefer", title = "Surfing the net for {{\booktitle{Software Engineering Notes}}}", journal = j-SIGSOFT, volume = "29", number = "2", pages = "17--26", month = mar, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/979743.979749", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:31 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{staff:2004:BMA, author = "{ACM SIGSOFT Software Engineering Notes Staff}", title = "Back matter (abstracts and calendar)", journal = j-SIGSOFT, volume = "29", number = "2", pages = "27--62", month = mar, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/979743.979745", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:31 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Ben-Menachem:2004:RIP, author = "Mordechai Ben-Menachem", title = "Review of {{\booktitle{IT project estimation: a practical guide to the costing of software}} by Paul Coombs. Cambridge University Press 2003}", journal = j-SIGSOFT, volume = "29", number = "2", pages = "31--31", month = mar, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/979743.979769", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:31 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Harris:2004:RAS, author = "Gregory H. Harris", title = "Review of {{\booktitle{Abstract state machines: a method for high-level system design and analysis}} by Egon B{\"o}rger and Robert St{\"a}rk. Springer-Verlag 2003}", journal = j-SIGSOFT, volume = "29", number = "2", pages = "31--32", month = mar, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/979743.979770", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:31 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Law:2004:RDL, author = "James Law", title = "Review of {{\booktitle{The description logic handbook}} by Franz Bader, Diego Calvanese, Deborah L. McGuinness, Daniele Nardi, Peter Patel-Schneider. Cambridge University Press 2003}", journal = j-SIGSOFT, volume = "29", number = "2", pages = "32--33", month = mar, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/979743.979771", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:31 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Law:2004:RTR, author = "James Law", title = "Review of {{\booktitle{Term rewriting systems}} by Mark Bezem, Jan Willem Klop, and Roel de Vrijer. Cambridge University Press 2003}", journal = j-SIGSOFT, volume = "29", number = "2", pages = "33--33", month = mar, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/979743.979772", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:31 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Pentinmaki:2004:RLS, author = "Isaac Pentinmaki", title = "Review of {{\booktitle{Lean software development: an agile tookit}} by Mary and Tom Poppendieck. Addison Wesley 2003}", journal = j-SIGSOFT, volume = "29", number = "2", pages = "33--33", month = mar, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/979743.979773", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:31 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Tracz:2004:FLN, author = "Will Tracz", title = "Frontmatter (letters and notices)", journal = j-SIGSOFT, volume = "29", number = "3", pages = "0--4", month = may, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/986710.986711", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:33 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Ramachandran:2004:KBR, author = "Muthu Ramachandran and Domenic Mangano", title = "Knowledge based reasoning for software architectural design strategies", journal = j-SIGSOFT, volume = "29", number = "3", pages = "1--4", month = may, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/986710.986730", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:33 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "It is well known that the backbone of any system is the architecture which holds the whole system together to manage the complexity and requirements changes. The past twenty years or more of research into software and IT systems design has resulted in exponential growth of architectural design strategies. Therefore it has also resulted in confusion for many software engineers who may not be experts in software design to understand and choose a suitable architectural solution to their problem. We have tackled this issue by providing a classification framework and knowledge based reasoning for software designers to choose the appropriate strategies for their problem. This paper illustrates a classification schemes for architectural design strategies and a tool support for knowledge based reasoning for choosing a design solution.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Berry:2004:SIW, author = "Daniel M. Berry and Rick Kazman and Roel Wieringa", title = "{Second International Workshop on From SofTware Requirements to Architectures (STRAW'03)}", journal = j-SIGSOFT, volume = "29", number = "3", pages = "1--5", month = may, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/986710.986722", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:33 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The Second International Workshop on From SofTware Requirements to Architectures (STRAW'03) was held in Portland, Oregon, USA on 9 May 2003 just after the Twenty-Fifth International Conference on Software Engineering (ICSE'03). This brief paper outlines the motivation, goals, and organization of the workshop, summarizes the presentations, and, along the way, gathers some lessons learned about running a workshop.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Aggarwal:2004:NNB, author = "K. K. Aggarwal and Yogesh Singh and A. Kaur and O. P. Sangwan", title = "A neural net based approach to Test Oracle", journal = j-SIGSOFT, volume = "29", number = "3", pages = "1--6", month = may, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/986710.986725", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:33 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "In this paper an attempt has been made to explore the possibility of the usage of artificial neural networks as Test Oracle. The triangle classification problem has been used as a case study. Results for the usage of unsupervised artificial networks indicate that they are not suitable for this purpose. The Feed-forward back propagation neural networks are demonstrated to be suitable.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Crnkovic:2004:IWC, author = "Ivica Crnkovic and Heinz Schmidt and Judith Stafford and Kurt Wallnau", title = "{6th ICSE Workshop on Component-Based Software Engineering}: automated reasoning and prediction", journal = j-SIGSOFT, volume = "29", number = "3", pages = "1--7", month = may, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/986710.986723", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:33 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This report gives an overview of the 6th ICSE Workshop on Component-Based Software Engineering held at 25$^{th}$ International Conference on Software Engineering. The workshop brought together researchers and practitioners from three communities: component technology, software architecture, and software certification. The primary goal of the workshop was to continue clarifying the concepts, identifying the main challenges and findings of predictable assembly of certifiable software components. This report gives a comprehensive summary of the position papers, of the workshop, its findings, and its results.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Javed:2004:SII, author = "Talha Javed and Manzil e Maqsood and Qaiser S. Durrani", title = "A study to investigate the impact of requirements instability on software defects", journal = j-SIGSOFT, volume = "29", number = "3", pages = "1--7", month = may, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/986710.986727", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:33 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Software development is a dynamic process and is characterized by change. Software projects often begin with unclear, ambiguous, and incomplete requirements which give rise to intrinsic volatility. Constant change in requirements is one of the main causes of software defects and a major issue faced by the software industry. This paper describes the findings of our research-based study that investigates the impact of both the pre-release and post-release requirements changes on overall defects by defining measures, collecting data against those measures and analyzing the collected data through statistical techniques. Our findings, based on industry data from 4 software projects consisting of 30 releases, all in e-commerce domain, indicate that there is a significant relationship between pre/post release change requests initiated by the client and software defects. In addition, our data analysis indicates that changes in the design of the system at the later stages of software development i.e., during coding, testing and after release have a significant impact on the high severity defects that affect the major functionality of the system. Also, we found that insufficient time spent on the design phase and inadequate communication with the client could be some of the causes of requirements changes and consequently software defects.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Lima:2004:AMA, author = "Emerson F. A. Lima and Patr{\'\i}cia D. L. Machado and Fl{\'a}avio R. Sampaio and Jorge C. A. Figueiredo", title = "An approach to modelling and applying mobile agent design patterns", journal = j-SIGSOFT, volume = "29", number = "3", pages = "1--8", month = may, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/986710.986726", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:33 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Mobile agent design patterns represent solutions to specific problems of implementing mobile agent-based applications that have evolved over time. The use of design patterns can increase productivity, promote reuse and reduce complexity when developing applications. However, most of the mobile agent design patterns presented in the literature are difficult to apply in practice due to the lack of a suitable approach to identify, document and apply them. Also, they are usually related to a specific mobile agent platform. We present an approach for modelling and applying patterns independently of specific platforms along with their counterparts in specific platforms. Also, we show that an adequate platform independent view can be constructed to be used as a guide to implement the pattern in different platforms.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Ram:2004:PHB, author = "D. Janaki Ram and P. Jithendra Kumar Reddy and M. S. Rajasree", title = "Pattern hybridization: breeding new designs out of pattern interactions", journal = j-SIGSOFT, volume = "29", number = "3", pages = "1--10", month = may, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/986710.986729", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:33 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Class or object interactions form the basis of object-oriented design. However, design pattern interaction can be viewed as a higher level of abstraction for system design. The typical interactions among the patterns are a pattern uses another pattern to solve one of its sub problem, and a pattern combines with another pattern for completeness. This paper proposes a mechanism called pattern hybridization for breeding new patterns from the pattern interactions which solve more specialized problems than the original patterns do. Rules for generating hybrid patterns are also mentioned in the paper. This paper also views design pattern interactions for system design.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Oquendo:2004:AAD, author = "Flavio Oquendo", title = "{$ \pi $-ADL}: an Architecture Description Language based on the higher-order typed $ \pi $-calculus for specifying dynamic and mobile software architectures", journal = j-SIGSOFT, volume = "29", number = "3", pages = "1--14", month = may, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/986710.986728", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:33 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "A key aspect of the design of any software system is its architecture. An architecture description, from a runtime perspective, should provide a formal specification of the architecture in terms of components and connectors and how they are composed together. Further, a dynamic or mobile architecture description must provide a specification of how the architecture of the software system can change at runtime. Enabling specification of dynamic and mobile architectures is a large challenge for an Architecture Description Language (ADL). This article describes {\pi}-ADL, a novel ADL that has been designed in the ArchWare European Project to address specification of dynamic and mobile architectures. It is a formal, well-founded theoretically language based on the higher-order typed {\pi}-calculus. While most ADLs focus on describing software architectures from a structural viewpoint, {\pi}-ADL focuses on formally describing architectures encompassing both the structural and behavioural viewpoints. The {\pi}-ADL design principles, concepts and notation are presented. How {\pi}-ADL can be used for specifying static, dynamic and mobile architectures is illustrated through case studies. The {\pi}-ADL toolset is outlined.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Henderson:2004:SEEb, author = "Peter B. Henderson", title = "Software engineering education {(SEEd)}", journal = j-SIGSOFT, volume = "29", number = "3", pages = "5--6", month = may, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/986710.986714", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:33 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Neumann:2004:RPCb, author = "Peter G. Neumann", title = "Risks to the public in computers and related systems", journal = j-SIGSOFT, volume = "29", number = "3", pages = "7--14", month = may, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/986710.986716", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:33 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Doernhoefer:2004:SNSb, author = "Mark Doernhoefer", title = "Surfing the net for {{\booktitle{Software Engineering Notes}}}", journal = j-SIGSOFT, volume = "29", number = "3", pages = "15--24", month = may, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/986710.986718", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:33 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Ovans:2004:PLC, author = "Russell Ovans", title = "The programmer life-cycle", journal = j-SIGSOFT, volume = "29", number = "3", pages = "25--26", month = may, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/986710.986720", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:33 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The traditional analysis of programmer productivity ignores the reality that work rates of programmers are variable over time. Not unlike the software systems they construct, programmers follow a predictable life-cycle. However, the programmer life-cycle is not comprised of activities but rather by phases that directly affect and predict productivity. The sequence of phases is: euphoric, productive, irreplaceable, resentful, bored, and unproductive. Overall productivity is characterized by an initial six month period of intense interest, at which time productivity rates are often an order of magnitude higher than the oft-quoted 500 LOC/month average. After a short period of volatility, the programmer then enters a prolonged phase of steadily dwindling interest, resulting in productivity rates that mimic the average. Each time a programmer switches employers or begins a significantly new project, the life-cycle starts anew.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Saur:2004:RSN, author = "Joseph M. Saur", title = "Review of {{\booktitle{Software by numbers: low-risk, high-return development}} by Mark Denne and Jane Cleland-Huang. Prentice Hall 2004}", journal = j-SIGSOFT, volume = "29", number = "3", pages = "29--30", month = may, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/986710.986732", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:33 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Saur:2004:RCT, author = "Joseph M. Saur", title = "Review of {{\booktitle{Critical testing processes: plan, prepare, perform, perfect}} by Rex Black. Addison-Wesley 2004}", journal = j-SIGSOFT, volume = "29", number = "3", pages = "30--30", month = may, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/986710.986734", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:33 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Saur:2004:RSE, author = "Joseph M. Saur", title = "Review of {{\booktitle{Software engineering measurement}} by John C. Munson. Auerbach Publications 2003}", journal = j-SIGSOFT, volume = "29", number = "3", pages = "30--30", month = may, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/986710.986733", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:33 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{staff:2004:BAC, author = "{ACM SIGSOFT Software Engineering Notes Staff}", title = "Backmatter (abstracts and calendar)", journal = j-SIGSOFT, volume = "29", number = "3", pages = "31--37", month = may, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/986710.986712", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:33 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Rountev:2004:SDA, author = "Atanas Rountev and Scott Kagan and Michael Gibas", title = "Static and dynamic analysis of call chains in {Java}", journal = j-SIGSOFT, volume = "29", number = "4", pages = "1--11", month = jul, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1013886.1007514", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:35 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This work presents a parameterized framework for static and dynamic analysis of call chains in Java components. Such analyses have a wide range of uses in tools for software understanding and testing. We also describe a test coverage tool built with these analyses and the use of the tool on a real-world test suite. Our experiments evaluate the exact precision of several instances of the framework and provide a novel approach for estimating the limits of class analysis technology for computing precise call chains.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Dor:2004:SVS, author = "Nurit Dor and Stephen Adams and Manuvir Das and Zhe Yang", title = "Software validation via scalable path-sensitive value flow analysis", journal = j-SIGSOFT, volume = "29", number = "4", pages = "12--22", month = jul, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1013886.1007515", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:35 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "In this paper, we present a new algorithm for tracking the flow of values through a program. Our algorithm represents a substantial improvement over the state of the art. Previously described value flow analyses that are control-flow sensitive do not scale well, nor do they eliminate value flow information from infeasible execution paths (i.e., they are path-insensitive). Our algorithm scales to large programs, and it is path-sensitive. The efficiency of our algorithm arises from three insights: The value flow problem can be ``bit-vectorized'' by tracking the flow of one value at a time; dataflow facts from different execution paths with the same value flow information can be merged; and information about complex aliasing that affects value flow can be plugged in from a different analysis. We have incorporated our analysis in ESP, a software validation tool. We have used ESP to validate the Windows operating system kernel (a million lines of code) against an important security property. This experience suggests that our algorithm scales to large programs, and is accurate enough to trace the flow of values in real code.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Fu:2004:TJW, author = "Chen Fu and Barbara G. Ryder and Ana Milanova and David Wonnacott", title = "Testing of {Java} web services for robustness", journal = j-SIGSOFT, volume = "29", number = "4", pages = "23--34", month = jul, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1013886.1007516", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:35 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper presents a new compile-time analysis that enables a testing methodology for white-box coverage testing of error recovery code (i.e., exception handlers) in Java web services using compiler-directed fault injection. The analysis allows compiler-generated instrumentation to guide the fault injection and to record the recovery code exercised. (An injected fault is experienced as a Java exception.) The analysis (i) identifies the exception-flow 'def-uses' to be tested in this manner, (ii) determines the kind of fault to be requested at a program point, and (iii) finds appropriate locations for code instrumentation. The analysis incorporates refinements that establish sufficient context sensitivity to ensure relatively precise def-use links and to eliminate some spurious def-uses due to demonstrably infeasible control flow. A runtime test harness calculates test coverage of these links using an exception def-catch metric. Experiments with the methodology demonstrate the utility of the increased precision in obtaining good test coverage on a set of moderately-sized Java web services benchmarks.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Christodorescu:2004:TMD, author = "Mihai Christodorescu and Somesh Jha", title = "Testing malware detectors", journal = j-SIGSOFT, volume = "29", number = "4", pages = "34--44", month = jul, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1013886.1007518", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:35 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "In today's interconnected world, malware, such as worms and viruses, can cause havoc. A malware detector (commonly known as virus scanner) attempts to identify malware. In spite of the importance of malware detectors, there is a dearth of testing techniques for evaluating them. We present a technique based on program obfuscation for generating tests for malware detectors. Our technique is geared towards evaluating the resilience of malware detectors to various obfuscation transformations commonly used by hackers to disguise malware. We also demonstrate that a hacker can leverage a malware detector's weakness in handling obfuscation transformations and can extract the signature used by a detector for a specific malware. We evaluate three widely-used commercial virus scanners using our techniques and discover that the resilience of these scanners to various obfuscations is very poor.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Yilmaz:2004:CAE, author = "Cemal Yilmaz and Myra B. Cohen and Adam Porter", title = "Covering arrays for efficient fault characterization in complex configuration spaces", journal = j-SIGSOFT, volume = "29", number = "4", pages = "45--54", month = jul, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1013886.1007519", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:35 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Testing systems with large configurations spaces that change often is a challenging problem. The cost and complexity of QA explodes because often there isn't just one system, but a multitude of related systems. Bugs may appear in certain configurations, but not in others. The Skoll system and process has been developed to test these types of systems through distributed, continuous quality assurance, leveraging user resources around-the-world, around-the-clock. It has been shown to be effective in automatically characterizing configurations in which failures manifest. The derived information helps developers quickly narrow down the cause of failures which then improves turn around time for fixes. However, this method does not scale well. It requires one to exhaustively test each configuration in the configuration space. In this paper we examine an alternative approach. The idea is to systematically sample the configuration space, test only the selected configurations, and conduct fault characterization on the resulting data. The sampling approach we use is based on calculating a mathematical object called a covering array. We empirically assess the effect of using covering array derived test schedules on the resulting fault characterizations and provide guidelines to practitioners for their use.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Nachmanson:2004:OST, author = "Lev Nachmanson and Margus Veanes and Wolfram Schulte and Nikolai Tillmann and Wolfgang Grieskamp", title = "Optimal strategies for testing nondeterministic systems", journal = j-SIGSOFT, volume = "29", number = "4", pages = "55--64", month = jul, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1013886.1007520", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:35 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper deals with testing of nondeterministic software systems. We assume that a model of the nondeterministic system is given by a directed graph with two kind of vertices: states and choice points. Choice points represent the nondeterministic behaviour of the implementation under test (IUT). Edges represent transitions. They have costs and probabilities. Test case generation in this setting amounts to generation of a game strategy. The two players are the testing tool (TT) and the IUT. The game explores the graph. The TT leads the IUT by selecting an edge at the state vertices. At the choice points the control goes to the IUT. A game strategy decides which edge should be taken by the TT in each state. This paper presents three novel algorithms (1) to determine an optimal strategy for the bounded reachability game, where optimality means maximizing the probability to reach any of the given final states from a given start state while at the same time minimizing the costs of traversal; (2) to determine a winning strategy for the bounded reachability game, which guarantees that given final vertices are reached, regardless how the IUT reacts; (3) to determine a fast converging edge covering strategy, which guarantees that the probability to cover all edges quickly converges to 1 if TT follows the strategy.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Elbaum:2004:ESP, author = "Sebastian Elbaum and Madeline Hardojo", title = "An empirical study of profiling strategies for released software and their impact on testing activities", journal = j-SIGSOFT, volume = "29", number = "4", pages = "65--75", month = jul, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1013886.1007522", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:35 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "An understanding of how software is employed in the field can yield many opportunities for quality improvements. Profiling released software can provide such an understanding. However, profiling released software is difficult due to the potentially large number of deployed sites that must be profiled, the extreme transparency expectations, and the remote data collection and deployment management process. Researchers have recently proposed various approaches to tap into the opportunities and overcome those challenges. Initial studies have illustrated the application of these approaches and have shown their feasibility. Still, the promising proposed approaches, and the tradeoffs between overhead, accuracy, and potential benefits for the testing activity have been barely quantified. This paper aims to over-come those limitations. Our analysis of 1200 user sessions on a 155 KLOC system substantiates the ability of field data to support test suite improvements, quantifies different approaches previously introduced in isolation, and assesses the efficiency of profiling techniques for released software and the effectiveness of their associated testing efforts.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Saff:2004:EEC, author = "David Saff and Michael D. Ernst", title = "An experimental evaluation of continuous testing during development", journal = j-SIGSOFT, volume = "29", number = "4", pages = "76--85", month = jul, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1013886.1007523", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:35 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Continuous testing uses excess cycles on a developer's workstation to continuously run regression tests in the background, providing rapid feedback about test failures as source code is edited. It is intended to reduce the time and energy required to keep code well-tested and prevent regression errors from persisting uncaught for long periods of time. This paper reports on a controlled human experiment to evaluate whether students using continuous testing are more successful in completing programming assignments. We also summarize users' subjective impressions and discuss why the results may generalize. The experiment indicates that the tool has a statistically significant effect on success in completing a programming task, but no such effect on time worked. Participants using continuous testing were three times more likely to complete the task before the deadline than those without. Participants using continuous compilation were twice as likely to complete the task, providing empirical support to a common feature in modern development environments. Most participants found continuous testing to be useful and believed that it helped them write better code faster, and 90\% would recommend the tool to others. The participants did not find the tool distracting, and intuitively developed ways of incorporating the feedback into their workflow.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Ostrand:2004:WB, author = "Thomas J. Ostrand and Elaine J. Weyuker and Robert M. Bell", title = "Where the bugs are", journal = j-SIGSOFT, volume = "29", number = "4", pages = "86--96", month = jul, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1013886.1007524", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:35 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The ability to predict which files in a large software system are most likely to contain the largest numbers of faults in the next release can be a very valuable asset. To accomplish this, a negative binomial regression model using information from previous releases has been developed and used to predict the numbers of faults for a large industrial inventory system. The files of each release were sorted in descending order based on the predicted number of faults and then the first 20\% of the files were selected. This was done for each of fifteen consecutive releases, representing more than four years of field usage. The predictions were extremely accurate, correctly selecting files that contained between 71\% and 92\% of the faults, with the overall average being 83\%. In addition, the same model was used on data for the same system's releases, but with all fault data prior to integration testing removed. The prediction was again very accurate, ranging from 71\% to 93\%, with the average being 84\%. Predictions were made for a second system, and again the first 20\% of files accounted for 83\% of the identified faults. Finally, a highly simplified predictor was considered which correctly predicted 73\% and 74\% of the faults for the two systems.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Visser:2004:TIG, author = "Willem Visser and Corina S. P{\u{a}}s{\u{a}}reanu and Sarfraz Khurshid", title = "Test input generation with {Java PathFinder}", journal = j-SIGSOFT, volume = "29", number = "4", pages = "97--107", month = jul, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1013886.1007526", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:35 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "We show how model checking and symbolic execution can be used to generate test inputs to achieve structural coverage of code that manipulates complex data structures. We focus on obtaining branch-coverage during unit testing of some of the core methods of the red-black tree implementation in the Java TreeMap library, using the Java PathFinder model checker. Three different test generation techniques will be introduced and compared, namely, straight model checking of the code, model checking used in a black-box fashion to generate all inputs up to a fixed size, and lastly, model checking used during white-box test input generation. The main contribution of this work is to show how efficient white-box test input generation can be done for code manipulating complex data, taking into account complex method preconditions.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Baresel:2004:ETP, author = "Andr{\'e} Baresel and David Binkley and Mark Harman and Bogdan Korel", title = "Evolutionary testing in the presence of loop-assigned flags: a testability transformation approach", journal = j-SIGSOFT, volume = "29", number = "4", pages = "108--118", month = jul, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1013886.1007527", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:35 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Evolutionary testing is an effective technique for automatically generating good quality test data. However, for structural testing, the technique degenerates to random testing in the presence of flag variables, which also present problems for other automated test data generation techniques. Previous work on the flag problem does not address flags assigned in loops. This paper introduces a testability transformation that transforms programs with loop--assigned flags so that existing genetic approaches can be successfully applied. It then presents empirical data demonstrating the effectiveness of the transformation. Untransformed, the genetic algorithm flounders and is unable to find a solution. Two transformations are considered. The first allows the search to find a solution. The second reduces the time taken by an order of magnitude and, more importantly, reduces the slope of the cost increase; thus, greatly increasing the complexity of the problem to which the genetic algorithm can be applied. The paper also presents a second empirical study showing that loop--assigned flags are prevalent in real world code. They account for just under 11\% of all flags.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Tonella:2004:ETC, author = "Paolo Tonella", title = "Evolutionary testing of classes", journal = j-SIGSOFT, volume = "29", number = "4", pages = "119--128", month = jul, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1013886.1007528", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:35 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Object oriented programming promotes reuse of classes in multiple contexts. Thus, a class is designed and implemented with several usage scenarios in mind, some of which possibly open and generic. Correspondingly, the unit testing of classes cannot make too strict assumptions on the actual method invocation sequences, since these vary from application to application. In this paper, a genetic algorithm is exploited to automatically produce test cases for the unit testing of classes in a generic usage scenario. Test cases are described by chromosomes, which include information on which objects to create, which methods to invoke and which values to use as inputs. The proposed algorithm mutates them with the aim of maximizing a given coverage measure. The implementation of the algorithm and its application to classes from the Java standard library are described.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Hartman:2004:ATM, author = "A. Hartman and K. Nagin", title = "The {AGEDIS} tools for model based testing", journal = j-SIGSOFT, volume = "29", number = "4", pages = "129--132", month = jul, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1013886.1007529", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:35 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "We describe the tools and interfaces created by the AGEDIS project, a European Commission sponsored project for the creation of a methodology and tools for automated model driven test generation and execution for distributed systems. The project includes an integrated environment for modeling, test generation, test execution, and other test related activities. The tools support a model based testing methodology that features a large degree of automation and also includes a feedback loop integrating coverage and defect analysis tools with the test generator and execution framework. Prototypes of the tools have been tried in industrial settings providing important feedback for the creation of the next generation of tools in this area.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Sullivan:2004:SAB, author = "Kevin Sullivan and Jinlin Yang and David Coppit and Sarfraz Khurshid and Daniel Jackson", title = "Software assurance by bounded exhaustive testing", journal = j-SIGSOFT, volume = "29", number = "4", pages = "133--142", month = jul, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1013886.1007531", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:35 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The contribution of this paper is an experiment that shows the potential value of a combination of selective reverse engineering to formal specifications and bounded exhaustive testing to improve the assurance levels of complex software. A key problem is to scale up test input generation so that meaningful results can be obtained. We present an approach, using Alloy and TestEra for test input generation, which we evaluate by experimental application to the Galileo dynamic fault tree analysis tool.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Meinke:2004:ABB, author = "Karl Meinke", title = "Automated black-box testing of functional correctness using function approximation", journal = j-SIGSOFT, volume = "29", number = "4", pages = "143--153", month = jul, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1013886.1007532", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:35 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "We consider black-box testing of functional correctness as a special case of a satisfiability or constraint solving problem. We introduce a general method for solving this problem based on function approximation. We then describe some practical results obtained for an automated testing algorithm using approximation by piecewise polynomial functions.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Morasca:2004:ACT, author = "Sandro Morasca and Stefano Serra-Capizzano", title = "On the analytical comparison of testing techniques", journal = j-SIGSOFT, volume = "29", number = "4", pages = "154--164", month = jul, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1013886.1007533", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:35 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "We introduce necessary and sufficient conditions for comparing the expected values of the number of failures caused by applications of software testing techniques. Our conditions are based only on the knowledge of a total or even a hierarchical order among the failure rates of the subdomains of a program's input domain. We also prove conditions for comparing the probability of causing at least one failure in three important special cases.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Dennis:2004:ACA, author = "Greg Dennis and Robert Seater and Derek Rayside and Daniel Jackson", title = "Automating commutativity analysis at the design level", journal = j-SIGSOFT, volume = "29", number = "4", pages = "165--174", month = jul, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1013886.1007535", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:35 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Two operations commute if executing them serially in either order results in the same change of state. In a system in which commands may be issued simultaneously by different users, lack of commutativity can result in unpredictable behaviour, even if the commands are serialized, because one user's command may be preempted by another's, and thus executed in an unanticipated state. This paper describes an automated approach to analyzing commutativity. The operations are expressed as constraints in a declarative modelling language such as Alloy, and a constraint solver is used to find violating scenarios. A case study application to the beam scheduling component of a proton therapy machine (originally specified in OCL) revealed several violations of commutativity in which requests from medical technicians in treatment rooms could conflict with the actions of a beam operator in a master control room. Some of the issues involved in automating the analysis for OCL itself are also discussed.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Munoz:2004:MVA, author = "C{\'e}sar A. Mu{\~n}oz and Gilles Dowek and V{\'\i}ctor Carre{\~n}o", title = "Modeling and verification of an air traffic concept of operations", journal = j-SIGSOFT, volume = "29", number = "4", pages = "175--182", month = jul, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1013886.1007536", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:35 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "A high level model of the concept of operations of NASA's Small Aircraft Transportation System for Higher Volume Operations (SATS-HVO) is presented. The model is a non-deterministic, asynchronous transition system. It provides a robust notion of safety that relies on the logic of the concept rather than on physical constraints such as aircraft performances. Several safety properties were established on this model. The modeling and verification effort resulted in the identification of 9 issues, including one major flaw, in the original concept. Ten recommendations were made to the SATS-HVO concept development working group. All the recommendations were accepted and incorporated into the current concept of operations. The model was written in PVS. The verification is performed using an explicit state exploration algorithm written and proven correct in PVS.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Ezick:2004:OCB, author = "James Ezick", title = "An optimizing compiler for batches of temporal logic formulas", journal = j-SIGSOFT, volume = "29", number = "4", pages = "183--194", month = jul, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1013886.1007537", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:35 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Model checking based on validating temporal logic formulas has proven practical and effective for numerous software engineering applications. As systems based on this approach have become more mainstream, a need has arisen to deal effectively with large batches of formulas over a common model. Presently, most systems validate formulas one at a time, with little or no interaction between validation of separate formulas. This is the case despite the fact that, for a wide range of applications, a certain level of redundancy between domain-related formulas can be anticipated. This paper presents an optimizing compiler for batches of temporal logic formulas. A component of the Carnauba model checking system, this compiler addresses the need to handle batches of temporal logic formulas by leveraging the framework common to optimizing programming language compilers. Just as traditional optimizing compilers attempt to exploit redundancy and other solvable properties in a program to reduce the demand on a runtime system, this compiler exploits similar properties in groups of formulas to reduce the demand on a model checking engine. Optimizations are performed via a set of distinct, interchangeable optimization passes operating on a common intermediate representation. The intermediate representation captures the full modal mu-calculus, and the optimization techniques are applicable to any temporal logic subsumed by that logic. The compiler offers a unified framework for expressing some well understood single-formula optimizations as well as numerous inter-formula optimizations that capitalize on redundancy, logical implication, and, optionally, model-specific knowledge. It is capable of working either in place of, or as a preprocessor for, other optimization algorithms. The result is a system that, when applied to a potentially heterogeneous collection of formulas over a common problem domain, is able to measurably reduce the time and space requirements of the subsequent model checking engine.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Bowring:2004:ALA, author = "James F. Bowring and James M. Rehg and Mary Jean Harrold", title = "Active learning for automatic classification of software behavior", journal = j-SIGSOFT, volume = "29", number = "4", pages = "195--205", month = jul, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1013886.1007539", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:35 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "A program's behavior is ultimately the collection of all its executions. This collection is diverse, unpredictable, and generally unbounded. Thus it is especially suited to statistical analysis and machine learning techniques. The primary focus of this paper is on the automatic classification of program behavior using execution data. Prior work on classifiers for software engineering adopts a classical batch-learning approach. In contrast, we explore an active-learning paradigm for behavior classification. In active learning, the classifier is trained incrementally on a series of labeled data elements. Secondly, we explore the thesis that certain features of program behavior are stochastic processes that exhibit the Markov property, and that the resultant Markov models of individual program executions can be automatically clustered into effective predictors of program behavior. We present a technique that models program executions as Markov models, and a clustering method for Markov models that aggregates multiple program executions into effective behavior classifiers. We evaluate an application of active learning to the efficient refinement of our classifiers by conducting three empirical studies that explore a scenario illustrating automated test plan augmentation.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Lin:2004:IAM, author = "Lee Lin and Michael D. Ernst", title = "Improving the adaptability of multi-mode systems via program steering", journal = j-SIGSOFT, volume = "29", number = "4", pages = "206--216", month = jul, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1013886.1007540", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:35 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "A multi-mode software system contains several distinct modes of operation and a controller for deciding when to switch between modes. Even when developers rigorously test a multi-mode system before deployment, they cannot foresee and test for every possible usage scenario. As a result, unexpected situations in which the program fails or underperforms (for example, by choosing a non-optimal mode) may arise. This research aims to mitigate such problems by creating a new mode selector that examines the current situation, then chooses a mode that has been successful in the past, in situations like the current one. The technique, called program steering, creates a new mode selector via machine learning from good behavior in testing or in successful operation. Such a strategy, which generalizes the knowledge that a programmer has built into the system, may select an appropriate mode even when the original controller cannot. We have performed experiments on robot control programs written in a month-long programming competition. Augmenting these programs via our program steering technique had a substantial positive effect on their performance in new environments.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Ramesh:2004:STS, author = "S. Ramesh and A. Kulkarni and V. Kamat", title = "Slicing tools for synchronous reactive programs", journal = j-SIGSOFT, volume = "29", number = "4", pages = "217--220", month = jul, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1013886.1007541", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:35 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "In this paper, we present two slicing tools: VHDL\_Slice and Est\_slice that compute static executable slices of VHDL and Esterel programs respectively. The slicers have been tested on a number of small and medium sized examples.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Flanagan:2004:EPA, author = "Cormac Flanagan and Stephen N. Freund and Shaz Qadeer", title = "Exploiting purity for atomicity", journal = j-SIGSOFT, volume = "29", number = "4", pages = "221--231", month = jul, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1013886.1007543", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:35 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/multithreading.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The notion that certain procedures are atomic is a fundamental correctness property of many multithreaded software systems. A procedure is atomic if for every execution there is an equivalent serial execution in which the actions performed by any thread while executing the atomic procedure are not interleaved with actions of other threads. Several existing tools verify atomicity by using commutativity of actions to show that every execution reduces to a corresponding serial execution. However, experiments with these tools have highlighted a number of interesting procedures that, while intuitively atomic, are not reducible. In this paper, we exploit the notion of pure code blocks to verify the atomicity of such irreducible procedures. If a pure block terminates normally, then its evaluation does not change the program state, and hence these evaluation steps can be removed from the program trace before reduction. We develop a static analysis for atomicity based on this insight, and we illustrate this analysis on a number of interesting examples that could not be verified using earlier tools based purely on reduction. The techniques developed in this paper may also be applicable in other approaches for verifying atomicity, such as model checking and dynamic analysis.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Edwards:2004:FCS, author = "Jonathan Edwards and Daniel Jackson and Emina Torlak and Vincent Yeung", title = "Faster constraint solving with subtypes", journal = j-SIGSOFT, volume = "29", number = "4", pages = "232--242", month = jul, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1013886.1007544", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:35 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Constraints in predicate or relational logic can be translated into boolean logic and solved with a SAT solver. For faster solving, it is common to exploit the typing of predicates or relations, in order to reduce the number of boolean variables needed to encode the constraint. Here we show how to extend this idea to constraints expressed in a language with subtyping. Our technique, called atomization, refactors the type hierarchy into a flat collection of disjoint atomic types. The constraints are then decomposed into equivalent constraints involving smaller relations or predicates over these new types, which can then be solved in the normal fashion. Experiments with an implementation of this technique within the Alloy Analyzer show improved performance on practical software checking problems.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Reimer:2004:SSA, author = "Darrell Reimer and Edith Schonberg and Kavitha Srinivas and Harini Srinivasan and Bowen Alpern and Robert D. Johnson and Aaron Kershenbaum and Larry Koved", title = "{SABER}: smart analysis based error reduction", journal = j-SIGSOFT, volume = "29", number = "4", pages = "243--251", month = jul, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1013886.1007545", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:35 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "In this paper, we present an approach to automatically detect high impact coding errors in large Java applications which use frameworks. These high impact errors cause serious performance degradation and outages in real world production environments, are very time-consuming to detect, and potentially cost businesses thousands of dollars. Based on 3 years experience working with IBM customer production systems, we have identified over 400 high impact coding patterns, from which we have been able to distill a small set of pattern detection algorithms. These algorithms use deep static analysis, thus moving problem detection earlier in the development cycle from production to development. Additionally, we have developed an automatic false positive filtering mechanism based on domain specific knowledge to achieve a level of usability acceptable to IBM field engineers. Our approach also provides necessary contextual information around the sources of the problems to help in problem remediation. We outline how our approach to problem determination can be extended to multiple programming models and domains. We have implemented this problem determination approach in the SABER tool and have used it successfully to detect many serious code defects in several large commercial applications. This paper shows results from four such applications that had over 60 coding defects.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Fu:2004:MCX, author = "Xiang Fu and Tevfik Bultan and Jianwen Su", title = "Model checking {XML} manipulating software", journal = j-SIGSOFT, volume = "29", number = "4", pages = "252--262", month = jul, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1013886.1007547", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:35 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The use of XML as the de facto data exchange standard has allowed integration of heterogeneous web based software systems regardless of implementation platforms and programming languages. On the other hand, the rich tree-structured data representation, and the expressive XML query languages (such as XPath) make formal specification and verification of software systems that manipulate XML data a challenge. In this paper, we present our initial efforts in automated verification of XML data manipulation operations using the SPIN model checker. We present algorithms for translating (bounded) XML data and XPath expressions to Promela, the input language of SPIN. The techniques presented in this paper constitute the basis of our Web Service Analysis Tool (WSAT) which verifies LTL properties of composite web services.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Rossi:2004:FAM, author = "Matteo Rossi and Dino Mandrioli", title = "A formal approach for modeling and verification of {RTCORBA-based} applications", journal = j-SIGSOFT, volume = "29", number = "4", pages = "263--273", month = jul, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1013886.1007548", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:35 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "We introduce a formal model for describing Real-Time CORBA-based applications, and a set of guidelines to formally check that the design of such an application is consistent with its specification. The model and the guidelines are then applied to the verification of a simple test application.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Lerner:2004:VPM, author = "Barbara Staudt Lerner", title = "Verifying process models built using parameterized state machines", journal = j-SIGSOFT, volume = "29", number = "4", pages = "274--284", month = jul, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1013886.1007549", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:35 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Software process and work flow languages are increasingly used to define loosely-coupled systems of systems. These languages focus on coordination issues such as data flow and control flow among the subsystems and exception handling activities. The resulting systems are often highly concurrent with activities distributed over many computers. Adequately testing these systems is not feasible due to their size, concurrency, and distributed implementation. Furthermore, the concurrent nature of their activities makes it likely that errors related to the order in which activities are interleaved will go undetected during testing. As a result, verification using static analysis seems necessary to increase confidence in the correctness of these systems. In this paper, we describe our experiences applying LTSA to the analysis of software processes written in Little-JIL. A key aspect to the approach taken in this analysis is that the model that is analyzed consists of a reusable portion that defines language semantics and a process-specific portion that uses parameterization and composition of pieces of the reusable portion to capture the semantics of a Little-JIL process. While the reusable portion was constructed by hand, the parameterization and composition required to model a process is automated. Furthermore, the reusable portion of the model encodes the state machines used in the implementation of the Little-JIL interpreter. As a result, analysis is based not just on the intended semantics of the Little-JIL constructs but on their actual execution semantics. This paper describes how Little-JIL processes are translated into models and reports on analysis results, which have uncovered seven errors in the Little-JIL interpreter that were previously unknown as well as an error in a software process that had previously been analyzed with a different approach without finding the error.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Tracz:2004:FTL, author = "Will Tracz", title = "Frontmatter ({TOC}, Letters, {Frank David Anger}, {ACM Fellow Profile}, {ICSE 2005}, Praise and Criticism, Some Thoughts on Software Reliability, Latest {DoD} Effort to Achieve Quality in Software, Software Engineering Education)", journal = j-SIGSOFT, volume = "29", number = "5", pages = "0", month = sep, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1022494.1022575", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:37 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Rost:2004:FMR, author = "Johann Rost", title = "Is {``Factory Method''} really a pattern?", journal = j-SIGSOFT, volume = "29", number = "5", pages = "1--1", month = sep, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1022494.1022519", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:37 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The paper gives reasons for which the term ``Design Pattern'' should be used in a stricter manner. The definition of ``Design Pattern'' should include the highest degree of generalization and ensure that the solution offered covers the invariable of all solutions to this kind of problems. The main conclusion to be drawn from this paper is that ``Factory Method'' (GoF 107) should not be considered a pattern since the solution it provides is too narrow. Budgen's arced bridge [1] is not really a pattern either because the problem can be stated in a more general manner.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Evans:2004:IWS, author = "David Evans and Raimondas Lencevicius", title = "{ICSE 2004} workshop summary {Second International Workshop on Dynamic Analysis (WODA 2004)}", journal = j-SIGSOFT, volume = "29", number = "5", pages = "1--2", month = sep, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1022494.1022508", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:37 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Dynamic analysis techniques reason over program executions and show promise in aiding the development of robust and reliable large-scale systems. WODA 2004 brought together researchers in many different dynamic analysis areas.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Long:2004:SNK, author = "Brad Long", title = "Sorting non-key fields in the distributed result set iterator pattern", journal = j-SIGSOFT, volume = "29", number = "5", pages = "1--2", month = sep, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1022494.1022516", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:37 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "In previous work a design pattern for solving the issues of handling results from queries that return large amounts of data from remote data sources was presented. This paper presents a solution to the problem of sorting non-key fields that was raised in previous work but left for a future time to solve. That time is now.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Pretschner:2004:SEA, author = "Alexander Pretschner and Christian Salzmann and Thomas Stauner", title = "Software engineering for automotive systems at {ICSE 2004} workshop summary", journal = j-SIGSOFT, volume = "29", number = "5", pages = "1--2", month = sep, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1022494.1022506", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:37 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper provides a summary of the ICSE 2004 workshop on software engineering for automotive systems. We outline the main characteristics of automotive software engineering and indicate how the workshop papers relate to these characteristics. Furthermore, we summarize the discussion at the workshop.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Briand:2004:ESS, author = "Lionel Briand and Yvan Labiche", title = "Empirical studies of software testing techniques: challenges, practical strategies, and future research", journal = j-SIGSOFT, volume = "29", number = "5", pages = "1--3", month = sep, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1022494.1022541", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:37 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This position paper aims at discussing a number of issues that typically arise when performing empirical studies with software testing techniques. Though some problems are general to all empirical disciplines, software testing studies face a number of specific challenges. Some of the main ones are discussed in sequence below.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Cox:2004:IWA, author = "Karl Cox and Jon G. Hall and Lucia Rapanotti", title = "{1st International Workshop on Advances and Applications of Problem Frames} --- summary", journal = j-SIGSOFT, volume = "29", number = "5", pages = "1--3", month = sep, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1022494.1022503", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:37 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Problem Frames are about describing real world problems in the context of known software solutions. The 1$^{st}$ International Workshop on Advances and Applications of Problem Frames (IWAAPF) was held at the 26$^{th}$ International Conference on Software Engineering in Edinburgh on 24$^{th}$ May 2004. IWAAPF was the first opportunity for researchers and practitioners to gather and discuss Michael Jackson's Problem Frames ideas. The goals of the workshop were, $ \bullet $ to provide a forum for the discussion of advances and applications of Problem Frames in a software engineering context; $ \bullet $ to identify the main challenges that Problem Frames face in the wider Software Engineering community. The richness of the advances and applications presented shows that the scope of application of Jackson's work is going beyond any original boundaries. This is a report of the workshop, its papers, discussions and findings.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Dubois:2004:IWM, author = "Eric Dubois and Xavier Franch", title = "{International Workshop on Models and Processes for the Evaluation of COTS Components (MPEC'04)}", journal = j-SIGSOFT, volume = "29", number = "5", pages = "1--3", month = sep, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1022494.1022504", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:37 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Commercial Off-The-Shelf Software components (hereafter COTS) play an increasingly important role in software systems development. One of the central activities in a successful COTS-based system development is COTS evaluation, which is one of the cornerstones of COTS selection, COTS implementation and cost models for COTS. Achieving a better understanding of this activity was the objective of the ``International Workshop on Models and Processes for the Evaluation of COTS Components (MPEC'04)'' (May 25$^{th}$, 2004, Edinburgh, Scotland, UK) collocated with the ``26$^{th}$ International Conference on Software Engineering (ICSE)''. This paper reports on the structure of the workshop, presenting short summaries of the talks given and the research issues identified and heavily discussed during the workshop. The set of all these issues can be considered as a proposal for a new agenda to the COTS research community. More details are available at the workshop website: http://www.lsi.upc.es/events/mpec.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Grundy:2004:WDS, author = "John Grundy and Ray Welland and Hermann Stoeckle", title = "{Workshop on Directions in Software Engineering Environments (WoDiSEE)}", journal = j-SIGSOFT, volume = "29", number = "5", pages = "1--3", month = sep, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1022494.1022509", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:37 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This report gives an overview of the Workshop on Directions in Software Engineering Environments (WoDiSEE 2004) held at the 26th International Conference on Software Engineering (ICSE 2004). The goal of this workshop was to bring together researchers and practitioners with an interest in developing, extending, deploying and using software engineering tools. The workshop provided an interactive forum for the exchange of ideas and discussion about current research and future trends in software engineering environment research and development. The workshop proceedings contain fourteen short papers, giving a snapshot of current research in this area, which provided the framework for presentations at the workshop. This report summarises the presentations given at the workshop and the discussions that took place.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Hierons:2004:FEE, author = "R. M. Hierons", title = "A flexible environment to evaluate state-based test techniques", journal = j-SIGSOFT, volume = "29", number = "5", pages = "1--3", month = sep, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1022494.1022543", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:37 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "In this position paper we argue that the presence of a flexible test environment, that allows the rapid prototyping of test techniques, would facilitate empirical research in software testing. Such an environment could be combined with a set of benchmark systems and specifications in order to allow researchers to rapidly prototype and evaluate new techniques. In this paper we focus on some of the requirements for a description language to be used by such an environment.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Lindstrom:2004:UES, author = "B. Lindstr{\"o}m and M. Grindal and J. Offutt", title = "Using an existing suite of test objects: experience from a testing experiment", journal = j-SIGSOFT, volume = "29", number = "5", pages = "1--3", month = sep, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1022494.1022535", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:37 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This workshop paper presents lessons learned from a recent experiment to compare several test strategies. The test strategies were compared in terms of the number of tests needed to satisfy them and in terms of faults found. The experimental design and conduct are discussed, and frank assessments of the decisions that were made are provided. The paper closes with a summary of the lessons that were learned.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{McGee:2004:EHV, author = "Pat McGee and Cem Kaner", title = "Experiments with high volume test automation", journal = j-SIGSOFT, volume = "29", number = "5", pages = "1--3", month = sep, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1022494.1022536", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:37 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "We are working with a broad class of testing techniques we collectively call High Volume Test Automation (HVTA). The essence of HVTA techniques is automated execution and evaluation of large numbers of tests, for the purpose of exposing functional errors that are otherwise hard to find. These techniques are not widely used in industry, but we believe they have the potential to help us substantially increase the reliability of software. We propose to find existing industry HVTA projects, write informal case studies of them, create our own tools to implement the technique, and apply our tool in a case study of one or more open source projects.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Offutt:2004:SME, author = "Jeff Offutt and Yuan Yang and Jane Huffman Hayes", title = "{SEEWeb}: making experimental artifacts available", journal = j-SIGSOFT, volume = "29", number = "5", pages = "1--3", month = sep, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1022494.1022538", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:37 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This position paper suggests that some of the technical and methodological challenges facing software testing researchers can be addressed by establishing a repository of experimental software artifacts, in particular, artifacts that are related to software testing empirical research. We introduce the Software Engineering Experiments on the Web (SEEWEB) project, a Web site that is created to be a convenient and usable infrastructure for gathering, organizing, and distributing experimental software artifacts. A common problem in designing software engineering and software testing experiments is finding experimental artifacts that are appropriate for the experiment, convenient to gather and use, and will fit with other experimental artifacts. SEEWEB was initially funded by the NSF and is offered as a service to the community and provides access to experimental artifacts through an interface that allows browsing, searching and downloading. SEEWEB loosely follows the open-source philosophy; experimental artifacts are provided by researchers on an as-is basis with the only payment being citations and acknowledgments to the contributing researchers. SEEWEB can be accessed online through the URL http://www.ise.gmu.edu/seeweb/.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Aggrawal:2004:CCB, author = "K. K. Aggrawal and Yogesh Singh and A. Kaur", title = "Code coverage based technique for prioritizing test cases for regression testing", journal = j-SIGSOFT, volume = "29", number = "5", pages = "1--4", month = sep, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1022494.1022511", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:37 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Test case prioritization involves scheduling test cases in an order that increases their effectiveness in meeting some performance goals. One of the common performance goals is to run those test cases that achieve total code coverage at the earliest. In this work we propose a model that achieves 100\% code coverage optimally during version specific regression testing.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Alexander:2004:SER, author = "Roger T. Alexander and James M. Bieman and Robert B. France", title = "A software engineering research repository", journal = j-SIGSOFT, volume = "29", number = "5", pages = "1--4", month = sep, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1022494.1022532", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:37 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Software developers lack objective information to assess the effectiveness of current and proposed technologies and practices. We are developing a Software Engineering Research Repository (SERR), a widely-accessible repository of software development artifacts. The core artifacts of SERR are development artifacts, for example, code, models, and test cases, organized by projects. These raw materials provide a base for carrying out analyses and the results can be stored as related artifacts in the repository. In this way, the knowledge content of the repository can be built incrementally, providing a rich support base for other research activities. Research programs can thus build upon the results produced by other programs that utilize the repository. Software developers will be able to access objective data from the repository to assess software engineering tools and techniques.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Andrews:2004:RET, author = "James H. Andrews", title = "Relevant empirical testing research: challenges and responses", journal = j-SIGSOFT, volume = "29", number = "5", pages = "1--4", month = sep, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1022494.1022539", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:37 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Empirical research on software testing that aims to be relevant to industry faces important challenges. In this position paper, we review the background on software testing research and discuss some of the most important challenges. We then give suggestions on how to respond to these challenges.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Bertolino:2004:IML, author = "Antonia Bertolino", title = "The (Im)maturity level of software testing", journal = j-SIGSOFT, volume = "29", number = "5", pages = "1--4", month = sep, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1022494.1022540", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:37 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "A large gap exists between the state-of-the-art in software testing literature, and the state of software testing practice. Empirical research should (and could) play a first class role for bridging this gap. Empirical studies in software testing have focused mainly on the evaluation of techniques for test case selection. But effective selection of test cases by itself is not sufficient to warrant successful testing: we need also empirical studies to start collecting proven patterns that test practitioners can use to predictably solve software testing problems.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Chawla:2004:GIF, author = "Anil Chawla and Alessandro Orso", title = "A generic instrumentation framework for collecting dynamic information", journal = j-SIGSOFT, volume = "29", number = "5", pages = "1--4", month = sep, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1022494.1022533", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:37 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Performing empirical research in software testing involves executing a set of subjects against one or more test suites and measuring some characteristics of these executions. Such measures are often collected using ad-hoc instrumentation, by inserting probes in the code that collect and report dynamic information at run-time. Another possible approach is to collect the needed information by leveraging capabilities of the runtime system. Both these approaches usually result in measurement tools that are not flexible and are, thus, hard to reuse and modify. To address this problem, we present a generic framework for collecting information on the runtime behavior of a Java program. The framework allows for easily collecting different kinds of dynamic information for a set of executions of the program, such as coverage and profiling of various code entities and program traces at different levels. The framework also lets users easily define how to process the collected information. In the paper, we also present a case study that we performed to evaluate the framework, and that shows its effectiveness and efficiency.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Do:2004:BIS, author = "Hyunsook Do and Sebastian Elbaum and Gregg Rothermel", title = "Building an infrastructure to support experimentation with software testing techniques", journal = j-SIGSOFT, volume = "29", number = "5", pages = "1--4", month = sep, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1022494.1022534", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:37 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Experimentation is necessary to provide advances in research on software testing, but without infrastructure to support that experimentation, progress cannot occur. To help with this problem, we have been designing and constructing infrastructure to support controlled experimentation with software testing techniques. This position paper describes our efforts, and the challenges faced in creating infrastructure and making it available.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Gill:2004:SSP, author = "Nasib S. Gill and P. S. Grover", title = "Software size prediction before coding", journal = j-SIGSOFT, volume = "29", number = "5", pages = "1--4", month = sep, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1022494.1022514", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:37 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "There have been many empirical studies conducted for the purpose of objective measurement of software systems. As a result, various 'Software Metrics' have been introduced by various researchers. At present, efforts are being made by software researchers to get qualitatively good software developed within a reasonable cost. The quality of a software product is codetermined be several factors. Most of these factors directly or indirectly depend on the objective measurement of the software characteristics. In this paper, we have applied one of our program length estimator (N$_g$) on a set of about 200 programs of varying complexities coded in four different programming languages for determining the language level, program volume and programming effort. The results of this program length estimator have also been used to find out the value of constant parameter used in Conte's software size equation for the respective languages for the purpose of estimating size of programs before coding. Further, these results have been used to estimate the size of the programs written in different languages. The estimated program size has then been comparatively analysed with that of the actual program size, which has been computed using our program length estimator (N$_g$).", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Gittens:2004:CEO, author = "Mechelle Gittens and Hanan Lutfiyya and Mike Bauer", title = "Continuous evolutionary one-step-ahead testing", journal = j-SIGSOFT, volume = "29", number = "5", pages = "1--4", month = sep, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1022494.1022542", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:37 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The traditional software development life cycle considers testing to be an activity that occurs between the implementation phase of development and software release [4]. With this approach any testing subsequent to release is done in reaction to failures reported by software users. The realities of software in operation however causes questions about this approach to arise. Adams [1] showed that organizations developing significant software applications often provide several fixes after their software has been released as the result of errors found in the field. This work also showed that the most serious and frequently recurring errors are usually found by users soon after a product has been released. These are referred to by Adams [1] as virulent errors. The negative effects of remaining defects implies that post-release activities should be proactive. These post-release activities must include continued testing by the vendor to find errors even after release. This paper proposes a solution to this requirement.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Juristo:2004:TBS, author = "N. Juristo and A. M. Moreno and S. Vegas", title = "Towards building a solid empirical body of knowledge in testing techniques", journal = j-SIGSOFT, volume = "29", number = "5", pages = "1--4", month = sep, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1022494.1022544", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:37 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Testing technique-related empirical studies have been performed for 25 years. We have managed to accumulate a fair number of experiments in this time, which might lead us to think that we now could have a sizeable empirically backed body of knowledge (BoK) on testing techniques. However, the experiments in this field have some flaws, and, consequently, the empirical BoK we have on testing techniques is far from solid. In this paper, we use the results of a survey that we did on empirical testing techniques studies to identify and discuss solutions that could lead to the formation of a solid empirical BoK. The solutions are related to two fundamental experimental issues: (1) the rigorousness of the experimental design and analysis, and (2) the need for a series of community-wide agreements to coordinate empirical research and assure that studies ratify and complement each other.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Offutt:2004:EMS, author = "Jeff Offutt and Yu-Seung Ma and Yong-Rae Kwon", title = "An experimental mutation system for {Java}", journal = j-SIGSOFT, volume = "29", number = "5", pages = "1--4", month = sep, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1022494.1022537", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:37 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Mutation is a powerful but complicated and computationally expensive testing method. Mutation is also a valuable experimental research technique that has been used in many studies. Mutation has been experimentally compared with other test criteria, and also used to support experimental comparisons of other test criteria, by using mutants as a method to create faults. In effect, mutation is often used as a ``gold standard'' for experimental evaluations of test methods. This paper presents a publicly available mutation system for Java that supports both traditional statement-level mutants and newer inter-class mutants. MUJAVA can be freely downloaded and installed with relative ease under both Unix and Windows. MUJAVA is offered as a free service to the community and we hope that it will promote the use of mutation analysis for experimental research in software testing.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Tan:2004:EEE, author = "Roy Patrick Tan and Stephen H. Edwards", title = "Experiences evaluating the effectiveness of {JML}-{JUnit} testing", journal = j-SIGSOFT, volume = "29", number = "5", pages = "1--4", month = sep, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1022494.1022545", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:37 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper reports on the issues the authors encountered while evaluating the JML-JUnit unit testing strategy. Given a predefined set of parameter values, JML-JUnit can automatically provide unit tests for Java programs that have specifications. We present a mutation testing experiment that evaluates the effectiveness of this testing strategy, and the lessons learned from doing this experiment. We conclude that a benchmark will enable the testing research community to meaningfully assess testing approaches.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Williams:2004:NPM, author = "Laurie Williams", title = "On the need for a process for making reliable quality comparisons with industrial data", journal = j-SIGSOFT, volume = "29", number = "5", pages = "1--4", month = sep, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1022494.1022546", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:37 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Many factors influence quality data obtained from industrial case studies making comparisons difficult. In this paper, two longitudinal industrial case study experiences are shared which illustrate the complications that can arise. The first is a case study of an IBM team that transitioned to the use of test-driven development. The primary quality measure was functional verification test defects normalized by lines of code. The second case study was performed with an Extreme Programming team at Sabre Airline Solutions. Both test defects and field defects were compared. In both case studies, differences existed which made the comparisons indicative but not absolute.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Bhatt:2004:DSM, author = "Pankaj Bhatt and Gautam Shroff and Arun K. Misra", title = "Dynamics of software maintenance", journal = j-SIGSOFT, volume = "29", number = "5", pages = "1--5", month = sep, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1022494.1022513", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:37 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "As the information technology industry gains maturity, the number of software systems having moved into maintenance is rapidly growing. Often these systems are also potential candidates for outsourcing. However, adequate information regarding size, complexity, reliability, maintainability etc. of these systems is often missing. This makes the task of estimating maintenance efforts for any such system difficult for the organization owning the systems as well as for a software services vendor bidding to outsource maintenance of the system. This is further compounded by human and management factors related to maintenance activities such as management focus, client attitude, engineers' attitude, the need for multi-location support teams etc. These factors make the problem of objectively estimating software maintenance effort almost intractable. We submit that software maintenance is of equal if not more fundamental importance to the software industry, and has not received the attention it deserves, especially in the context of estimation models. This paper describes a holistic approach towards a study of the factors affecting the effort involved in maintenance of existing software systems. It describes how one could build a systems dynamics model to predict the effort involved to maintain a software system, based on qualitative and qualitative inputs.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Hargreaves:2004:GSD, author = "Elizabeth Hargreaves and Daniela Damian and Filippo Lanubile and James Chisan", title = "Global software development: building a research community", journal = j-SIGSOFT, volume = "29", number = "5", pages = "1--5", month = sep, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1022494.1022502", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:37 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "While the field of global software development (GSD) remains in its relative infancy, a group of GSD researchers are on the brink of building a stronger research community that will be able to collectively address many of the current challenges in the field. This paper details emerging issues in the GSD community while discussing contributions made at the latest GSD workshop held at ICSE 2004. These issues include: the need for community building and increased collaboration between researchers, the importance of more systematic application and documentation of research techniques, and the opportunity to build defined models and theories, and, in doing so, define the state of the practice. Brief summaries of workshop papers are incorporated, along with discussions of the topics addressed during the workshop. These topics include: Feasibility of GSD, Strategies for Success of GSD, and Research Methods and Challenges in GSD.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Wu:2004:MZS, author = "Fangjun Wu and Tong Yi", title = "Measuring Z specifications", journal = j-SIGSOFT, volume = "29", number = "5", pages = "1--5", month = sep, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1022494.1022521", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:37 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Software metrics are useful quantitative indicators to assess and predict software quality attributes; a commonly measured attribute is software complexity. The main drawbacks are: they can only be calculated after a major development effort has been committed to produce the source codes; they cannot provide early feedback during the specification phase; and subsequently it is expensive to make changes to the system, if so indicated by the metrics. To date, there is hardly any work done on measuring the complexity of a system early in its specification phase. In this paper, we describe how the complexity of a Z specification can be measured. We also found that there is a significant correlation between the specification metrics proposed and the widely adopted OO metrics, thus demonstrating that our proposed metrics are a reliable means of measuring the system early in the specification phase.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Kanmani:2004:OOS, author = "S. Kanmani and V. Rhymend Uthariaraj and V. Sankaranarayanan and P. Thambidurai", title = "Object oriented software quality prediction using general regression neural networks", journal = j-SIGSOFT, volume = "29", number = "5", pages = "1--6", month = sep, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1022494.1022515", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:37 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper discusses the application of General Regression Neural Network (GRNN) for predicting the software quality attribute --- fault ratio. This study is carried out using static Object-Oriented (OO) measures (64 in total) as the independent variables and fault ratio as the dependent variable. Software metrics used include those concerning inheritance, size, cohesion and coupling. Prediction models are designed using 15 possible combinations of the four categories of the measures. We also tested the goodness of fit of the neural network model with the standard parameters. Our study is conducted in an academic institution with the software developed by students of Undergraduate/Graduate courses.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Pfahl:2004:RPI, author = "Dietmar Pfahl and David Raffo and Ioana Rus and Paul Wernick", title = "Report on {ProSim'04}: the {5th International Workshop on Software Process Simulation and Modeling}", journal = j-SIGSOFT, volume = "29", number = "5", pages = "1--6", month = sep, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1022494.1022505", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:37 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper reports on the 5th International Workshop on Software Process Simulation and Modeling (ProSim 2004), held in Edinburgh, Scotland, from the 24th to 25th May 2004, co-hosted with the 26th International Conference on Software Engineering (ICSE 2004). Since 1998, ProSim has been a successful international workshop that show-cases the leading research in the software process simulation and modeling domain and attracts many of the leading researchers and industrial practitioners in these areas. In 2004, ProSim attracted more than 30 participants from America, Asia, Australia/New Zealand and Europe. According to the feedback received from participants, the goals of this workshop were fully achieved. The planning of ProSim 2005 has yet been started.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Rotondi:2004:AMP, author = "Guido Rotondi", title = "Assessment methodologies for public contractors", journal = j-SIGSOFT, volume = "29", number = "5", pages = "1--6", month = sep, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1022494.1022520", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:37 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "In recent years, the penalty costs involved in project failures have become a serious issue for the Public Administration budget. The reason of such escalation in contract management costs is twofold: first, the increased application complexity demands for systems with an underlying evolutionary technology; on the other side, the administrative procedures inertia fails to guarantee a sufficient preliminary investigation to design projects. The contract management mechanism adopted in the Public Administration is stiff and subject to strict procedures with bounded requirements. However, the effectiveness of such procedures limits to the extent of preliminary analysis by setting the rules for the competition notice. Very little control is left to the refinement of technical aspects after a tender for contracts has been entrusted. In order to respond to the increased complexity of today computing applications, we propose the introduction of an assessment procedure, which spans the project life cycle, as whole: from the very beginning, to the administrative inquiry, up to the official testing.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Yi:2004:CMU, author = "Tong Yi and Fangjun Wu and Chengzhi Gan", title = "A comparison of metrics for {UML} class diagrams", journal = j-SIGSOFT, volume = "29", number = "5", pages = "1--6", month = sep, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1022494.1022523", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:37 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Currently, more and more research results on measuring class diagrams have been developed in literatures. In order to study these metrics systematically and deeply, this paper analyzes and compares some typical metrics for UML class diagrams from different viewpoints, different types of relationships, different types of metric values, complexity, and theoretical and empirical validation. Finally, the authors discuss their advantages and disadvantages as well as the existing problems and the prospects.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Yi:2004:EAE, author = "Tong Yi and Fangjun Wu", title = "Empirical analysis of entropy distance metric for {UML} class diagrams", journal = j-SIGSOFT, volume = "29", number = "5", pages = "1--6", month = sep, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1022494.1022524", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:37 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Many software systems built in recent years have been developed using the UML and, in some cases, they already need adaptive maintenance in order to satisfy market and customer needs. Thus a strong emphasis on analysis metrics for software development is necessary. Analysis metrics play an important role in helping developers understand software and, hence, improve software quality and developer productivity. In this paper, we provide empirical evidence for supporting the role of the structure complexity metrics for UML class diagrams, specifically Zhou 's metric. Our results, based on data related with bank information system, indicate that the metric is basically consistent with human beings' intuitions.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Choren:2004:SEL, author = "Ricardo Choren and Alessandro Garcia and Carlos Lucena and Martin Griss and David Kung and Naftaly Minsky and Alexander Romanovsky and Jaelson Castro and Rog{\'e}rio de Lemos and Danny Weyns", title = "Software engineering for large-scale multi-agent systems --- {SELMAS 2004}: workshop report", journal = j-SIGSOFT, volume = "29", number = "5", pages = "1--10", month = sep, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1022494.1022507", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:37 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper is intended to sum up the results of the Third International Workshop on Software Engineering for Large-Scale Multi-Agent System (SELMAS 2004) held in Edinburgh, Scotland, May 24--25, 2004, as part of the International Conference on Software Engineering (ICSE 2004). The main purpose of this workshop was to share and pool the collective experience of people, both academics and practitioners, who are actively working on software engineering for large-scale multi-agent systems. The call for papers elicited some 24 submissions, of which 14 papers were accepted for presentation. A set of selected workshop and invited papers are to appear in a Lecture Notes in Computer Science (LNCS, Springer) volume. The workshop consisted of an opening presentation, two keynote talks, four technical sessions of paper presentations, and two panels. During the workshop we informally reviewed ongoing and previous work and debated a number of important issues. The SELMAS 2004 website can be found at http://www.teccomm.les.inf.puc-rio.br/semas2004. We begin by presenting an overview of our goals and the workshop structure, and then focus on the workshop technical program.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Deng:2004:TWD, author = "Yuetang Deng and Phyllis Frankl and Jiong Wang", title = "Testing web database applications", journal = j-SIGSOFT, volume = "29", number = "5", pages = "1--10", month = sep, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1022494.1022528", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:37 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Commercial, scientific, and social activities are increasingly becoming dependent on Web database applications. New testing techniques that handle the unique features of these systems are needed. To that end, we have extended AGENDA, a tool set for testing relational database applications, to test web database applications. Application source code is analyzed to extract relevant information about the URLs and their parameters. This information is used to construct and simplify a graph in which nodes represent URLs and edges represent links between URLs. A set of paths through the graph is selected and test cases are generated for each path. The extracted information about the parameters to each URL (e.g., values that an application user would enter into a form), is used to guide AGENDA to generate inputs for the URLs. The URLs on a path and their inputs are stored in an XML file, which is then automatically executed. The current implementation is targeted toward web applications written as Java Servlets and uses an algorithm based on cyclomatic complexity to generate paths. Preliminary empirically evaluation based on the TPC-W benchmark is presented.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Koshkina:2004:MVW, author = "Mariya Koshkina and Franck van Breugel", title = "Modelling and verifying web service orchestration by means of the concurrency workbench", journal = j-SIGSOFT, volume = "29", number = "5", pages = "1--10", month = sep, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1022494.1022526", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:37 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Verification techniques like model checking, preorder checking and equivalence checking are shown to be relevant to web service orchestration. The Concurrency Workbench of the New Century (CWB) is a verification tool that supports these verification techniques. By means of the Process Algebra Compiler (PAC), the CWB is modified to support the BPE-calculus. The BPE-calculus is a small language, based on BPEL4WS, to express web service orchestration. Both the syntax and the semantics of the BPE-calculus are formally defined. These are subsequently used as input for the PAC. As output, the PAC produces modules that are incorporated into the CWB so that it supports the BPE-calculus and, hence, provides a verification tool for web service orchestration.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Naumovich:2004:SAR, author = "Gleb Naumovich and Paolina Centonze", title = "Static analysis of role-based access control in {J2EE} applications", journal = j-SIGSOFT, volume = "29", number = "5", pages = "1--10", month = sep, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1022494.1022530", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:37 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This work describes a new technique for analysis of Java 2, Enterprise Edition (J2EE) applications. In such applications, Enterprise Java Beans (EJBs) are commonly used to encapsulate the core computations performed on Web servers. Access to EJBs is protected by application servers, according to role-based access control policies that may be created either at development or deployment time. These policies may prohibit some types of users from accessing specific EJB methods. We present a static technique for analyzing J2EE access control policies with respect to security-sensitive fields of EJBs and other server-side objects. Our technique uses points-to analysis to determine which object fields are accessed by which EJB methods, directly or indirectly. Based on this information, J2EE access control policies are analyzed to identify potential inconsistencies that may lead to security holes.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Offutt:2004:GTC, author = "Jeff Offutt and Wuzhi Xu", title = "Generating test cases for web services using data perturbation", journal = j-SIGSOFT, volume = "29", number = "5", pages = "1--10", month = sep, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1022494.1022529", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:37 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Web services have the potential to dramatically reduce the complexities and costs of software integration projects. The most obvious and perhaps most significant difference between Web services and traditional applications is that Web services use a common communication infrastructure, XML and SOAP, to communicate through the Internet. The method of communication introduces complexities to the problems of verifying and validating Web services that do not exist in traditional software. This paper presents a new approach to testing Web services based on data perturbation. Existing XML messages are modified based on rules defined on the message grammars, and then used as tests. Data perturbation uses two methods to test Web services: data value perturbation and interaction perturbation. Data value perturbation modifies values according to the data type. Interaction perturbation classifies the communication messages into two categories: RPC communication and data communication. At present, this method is restricted to peer-to-peer interactions. The paper presents preliminary empirical evidence of its usefulness.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Hall:2004:MII, author = "Robert J. Hall and Andrea Zisman", title = "Model interchange and integration for web services", journal = j-SIGSOFT, volume = "29", number = "5", pages = "1--11", month = sep, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1022494.1022527", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:37 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Large distributed systems are normally developed by combining various nodes that are produced by different stakeholders, using different technologies, languages, and formalisms. An example of this situation is found when developing web services applications. However, the heterogeneity and diversity of existing languages to express behavioral specifications (models) of systems do not support integration, sharing and reuse of models between different validation tools. In this paper we present an XML-based behavioral model interchange format called OpenModel Modeling Language (OMML). OMML is a function rich procedural language in which the functionality and control of the models are expressed procedurally in terms of domain-specific function/object theories. OMML is composed of 5 different document types describing executable specification models of the services running at the nodes, information about connections between the various nodes, information about the (abstract) state of the services, and domain specific information to allow standardisation of the terminology used by model developers. We describe how OMML can be used to support interchange of models in web services applications. We present prototype tools that we have developed to support translation between models expressed in P-EBF, OMML, and SCR and evaluate our approach by validating a web service book finder application composed of models expressed in different languages in the GSTView validation tool.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Xu:2004:BMC, author = "Guoqing Xu and Zongyuan Yang and Haitao Huang", title = "A basic model for components implementation of software architecture", journal = j-SIGSOFT, volume = "29", number = "5", pages = "1--11", month = sep, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1022494.1022522", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:37 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Components defined in software architecture have two features: as basic elements of the architecture, they must conform to the architectural constraints and in the meantime, similar to the common components, they should be designed flexibly enough to be able to be developed independently for the late third party integration. However, these two important issues have always been handled separately from different point of views, which leads to the extra work, confusions in the program structures as well as the difficulty in maintenance. This paper presents a basic model of the architecture-based components implementation to band these two issues together. It firstly describes a novel design pattern, triple-C pattern which stands for {\em Components-Communicate-through-Connector}. This pattern not only emphasizes that implementation must completely conform to the architectural definition, but also attempts to change the fundamental way of components communication with suggesting provided service should be transferred through the connector instead of directly between the client and server components. Second, it describes a novel ADL JCMPL, toolset JCMP and techniques to keep architectural conformance in the implementation as well as support the architectural integration from separate components. Finally, this model is evaluated in a case study.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Aiken:2004:THP, author = "Jason Aiken", title = "Technical and human perspectives on pair programming", journal = j-SIGSOFT, volume = "29", number = "5", pages = "1--14", month = sep, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1022494.1022512", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:37 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Extreme Programming is presented as an answer to problems in software engineering. Extreme Programming is briefly introduced and one of its primary principles, pair programming, is examined more closely. Drawing from readings and Medtronic employee interviews, potential challenges to pair programming are discussed and analyzed. Finally, recommendations for those considering pair programming are suggested.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Oquendo:2004:AAR, author = "Flavio Oquendo", title = "{$ \pi $-ARL}: an architecture refinement language for formally modelling the stepwise refinement of software architectures", journal = j-SIGSOFT, volume = "29", number = "5", pages = "1--20", month = sep, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1022494.1022517", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:37 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "A key aspect of the formal development of any software system is the specification and stepwise refinement of its architecture. In a stepwise refinement, a sequence of steps starting from an abstract specification of the architecture leads to a concrete, implementation-centered, architectural model. Each refinement step typically leads to a more detailed architecture description that increases the determinism while implying properties of the abstract specification. Enabling stepwise architecture refinement is a new challenge for the formal development of complex software systems. This article describes {\pi}-ARL, a novel Architecture Refinement Language (ARL) that has been designed in the ArchWare European Project to address formal refinement of software architectures. It is a formal, well-founded theoretically language based on a rewriting logic. Its underlying approach for architecture refinement is underspecification, i.e. at a high-level of abstraction, when specifying an architectural element, certain aspects can be left open. The decrease of this underspecification establishes behaviour but also port, structure, and data refinement relations. The underlying foundation for architected behaviours is the higher order typed {\pi}-calculus. {\pi}-ARL focuses on formally modelling the stepwise refinement of software architectures through a set of architecture refinement primitives.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Oquendo:2004:FRS, author = "Flavio Oquendo", title = "Formally refining software architectures with {$ \pi $-ARL}: a case study", journal = j-SIGSOFT, volume = "29", number = "5", pages = "1--26", month = sep, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1022494.1022518", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:37 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "{\pi}-ARL is a formal (executable) architecture refinement language providing architecture-centric refinement primitives and constructs for their compositions. When applied, refinement actions expressed in {\pi}-ARL refine architectural models described in {\pi}-ADL outputting new refined models described in {\pi}-ADL. Enabling stepwise architecture refinement is a new challenge for the formal development of complex software systems. This article presents a simple but realistic case study of the use of {\pi}-ARL for architecture refinement. It illustrates the expressiveness and usefulness of {\pi}-ARL. The case study addresses the modelling and refinement of the software architecture of a Data Acquisition System. It covers a simple, yet frequent, architecture refinement that would be problematic for most other refinement techniques. Several refinement steps are performed, each dealing with a simple refinement, in order to achieve a concrete architecture.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Henderson:2004:SEEc, author = "Peter B. Henderson", title = "Software engineering education {(SEEd)}", journal = j-SIGSOFT, volume = "29", number = "5", pages = "12--13", month = sep, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1022494.1022496", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:37 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This column was due on July 10, 2004, the date of my son's wedding [1], so I am a bit behind. Summertime and I will keep this months' column short and focused.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Neumann:2004:RPCc, author = "Peter G. Neumann", title = "Risks to the public in computers and related systems", journal = j-SIGSOFT, volume = "29", number = "5", pages = "13--18", month = sep, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1022494.1022498", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:37 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Edited by Peter G. Neumann (Risks Forum Moderator and Chairman of the ACM Committee on Computers and Public Policy), plus personal contributions by others, as indicated. Opinions expressed are individual rather than organizational, and all of the usual disclaimers apply. We address problems relating to software, hardware, people, and other circumstances that affect computer systems. To economize on space, we tersify most items and include pointers to items in the online Risks Forum: (R i j) denotes RISKS vol i number j. Cited RISKS items generally identify contributors and sources, together with URLs. Official RISKS archives are available at www.risks.org (which redirects to Newcastle and gets you nice html formatting and a search engine courtesy of Lindsay Marshall); http://catless.ncl.ac.uk/Risks/i.j.html gets you (R i j); and at ftp://www.sri.com/risks.A cumulative summary of RISKS and SEN items is available at http://www.CSL.sri.com/neumann/illustrative.html as well as ftp://ftp.csl.sri.com/illustrative.ps and pdf. Please send RISKS-related items to [email protected] Read RISKS as a newsgroup (comp.risks), or subscribe via the automated list server at [email protected] ``Inside Risks'' columns from the Communications of the ACM are also online (http://www.csl.sri.com/neumann/insiderisks.html).", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Doernhoefer:2004:SNSc, author = "Mark Doernhoefer", title = "Surfing the net for {{\booktitle{Software Engineering Notes}}}", journal = j-SIGSOFT, volume = "29", number = "5", pages = "20--28", month = sep, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1022494.1022500", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:37 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Agile methods are one of the most controversial topics in the software development community today. The homepage for this year's Agile Development Conference remarked that one of the purposes of this year's conference was to dispel the notion that agile development methods are ``a bunch of hot air''. And indeed, the amount of hype surrounding this new approach to writing software would lead one to believe that agile methods are long on promises and short on rigor. Even some of the terms surrounding agile methods; Extreme Programming (XP), Crystal, Scrum, etc., seem like they were developed by an advertising agency instead of a software process improvement group.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Beasley:2004:RBO, author = "Charles Beasley", title = "Review of {{\booktitle{Building operational excellence: IT people and best practices}} by Bruce Allen and Dale Kutnic. Intel Press and Addison-Wesley 2001 and 2002}", journal = j-SIGSOFT, volume = "29", number = "5", pages = "35--35", month = sep, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1022494.1022548", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:37 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Frazer:2004:RMS, author = "Ken Frazer", title = "Review of {{\booktitle{Managing software requirements, a use case approach}} by Dean Leffingwell and Don Widrig. Addison-Wesley 2003}", journal = j-SIGSOFT, volume = "29", number = "5", pages = "36--36", month = sep, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1022494.1022549", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:37 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Frazer:2004:RUC, author = "Ken Frazer", title = "Review of {{\booktitle{Use cases, requirements in context}} by Daryl Kulak and Eamon Guiney. Addison-Wesley 2004}", journal = j-SIGSOFT, volume = "29", number = "5", pages = "36--37", month = sep, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1022494.1022550", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:37 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Lawler:2004:RML, author = "Brian Lawler", title = "Review of {{\booktitle{Modernizing legacy systems: software technologies, engineering processes and business practices}} by Robert C. Seacord, Daniel Plakosh and Grace A. Lewis. Addison Wesley 2003}", journal = j-SIGSOFT, volume = "29", number = "5", pages = "37--37", month = sep, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1022494.1022551", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:37 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Ben-Menachem:2004:RCG, author = "Mordechai Ben-Menachem", title = "Review of {{\booktitle{CMMI: guidelines for process integration and product improvement}} by Mary Beth Chrissis, Mike Konrad and Sandy Shrum. Addison Wesley 2003}", journal = j-SIGSOFT, volume = "29", number = "5", pages = "37--38", month = sep, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1022494.1022552", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:37 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Ben-Menachem:2004:RSM, author = "Mordechai Ben-Menachem", title = "Review of {{\booktitle{Software metrics: a guide to planning, analysis and application}} by C. Ravindranath Pandian. Auerbach Publications, CRC Press 2004}", journal = j-SIGSOFT, volume = "29", number = "5", pages = "38--39", month = sep, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1022494.1022553", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:37 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Saur:2004:RSM, author = "Joe Saur", title = "Review of {{\booktitle{SAS{\`O} for Monte Carlo studies: a guide for quantitative researchers}} by Xitao Fan, {\'A}kos Felsvlyi, Stephen A. Sivo, and Sean C. Keenan. SAS Institute, Inc. 2002}", journal = j-SIGSOFT, volume = "29", number = "5", pages = "39--39", month = sep, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1022494.1022554", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:37 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sas.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Saur:2004:RVC, author = "Joe Saur", title = "Review of {{\booktitle{Visualizing categorical data}} by Michael Friendly. SAS Institute, Inc. 2000}", journal = j-SIGSOFT, volume = "29", number = "5", pages = "39--40", month = sep, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1022494.1022555", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:37 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sas.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Weber-Wulff:2004:RRC, author = "Debora Weber-Wulff", title = "Review of {{\booktitle{Requirements by collaboration --- workshops for defining needs}} by Ellen Gottesdiener Addison--Wesley 2002}", journal = j-SIGSOFT, volume = "29", number = "5", pages = "40--40", month = sep, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1022494.1022557", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:37 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Weber-Wulff:2004:RUE, author = "Debora Weber-Wulff", title = "Review of {{\booktitle{UML by example}} by Ghinwa Jalloul. Cambridge University Press 2004}", journal = j-SIGSOFT, volume = "29", number = "5", pages = "40--40", month = sep, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1022494.1022556", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:37 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Tracz:2004:RMS, author = "Will Tracz", title = "Review of {{\booktitle{Managing software for growth: without fear, control, and the manufacturing mindset}} by Roy Miller. Addison-Wesley 2003}", journal = j-SIGSOFT, volume = "29", number = "5", pages = "40--41", month = sep, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1022494.1022558", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:37 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Tracz:2004:RAE, author = "Will Tracz", title = "Review of {{\booktitle{Architecting enterprise solutions: patterns for high-capability Internet based systems}} by Paul Dyson and Andy Longshaw. John Wiley and Sons, Ltd. 2004}", journal = j-SIGSOFT, volume = "29", number = "5", pages = "41--41", month = sep, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1022494.1022559", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:37 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Tracz:2004:RIP, author = "Will Tracz", title = "Review of {{\booktitle{IT project estimation: a practical guide to costing of software}} by Paul Coombs. Cambridge University Press 2003}", journal = j-SIGSOFT, volume = "29", number = "5", pages = "41--41", month = sep, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1022494.1022560", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:37 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{staff:2004:BRA, author = "{ACM SIGSOFT Software Engineering Notes Staff}", title = "Backmatter (Report abstracts, Paper abstracts, Calendar of Future Events, Call for Participation, Keynotes, Workshops, Tutorials)", journal = j-SIGSOFT, volume = "29", number = "5", pages = "42", month = sep, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1022494.1022576", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:37 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{staff:2004:FCT, author = "{ACM SIGSOFT Software Engineering Notes Staff}", title = "Frontmatter (cover, title page, copyright, foreword, contents, organization)", journal = j-SIGSOFT, volume = "29", number = "6", pages = "0", month = nov, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1041685.1057985", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:41 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Wolf:2004:SER, author = "Alexander L. Wolf", title = "Is security engineering really just good software engineering?", journal = j-SIGSOFT, volume = "29", number = "6", pages = "1--1", month = nov, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1041685.1029895", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:41 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "These days, if you say that you are doing research in the area of computer security you instantly receive attention. Sadly, the same cannot be said of software engineering. But are the two areas really so different? Both seem to be concerned with issues that range from the finely technical to the broadly social and that force us to make difficult tradeoffs among cost, performance, quality, and usability. Both seem to require that we conduct our research in an interdisciplinary context. In the end we realize that fully solving the security problem for ever larger and more complex systems is as intractable as fully solving the traditional software engineering problem. In this talk I will attempt to relate the challenges of security engineering and software engineering, and will argue that security engineering is more of a software engineering problem than many people would like to admit.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Egyed:2004:RUD, author = "Alexander Egyed", title = "Resolving uncertainties during trace analysis", journal = j-SIGSOFT, volume = "29", number = "6", pages = "3--12", month = nov, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1041685.1029899", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:41 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Software models provide independent perspectives onto software systems. Ideally, all models should use the same model element to describe the same part of a system. Practically, models elements are not shared because of syntactic and semantic differences among modeling notations. Trace dependencies explicitly maintain the commonalities among the distinct model elements. Generating and maintaining trace dependencies is difficult, costly, and highly error-prone. Automated trace analysis techniques are scarce. This paper extends an existing, testing-based technique for generating and maintaining trace dependencies. It is based on the commonality principle: if two model elements of different perspectives are the same then they must have the same source code. The existing approach associates test scenarios with model elements, tests them, and observes what lines of code are being executed. Model elements are considered the same/similar if their testing uses the same/overlapping lines of code. This paper extends the existing approach (and tool) by giving the user a richer, more powerful, yet precise language on how to relate model elements, test scenarios, and source code (the input). This allows some forms of uncertainties to exist in input data without sacrificing reliability. The extended approach also identifies ``shared code.'' Shared code works against the commonality principle in that model elements do not relate if they overlap solely on their use of generic source code (e.g., queue). As a pre-requisite, our approach requires an executable and observable software system and test scenarios.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Dingel:2004:ACS, author = "Juergen Dingel and Hongzhi Liang", title = "Automating comprehensive safety analysis of concurrent programs using {Verisoft} and {TXL}", journal = j-SIGSOFT, volume = "29", number = "6", pages = "13--22", month = nov, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1041685.1029900", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:41 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "In run-time safety analysis the executions of a concurrent program are monitored and analyzed with respect to safety properties. Similar to testing, run-time analysis is quite efficient, but it also tends to be incomplete. The results pertain only to the observed executions which may constitute just a small subset of all possible executions. In this paper, we describe a tool called ViP which uses the software model checker VeriSoft to perform comprehensive run-time safety analyses of concurrent C/C++ programs. A ViP analysis proceeds in three fully automated steps: First, the input program is prepared for a VeriSoft analysis through instrumentation. Next, VeriSoft is invoked to generate the traces corresponding to all possible executions of the program. Then, the traces are checked efficiently for specification violations. The instrumentation is based on the source code transformation language TXL. TXL allows for the instrumentation to be described in terms of rewrite rules and gives ViP a remarkable amount of flexibility. The paper describes ViP together with its use of VeriSoft and TXL. Several sample analyses are discussed to illustrate the use of ViP.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Perkins:2004:EIA, author = "Jeff H. Perkins and Michael D. Ernst", title = "Efficient incremental algorithms for dynamic detection of likely invariants", journal = j-SIGSOFT, volume = "29", number = "6", pages = "23--32", month = nov, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1041685.1029901", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:41 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Dynamic detection of likely invariants is a program analysis that generalizes over observed values to hypothesize program properties. The reported program properties are a set of likely invariants over the program, also known as an operational abstraction. Operational abstractions are useful in testing, verification, bug detection, refactoring, comparing behavior, and many other tasks. Previous techniques for dynamic invariant detection scale poorly or report too few properties. Incremental algorithms are attractive because they process each observed value only once and thus scale well with data sizes. Previous incremental algorithms only checked and reported a small number of properties. This paper takes steps toward correcting this problem. The paper presents two new incremental algorithms for invariant detection and compares them analytically and experimentally to two existing algorithms. Furthermore, the paper presents four optimizations and shows how to implement them in the context of incremental algorithms. The result is more scalable invariant detection that does not sacrifice functionality.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Uchitel:2004:SAC, author = "Sebastian Uchitel and Robert Chatley and Jeff Kramer and Jeff Magee", title = "System architecture: the context for scenario-based model synthesis", journal = j-SIGSOFT, volume = "29", number = "6", pages = "33--42", month = nov, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1041685.1029903", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:41 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Constructing rigorous models for analysing the behaviour of concurrent and distributed systems is a complex task. Our aim is to facilitate model construction. Scenarios provide simple, intuitive, example based descriptions of the behaviour of component instances in the context of a simplified architecture instance. The specific architecture instance is generally chosen to provide sufficient context to indicate the expected behaviour of particular instances of component types to be used in the real system. Existing synthesis techniques provide mechanisms for building behaviour models for these simplified and specific architectural settings. However, the behaviour models required are those for the full generality of the system architecture, and not the simplified architecture used for scenarios. In this paper we exploit architectural information in the context of behaviour model synthesis from scenarios. Software architecture descriptions give the necessary contextual information so that component instance behaviour can be generalised to component type behaviour. Furthermore, architecture description languages can be used to describe the complex architectures in which the generalised behaviours need to be instantiated. Thus, architectural information used in conjunction with scenario-based model synthesis can support both model construction and elaboration, where the behaviour derived from simple architecture fragments can be instantiated in more complex ones.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Uchitel:2004:MPB, author = "Sebastian Uchitel and Marsha Chechik", title = "Merging partial behavioural models", journal = j-SIGSOFT, volume = "29", number = "6", pages = "43--52", month = nov, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1041685.1029904", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:41 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Constructing comprehensive operational models of intended system behaviour is a complex and costly task. Consequently, practitioners have adopted techniques that support incremental elaboration of partial behaviour descriptions. A noteworthy example is the wide adoption of scenario-based notations such as message sequence charts. Scenario-based specifications are partial descriptions that can be incrementally elaborated to cover the system behaviour that is of interest. However, how should partial behavioural models described by different stakeholders with different viewpoints covering different aspects of behaviour be composed? How should partial models of component instances of the same type be put together. In this paper, we propose model merging as a general solution to these questions. We formally define model merging based on observational refinement and show that merging consistent models is a process that should result in a minimal common refinement. Because minimal common refinements are not guaranteed to be unique, we argue that the modeller should participate in the process of elaborating such a model. We also discuss the role of the least common refinement and the greatest lower bound of all minimal common refinements in this elaboration process. In addition, we provide algorithms for (i) checking consistency between two models; (ii) constructing their least common refinement if one exists; (iii) supporting the construction of a minimal common refinement if there is no least common refinement.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Letier:2004:RAP, author = "Emmanuel Letier and Axel van Lamsweerde", title = "Reasoning about partial goal satisfaction for requirements and design engineering", journal = j-SIGSOFT, volume = "29", number = "6", pages = "53--62", month = nov, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1041685.1029905", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:41 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Exploring alternative options is at the heart of the requirements and design processes. Different alternatives contribute to different degrees of achievement of non-functional goals about system safety, security, performance, usability, and so forth. Such goals in general cannot be satisfied in an absolute, clear-cut sense. Various qualitative and quantitative frameworks have been proposed to support the assessment of alternatives for design decision making. In general they lead to limited conclusions due to the lack of accuracy and measurability of goal formulations and the lack of impact propagation rules along goal contribution links. The paper presents techniques for specifying partial degrees of goal satisfaction and for quantifying the impact of alternative system designs on the degree of goal satisfaction. The approach consists in enriching goal refinement models with a probabilistic layer for reasoning about partial satisfaction. Within such models, non-functional goals are specified in a precise, probabilistic way; their specification is interpreted in terms of application-specific measures; impact of alternative goal refinements is evaluated in terms of refinement equations over random variables involved in the system's functional goals. A systematic method is presented for guiding the elaboration of such models. The latter can then be used to assess the impact of alternative decisions on the degree of goal satisfaction or to derive quantitative, fine-grained requirements on the software to achieve the higher-level goals.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Manevich:2004:PEP, author = "Roman Manevich and Manu Sridharan and Stephen Adams and Manuvir Das and Zhe Yang", title = "{PSE}: explaining program failures via postmortem static analysis", journal = j-SIGSOFT, volume = "29", number = "6", pages = "63--72", month = nov, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1041685.1029907", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:41 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "In this paper, we describe PSE (Postmortem Symbolic Evaluation), a static analysis algorithm that can be used by programmers to diagnose software failures. The algorithm requires minimal information about a failure, namely its kind (e.g. NULL dereference), and its location in the program's source code. It produces a set of execution traces along which the program can be driven to the given failure. PSE tracks the flow of a single value of interest from the point in the program where the failure occurred back to the points in the program where the value may have originated. The algorithm combines a novel dataflow analysis and memory alias analysis in a manner that allows for precise exploration of the program's behavior in polynomial time. We have applied PSE to the problem of diagnosing potential NULL-dereference errors in a suite of C programs, including several SPEC benchmarks and a large commercial operating system. In most cases, the analysis is able to either validate a pointer dereference, or find precise error traces demonstrating a NULL value for the pointer, in less than a second.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Chaki:2004:EAC, author = "Sagar Chaki and Alex Groce and Ofer Strichman", title = "Explaining abstract counterexamples", journal = j-SIGSOFT, volume = "29", number = "6", pages = "73--82", month = nov, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1041685.1029908", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:41 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "When a program violates its specification a model checker produces a counterexample that shows an example of undesirable behavior. It is up to the user to understand the error, locate it, and fix the problem. Previous work introduced a technique for explaining and localizing errors based on finding the closest execution to a counterexample, with respect to a distance metric. That approach was applied only to concrete executions of programs. This paper extends and generalizes the approach by combining it with predicate abstraction. Using an abstract state-space increases scalability and makes explanations more informative. Differences between executions are presented in terms of predicates derived from the specification and program, rather than specific changes to variable values. Reasoning to the cause of an error from the fact that in the failing run $ x < y $, but in the successful execution $ x = y $ is easier than reasoning from the information that in the failing run $ y = 239 $, but in the successful execution $ y = 232 $. An abstract explanation is ``automatically generalized'' Predicate abstraction has previously been used in model checking purely as a state-space reduction technique. However, an abstraction good enough to enable a model checking tool to find an error is also likely to be useful as an ``automatically generated high-level description of a state space'' --- suitable for use by programmers. Results demonstrating the effectiveness of abstract explanations support this claim.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Kremenek:2004:CEE, author = "Ted Kremenek and Ken Ashcraft and Junfeng Yang and Dawson Engler", title = "Correlation exploitation in error ranking", journal = j-SIGSOFT, volume = "29", number = "6", pages = "83--93", month = nov, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1041685.1029909", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:41 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Static program checking tools can find many serious bugs in software, but due to analysis limitations they also frequently emit false error reports. Such false positives can easily render the error checker useless by hiding real errors amidst the false. Effective error report ranking schemes mitigate the problem of false positives by suppressing them during the report inspection process [17, 19, 20]. In this way, ranking techniques provide a complementary method to increasing the precision of the analysis results of a checking tool. A weakness of previous ranking schemes, however, is that they produce static rankings that do not adapt as reports are inspected, ignoring useful correlations amongst reports. This paper addresses this weakness with two main contributions. First, we observe that both bugs and false positives frequently cluster by code locality. We analyze clustering behavior in historical bug data from two large systems and show how clustering can be exploited to greatly improve error report ranking. Second, we present a general probabilistic technique for error ranking that (1) exploits correlation behavior amongst reports and (2) incorporates user feedback into the ranking process. In our results we observe a factor of 2-8 improvement over randomized ranking for error reports emitted by both intra-procedural and inter-procedural analysis tools.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Marks:2004:UPH, author = "Joe Marks", title = "The usability problem for home appliances: engineers caused it, engineers can fix it!", journal = j-SIGSOFT, volume = "29", number = "6", pages = "95--95", month = nov, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1041685.1029896", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:41 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Ordinary people already have great difficulty using the advanced features of digitally enabled household appliances, and the problem grows worse with time as more customization and programming features are added. This usability problem cannot be solved using the tiny displays and limited control buttons typically found on such devices. In this talk I will describe a new type of collaborative interface in which the appliance actively helps the user, especially with complex features that are only used occasionally. This interface provides a consistent and pervasive mechanism for answering the who-what-where-when-why-how questions that often cause users to consult a manual, call a help line, or simply give up. A crucial aspect of the interface architecture is the use of home networking to share a physically large and computationally powerful display among multiple appliances. Why is this a relevant talk for a software-engineering conference? A contributing factor to the usability crisis is the dominance of engineers in product design at many companies. The development of more-usable devices requires a broader conception of engineering that includes interaction design, artificial intelligence, and human factors --- at a minimum. I will describe how these disciplines can complement traditional electrical and software engineering in the context of attempting to solve a commercially significant real-world problem.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Zitser:2004:TSA, author = "Misha Zitser and Richard Lippmann and Tim Leek", title = "Testing static analysis tools using exploitable buffer overflows from open source code", journal = j-SIGSOFT, volume = "29", number = "6", pages = "97--106", month = nov, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1041685.1029911", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:41 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/gnu.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Five modern static analysis tools (ARCHER, BOON, Poly-Space C Verifier, Splint, and UNO) were evaluated using source code examples containing 14 exploitable buffer overflow vulnerabilities found in various versions of Sendmail, BIND, and WU-FTPD. Each code example included a ``BAD'' case with and a ``OK'' case without buffer overflows. Buffer overflows varied and included stack, heap, bss and data buffers; access above and below buffer bounds; access using pointers, indices, and functions; and scope differences between buffer creation and use. Detection rates for the ``BAD'' examples were low except for Poly-Space and Splint which had average detection rates of 87\% and 57\%, respectively. However, average false alarm rates were high and roughly 50\% for these two tools. On patched programs these two tools produce one warning for every 12 to 46 lines of source code and neither tool appears able to accurately distinguished between vulnerable and patched code.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Capra:2004:EHT, author = "Licia Capra", title = "Engineering human trust in mobile system collaborations", journal = j-SIGSOFT, volume = "29", number = "6", pages = "107--116", month = nov, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1041685.1029912", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:41 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Rapid advances in wireless networking technologies have enabled mobile devices to be connected anywhere and anytime. While roaming, applications on these devices dynamically discover hosts and services with whom interactions can be started. However, the fear of exposure to risky transactions with potentially unknown entities may seriously hinder collaboration. To minimise this risk, an engineering approach to the development of trust-based collaborations is necessary. This paper introduces hTrust, a human trust management model and framework that facilitates the construction of trust-aware mobile systems and applications. In particular, hTrust supports: reasoning about trust (trust formation), dissemination of trust information in the network (trust dissemination), and derivation of new trust relationships from previously formed ones (trust evolution). The framework views each mobile host as a self-contained unit, carrying along a portfolio of credentials that are used to prove its trustworthiness to other hosts in an ad-hoc mobile environment. Customising functions are defined to capture the natural disposition to trust of the user of the device inside our trust management framework.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Xu:2004:EBC, author = "Wei Xu and Daniel C. DuVarney and R. Sekar", title = "An efficient and backwards-compatible transformation to ensure memory safety of C programs", journal = j-SIGSOFT, volume = "29", number = "6", pages = "117--126", month = nov, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1041685.1029913", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:41 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Memory-related errors, such as buffer overflows and dangling pointers, remain one of the principal reasons for failures of C programs. As a result, a number of recent research efforts have focused on the problem of dynamic detection of memory errors in C programs. However, existing approaches suffer from one or more of the following problems: inability to detect all memory errors (e.g., Purify), requiring non-trivial modifications to existing C programs (e.g., Cyclone), changing the memory management model of C to use garbage collection (e.g., CCured), and excessive performance overheads. In this paper, we present a new approach that addresses these problems. Our approach operates via source code transformation and combines efficient data-structures with simple, localized optimizations to obtain good performance.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Mezini:2004:VMF, author = "Mira Mezini and Klaus Ostermann", title = "Variability management with feature-oriented programming and aspects", journal = j-SIGSOFT, volume = "29", number = "6", pages = "127--136", month = nov, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1041685.1029915", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:41 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper presents an analysis of feature-oriented and aspect-oriented modularization approaches with respect to variability management as needed in the context of system families. This analysis serves two purposes. On the one hand, our analysis of the weaknesses of feature-oriented approaches (FOAs for short) emphasizes the importance of crosscutting modularity as supported by the aspect-oriented concepts of pointcut and advice. On the other hand, by pointing out some of AspectJ's weaknesses and by demonstrating how Caesar, a language which combines concepts from both AspectJ and FOAs, is more effective in this context, we also demonstrate the power of appropriate support for layer modules.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Krishnamurthi:2004:VAA, author = "Shriram Krishnamurthi and Kathi Fisler and Michael Greenberg", title = "Verifying aspect advice modularly", journal = j-SIGSOFT, volume = "29", number = "6", pages = "137--146", month = nov, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1041685.1029916", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:41 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Aspect-oriented programming has become an increasingly important means of expressing cross-cutting program abstractions. Despite this, aspects lack support for computer-aided verification. We present a technique for verifying aspect-oriented programs (expressed as state machines). Our technique assumes that the set of pointcut designators is known statically, but that the actual advice can vary. This calls for a modular technique that does not require repeated analysis of the entire system every time a developer changes advice. We present such an analysis, addressing several subtleties that arise. We also present an important optimization for handling multiple pointcut designators. We have implemented a prototype verifier and applied it to some simple but interesting cases.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Rinard:2004:CSA, author = "Martin Rinard and Alexandru Salcianu and Suhabe Bugrara", title = "A classification system and analysis for aspect-oriented programs", journal = j-SIGSOFT, volume = "29", number = "6", pages = "147--158", month = nov, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1041685.1029917", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:41 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "We present a new classification system for aspect-oriented programs. This system characterizes the interactions between aspects and methods and identifies classes of interactions that enable modular reasoning about the crosscut program. We argue that this system can help developers structure their understanding of aspect-oriented programs and promotes their ability to reason productively about the consequences of crosscutting a program with a given aspect. We have designed and implemented a program analysis system that automatically classifies interactions between aspects and methods and have applied this analysis to a set of benchmark programs. We found that our analysis is able to (1) identify interactions with desirable properties (such as lack of interference), (2) identify potentially problematic interactions (such as interference caused by the aspect and the method both writing the same field), and (3) direct the developer's attention to the causes of such interactions.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Walker:2004:IPD, author = "Robert J. Walker and Kevin Viggers", title = "Implementing protocols via declarative event patterns", journal = j-SIGSOFT, volume = "29", number = "6", pages = "159--169", month = nov, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1041685.1029918", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:41 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper introduces declarative event patterns (DEPs) as a means to implement protocols while improving their traceability, comprehensibility, and maintainability. DEPs are descriptions of sequences of events in the execution of a system that include the ability to recognize properly nested event structures. DEPs allow a developer to describe a protocol at a high-level, without the need to express extraneous details. A developer can indicate that specific actions be taken when a given pattern occurs. DEPs are automatically translated into the appropriate instrumentation and automaton for recognizing a given pattern. Support for DEPs has been implemented in a proof-of-concept extension to the AspectJ language that is based on advanced compiler technology. A case study is described that compares the use of DEPs in the implementation of a protocol (FTP user authentication) to the use of a set of other approaches, both object-oriented and aspect-oriented.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Leveson:2004:MES, author = "Nancy G. Leveson and Kathryn Anne Weiss", title = "Making embedded software reuse practical and safe", journal = j-SIGSOFT, volume = "29", number = "6", pages = "171--178", month = nov, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1041685.1029897", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:41 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Reuse of application software has been limited and sometimes has led to accidents. This paper suggests some requirements for successful and safe application software reuse and demonstrates them using a case study on a real spacecraft.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Giese:2004:MDV, author = "Holger Giese and Sven Burmester and Wilhelm Sch{\"a}fer and Oliver Oberschelp", title = "Modular design and verification of component-based mechatronic systems with online-reconfiguration", journal = j-SIGSOFT, volume = "29", number = "6", pages = "179--188", month = nov, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1041685.1029920", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:41 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The development of complex mechatronic systems requires a careful and ideally verifiable design. In addition, engineers from different disciplines, namely mechanical, electrical and software engineering, have to cooperate. The current technology is to use block diagrams including discrete blocks with statecharts for the design and verification of such systems. This does not adequately support the verification of large systems which improve the system behavior at run-time by means of online reconfiguration of its controllers because the system as whole has to be verified. It also does not support cooperative interdisciplinary work because a white-box view on all blocks involved in the online reconfiguration is required. This paper proposes a rigorous component concept based on the notion of UML component diagrams which enables modular composition and decomposition of complex systems with online reconfiguration given by hierarchical hybrid component specifications. The approach enables compatibility checks between components that are often independently developed (across the different disciplines) and supports compositional model checking based on a rigorously defined semantics.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Edwards:2004:TSO, author = "Jonathan Edwards and Daniel Jackson and Emina Torlak", title = "A type system for object models", journal = j-SIGSOFT, volume = "29", number = "6", pages = "189--199", month = nov, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1041685.1029921", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:41 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "A type system for object models is described that supports subtyping, unions, and overloading of relation names. No special features need be added to the modelling language; in particular, there are no casts, and the meaning of an object model can be understood without mentioning types. A type error is associated with an expression that can be proved to be {\em irrelevant}, in the sense that it can be replaced by an empty set or relation without affecting the value of its enclosing constraint. Relevance is computed by a simple abstract interpretation.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Tan:2004:HGC, author = "Jianbin Tan and George S. Avrunin and Lori A. Clarke and Shlomo Zilberstein and Stefan Leue", title = "Heuristic-guided counterexample search in {FLAVERS}", journal = j-SIGSOFT, volume = "29", number = "6", pages = "201--210", month = nov, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1041685.1029922", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:41 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "One of the benefits of finite-state verification (FSV) tools, such as model checkers, is that a counterexample is provided when the property cannot be verified. Not all counterexamples, however, are equally useful to the analysts trying to understand and localize the fault. Often counterexamples are so long that they are hard to understand. Thus, it is important for FSV tools to find short counterexamples and to do so quickly. Commonly used search strategies, such as breadth-first and depth-first search, do not usually perform well in both of these dimensions. In this paper, we investigate heuristic-guided search strategies for the FSV tool FLAVERS and propose a novel two-stage counterexample search strategy. We describe an experiment showing that this two-stage strategy, when combined with appropriate heuristics, is extremely effective at quickly finding short counterexamples for a large set of verification problems.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Pan:2004:RBS, author = "Ying Pan and Lei Wang and Lu Zhang and Bing Xie and Fuqing Yang", title = "Relevancy based semantic interoperation of reuse repositories", journal = j-SIGSOFT, volume = "29", number = "6", pages = "211--220", month = nov, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1041685.1029924", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:41 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Software reuse is a promising solution to the software crisis. Reuse repositories are the basic infrastructure for software reuse. During the past decade, various academic, commercial, governmental, and industrial organizations have developed many Internet-enabled reuse repositories to provide access to software components and related resources. It has necessitated semantic interoperation to allow distributed maintenance and management of these repositories while enabling users to efficiently and conveniently access resources from multiple reuse repositories via a single representation view. In this paper, we have proposed an approach to enhancing the semantic interoperability of reuse repositories, called the improved relevancy matching and ranking (IRMR) method, based on analyzing the correlation of terms in representation methods of the repositories. A prototype system, the Virtual Repository supporting Semantic Interoperation (VRSI), is presented to illustrate the application of this approach to support the semantic interoperation of reuse repositories. Experimental results on real world reuse repositories demonstrated significant improvement in terms of searching effectiveness.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{deSouza:2004:HGS, author = "Cleidson R. B. de Souza and David Redmiles and Li-Te Cheng and David Millen and John Patterson", title = "How a good software practice thwarts collaboration: the multiple roles of {APIs} in software development", journal = j-SIGSOFT, volume = "29", number = "6", pages = "221--230", month = nov, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1041685.1029925", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:41 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The principle of information hiding has been very influential in software engineering since its inception in 1972. This principle prescribes that software modules hide implementation details from other modules in order to decrease their interdependencies. This separation also decreases the dependency among software developers implementing modules, thus simplifying some aspects of collaboration. A common instantiation of this principle is in the form of application programming interfaces (APIs). We performed a qualitative study on how practitioners use APIs in their daily work. Although particularly interested in aspects of collaboration, we report all findings about their observed use. The findings include mundane observations that are predicted by theory, ways that APIs support collaborative software development. But the findings also include some surprises, ways that APIs hinder collaboration. The surprises indicate directions for further improvement of collaborative software development practices and tools.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Zhang:2004:RCD, author = "Xiaofang Zhang and Michal Young and John H. E. F. Lasseter", title = "Refining code-design mapping with flow analysis", journal = j-SIGSOFT, volume = "29", number = "6", pages = "231--240", month = nov, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1041685.1029926", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:41 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "We address the problem of refining and completing a partially specified high-level design model and a partially-defined mapping from source code to design model. This is related but not identical to tasks that have been automated with a variety of reverse engineering tools to support software modification tasks. We posited that set-based flow analysis algorithms would provide a convenient and powerful basis for refining an initial rough model and partial mapping, and in particular that the ability to compute fixed points of set equations would be useful in propagating constraints on the relations among the model, the mapping, and facts extracted from the implementation. Here we report our experience applying this approach to a modest but realistic example problem. We were successful in expressing a variety of useful transformations very succinctly as flow equations, and the propagation of recursively-defined constraints was indeed useful in refining the mapping from implementation to model. On the other hand, our experience highlights remaining challenges to make this an attractive approach for general use. Special measures are required to identify and remove inconsistent constraints before they propagate through a system. Also, while the required flow equations are succinct, they are also rather opaque; it is not obvious how their expressive power might be preserved in a more accessible notation.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Orso:2004:SRT, author = "Alessandro Orso and Nanjuan Shi and Mary Jean Harrold", title = "Scaling regression testing to large software systems", journal = j-SIGSOFT, volume = "29", number = "6", pages = "241--251", month = nov, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1041685.1029928", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:41 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "When software is modified, during development and maintenance, it is ``regression tested'' to provide confidence that the changes did not introduce unexpected errors and that new features behave as expected. One important problem in regression testing is how to select a subset of test cases, from the test suite used for the original version of the software, when testing a modified version of the software. Regression-test-selection techniques address this problem. Safe regression-test-selection techniques select every test case in the test suite that may behave differently in the original and modified versions of the software. Among existing safe regression testing techniques, efficient techniques are often too imprecise and achieve little savings in testing effort, whereas precise techniques are too expensive when used on large systems. This paper presents a new regression-test-selection technique for Java programs that is safe, precise, and yet scales to large systems. It also presents a tool that implements the technique and studies performed on a set of subjects ranging from 70 to over 500 KLOC. The studies show that our technique can efficiently reduce the regression testing effort and, thus, achieve considerable savings.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Suarez-Cabal:2004:USC, author = "Mar{\'\i}a Jos{\'e} Su{\'a}rez-Cabal and Javier Tuya", title = "Using an {SQL} coverage measurement for testing database applications", journal = j-SIGSOFT, volume = "29", number = "6", pages = "253--262", month = nov, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1041685.1029929", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:41 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Many software applications have a component based on database management systems in which information is generally handled through SQL queries embedded in the application code. When automation of software testing is mentioned in the research, this is normally associated with programs written in imperative and structured languages. However, the problem of automated software testing applied to programs that manage databases using SQL is still an open issue. This paper presents a measurement of the coverage of SQL queries and the tool that automates it. We also show how database test data may be revised and changed using this measurement by means of completing or deleting information to achieve the highest possible value of coverage of queries that have access to the database.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Li:2004:EED, author = "Paul Luo Li and Mary Shaw and Jim Herbsleb and Bonnie Ray and P. Santhanam", title = "Empirical evaluation of defect projection models for widely-deployed production software systems", journal = j-SIGSOFT, volume = "29", number = "6", pages = "263--272", month = nov, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1041685.1029930", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:41 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Defect-occurrence projection is necessary for the development of methods to mitigate the risks of software defect occurrences. In this paper, we examine user-reported software defect-occurrence patterns across twenty-two releases of four widely-deployed, business-critical, production, software systems: a commercial operating system, a commercial middleware system, an open source operating system (OpenBSD), and an open source middleware system (Tomcat). We evaluate the suitability of common defect-occurrence models by first assessing the match between characteristics of widely-deployed production software systems and model structures. We then evaluate how well the models fit real world data. We find that the Weibull model is flexible enough to capture defect-occurrence behavior across a wide range of systems. It provides the best model fit in 16 out of the 22 releases. We then evaluate the ability of the moving averages and the exponential smoothing methods to extrapolate Weibull model parameters using fitted model parameters from historical releases. Our results show that in 50\% of our forecasting experiments, these two naive parameter-extrapolation methods produce projections that are worse than the projection from using the same model parameters as the most recent release. These findings establish the need for further research on parameter-extrapolation methods that take into account variations in characteristics of widely-deployed, production, software systems across multiple releases.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{staff:2004:BAI, author = "{ACM SIGSOFT Software Engineering Notes Staff}", title = "Backmatter (author index)", journal = j-SIGSOFT, volume = "29", number = "6", pages = "273", month = nov, year = "2004", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1041685.1057987", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:41 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{staff:2005:FTLa, author = "{ACM SIGSOFT Software Engineering Notes Staff}", title = "Frontmatter ({TOC}, Letters, {ICSE} news, {ICSM}, {RODIN})", journal = j-SIGSOFT, volume = "30", number = "1", pages = "0", month = jan, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1039174.1057981", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:47 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Bhansali:2005:CMD, author = "P. V. Bhansali", title = "Complexity measurement of data and control flow", journal = j-SIGSOFT, volume = "30", number = "1", pages = "1", month = jan, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1039174.1039191", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:47 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper describes a simple mathematical algorithm to determine the complexity of software that includes control flow and data flow. Two techniques are analyzed using examples to determine the overall complexity. One of them computes the determinant of a square matrix represented as an N2 chart. The other technique that is new and proposed in this paper computes the sum of products of control flow and data flow. It is shown that the determinant value fluctuates randomly whereas the new sum of product is a monotonic function that increases systematically with increasing complexity. This complexity number can be used to determine the amount of effort (cost and time) required for development and verification of software and whether or not the software can be deployed to perform safety-critical functions with high assurance.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Cheng:2005:WWW, author = "Shang-Wen Cheng and Robert L. Nord and Judith A. Stafford", title = "{WICSA Wiki WAN} Party: capturing experience in software architecture best practices", journal = j-SIGSOFT, volume = "30", number = "1", pages = "1", month = jan, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1039174.1039185", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:47 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Researchers, practitioners, educators, and students of software architecture would benefit from having online access to quality information about the state of research and practice of software architecture. In recent years, Wiki technology has enabled distributed and collaborative editing of content using only a Web browser. To explore whether Wiki technology would be effective in facilitating the ongoing discussion and evolution of ideas on software architecture, we hosted the WICSA Wiki WAN Party (WWWP) during the 4th Working IEEE/IFIP Conference on Software Architecture (WICSA 2004). We used a history tool developed at IBM Research to monitor site activity and provide daily feedback to conference participants. This report recounts experience hosting this Wiki site and summarizes the site activity.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Bhansali:2005:SDD, author = "P. V. Bhansali", title = "Software dissimilarity debate revisited", journal = j-SIGSOFT, volume = "30", number = "1", pages = "2", month = jan, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1039174.1039192", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:47 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper highlights the controversy surrounding the use of dissimilarity for improved safety. It compares dissimilarity at the system level versus software level and uses examples from the commercial and military safety-critical standards to highlight this controversy. It proposes a solution by identifying those systems which can find dissimilarity beneficial and those that may find dissimilarity detrimental regardless of whether dissimilarity is implemented at the system level or at the software level. Practical examples are cited to highlight how these concepts can be used in the real-world.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Giese:2005:SIW, author = "Holger Giese and Ingolf Kr{\"u}ger", title = "A summary of the {ICSE 2004 Workshop on ``Scenarios and State Machines: Models, Algorithms, and Tools''}", journal = j-SIGSOFT, volume = "30", number = "1", pages = "2", month = jan, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1039174.1039186", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:47 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This summary reports on the third workshop in the SCESM (SCEnarios and State Machines) series held at the International Conference on Software Engineering (ICSE) in 2004 in Edinburgh, Scotland. SCESM'04 continues the very successful preceding workshops on this topic, which include a workshop on scenario based round-trip engineering at OOPSLA 2000, two SCESM workshops at ICSE 2002 [1] and ICSE 2003 [2], and a Dagstuhl Seminar in September 2003 [3]. SCESM'04 has followed this tradition and brought together researchers and practitioners interested in advancing models, algorithms and tools for scenario- and state-oriented approaches to software and systems engineering.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Bhansali:2005:SSC, author = "P. V. Bhansali", title = "Software safety: current status and future direction", journal = j-SIGSOFT, volume = "30", number = "1", pages = "3", month = jan, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1039174.1039193", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:47 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper describes the current status of software safety in terms of research and existing standards. It highlights the differences between various standards set up by government agencies to accomplish the same safety objectives. For example, European standards tend to place more emphasis on static analysis whereas American standards prefer dynamic testing to verify the software. An optimal verification approach is still a debatable issue in the software safety community. As for future direction, the author believes that the key to making safer and cheaper software is to have better requirements validation that ensure that the requirements are correct and complete before the design and coding phases begin.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{deLemos:2005:IWAa, author = "Rog{\'e}rio de Lemos and Cristina Gacek and Alexander Romanovsky", title = "{ICSE 2004 Workshop on Architecting Dependable Systems}", journal = j-SIGSOFT, volume = "30", number = "1", pages = "3", month = jan, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1039174.1039187", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:47 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This summary gives a brief overview of a one-day Workshop on Architecting Dependable Systems (WADS) held in conjunction with ICSE 2004. It was organised as a twin workshop with a Workshop held in conjunction with the International Conference on Dependable Systems and Network (DSN 2004).", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Hassan:2005:RMI, author = "Ahmed E. Hassan and Richard C. Holt and Audris Mockus", title = "Report on {MSR 2004: International Workshop on Mining Software Repositories}", journal = j-SIGSOFT, volume = "30", number = "1", pages = "4", month = jan, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1039174.1039188", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:47 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "A one-day workshop was held on the topic of mining software repositories at ICSE 2004 in Edinburgh, Scotland. The workshop brought together researchers and practitioners in order to consider methods that use data stored in software repositories (such as source control systems, defect tracking systems, and archived project communications) to further understanding of software development practices. We divided submissions into six sessions, each devoted to a particular topic: (1) Infrastructure and Extraction, (2) Integration and Presentation, (3) System Understanding and Change Patterns, (4) Defect Analysis, (5) Process and Community Analysis, and (6) Software Reuse. To maximize interaction and discussion, we limited each session to a survey of the topic area, followed by the presentation of one or two papers, then an open discussion. We also allocated a demo hour to give interested parties the opportunity to learn more about other accepted papers. This report includes an overview of the presentations made during these sessions and a summary of the issues raised throughout the workshop.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Janakiram:2005:RRD, author = "D. Janakiram and M. S. Rajasree", title = "{ReQuEst}: Requirements-driven quality estimator", journal = j-SIGSOFT, volume = "30", number = "1", pages = "4", month = jan, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1039174.1039194", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:47 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Estimating quality of software systems has always been a good practice in software engineering. Presently, quality evaluation techniques are applied only as an afterthought to software design process. However, quality of a software system should be stated based on the end-user's requirement for quality. Based on this observation, this paper proposes an estimation model called ReQuEst (Requirements-driven Quality Estimator). ReQuEst is an attempt to quantitatively estimate the quality of a system being designed from its analysis model. The quality is estimated in terms of adaptability and extendibility which are also important parameters in system design. During requirements analysis, evolving requirements are also analyzed to capture a few quality indicators from them. These indicators are used to compute the requirements for the above parameters from the analysis model. Thus, the analyst can quantitatively specify the quality demands of the system to be designed along with the functional requirements. These quality specifications enable the system designer to precisely design systems meeting the values specified. Further, the model can be used to estimate the maintainability of the system in terms of the above parameters.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Bernstein:2005:TSS, author = "Larry Bernstein", title = "Trustworthy software systems", journal = j-SIGSOFT, volume = "30", number = "1", pages = "4--5", month = jan, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1039174.1039176", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:47 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Krishnamurthi:2005:DSC, author = "Shriram Krishnamurthi and Tevfik Bultan", title = "Discussion summary: characteristics of web services and their impact on testing, analysis and verification", journal = j-SIGSOFT, volume = "30", number = "1", pages = "5", month = jan, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1039174.1039189", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:47 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This is a summary of the comments from a discussion session at the end of the Workshop on Testing, Analysis and Verification of Web Services (TAV-WEB) 2004. The comments were made by the workshop participants, and were compiled and edited by the workshop organizers.TAV-WEB 2004 was held in conjunction with ISSTA 2004 in Boston, Massachusetts on July 11, 2004. The abstracts of the papers presented in TAV-WEB 2004 appear in the September issue of SEN.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Kuehne:2005:SAU, author = "Ralph Kuehne and Cornelius Wille and Reiner Dumke", title = "Software agents using simulation for decision-making", journal = j-SIGSOFT, volume = "30", number = "1", pages = "5", month = jan, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1039174.1039195", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:47 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Though autonomy is one of the major concepts of agent technology, the question how to implement this autonomy is mainly up to the agent developer. To show autonomous behaviour the agent has to make decisions regarding which actions to take next in order to meet its design objectives. This article suggests the use of simulation by an agent in its decision-making process. While simulation-based planning has already been proposed, we take it one step further and also use it for the control of the system the agent is reasoning about and for enabling the agent to take measures proactively. To explore this idea's potential we have implemented an agent test-bed to experimentally compare simulation-based decision-making with a rule-based implementation in a manufacturing control scenario. Both the implementation and the simulation study are presented in this article. Based on how the corresponding agents performed in reducing the production cycle time and in reasoning about the probability of meeting the delivery due date, we conclude that the use of simulation for such planning and control purposes is a promising, intuitive and competitive approach that is well suited to supplement other approaches that are already in use.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Schaefer:2005:SSC, author = "Robert Schaefer", title = "Systems of systems and coordinated atomic actions", journal = j-SIGSOFT, volume = "30", number = "1", pages = "6", month = jan, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1039174.1039196", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:47 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "System of systems (SoS) is an emerging field in the design and development of complex systems that are built from large scale component systems. A SoS has the following attributes: operational and managerial independence of components, a geographic extent that limits control mechanisms to information exchange, an evolutionary nature, and emergent behavior. The subsystems that comprise the SoS often are built by different organizations with conflicting goals, designed under different assumptions and built to different quality standards. These factors impact fault detection, fault isolation, and fault tolerance and can result in systems that cannot easily be debugged, integrated, or maintained. When fault detection and fault tolerance are deficient, the system may behave in a fragile or brittle manner, randomly and repeatedly crashing. Crashes prevent automated diagnosis algorithms from being executed and can prevent manual root cause analysis by erasing system state. Fragility during system integration can prevent achieving schedule milestones and deadlines. Deficient fault detection and fault isolation also impacts end users and system maintainers. (Think {\em insert name of infamous project here}). From the system architect's point of view, designing a system that can detect all possible fault conditions across all components can be an extremely difficult, if not impossible challenge. Can any system be trusted to diagnose or repair itself when it has been corrupted by faults? How do you prevent local faults from growing into global failures? The end users may have unreasonable expectations about how the system should behave when components within the SoS behave abnormally or fail. They may expect better behavior than the typical PC. The system maintainers may expect a coherent systems view of failures to isolate faulted components and to provide an orderly and safe shutdown or recovery. (Think power grid blackouts, Telecomm failures, etc.). The most beneficial way to achieve fault tolerance is to design in fault detection and fault reporting such that defined boundaries such as subsystems serve as natural firewalls for fault containment. Although partitioning the system into subsystems for fault containment is well known and practiced, the end result as experienced at the time of system integration is rarely a success. COTS middleware, intended to aid distributed design often becomes in effect a step backwards by providing fertile ground for faults and failures that breach fault containment boundaries. (Think {\em nsert name of OS or middleware vendor here}). What can be done to improve this situation? This paper addresses the system architectural partitioning concept of the Coordinated Atomic Actions (CAA). CAA promotes a different manner of organizing software architecture that improves fault containment across potentially faulty components. CAA was first invented by members of Brian Randell's research group at the University of Newcastle at Tyne in the mid 1990's. CAA promotes the concept of the ``transaction'' which has been traditionally identified with database applications. When you access your bank account via ATM, you are exercising database transactions within your bank's financial SoS. CAA applies transactions to cooperating concurrent distributed processes, which are the basis for most large complex computing systems.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Wing:2005:TNA, author = "Michael Wing", title = "Towards a {National Academy of Software Engineering}", journal = j-SIGSOFT, volume = "30", number = "1", pages = "6--7", month = jan, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1039174.1039177", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:47 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Stuckenholz:2005:CEV, author = "Alexander Stuckenholz", title = "Component evolution and versioning state of the art", journal = j-SIGSOFT, volume = "30", number = "1", pages = "7", month = jan, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1039174.1039197", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:47 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Emerging component-based software development architectures promise better re-use of software components, greater flexibility, scalability and higher quality of services. But like any other piece of software too, software components are hardly perfect, when being created. Problems and bugs have to be fixed and new features need to be added. This paper analyzes the problem of component evolution and the incompatibilities which result during component upgrades. We present the state of the art in component versioning and compare the different methods in component models, frameworks and programming languages. Special attention is put on the automation of processes and tool support in this area. The concluding section sketches a possible solution of these problems we are currently working on.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Wang:2005:TRM, author = "Qianxiang Wang", title = "Towards a rule model for self-adaptive software", journal = j-SIGSOFT, volume = "30", number = "1", pages = "8", month = jan, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1039174.1039198", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:47 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Most self-adaptive software use rules explicitly or implicitly to decide how to react to monitored events. Meanwhile, rules are usually scattered in different procedures, which makes procedures more complex. This paper proposes a Rule Model, which is used to extract scattered rules from different procedures, so as to enhance the self-adaptive ability of software. The paper presents what is Rule Model, including: three key concepts (event, parameter, and rule), hierarchical organization, role in application, and XML-based representation. The paper also introduces how to map declarative rules inside one deployable application to executable rules inside one rule engine, based on one J2EE-compliant application server.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Henderson:2005:SEEa, author = "Peter B. Henderson", title = "Software Engineering Education {(SEEd)}", journal = j-SIGSOFT, volume = "30", number = "1", pages = "8--9", month = jan, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1039174.1039179", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:47 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Neumann:2005:RPCa, author = "Peter G. Neumann", title = "Risks to the public in computers and related systems", journal = j-SIGSOFT, volume = "30", number = "1", pages = "9", month = jan, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1039174.1039199", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:47 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Edited by Peter G. Neumann (Risks Forum Moderator and Chairman of the ACM Committee on Computers and Public Policy), plus personal contributions by others, as indicated. Opinions expressed are individual rather than organizational, and all of the usual disclaimers apply. We address problems relating to software, hardware, people, and other circumstances that affect computer systems. To economize on space, we tersify most items and include pointers to items in the online Risks Forum: (R i j) denotes RISKS vol i number j. Cited RISKS items generally identify contributors and sources, together with URLs. Official RISKS archives are available at www.risks.org (which redirects to Newcastle and gets you nice html formatting and a search engine courtesy of Lindsay Marshall; http://catless.ncl.ac.uk/Risks/i.j.html gets you (R i j)) and at ftp://www.sri.com/risks.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Neumann:2005:RPCb, author = "Peter G. Neumann", title = "Risks to the public in computers and related systems", journal = j-SIGSOFT, volume = "30", number = "1", pages = "9--18", month = jan, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1039174.1039181", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:47 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Xu:2005:TWA, author = "Lei Xu and Baowen Xu and Jixiang Jiang", title = "Testing web applications focusing on their specialties", journal = j-SIGSOFT, volume = "30", number = "1", pages = "10", month = jan, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1039174.1039200", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:47 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Nowadays, Web applications are very prevalent around the world, and it becomes more and more important to ensure their qualities by testing. However, due to the special characters of Web applications, traditional testing methods are not suitable for Web testing in many aspects. So based on the related work by now, this paper presents our research work in such areas as the Web application modeling, the test case generation, the detailed testing methods and techniques, the testing executing process, and the testing measurements. And based on the rules of software engineering, these processes are the necessary parts of the whole testing. Our methods focus on such specialties as numerous users, distributed structures, dynamic and interactive functions of Web applications and the improvements for the testing efficiency.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Doernhoefer:2005:SNSa, author = "Mark Doernhoefer", title = "Surfing the net for {{\booktitle{Software Engineering Notes}}}", journal = j-SIGSOFT, volume = "30", number = "1", pages = "19--27", month = jan, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1039174.1039183", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:47 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Building real-time applications can be one of the most difficult jobs facing today's software engineers. With all the talk about Web services and Web based applications we sometimes forget that there is a large community of practice engaged in the construction of hard real-time systems. Real-time software engineering has been around for several decades. Typical real-time applications can be found in the areas of communications, avionics, process control, and other specialized applications such as signaling and switching systems.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Ben-Menachem:2005:RIC, author = "Mordechai Ben-Menachem", title = "Review of {{\booktitle{Interpreting the CMMI: a Process Improvement Approach}} by Margaret K. Kulpa and Kent A. Johnson. Auerbach Publications 2003}", journal = j-SIGSOFT, volume = "30", number = "1", pages = "33--34", month = jan, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1039174.1039202", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:47 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Ben-Menachem:2005:RSS, author = "Mordechai Ben-Menachem", title = "Review of {{\booktitle{Six Sigma Software Development}} by Christine B. Tayntor. Auerbach Publications, 2003}", journal = j-SIGSOFT, volume = "30", number = "1", pages = "34--34", month = jan, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1039174.1039203", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:47 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Che:2005:ROPa, author = "Haoyang Che", title = "Review of {{\booktitle{The Object Primer}}, 2nd Edition by Scott W. Ambler. Cambridge University Press: Cambridge, 2001, 0-521-785197 (paperback)}", journal = j-SIGSOFT, volume = "30", number = "1", pages = "35--35", month = jan, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1039174.1039204", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:47 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Che:2005:ROPb, author = "Haoyang Che", title = "Review of {{\booktitle{The Object Primer}}, 3rd Edition by Scott W. Ambler. Cambridge University Press: Cambridge, 2004, 0-521-54018-6 (paperback)}", journal = j-SIGSOFT, volume = "30", number = "1", pages = "35--36", month = jan, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1039174.1039205", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:47 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Che:2005:REB, author = "Haoyang Che", title = "Review of {{\booktitle{Eclipse: Building Commercial Quality Plug-ins}} by Eric Clayberg and Dan Rubel. Addison Wesley, 2004, 0-321-22847-2 (paperback)}", journal = j-SIGSOFT, volume = "30", number = "1", pages = "36--36", month = jan, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1039174.1039206", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:47 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Frazer:2005:RMP, author = "Ken Frazer", title = "Review of {{\booktitle{Memory as a Programming Concept in C and C++}} by Frantisek Franek. Cambridge University Press, 2004, (paperback), 0-521-52043-6}", journal = j-SIGSOFT, volume = "30", number = "1", pages = "36--37", month = jan, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1039174.1039207", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:47 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Lawler:2005:RCD, author = "Brian Lawler", title = "Review of {{\booktitle{CMMI Distilled: a Practical Introduction to Integrated Process Improvement}}, Second Edition by Dennis M. Ahern, Aaron Clouse and Richard Turner. Addison Wesley, 2004, paperback, ISBN 0-321-18613-3}", journal = j-SIGSOFT, volume = "30", number = "1", pages = "37--38", month = jan, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1039174.1039208", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:47 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Saur:2005:RSD, author = "Joe Saur", title = "Review of {{\booktitle{Software Development for Small Teams: a RUP-Centric Approach}} by Gary Pollice, Liz Augustine, Chris Lowe, and Jas Madhur. Addison-Wesley, 2004, paperback, ISBN 0-321-19950-2}", journal = j-SIGSOFT, volume = "30", number = "1", pages = "38--38", month = jan, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1039174.1039209", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:47 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Saur:2005:RSR, author = "Joe Saur", title = "Review of {{\booktitle{Software Reliability Engineering: More Reliable Software Faster and Cheaper}} --- 2nd Edition by John Musa. AuthorHouse, Inc., 2004, Hardback, ISBN 1-4184-9388-0, Paperback, ISBN 1-4184-9387-2}", journal = j-SIGSOFT, volume = "30", number = "1", pages = "38--39", month = jan, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1039174.1039210", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:47 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Staff:2005:BRA, author = "{ACM SIGSOFT Software Engineering Notes Staff}", title = "Backmatter (Report abstracts, Paper abstracts, Book Reviews, Calendar of Future Events)", journal = j-SIGSOFT, volume = "30", number = "1", pages = "40", month = jan, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1039174.1057983", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:47 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Staff:2005:FTL, author = "{ACM SIGSOFT Software Engineering Notes Staff}", title = "Frontmatter ({TOC}, Letters, Open Source Software ({OSS}) Patent Search Engine, Calendar of Events, Workshop and Conference Information)", journal = j-SIGSOFT, volume = "30", number = "2", pages = "0", month = mar, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1050849.1057988", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:49 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/gnu.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Gill:2005:FAE, author = "Nasib S. Gill", title = "Factors affecting effective software quality management revisited", journal = j-SIGSOFT, volume = "30", number = "2", pages = "1--4", month = mar, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1050849.1050862", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:49 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Developing a good software system is a very complex task. In order to produce a good software product, several measures for software quality attributes need to be taken into account. System complexity measurement plays a vital role in controlling and managing software quality because it generally affects the software quality attributes like software reliability, software testability and software maintainability. Thus, software quality assurance (SQA) needs to be addressed keeping in view the new strategies, tool, methodologies and techniques applicable to software development life cycle. This paper is primarily aimed at revisiting and examining peculiar aspects of software development process that affect software quality management process. These aspects of software development process include software reliability measurement, ISO approach applicable to software quality and some aspects related to software testing improvement. Software testing and evaluation methods/tools/techniques do not guarantee effective testing and ensure high software quality. The way to improve the effectiveness of testing is to improve the attitude of software developers towards testing. In this paper, all these factors affecting software quality management have been discussed as well as all the possible improvements have been suggested. The results of this paper may be quite helpful to the researchers in quantifying the specific measuring tools for these software quality attributes.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Bhatti:2005:WQI, author = "Shahid Nazir Bhatti", title = "Why quality?: {ISO} 9126 software quality metrics (Functionality) support by {UML} suite", journal = j-SIGSOFT, volume = "30", number = "2", pages = "1--5", month = mar, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1050849.1050860", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:49 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The widespread use of information services will only be accepted by users if their quality is of acceptable level. It is therefore of high interest to be able to estimate, or even measure the quality of a system under construction. UML is now a de-factor standard for modelling systems to be build. This paper indicates how UML diagrams are related to software quality metrics as described in ISO/IEC 9126 and similar quality standards. The paper discusses relevant quality metrics, analyses sources of errors and relates them to the UML diagrams used in software engineering. The paper discusses the sub-attributes of the attribute 'Functionality' in more detail and relates the to the relevant UML diagrams.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Roberts:2005:GMO, author = "Keith A. Roberts", title = "Generic methodology for open source software development", journal = j-SIGSOFT, volume = "30", number = "2", pages = "1--5", month = mar, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1050849.1050863", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:49 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/gnu.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This is the outline proposal for a CASE tool and associated methodology for Open Source software development.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Sagheb-Tehrani:2005:ESD, author = "Mehdi Sagheb-Tehrani", title = "Expert systems development: some issues of design process", journal = j-SIGSOFT, volume = "30", number = "2", pages = "1--5", month = mar, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1050849.1050864", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:49 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "A discussion is presented of why some Expert Systems (ES) that organizations have developed are not successful. The concept of design process plays a very significant role in the outset of the Expert Systems Development (ESD) process. This concept has not been the subject of much debate and attention in ESD. From the authors' point of view, one of the main issues is how the designer (knowledge Engineer) thinks about the design process. In general, the designers' process is influenced by the knowledge engineer's conception. This paper endeavors to disclose some of the main factors related to knowledge engineer's conception of design process and an attempt is made to put forward a conceptual model of the expert systems' design process. This conceptual model is an initial step towards a successful implementation of ES projects.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Breen:2005:CCR, author = "Michael Breen", title = "Combinatorial completion by rule definition with interactive value colouring", journal = j-SIGSOFT, volume = "30", number = "2", pages = "1--6", month = mar, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1050849.1050861", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:49 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The combinatorial completion problem arises where one wishes to define a set of rules which collectively address all possible combinations of circumstances, as, for example, in a decision table. After some rules have been defined but, e.g., millions of cases remain to be addressed, how can the specifier best be helped to complete the remaining rules so that they cover every possible scenario? A novel technique is described based on providing interactive feedback to the user during rule definition. This can be used with non-tabular as well as tabular rules. Where previously quality would have depended on essentially sample-based approaches like testing, this technique makes it easy to adopt a rigorously complete approach to considering large numbers of possibilities.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Xu:2005:BSP, author = "Baowen Xu and Ju Qian and Xiaofang Zhang and Zhongqiang Wu and Lin Chen", title = "A brief survey of program slicing", journal = j-SIGSOFT, volume = "30", number = "2", pages = "1--36", month = mar, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1050849.1050865", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:49 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Program slicing is a technique to extract program parts with respect to some special computation. Since Weiser first proposed the notion of slicing in 1979, hundreds of papers have been presented in this area. Tens of variants of slicing have been studied, as well as algorithms to compute them. Different notions of slicing have different properties and different applications. These notions vary from Weiser's syntax-preserving static slicing to amorphous slicing which is not syntax-preserving, and the algorithms can be based on dataflow equations, information-flow relations or dependence graphs. Slicing was first-developed to facilitate debugging, but it is then found helpful in many aspects of the software development life cycle, including program debugging, software testing, software measurement, program comprehension, software maintenance, program parallelization and so on. Over the last two decades, several surveys on program slicing have been presented. However, most of them only reviewed parts of researches on program slicing or have now been out of date. People who are interested in program slicing need more information about the up to date researches. Our survey fills this gap. In this paper, we briefly review most of existing slicing techniques including static slicing, dynamic slicing and the latest slicing techniques. We also discuss the contribution of each work and compare the major difference between them. Researches on slicing are classified by the research hot spots such that people can be kept informed of the overall program slicing researches.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Henderson:2005:SEEb, author = "Peter B. Henderson", title = "Software engineering education {(SEEd)}", journal = j-SIGSOFT, volume = "30", number = "2", pages = "3--3", month = mar, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1050849.1050851", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:49 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Finally, I am a bit ahead of the deadline curve. As promised in my previous SEE d column, John Knight is our guest columnist. His contribution ``Focusing Software Education on Engineering'' appears below. This is based upon his excellent CSEE\&T 2004 keynote talk with the same title and some insights from his October 2004 ComputerWeekly.com article available at http://www.computerweekly.com/Article 134277.htm.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Knight:2005:FSE, author = "John C. Knight", title = "Focusing software education on engineering", journal = j-SIGSOFT, volume = "30", number = "2", pages = "3--5", month = mar, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1050849.1050852", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:49 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The software crisis is still with us. In fact, it is worse than it has ever been, and we see evidence of the crisis regularly. All manner of applications from desktop systems to large-scale information systems are delivered late, exceed their projected budgets, and fail in various ways leading to inconvenience, loss of service, and loss of revenue. A recent study by the National Institute of Standards and Technology found that software errors cost the U.S. Economy about \$59.5 billion annually [4] National Institute of Standards and Technology, The Economic Impacts of Inadequate Infrast.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Wing:2005:OJC, author = "Michael Wing", title = "{It}'s our job to care for {SE}", journal = j-SIGSOFT, volume = "30", number = "2", pages = "6--8", month = mar, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1050849.1050854", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:49 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "I want software engineering to become a great and enduring profession. Alas, this topic is too large for one essay, so here I focus on the notion that ``it is our job to care for SE.'' This can be restated as ``we must be true to ourselves'' or ``success'' comes from within`` or ''we are responsible for our own success.'' I believe that most of what I write here is obvious, but I believe it warrants a closer look and I want to say it clearly.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Doernhoefer:2005:SNSb, author = "Mark Doernhoefer", title = "Surfing the net for {{\booktitle{Software Engineering Notes}}}", journal = j-SIGSOFT, volume = "30", number = "2", pages = "9--16", month = mar, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1050849.1050856", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:49 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "What is good code? A simple question, but how can you tell if a load o' code is good stuff or a pile of spaghetti? That's where source code quality analysis comes into play. In this month's column, we're going to visit some web sites that will help you establish or improve your code quality processes.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Neumann:2005:RPa, author = "Peter G. Neumann", title = "Risks to the Public", journal = j-SIGSOFT, volume = "30", number = "2", pages = "17--25", month = mar, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1050849.1050858", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:49 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Edited by Peter G. Neumann (Risks Forum Moderator and Chairman of the ACM Committee on Computers and Public Policy), plus personal contributions by others, as indicated. Opinions expressed are individual rather than organizational, and all of the usual disclaimers apply. We address problems relating to software, hardware, people, and other circumstances relating to computer systems. To economize on space, we include pointers to items in the online Risks Forum: (R i j) denotes RISKS vol i number j. Cited RISKS items generally identify contributors and sources, together with URLs. O cial RISKS archives are available at www.risks.org (which redirects to Newcastle and gets you nice html formatting and a search engine courtesy of Lindsay Marshall: http://catless.ncl.ac.uk/Risks/i.j.html gets you (R i j)) and at ftp://www.sri.com/risks.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Beasley:2005:RBA, author = "Charles Beasley", title = "Review of {{\booktitle{Balancing Agility and Discipline: a Guide for the Perplexed}} by Barry Boehm and Richard Turner; Addison Wesley, 2004, ISBN 0-321-18612-5}", journal = j-SIGSOFT, volume = "30", number = "2", pages = "28--28", month = mar, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1050849.1050867", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:49 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Balancing Agility and Discipline: A Guide for the Perplexed is a book written for the developers who live it the world caught between two conflicting approaches to software development, the Agile method and the Traditional methods. This book breaks out the basic reading to the main text and puts the technical material in the appendices. It also provides ``fast track'' summaries, side bar discussions, and margin notes. The book overall is organized to define the boundaries of the two methods followed by a chapter discussing where each method work the best. The next chapter covers the way a day might go using each method followed by a chapter describing two project cases. Chapter five gives a way to determine how to choose one method over the other with the final chapter giving you a summary of the material. Discussion, technical background and notes follow this.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Che:2005:ROT, author = "Haoyang Che", title = "Review of {{\booktitle{Object Thinking}} by David West; Microsoft Press: Microsoft, 2004, 0-7356-1965-4}", journal = j-SIGSOFT, volume = "30", number = "2", pages = "28--29", month = mar, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1050849.1050868", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:49 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Object Thinking, by David West, a highly renowned technologist and evangelist in the community, is definitely a thoughtful and profound object-oriented book. It is written in a really unique style, and different from other object books we've seen ever before. Previously, none of them shows too much interest in the cultural, historical, and philosophical underpinnings of objects in software development. This exceptional and controversial book begins with the basic premise that there is much more to object-oriented paradigm than a matter of experience of object-oriented languages. To fully understand object orientation requires understanding the philosophical and historical roots from which objects come. In a sense, the book talks more about knowledge instead of techniques, wisdom instead of knowledge.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Che:2005:REC, author = "Haoyang Che", title = "Review of {{\booktitle{The Elements of C++ Style}} by Trevor Misfeldt, Gregory Bumgardner, and Andrew Gray; Cambridge University Press: Cambridge, 2004, 0-521-89308-9}", journal = j-SIGSOFT, volume = "30", number = "2", pages = "29--29", month = mar, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1050849.1050869", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:49 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "When we first write an article, generally speaking, we may not pay a lot of attention to the style. However, after a few more pieces, we will gradually find that these articles need polishing not only in the contents, but also in the styles, so we turn to Struck and White's The Elements of Style for help. Similarly, in the field of computer languages, there have many books (The Elements of Java Style, The Elements of C++ Style, The Elements of UML Style) furnishing a set of rules for writing in a certain language like C++ or Java. To some extent, conforming to style is a symbol of specialty. Consistent style facilitates communication and will be honored by other members in the same team.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Che:2005:ROO, author = "Haoyang Che", title = "Review of {{\booktitle{Object-Oriented Programming with Visual Basic.NET}} by Michael McMillan; Cambridge University Press: Cambridge, 2004, 0-521-53983-8}", journal = j-SIGSOFT, volume = "30", number = "2", pages = "29--30", month = mar, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1050849.1050870", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:49 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "I've already been a VB user for almost seven years. However, I must confess that I've rarely touched it since the last multimedia medical project. We used VB 6 in our development team, for that VB.NET didn't gain ground at that time. The first time I heard of VB.NET was in mid-2002. Then all of a sudden when I got up in the next morning, Microsoft {.NET} technology seemed to have become popular overnight. Buzzwords and slogans were everywhere: on the Internet, on the weighty books of published abstracts, on T-shirts, on sweatshirts, and even on souvenir pens. Is VB.NET still VB? Everyone may bear the question in his mind when he first glimpses at it. Object-Oriented Programming with Visual Basic.NET by Michael McMillan will give you a reasonable answer.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Ben-Menachem:2005:RTE, author = "Mordechai Ben-Menachem", title = "Review of {{\booktitle{Testing Embedded Software}} by Bart Broekman and Edwin Notenboom; Addison Wesley.; 2003}", journal = j-SIGSOFT, volume = "30", number = "2", pages = "30--30", month = mar, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1050849.1050871", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:49 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This book discusses testing of software and software-rich systems; particularly those that are embedded in larger Hardware/Software systems. On the other hand, to describe it another way, this book is one of those books that make writing book reviews really fun and worthwhile. (If that sounds like I like the book, you are right!) I have looked at just about every testing book to come out since Glenford Myers' ' The Art of Software Testing ' in 1979 (I have most of them, too; having caught acute bibliophilia at an early age). This is clearly one of the better ones in quite a while; at least since Boris Beizer, and that is saying a lot.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Saur:2005:RFB, author = "Joe Saur", title = "Review of {{\booktitle{Find the Bug: a Book of Incorrect Programs}} by Adam Barr; Pearson Education, 2004, ISBN 0-321-22391-8}", journal = j-SIGSOFT, volume = "30", number = "2", pages = "30--31", month = mar, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1050849.1050872", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:49 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Now, this is a real geek's book! Most of us would rather write code than read code, but all of us have had to spend hours (or days!) hunting for the elusive bug that's driving us crazy, and this book offers the opportunity to develop and refine our bug-finding skills. What a concept!", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Tracz:2005:FTL, author = "Will Tracz", title = "Frontmatter ({TOC}, Letters, Preaching to the Choir!, Interviewers Needed, Time to Vote!, New Resource on {SW} Engineering, Calendar of Events, Workshop and Conference Information)", journal = j-SIGSOFT, volume = "30", number = "3", pages = "0", month = may, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1061874.1061894", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Feller:2005:CCC, author = "Joseph Feller and Brian Fitzgerald and Scott Hissam and Karim Lakhani", title = "Collaboration, conflict and control: report on the {4th Workshop on Open Source Software Engineering}", journal = j-SIGSOFT, volume = "30", number = "3", pages = "1--2", month = may, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1061874.1061885", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/gnu.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Building on the success of the first three workshops in the series, which were held at ICSE 2001 (Toronto), ICSE 2002 (Orlando) and ICSE 2003 (Portland), the 4$^{th}$ Workshop on Open Source Software Engineering, (``Collaboration, Conflict and Control'') brought together researchers and practitioners for the purpose of discussing the platforms and tools, techniques and processes, and the organizational structures that are used to support and sustain communication, collaboration and conflict resolution within and between open source software communities.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Kendapadi:2005:BMN, author = "Ananth Kendapadi and Matt Gandolfo and Amitosh Shukla", title = "{BatchFlow}: a method and notation to visualize {RDBMS} batch jobs", journal = j-SIGSOFT, volume = "30", number = "3", pages = "1--5", month = may, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1061874.1061888", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "In a typical IT division of a large enterprise, there are a significant number of batch jobs that process data in relational database systems and flat files. These jobs may range from those that are run once in a year to those that are run every hour or every few minutes. While there are many notations available to represent a relational database schema including the ER model [1], it appears that there is no good visual notation to represent the jobs themselves. To some extent, this problem can be addressed by using flowcharts, UML sequence diagrams, and operations summary matrix. However, these notations and representations do not leverage the fact that most of the operations in a batch job are usually a relational select/insert/update/delete operation on a relational table, or a read/write operation on a file. In this paper, we introduce a method and notation that we call BatchFlow. This notation can help organizations in visualizing and communicating the batch job designs at a high level.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Chiang:2005:IHP, author = "Chia-Chu Chiang", title = "Implicit heterogeneous and parallel programming", journal = j-SIGSOFT, volume = "30", number = "3", pages = "1--6", month = may, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1061874.1061887", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Programmers are often required to develop parallel programs using new parallel languages or parallel extensions to existing languages that are different from the languages they used previously on sequential machines. As a consequence, programmers are faced with unfamiliar programming models and are often compelled to program at a low level with specific target machines. In this paper, we are going to introduce an implicit parallel programming method that allows programmers to use their favorite sequential programming languages for heterogeneous and parallel programming. Implicit parallelism relieves programmers since they do not have to worry about the details of parallel execution.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Ramachandran:2005:SRG, author = "Muthu Ramachandran", title = "Software reuse guidelines", journal = j-SIGSOFT, volume = "30", number = "3", pages = "1--8", month = may, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1061874.1061889", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "In this paper, we discuss the general area of software development for reuse and reuse guidelines. We identify, in detail, language-oriented and domain-oriented guidelines whose effective use affects component reusability. This paper also proposes a tool support which can provide advise and can generate reusable components automatically and it is based on domain knowledge (reuse guidelines represented as domain knowledge).", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Crnkovic:2005:RIS, author = "Ivica Crnkovic and Ralf Reussner and Heinz Schmidt and Kevin Simons and Judith Stafford and Kurt Wallnau", title = "Report of the International Symposium on Component-Based Software Engineering", journal = j-SIGSOFT, volume = "30", number = "3", pages = "1--9", month = may, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1061874.1061884", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The International Symposium on Component-Based Software Engineering (CBSE7) was held at 28$^{th}$ International Conference on Software Engineering in Edinburgh, Scotland, May 24-25, 2004. The Symposium brought together researchers and practitioners from several communities: component technology, composition languages, compositional analysis, software architecture, software certification and scientific computing. The primary goal of the symposium was to continue clarifying the concepts, identifying the main challenges and findings of predictable assembly of software components. This report gives a comprehensive summary of the position papers, of the symposium, its findings, and its results.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Reifer:2005:ESE, author = "Donald J. Reifer", title = "Educating software engineers: an industry viewpoint", journal = j-SIGSOFT, volume = "30", number = "3", pages = "8--9", month = may, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1061874.1061876", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "When Peter Henderson asked me to comment on the software engineering curricula proposed by the IEEE and ACM Joint Task Force$^1$, I was thrilled. I thought the idea of academics asking for industry input to be strikingly original. I then dug into the proposed curriculum to determine if it would help prepare those from academia entering the software engineering workforce with the skills, knowledge and abilities they need to build quality software products on-time and within budget. Software engineers in most industrial organizations are problem solvers who perform difficult tasks like interfacing with users, developing requirements, specifying interfaces, performing design tradeoffs, developing algorithms and testing and evaluating products. They must be able to communicate with others from associated engineering disciplines, like communications and systems engineering, and work as members of interdisciplinary teams.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Wing:2005:TGE, author = "Michael Wing", title = "Toward a great and enduring profession", journal = j-SIGSOFT, volume = "30", number = "3", pages = "9--11", month = may, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1061874.1061878", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "SE is emerging from years of turmoil. Practitioners are beginning to stand up for themselves and their profession. I have seen them do so in Technology Review and heard them on NPR. Practitioners are fighting for their jobs, against outsourcers, like the SEI.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Doernhoefer:2005:SNSc, author = "Mark Doernhoefer", title = "Surfing the net for {{\booktitle{Software Engineering Notes}}}", journal = j-SIGSOFT, volume = "30", number = "3", pages = "12--21", month = may, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1061874.1061880", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Remember the good old days when your computer science professor assigned you a programming task that required you to turn in the source code (usually FORTRAN) and a flowchart? You'd run off, code up the assignment, get it to run correctly, then go back and write up the flowchart to match the program. That's how most of us learned to design software.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Neumann:2005:RPb, author = "Peter G. Neumann", title = "Risks to the public", journal = j-SIGSOFT, volume = "30", number = "3", pages = "22--37", month = may, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1061874.1061882", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Edited by Peter G. Neumann (Risks Forum Moderator and Chairman of the ACM Committee on Computers and Public Policy), plus personal contributions by others, as indicated. Opinions expressed are individual rather than organizational, and all of the usual disclaimers apply. We address problems relating to software, hardware, people, and other circumstances relating to computer systems. To economize on space, we include pointers to items in the online Risks Forum: (R i j) denotes RISKS vol i number j. Cited RISKS items generally identify contributors and sources, together with URLs. Official RISKS archives are available at www.risks.org (which redirects to Newcastle and gets you nice html formatting and a search engine courtesy of Lindsay Marshall; http://catless.ncl.ac.uk/Risks/i.j.html gets you (R i j)) and at ftp://www.sri.com/risks. This issue spans (R 23 67) to (R 23 83).", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Ben-Menachem:2005:RRS, author = "Mordechai Ben-Menachem", title = "Review of {{\booktitle{Return on Software}} by Steve Tockey; Addison Wesley, 2005}", journal = j-SIGSOFT, volume = "30", number = "3", pages = "39--40", month = may, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1061874.1061891", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This book examines the issues concerning our investments in software systems and software-rich, embedded systems. As far as I can tell, every aspect of this difficult subject seems to have been covered. It is, I believe, the first time that such a book has appeared. Prof. Boehm's book is not only quite old by now; it examined economic aspects of systems from a totally different viewpoint and with different aims. A book on the economics of software has been needed for quite a long time. All analysts look at the economic aspects of what they propose to do --- if they don't they are certainly not professional; they are wasteful amateurs. However, it is unfortunately rare for this to be done well as very few technical analysts have the basic economic training to do so.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Weber-Wulff:2005:ROE, author = "Debora Weber-Wulff", title = "Review of {{\booktitle{Official eclipse 3.0 FAQs}} by John Arthorne and Chris Laffra; Addison-Wesley, 2004, ISBN 0-321-26838-5}", journal = j-SIGSOFT, volume = "30", number = "3", pages = "40--40", month = may, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1061874.1061892", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Weber-Wulff:2005:RCE, author = "Debora Weber-Wulff", title = "Review of {{\booktitle{Contributing to eclipse: Principles, Patterns, and Plug-Ins}} by Erich Gamma and Kent Beck, Addison-Wesley, 2004, ISBN 0-321-20575-8}", journal = j-SIGSOFT, volume = "30", number = "3", pages = "40--41", month = may, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1061874.1061893", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Anonymous:2005:FTLa, author = "Anonymous", title = "Frontmatter ({TOC}, Letters, Election results, Software Reliability Resources!, Computing Curricula 2004 and the Software Engineering Volume {SE2004}, Software Reuse Research, {ICSE 2005} Forward)", journal = j-SIGSOFT, volume = "30", number = "4", pages = "0", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1085124", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Binder:2005:AMA, author = "Robert V. Binder and James E. Hanlon", title = "The advanced mobile application testing environment", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--1", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083289", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The Advanced Mobile Application Testing Environment (AMATE) combines model-based test generation and evaluation, controllable RF airlink variation, and a robust standards-based distributed test harness for end-to-end testing of distributed mobile applications. This report summarizes AMATE capabilities.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Ehrich:2005:HII, author = "Hans-Dieter Ehrich", title = "Harmonizing intra- and inter-object specification and verification: a multi-object logics approach", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--1", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083184", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Object-oriented approaches to designing information systems suggest to distinguish between intra- and inter-object aspects. While intra-object design and verification tools are being used on a large scale, inter-object techniques are not yet well established. There are a variety of approaches addressing the concurrency and communication aspects of multi-object systems, but fundamental problems remain. The TROLL object specification language project aims at providing logic-based formal semantics to intra- and inter-object aspects, among others. For the former, a conventional temporal logic was employed. For the latter, an extension called multi-object logic was developed. It has proven useful for semantics descriptions, recently also for a mobile-agent extension where the innovative contribution was to distinguish between the ever-mobile units and those which provide fixed subsystems as contexts for the mobile entities. While being developed for giving semantics, multi-object logics showed surprising potential for verification. Conventionally, intra-object verification techniques are applied to inter-object verification by building a global state space. This state space, however, grows exponentially with the number of objects in the system. In spite of sophisticated techniques which have been developed to overcome this 'state-space explosion' problem, there is a notorious complexity barrier. It is not feasible to verify large systems this way. In the multi-object logic approach, the construction of the global state space --- or any fraction or abstraction thereof --- is avoided. So it has the potential to handle large systems. The method is applicable in cases where the objects and interaction patterns in a system are known beforehand, when writing the global conditions to be checked. Although these conditions are bound to objects, they are 'global' in the sense that they may refer to the states of other objects at interaction points. This way, conditions concerning interacting objects may be written in a still basically sequential logic, although multiple objects are assumed to behave concurrently. Global checking conditions may then be automatically and equivalently split into local conditions for the objects involved, plus interaction requirements for these objects. All these conditions and requirements can be checked locally, one after the other, where only the objects involved in the condition have to be taken into account. While we are working on the potential of the approach for software engineering, it may have potential beyond: we are also working on a project to simulate and analyze biological processes using object-oriented techniques. For instance, model checking can be used to find possible scenarios leading to biological cell states of interest. Applying the multi-object approach here is a challenging problem.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Garlan:2005:DWD, author = "David Garlan and Marin Litoiu and Hausi A. M{\"u}ller and John Mylopoulos and Dennis B. Smith and Kenny Wong", title = "{DEAS 2005: workshop on the Design and Evolution of Autonomic Application Software}", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--1", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083064", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Understanding software engineering issues for autonomic computing systems is critical for the software and information technology sectors, which are continually challenged to reduce the complexity of their systems. To be autonomic, a system must know itself as well as its boundaries and its environment, configure and reconfigure itself, continually optimize itself, recover or heal from malfunction, protect itself, and function in a heterogeneous world --- while keeping its complexity hidden from the user. The goal of this workshop is to bring together researchers and practitioners, who investigate concepts, methodologies, techniques, technologies, and tools to design and evolve autonomic software.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Henderson-Sellers:2005:AOM, author = "Brian Henderson-Sellers", title = "Agent-oriented methodologies: method engineering and metamodelling", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--1", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1082964", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "With the growing interest in the use of agent-oriented methodologies for software development, there is a need to identify influences and commonalities as a basis for advancing the state-of-the-art in AO methodologies. Here we advocate the use of a method engineering approach, underpinned by metamodelling as a means to achieve flexible support for many different kinds of project and agent systems. Using the OPEN Process Framework as an exemplar, we demonstrate the value of this approach, concluding with recommendations for future collaborative work.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Minsky:2005:LGM, author = "Naftaly Minsky", title = "Law-governed multi-agent systems: from anarchy to order", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--1", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1082965", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "I will argue that a multi-agent system should not be viewed as just the totality of its members, but that it should include the set of laws that governs the interaction between these members. Such laws need to be made explicit, as part of the design of the MAS, and they need to be enforced on its implementation.I will discuss the architecture and the scalable implementation of such law-governed MAS, using a coordination and control mechanism called Law-Governed Interaction (LGI); and will consider various implication of this architecture, to issues such as reasoning about a MAS, and making it dependable.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Bruschi:2005:SES, author = "Danilo Bruschi and Bart {De Win} and Mattia Monga", title = "Software engineering for secure systems", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--2", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1082996", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The SESS'05 held in St. Louis, MO on May 15-16 was intended to be a venue to discuss techniques for building and validating secure applications. Workshop attendees (about 40 people) came both from the software engineering and the security community, raising a fruitful discussion and exchange of ideas and problem perspectives.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Garcia:2005:SELa, author = "Alessandro Garcia and Ricardo Choren and Carlos Lucena and Alexander Romanovsky and Tom Holvoet and Paolo Giorgini", title = "Software engineering for large-scale multi-agent systems --- {SELMAS'05}", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--2", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1082962", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Software is becoming present in every aspect of our lives, pushing us inevitably towards a world of distributed, context-aware computing systems. SELMAS'05, ``Software Everywhere --- Context-Aware Agents'', was built on the success of precedent SELMAS workshops, but with a special emphasis on the impact of the agent technology in the development of large context-aware systems. SELMAS has a track record of bringing together researchers and practitioners with a variety of perspectives in order to engage in lively discussion and debate. A particular interest of this workshop was to understand those issues in the agent technology that make it difficult and/or improve the production of context-aware systems.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Pollock:2005:IWS, author = "Lori Pollock and James Andrews", title = "{ICSE 2005} workshop summary {Third International Workshop on Dynamic Analysis (WODA 2005)}", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--2", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1082999", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Dynamic analysis techniques collect and examine information about program executions. Particularly combined with static analysis, results from dynamic analysis can have many uses in regard to developing robust and reliable large-scale software systems.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Pretschner:2005:IIW, author = "Alexander Pretschner and Christian Salzmann and Thomas Stauner", title = "{2nd Intl. ICSE Workshop on Software Engineering for Automotive Systems}", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--2", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1082997", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper summarizes the second International Workshop on Software Engineering for Automotive Systems, held in conjunction with ICSE'05. We give a brief overview of the presented papers and pinpoint the highlights of the discussions.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Asundi:2005:NEE, author = "Jai Asundi", title = "The need for effort estimation models for open source software projects", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--3", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083260", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/gnu.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Open source software(OSS), be it products or tools, are being adopted at a fairly rapid pace in commercial organizations. In fact many firms such as IBM and Sun are even 'opening' up their once proprietary software products and making the source code available. This phenomenon may have a profound effect on the various software engineering methodologies and practices as well as project management activities. Given the difficulty in managing resources in closed source projects, planning and delivery for OSS projects will be an even bigger challenge. In this position paper, we describe the need for new effort estimation models for the development of OSS projects and how this will be required for future project management activities. We outline some of the guidelines to build these cost estimation models and some issues that arise in the verification and validation of these cost models.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Bajracharya:2005:UNO, author = "Sushil Krishna Bajracharya and Trung Chi Ngo and Cristina Videira Lopes", title = "On using Net Options Value as a value based design framework", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--3", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083104", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "We present our experiences using Net Options Value (NOV) as a framework for evaluating options in software design. We start with a brief introduction of the NOV model, provide summaries of analyses --- where and how NOV has been applied, and list some of the open issues based on the early works in this area. In particular we present our approach to understand an important parameter of the NOV called the 'technical potential' of a module and outline our further research directions in using NOV.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Ciolkowski:2005:APE, author = "Marcus Ciolkowski and J{\"u}rgen M{\"u}nch", title = "Accumulation and presentation of empirical evidence: problems and challenges", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--3", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083178", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Understanding the effects of software engineering techniques and processes under varying conditions can be seen as a major prerequisite towards predictable project planning and guaranteeing software quality. Evidence regarding the effects of techniques and processes for specific contexts can be gained by empirical studies. Due to the fact that software development is a human-based and context-oriented activity the effects vary from project environment to project environment. As a consequence, the studies need to be performed in specific environments and the results are typically only valid for these local environments. Potential users of the evidence gained in such studies (e.g., project planners who need to select techniques and processes for a project) are confronted with difficulties such as finding and understanding the relevant results and assessing whether and how they can be applied to their own situation. Thereby, effective transfer and use of empirical findings is hindered. Our thesis is that effective dissemination and exploitation of empirical evidence into industry requires aggregation, integration, and adequate stakeholder-oriented presentation of the results. This position paper sketches major problems and challenges and proposes research issues towards solving the problem.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Dittrich:2005:COM, author = "Yvonne Dittrich and Kari R{\"o}nkk{\"o} and Olle Lindeberg and Jeanette Erickson and Christina Hansson", title = "Co-Operative Method Development revisited", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--3", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083111", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "During the last five years, we applied a research approach we call 'Co-operative Method Development' formulated on first experience with empirical research focusing especially on the social side of software engineering. This position paper summarizes the experiences and discusses the improvement and further development of this research approach based on our experiences in different research projects in co-operation with industrial partners.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Kitchenham:2005:REB, author = "Barbara Kitchenham and David Budgen and Pearl Brereton and Step Hen Linkman", title = "Realising evidence-based software engineering", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--3", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083175", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper provides an introduction to the papers for the Workshop on Realising Evidence-Based Software Engineering.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Koru:2005:EHM, author = "A. G{\"u}nes Koru and A. Ant Ozok and Anthony F. Norcio", title = "The effect of human memory organization on code reviews under different single and pair code reviewing scenarios", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--3", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083114", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Human memory organization has been shown to be related to how programmers understand programs. In recent years, agile methods brought the emphasis back on human and social aspects of software engineering with a set of new principles and practices. One of them, pair programming has been shown to improve quality and reduce the development costs. In this position paper, we propose a controlled experiment to evaluate the effect of human memory organization through chunking on code reviews under different single and pair code reviewing scenarios.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Ovans:2005:AWR, author = "Russell Ovans", title = "All we really need to know about software engineering is in the film office space", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--3", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083006", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The 1999 Mike Judge film Office Space enjoys a cult following, particularly amongst software engineers. Despite its mass appeal and broad comedic base, the film contains many hidden gems of wisdom regarding the craft of software engineering. In this short paper I discuss six rules that are embodied in the film's plot line and characterizations, and what the film has to teach us about each of them. The rules are: design for change; software engineering is a social activity; an untested program does not work; not everyone gets to write video games; Brooks' Law; and, you will be expected to work long hours.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Pickard:2005:OIN, author = "Michael M. Pickard", title = "Old issues, new eyes", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--3", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083239", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper considers end user development (EUD) from the perspective of a veteran software professional. Many of the issues currently discussed in relation to EUD have existed almost from the dawn of computing. However, there are some modern trends that have the potential to affect both end user computing and professional software development.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Robillard:2005:JTC, author = "Martin P. Robillard and Gail C. Murphy", title = "Just-in-time concern modeling", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--3", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083136", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "In this position paper, we propose the notion of just-in-time concern modeling. As some concerns emerge late in the software life cycle and can be ephemeral, we argue that mechanisms should be available to capture descriptions of concerns as they emerge or become relevant. Based on our experience with the FEAT concern modeling and analysis tool, we highlight the essential characteristics, benefits, and pitfalls of just-in-time concern modeling at the source code level.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Robillard:2005:WMA, author = "Martin P. Robillard", title = "{Workshop on the Modeling and Analysis of Concerns in Software (MACS 2005)}", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--3", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1082995", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This report is a summary of the Workshop on the Modeling and Analysis of Concerns in Software (MACS 2005) held at the 27$^{th}$ International Conference on Software Engineering (ICSE 2005). The main goal of the workshop was to bring together researchers and practitioners with interest in techniques for modeling and analyzing the realization of concerns in software systems to support software development and evolution. The workshop consisted of an interactive combination of presentations and discussions. The presentations and discussions were based on a collection of 16 short papers covering a wide range of approaches.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Smith:2005:IIA, author = "Dennis Smith and Edwin Morris and David Carney", title = "Interoperability issues affecting autonomic computing", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--3", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083084", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Most autonomic systems consist of a number of components and systems. These systems require a high degree of interoperability between the constituent components and systems. We describe current research on the topic of interoperability that has relevance for autonomic systems and list a set of critical properties of interoperability that need to be considered in designing autonomic systems.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Spraragen:2005:CCT, author = "Susan L. Spraragen", title = "The challenges in creating tools for improving the software development lifecycle", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--3", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083118", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Creating successful software systems for end user applications is a complex task. It is often proposed that tools can be built for development teams to help them do their job more efficiently and to help them communicate with their team members. The success of these tools relies on how well the technical community that builds software tools understands the needs of the technical community that uses these tools. How can we effectively apply a user centered design approach to building these tools?", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Srikanth:2005:ERB, author = "Hema Srikanth and Laurie Williams", title = "On the economics of requirements-based test case prioritization", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--3", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083100", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Software testing is a strenuous and expensive process. At least 50\% of the total software cost is spent on testing activities [12]. Companies are often faced with time and resource constraints that limit their ability to effectively complete testing efforts. Companies generally save suites for reuse; test suite reuse accounts for almost half of the maintenance cost [9]. As the product goes thru several versions, executing all the test cases in a test suite can be expensive [9]. Prioritization of test cases can be cost effective when the time allocated to complete testing is limited [9]. Test case prioritization (TCP) involves the explicit planning of the execution of test cases in a specific order and is shown to improve the rate of fault detection [3, 9]. The current software TCP techniques are primarily coverage-based (statement, branch or other coverage) [3,9]. Coverage-based white-box prioritization techniques are most applicable for regression testing at the unit level and are harder to apply on complex systems [2]. These techniques require testers to read and understand the code, which can be time consuming [2], and may assume that all faults are equally severe.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Tai:2005:CAR, author = "Grace Tai", title = "A communication architecture from rapid prototyping", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--3", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083120", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Communication issues can become a progress-impeding burden to software projects requiring advanced group collaboration. Human and social factors, such as conflicting personalities, educational backgrounds, or different communication styles, play a large part in group communication. During a recent rapid prototyping project with over 30 collaborators, including software engineers, UI designers and non-technical customers, we understood that effective and efficient communication would be crucial to the success of our project. The communication architecture that we evolved through the project incorporates human and social factors so that team members with different backgrounds (e.g., UI design, software engineering, non-technical) can communicate effectively in an agile development environment.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Adams:2005:ARL, author = "Paul Adams and Cornelia Boldyreff and David Nutter and Stephen Rank", title = "Adaptive reuse of libre software systems for supporting on-line collaboration", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--4", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083259", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "In this paper, the adaptive reuse of Plone; an open source content management system is described. In one instance, Plone has been used as the backbone of a collaboration and communication support infrastructure within a large research project. In the other, Plone has been used as the main web-presence of a specialist group of the British Computer Society. This paper analyses the benefits and problems of reusing Plone to support collaboration. Based on this reuse experience, a more systematic approach to supporting Plone reuse is proposed. This approach takes into account the special case of reuse support relevant to open source software developments.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Aggarwal:2005:EVT, author = "K. K. Aggarwal and Yogesh Singh and Pravin Chandra and Manimala Puri", title = "Evaluation of various training algorithms in a neural network model for software engineering applications", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--4", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083003", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Software Engineering as a discipline emerged in response to the software crisis perceived by the industry. It is a well known fact that at the beginning of any project, the software industry needs to know how much will it cost to develop and what would be the time required. Resource estimation in software engineering is more challenging than resource estimation in any other industry. A number of resource estimation methods are currently available and the neural network model is one of them. This paper proposes to evaluate various training algorithms in a neural network model and shows which is the best suited for software engineering applications.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Aggarwal:2005:SAF, author = "K. K. Aggarwal and Yogesh Singh and Pravin Chandra and Manimala Puri", title = "Sensitivity analysis of fuzzy and neural network models", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--4", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083002", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "It is well known that soft computing techniques can be very well deployed for software engineering applications. Among these fuzzy and neural models are widely used to estimate lines of codes, effort, software maintainability, software understandability etc. This paper proposes to carry out a sensitivity analysis of the two models and shows which one is better. This is done with the help of a case study where the two models are used to measure software maintainability.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Al-Naeem:2005:TSO, author = "Tariq Al-Naeem and Ian Gorton and Fethi Rabhi and Boualem Benatallah", title = "Tool support for optimization-based architectural evaluation", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--4", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1082954", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Architecting enterprise applications is a complex design activity. This is especially true when considering the myriad of interdependent architectural decisions with an arbitrary number of alternatives that can be employed at each decision point. Further complexities stem from the fact that different alternatives often vary considerably in their support for different quality attributes. Existing software architecture evaluation approaches and tools lack the explicit consideration of design decision interdependencies, as they primarily focus on one decision in isolation. For this purpose, we have earlier developed the ArchDesigner approach to help determining the optimal mix of architectural alternatives. This paper discusses an architectural evaluation support tool that implements the ArchDesigner approach. The novelty of this tool is in its support for evaluating combinations of alternatives against one other, and not only alternatives belonging to one decision. It treats the architectural evaluation problem as a search problem and leverages optimization techniques for evaluating candidate application architectures.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Ali:2005:WTR, author = "Muhammad Raza Ali", title = "Why teach reverse engineering?", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--4", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083004", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Software reverse engineering is a fascinating discipline of software engineering. But it has failed to attract attention from students. Largely due to the facts that many universities around the world do not offer relevant courses, developing new software has always been considered superior then to maintain existing systems. But owing to the arrival of the internet, and client-server technology. Many organizations wish to adapt their existing systems. Thus the trend has somewhat shifted towards software evolution and maintenance. And now, more than ever before we need software engineers who can work effectively with legacy systems. In this paper I wish to highlight importance of incorporating Reverse engineering concepts and techniques into software engineering curriculum. I will start with a brief overview of reverse engineering concepts, and then discuss advantages of teaching reverse engineering.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Cai:2005:VOT, author = "Yuanfang Cai and Kevin J. Sullivan", title = "A value-oriented theory of modularity in design", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--4", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083105", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "We were motivated to undertake the research we describe here by a conversation with two practicing software engineers, who described a dilemma they faced at work. They worked for small company that earned revenues by delivering to a large customer a stream of enhancements to a software tool. The engineers' jobs were to estimate the time to make enhancements and to implement selected enhancements. They were good at estimating, but dissatisfied with the system design, believing that it significantly slowed new feature implementation. They had proposed to management to restructure the tool. However, the management, concerned about disrupting the flow of enhancements thus revenues, and having no clear model of likely benefits, declined. The engineers believed that refactoring would increase the velocity of feature delivery, but they had no sense or ability to analyze the situation quantitatively or to frame it in a way that was compelling to business decision-makers. As a result, the engineers were dissatisfied, and the company incurred a possibly significant opportunity cost.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Chawner:2005:FOL, author = "Brenda Chawner", title = "{F/OSS} in the library world: an exploration", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--4", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083262", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Existing research into free/open source software development has largely ignored the nature of the application domain the software is for. J{\o}rgensen and S{\o}rensen's 'development arena' [12] provides a useful conceptual framework for grouping and comparing projects. This paper applies the framework to free/open source software projects in two library and information management application spaces: integrated library systems and institutional repositories. The preliminary analysis shows that F/OSS projects to develop integrated library systems are generally small scale, and the software is used mainly by smaller libraries. Institutional repository software, not widely available from commercial vendors, is being developed by larger libraries, often with the assistance of research funding from other bodies, and is being implemented by university and research libraries worldwide.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Coelho:2005:APC, author = "Wesley Coelho and Gail C. Murphy", title = "{ActiveAspect}: presenting crosscutting structure", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--4", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083131", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Developers must often deal with concerns that crosscut a program's structure. Understanding the crosscutting structure may help a developer understand and work with the concern. Current tools for presenting crosscutting structure suffer either from graphical complexity or a mismatch between the presentation and the underlying program structure. We introduce a concern presentation approach that overcomes these problems through a combination of automatic abstraction and interactive features that enable a developer to investigate relevant details. We sketch how the ActiveAspect tool we are developing implements this approach for presenting the crosscutting structure described by aspects in AspectJ.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Cooper:2005:MCO, author = "Kendra Cooper and Lawrence Chung", title = "Managing change in an {OTS-aware} requirements engineering approach", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--4", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1082955", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Rapid changes in a component-based application (CBA), or the capabilities available in off-the-shelf (OTS) components, have significant impact on the specification and evolution of requirements in an OTS-aware requirements engineering paradigm. A well-disciplined, systematic methodology that explicitly supports the use of OTS components needs a clearly defined process for effectively managing the inevitable changes and determining the impact of such changes on the system. In this paper, we present a Non-functional Requirement (NFR) Framework based approach that supports representing changes either to an OTS component or a CBA, the associations from components to the requirements using positive and negative contributions, reasoning about the impact of change, and (re-)evaluating the degree of meeting requirements as a result of these change.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{deLemos:2005:IWAb, author = "Rog{\'e}rio de Lemos and Alexander Romanovsky", title = "{ICSE 2005 Workshop on Architecting Dependable Systems (WADS 2005)}", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--4", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1082994", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This summary gives a brief overview of a one-day Workshop on Architecting Dependable Systems (WADS) held in conjunction with the International Conference on Software Engineering (ICSE 2005). The main aim of this workshop is to promote cross-fertilization between the software architecture and dependability communities. We believe that both of them will benefit from clarifying approaches that have been previously tested and have succeeded as well as those that have been tried but have not yet been shown to be successful.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Dong:2005:CAC, author = "Jing Dong and Sheng Yang and Lawrence Chung and Paulo Alencar and Donald Cowan", title = "A {COTS} architectural component specification stencil for selection and reasoning", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--4", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1082959", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Reusing commercial-off-the-shelf (COTS) components may reduce cost and time-to-market. It may significantly improve software productivity. However, the selection and assessment of COTS components are still a challenge task. It is hard to find the right components that exactly fit into the requirements. The selection processes are in general ad-hoc. Wrong choice of COTS components may compromise the benefits from reusing these components since the chosen component may mismatch with other components and the environment. In this position paper, we advocate a more detailed architectural specification stencil which may help on the component selection and mismatch detection. The architectural specification of a COTS component is encoded in XML so that searching components can be automated. In addition, inconsistencies and mismatches among components can be detected.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Franch:2005:TRF, author = "Xavier Franch and Marco Torchiano", title = "Towards a reference framework for {COTS-based} development: a proposal", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--4", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1082952", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The literature about COTS-based development suffers from two main problems: there is no common terminology and it is not clear whether different techniques address the same issues and to which extend they overlap. In this paper we describe a reference model that sets the basis for a COTS-based development ontology and terminology. It should allow a systematic organization of published studies and an easier comparison of proposed approaches.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Gamble:2005:USA, author = "M. T. Gamble and R. Gamble and M. Hepner", title = "Understanding solution architecture concerns", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--4", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1082956", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Modern software system development includes the use of off-the-shelf components in the form of third-party software (TPS). Vendors of TPS products play an increasingly important role in the systems that incorporate their offerings. Modeling these vendors' motivations, in the form of architectural concerns and viewpoints, provides an additional tool for customers evaluating TPS. Such viewpoint-based analysis of vendor-oriented solution architectures can provide valuable insights to customers at the time of TPS acquisition as well during the overall lifetime of the system incorporating TPS.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Henderson-Sellers:2005:MEC, author = "B. Henderson-Sellers and C. Gonzalez-Perez and M. K. Serour and D. G. Firesmith", title = "Method engineering and {COTS} evaluation", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--4", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1082950", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This position paper argues that a successful COTS evaluation process should be based on the principles of method engineering (ME). Following a brief description of an ME approach underpinned by a metamodel, some method fragments related to component-based software engineering are offered as the starting point for the creation of a complete suite of method fragments for future COTS evaluation processes.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Higo:2005:ARS, author = "Yoshiki Higo and Toshihiro Kamiya and Shinji Kusumoto and Katsuro Inoue", title = "{ARIES}: refactoring support tool for code clone", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--4", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083306", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "In this paper, we explain our refactoring support tool Aries. Aries characterizes code clones by several metrics, and suggests how to remove them.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Huang:2005:UID, author = "LiGuo Huang and Barry Boehm", title = "Using {iDAVE} to determine availability requirements", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--4", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083295", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Different systems have different success-critical stakeholders. Even for the same system, these stakeholders may depend on it in different ways for different scenarios. Therefore a one-size-fits-all dependability metric is unachievable in practice. In order to cost-effectively achieve the stakeholders' desired dependability attribute requirements for a given project, we have to solve such problems as how to define an appropriate level for a particular dependability attribute and how much dependability investment is enough for a particular software/scenario class. However, the answers to those questions are traditionally difficult to obtain. This paper uses a hypothetical Lunar Biological Laboratory (LBL) as an example to illustrate how to use the iDAVE model to determine the appropriate levels of availability requirements for different software/scenario classes based on their different ROI profiles.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Kaminski:2005:UNY, author = "Piotr Kaminski and Priyanka Agrawal and Holger Kienle and Hausi M{\"u}ller", title = "$ < {\rm username} > $, {I} need you!: initiative and interaction in autonomic systems", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--4", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083080", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "In this position paper, we examine factors, such as trust and usability, which can affect the adoption of an autonomic system. We argue that a system that exhibits initiative and strong communication skills is more likely to be adopted, and propose to treat humans as modeled, managed elements in an autonomic control loop to achieve these goals. We then propose some synergistic design ideas to make communicating with users more effective, and to allow the system to learn from the users' actions.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Ko:2005:HFA, author = "Andrew J. Ko and Brad A. Myers", title = "Human factors affecting dependability in end-user programming", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--4", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083245", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Human factors affecting the dependability of end user's programs are discussed in the context of controlled and observational studies of both professional and end-user programmers. These factors include the influence of the types of behaviors that end users wish to implement, end user's fundamental cognitive biases, barriers in the languages, environments, libraries, and other tools used by end users, and end users' difficulties with understanding their code's meaning and execution.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Kontio:2005:CPR, author = "Jyrki Kontio and Jani-Pekka Jokinen and Markus M. M{\"a}kel{\"a} and Virve Leino", title = "Current practices and research opportunities in software business models", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--4", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083103", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper discusses the notion of a business model in the context of a software company, reviewing some common definitions for the term and then characterizing businesses according to different types of business models. We will conclude in discussing how different business models affect software engineering decisions and the software product itself.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Li:2005:BDS, author = "Jingyue Li and Reidar Conradi and Odd Petter N. Slyngstad and Christian Bunse and Umair Khan and Maurizio Morisio and Marco Torchiano", title = "Barriers to disseminating off-the-shelf based development theories to {IT} industry", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--4", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1082953", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "In this position paper, we have reported results of an industrial seminar. The seminar was intended to show our findings in an international survey, conducted in Norway, Italy and Germany, on off-the-shelf component-based development. Discussion in the second section of the seminar revealed several obstacles of popularizing the OTS based development theories into IT industry.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Li:2005:MIP, author = "Xing Li and Ramesh Nagarajan", title = "Modeling for image processing system validation, verification and testing", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--4", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083290", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "State of the art digital copiers and multifunctional devices not only has millions of lines of software code but also employ application specific hardware components each having millions of gates to perform sophisticated image processing functions. To ensure high quality of the system, an image path system model, which contains both an image processing driver model part and a hardware component model part, is constructed. The modeling work not only facilitates system validation, verification and testing but also maximizes the reuse of well-tested artifacts. This paper describes the image path system model and its development process.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Mannaert:2005:UOS, author = "Herwig Mannaert and Kris Ven", title = "The use of open source software platforms by Independent Software Vendors: issues and opportunities", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--4", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083266", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The Cast4All Content Conductor Platform is an integration and provisioning suite to manage data broadcasting networks in general and digital cinema networks in particular. The framework makes extensive use of open source components and contains several extensions and modifications to those components. It is a typical case of an Independent Software Vendor (ISV) building application software on top of open source platform software. In the spirit of the open source movement, the extensions or modifications to the open source components could be contributed back to the community. However, in this paper we discuss several issues that companies face in such a situation. They extend far beyond the obvious decision whether to keep the developed code proprietary, and should not be neglected. It is argued that a closer collaboration between open source projects and independent software vendors would be beneficial to all.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Mohamed:2005:DSC, author = "Abdallah Mohamed and Guenther Ruhe and Armin Eberlein", title = "Decision support for customization of the {COTS} selection process", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--4", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1082958", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Software technologies need to be customized to make them effective and efficient for a specific context. In this position paper, we consider the customization of the COTS selection process. We have developed a methodology which customizes the selection process based on the actual project domain characteristics (PDCs) including attributes such as available effort or project criticality. The customization of the process is done at both the process level and the activity level. We suggest a hybrid approach that integrates formalized knowledge with human expertise. This principle has already been successfully used in the context of the software release planning. The advantage is two-fold: Firstly, we exploit the existing empirical results related to different stages of the COTS selection process. Secondly, we facilitate involvement of human judgment to determine most appropriate decisions among the ones proposed by the formalized and knowledge-based solution techniques.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Munawar:2005:BPB, author = "Mohammad A. Munawar and Paul A. S. Ward", title = "Better performance or better manageability?", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--4", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083072", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib; http://www.math.utah.edu/pub/tex/bib/virtual-machines.bib", abstract = "Competition among software providers creates enormous pressure on design and development teams to improve application performance. However, increased performance leads to systems whose behaviour is harder to predict. This in turn makes software harder to manage, or self-manage in the case of autonomic software. In this paper we elaborate on this problem, first in generic terms, and then taking memory-usage monitoring in a Java Virtual Machine as a specific example. We motivate the need for more research in developing monitoring techniques that can cope with the complexity of modern software systems. We finally present our own efforts in this direction.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Nkwocha:2005:FPM, author = "Fidel Nkwocha and Sebastian Elbaum", title = "Fault patterns in {Matlab}", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--4", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083235", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/matlab.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Fault patterns are code idioms that may constitute faults. Software engineers have various program analysis techniques and tools to assist them in the detection of such patterns, resulting in increased software quality. End user programmers, however, often lack such support. In this paper we take a first step to address this limitation in the context of Matlab. First, we adapt fault patterns commonly used in other programming languages to Matlab. Second, we present a tool to detect such patterns in fifteen popular Matlab programs. Our results reveal that these simple and quickly identifiable patterns are commonly found in Matlab programs developed by end users and shared across the large Matlab community of end user programmers.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Persson:2005:OTH, author = "Anna Persson and Henrik Gustavsson and Brian Lings and Bj{\"o}rn Lundell and Anders Mattsson and Ulf {\"A}rlig", title = "{OSS} tools in a heterogeneous environment for embedded systems modelling: an analysis of adoptions of {XMI}", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--4", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083267", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The development and maintenance of UML models is an inherently distributed activity, where distribution may be geographical, temporal or both. It is therefore increasingly important to be able to interchange model information between tools --- whether in a tool chain, for legacy reasons or because of the natural heterogeneity resulting from distributed development contexts. In this study we consider the current utility of XMI interchange for supporting OSS tool adoption to complement other tools in an embedded systems development context. We find that the current state of play is disappointing, and speculate that the problem lies both with the open standards and the way in which they are being supported and interpreted. There is a challenge here for the OSS community to take a lead as tool vendors gear up for XMI 2.0.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Poladian:2005:ACR, author = "Vahe Poladian and Jo{\~a}o Sousa and Frank Padberg and Mary Shaw", title = "Anticipatory configuration of resource-aware applications", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--4", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083102", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "We propose an improved approach to dynamic configuration of resource-aware applications. The new anticipatory model of configuration maximizes utility based on three inputs: user preferences, application capability profiles, and resource availability. In this respect, the proposed model is similar to a model of configuration described in [2]. However, the latter addresses the dynamic nature of the problem by reacting to changes (such as decrease in resource availability), and maximizes the utility in a point-wise manner. The newly proposed anticipatory approach explicitly models the duration of the task and leverages possible information about the future (such as stochastic resource availability over the expected duration of the task). We expect that the anticipatory model will improve user's utility, conserve scarce resources, and reduce the amount of disruption to the user resulting from changes when compared to the reactive model. However, the optimization problem underlying the anticipatory model is computationally more difficult than the problem underlying the reactive model. We would like to investigate if the anticipatory approach is feasible and efficient in practice while delivering the above-mentioned improvements. In this paper, we carefully state the model of anticipatory configuration, highlight the sources of complexity in the problem, propose an algorithm to the anticipatory configuration problem, and provide a roadmap for research.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Prechelt:2005:MFE, author = "Lutz Prechelt and Daniel J. Hutzel", title = "Market forces and end-user programming for mission-critical systems", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--4", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083238", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The abaXX Workflow Engine (WFE) is a J2EE COTS software component, part of a larger suite for building web-based systems. Although these systems are usually mission-critical (the customers often being financial institutions), a visual tool that could be used for end-user programming, called the Process Modeler, proved important for marketing the WFE and the component suite in general. The promise of end-user programming (EUP), however, never materialized. This article sketches the evolution of the WFE. It de-scribes why the EUP capabilities were required, why they were never really used in practice, and how to reconcile these two facts.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Qun:2005:FDS, author = "Yang Qun and Yang Xian-Chun and Xu Man-Wu", title = "A framework for dynamic software architecture-based self-healing", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--4", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083007", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Self-healing is an active topic in areas like large complex distributed systems and continuous running systems, such as telephone switching systems, banking systems, mobile embedded systems. The architecture-based self-healing approach uses the architectural model as a basis for system reconfiguration. In architecture-based self-healing systems, the architectures may also be changed. The architectures that changes during system running are dynamic software architectures. In this paper, an approach of self-healing system based on dynamic software architecture is proposed. To make the system architecture observable and controllable, architectural reflection is used. Meanwhile, architectural style is used to ensure the consistency and correctness of the changes.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Raja:2005:IQL, author = "Uzma Raja and Evelyn Barry", title = "Investigating quality in large-scale Open Source Software", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--4", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083268", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/gnu.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Open Source Software (OSS) development and use has increased significantly over recent years. Therefore, there is a need to analyze and understand these projects. Software quality is an important characteristic effecting overall system lifecycle cost, performance and useful life. The existing models for software quality are based on empirical analysis of propriety source software (PSS), and need to be verified in OSS. Research on PSS has revealed that software quality declines, as it ages. Part of this decline is associated with the lifecycle maintenance activities that introduce change in the size and complexity of the system, while introducing software errors into modified system. Lifecycle maintenance activities in OSS systems are processed under a very different paradigm. We are interested in investigating the effects of maintenance activities on OSS project outcomes. Linux is one of the most popular and complex OSS project available. In our research, we investigate the characteristics of Linux source code. In this position paper we present some preliminary results of the effects of various types of maintenance activities on quality of Linux software.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Requile-Romanczuk:2005:TKB, author = "Annya R{\'e}quil{\'e}-Romanczuk and Alejandra Cechich and Anne Dourgnon-Hanoune and Jean-Christophe Mielnik", title = "Towards a knowledge-based framework for {COTS} component identification", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--4", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1082951", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The adoption of COTS-based development brings with it many challenges about the identification and finding of candidate components for reuse. Particularly, the first stage in the identification of COTS candidates is commonly carried out by dealing with unstructured information on the Web, which makes the evaluation process highly costing and not efficient when applying complex evaluation criteria. In this position paper, we identify some key elements to support a standardized framework towards a knowledge-based process for COTS component identification. Further discussion would improve our research before moving into developing the framework.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Segal:2005:TEP, author = "Judith Segal and Antony Grinyer and Helen Sharp", title = "The type of evidence produced by empirical software engineers", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--4", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083176", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper reports on the research published between the years 1997 and 2003 inclusive in the journal of Empirical Software Engineering, drawing on the taxonomy developed by Glass et al. in [3]. We found that the research was somewhat narrow in topic with about half the papers focusing on measurement/metrics, review and inspection; that researchers were almost as interested in formulating as in evaluating; that hypothesis testing and laboratory experiments dominated evaluations; that research was not very likely to focus on people and extremely unlikely to refer to other disciplines. We discuss our findings in the context of making empirical software engineering more relevant to practitioners.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Sutcliffe:2005:ECB, author = "Alistair Sutcliffe", title = "Evaluating the costs and benefits of end-user development", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--4", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083241", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper describes a cost benefit modelling approach to introducing EUD technology. Costs are incurred in configuring and learning the technology then in developing and debugging applications. These are set against the perceived and actual benefits of producing better applications that fit end user requirements. The approach is illustrated with a case study of a web Content Management System.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Vahaniitty:2005:TFC, author = "Jarno V{\"a}h{\"a}niitty", title = "A tentative framework for connecting long-term business and product planning with iterative and incremental software product development", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--4", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083097", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "For a company in the software product business, it is essential to understand how to connect business management and software development [17] and employ a solid, value-based approach in its decision-making. However, software engineering literature (SE) commonly addresses what should be done at the ``floor level'' and leaves the link to business and product management unaddressed [14]. Also, existing software development models mostly adhere to the viewpoint of individual development projects and thus fail to sufficiently address common product development concerns such as multi-project or project portfolio management [20].", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{VanHilst:2005:RMS, author = "Michael VanHilst and Pankaj K. Garg and Christopher Lo", title = "Repository mining and Six Sigma for process improvement", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--4", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083157", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "In this paper, we propose to apply artifact mining in a global development environment to support measurement based process management and improvement, such as SEI/CMMI's GQ(I)M and Six Sigma's DMAIC. CMM has its origins in managing large software projects for the government and emphasizes achieving expected outcomes. In GQM, organizational goals are identified. The appropriate questions with corresponding measurements are defined and collected. Six Sigma has its origins in manufacturing and emphasizes reducing cost and defects. In DMAIC, a major component of a Six Sigma approach, sources of waste are identified. Then changes are made in the process to reduce effort and increase the quality of the product produced. GQM and Six Sigma are complementary. Both approaches rely heavily on the measurement of input and output metrics. Mining development artifacts can provide usable metrics for the application of DMAIC and GQM in the software domain.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Ying:2005:EHC, author = "Annie T. T. Ying and James L. Wright and Steven Abrams", title = "An exploration of how comments are used for marking related code fragments", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--4", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083141", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "A software developer performing a change task to a system very often has to examine a concern that is scattered across the source code of the system. Although many mechanisms attempt to alleviate the problem of dealing with scattered code, many software developers are still using more ad-hoc approaches to mark related code. In this paper, we explore how developers use comments to mark related code. We found that developers use two basic kinds of conventions to mark related code in comments: by explicitly stating relationships in the comment and by using similar comments in related code elements. These conventions have several major issues. However, we observe that using comments to mark related code fragments offers several benefits. We hope that our observations can give insights into building better tool support for scattered code fragments.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Zheng:2005:PIC, author = "Jiang Zheng and Brian Robinson and Laurie Williams and Karen Smiley", title = "A process for identifying changes when source code is not available", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--4", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1082957", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Various regression test selection techniques have been developed and shown to improve fault detection effectiveness. The majority of these test selection techniques rely on access to source code for change identification. However, when new releases of COTS components are made available for integration and testing, source code is often not available to guide regression test selection. This paper describes a process for identifying changed functions when code is not available. This change information is beneficial for selecting white-box regression tests of customer/glue code. This process is applicable when COTS licensing agreements do not preclude decompilation. A feasibility study of the process was conducted with four releases of a medium-scale internal ABB product. The results of the feasibility study indicate that this process can be effective in identifying changed functions.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Abraham:2005:HCU, author = "Robin Abraham and Martin Erwig", title = "How to communicate unit error messages in spreadsheets", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--5", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083243", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "In previous work we have designed and implemented an automatic reasoning system for spreadsheets, called UCheck, that infers unit information for cells in a spreadsheet. Based on this unit information, UCheck can identify cells in the spreadsheet that contain erroneous formulas. However, the information about an erroneous cell is reported to the user currently in a rather crude way by simply coloring the cell, which does not tell anything about the nature of error and thus offers no help to the user as to how to fix it. In this paper we describe an extension of UCheck, called UFix, which improves the error messages reported to the spreadsheet user dramatically. The approach essentially consists of three steps: First, we identify different categories of spreadsheet errors from an end-user's perspective. Second, we map units that indicate erroneous formulas to these error categories. Finally, we create customized error messages from the unit information and the identified error category. In many cases, these error messages also provide suggestions on how to fix the reported errors.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Alspaugh:2005:SSM, author = "Thomas A. Alspaugh and Debra J. Richardson and Thomas A. Standish", title = "Scenarios, state machines and purpose-driven testing", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--5", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083185", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Testing is a necessary but frequently expensive activity that is needed to ensure software quality. For large, complex systems, testing based on covering all control flow or all data flow paths is intractable. But focusing on tests that are purpose-driven, namely on tests that are derived from system requirements and that test whether requirements goals are met, significantly reduces the size of a ``complete'' test suite for the system while simultaneously increasing confidence that the system performs as expected. Scenarios and state machines provide a useful framework for modeling and analysis of purpose-driven testing. Scenarios are sequences of events that represent purposeful uses of a system (or of its components, to any desired degree of detail). State machines, in the form of recursive transition diagrams, can model the successive refinement of requirements goals into architectures and implementations, and testing them using purpose-driven scenario-based tests provides early validation of that refinement. Formulating sets of scenarios that capture and represent a complete-enough set of requirements ensures that a test suite covering them explores all important regions of a system's state space. The scenario-based tests will predict with high confidence which system goals have been met, and, certainly, which have not. This position paper sketches elements of our approach to purpose-driven testing using scenarios and state machines.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Antoniol:2005:LPC, author = "Giuliano Antoniol and Vincenzo Fabio Rollo and Gabriele Venturi", title = "Linear predictive coding and cepstrum coefficients for mining time variant information from software repositories", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--5", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083156", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper presents an approach to recover time variant information from software repositories. It is widely accepted that software evolves due to factors such as defect removal, market opportunity or adding new features. Software evolution details are stored in software repositories which often contain the changes history. On the other hand there is a lack of approaches, technologies and methods to efficiently extract and represent time dependent information. Disciplines such as signal and image processing or speech recognition adopt frequency domain representations to mitigate differences of signals evolving in time. Inspired by time-frequency duality, this paper proposes the use of Linear Predictive Coding (LPC) and Cepstrum coefficients to model time varying software artifact histories. LPC or Cepstrum allow obtaining very compact representations with linear complexity. These representations can be used to highlight components and artifacts evolved in the same way or with very similar evolution patterns. To assess the proposed approach we applied LPC and Cepstral analysis to 211 Linux kernel releases (i.e., from 1.0 to 1.3.100), to identify files with very similar size histories. The approach, the preliminary results and the lesson learned are presented in this paper.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Barreto:2005:SSP, author = "Ahilton Barreto and M{\'a}rcio Barros and Cl{\'a}udia Werner", title = "Staffing a software project: a constraint satisfaction approach", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--5", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083093", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper presents an optimization based approach to support staffing a software project. The approach takes into account the characteristics of the project activities, the characteristics of the available human resources, and constraints established by the software development organization in charge of the project. According to these needs, the project manager selects a utility function to be maximized or minimized by the optimizer. We propose several utility functions, each addressing specific values which can be sought by the development organization.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Beydoun:2005:SGM, author = "Ghassan Beydoun and Cesar Gonzalez-Perez and Graham Low and Brian Henderson-Sellers", title = "Synthesis of a generic {MAS} metamodel", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--5", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1082970", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Method engineering, which focuses on project-specific methodology construction from existing method fragments, is an appealing approach to organize, appropriately access and effectively harness the software engineering knowledge of MAS methodologies. With the objective of applying method engineering for developing an MAS, in this paper we introduce a generic metamodel to serve as a representational infrastructure to unify existing MAS methodologies into a single specification. Our metamodel does not focus on any class of MAS, nor does it impose any restrictions on the format of the system requirements; rather, our metamodel is an abstraction of how any MAS is structured and behaves both at design time and run-time.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Bolin:2005:NPE, author = "Michael Bolin and Robert C. Miller", title = "Naming page elements in end-user web automation", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--5", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083233", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The names of commands and objects are vital to the usability of a programming system. We are developing a web automation system in which users need to identify web page elements, such as hyperlinks and form fields, in pages written by other designers. Using a survey of 40 users asking them to provide names for page elements, we found that users' names varied widely. However, when names were restricted to using only visible words from the web page. we were able to develop name resolution techniques that automatically find the desired page element given the user's name for it, striking a balance between usability and the precision required by the programming system.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Chen:2005:ETM, author = "T. Y. Chen and F.-C. Kuo and Zhi Quan Zhou", title = "An effective testing method for end-user programmers", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--5", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083236", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "End-user programmers do not have extensive knowledge of various software testing methodologies used by professional testers. While they are creating the vast majority of software today, errors are pervasive in the programs due to the lack of testing techniques readily adoptable by end-user programmers. In this article we argue that the technique of metamorphic testing is both practical and effective for end-user programmers.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Conklin:2005:CUO, author = "Megan Conklin and James Howison and Kevin Crowston", title = "Collaboration using {OSSmole}: a repository of {FLOSS} data and analyses", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--5", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083164", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper introduces a collaborative project OSSmole which collects, shares, and stores comparable data and analyses of free, libre and open source software (FLOSS) development for research purposes. The project is a clearinghouse for data from the ongoing collection and analysis efforts of many disparate research groups. A collaborative data repository reduces duplication and promote compatibility both across sources of FLOSS data and across research groups and analyses. The primary objective of OSSmole is to mine FLOSS source code repositories and provide the resulting data and summary analyses as open source products. However, the OSSmole data model additionally supports donated raw and summary data from a variety of open source researchers and other software repositories. The paper first outlines current difficulties with the typical quantitative FLOSS research process and uses these to develop requirements for such a collaborative data repository. Finally, the design of the OSSmole system is presented, as well as examples of current research and analyses using OSSmole.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Costa:2005:RBE, author = "H{\'e}lio R. Costa and Marcio de O. Barros and Guilherme H. Travassos", title = "A risk based economical approach for evaluating software project portfolios", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--5", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083092", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Software engineers have been applying economical concepts to shed light upon the value-related aspects of software development processes. Based on credit risk analysis concepts, we present an approach to estimate the probability distribution of losses and earnings that can be incurred by a software development organization according to its software project portfolio. Such approach is built upon an analogy that compares software projects to unhedged loans issued to unreliable borrowers. As loans may not be paid back, software projects may fail, leading their development organizations to losses. By applying this approach, an organization may estimate the variability of its expected profits related to a set of software projects. Initial calibrating data were acquired by accomplishing an experimental study.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Desouza:2005:MRS, author = "Kevin C. Desouza and Yukika Awazu", title = "Managing radical software engineers: between order and chaos", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--5", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083110", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Innovations in software engineering organizations frequently emerge from risky behavior. Most often, these risks are taken by only a small percentage of the software engineering staff --- radical engineers (REs). They go against the status quo, experiment with new methods or technologies, and have the burden of bringing the innovations into the mainstream of the organization. Most organizations however, do a poor job of adequately and effectively managing radical engineers (REs). They can be found at either end of the order-chaos continuum. Successful software organizations are those that are able to balance between the extremes and manage REs effectively. In this paper, we discuss lessons learnt in managing REs from software organizations.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Fischer:2005:MED, author = "Michael Fischer and Johann Oberleitner and Jacek Ratzinger and Harald Gall", title = "Mining evolution data of a product family", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--5", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083145", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Diversification of software assets through changing requirements impose a constant challenge on the developers and maintainers of large software systems. Recent research has addressed the mining for data in software repositories of single products ranging from fine- to coarse-grained analyses. But so far, little attention has been payed to mining data about the evolution of product families. In this work, we study the evolution and commonalities of three variants of the BSD (Berkeley Software Distribution), a large open source operating system. The research questions we tackle are concerned with how to generate high level views of the system discovering and indicating evolutionary highlights. To process the large amount of data, we extended our previously developed approach for storing release history information to support the analysis of product families. In a case study we apply our approach on data from three different code repositories representing about 8.5GB of data and 10 years of active development.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Fisher:2005:ESC, author = "Marc Fisher and Gregg Rothermel", title = "The {EUSES} spreadsheet corpus: a shared resource for supporting experimentation with spreadsheet dependability mechanisms", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--5", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083242", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "In recent years several tools and methodologies have been developed to improve the dependability of spreadsheets. However, there has been little evaluation of these dependability devices on spreadsheets in actual use by end users. To assist in the process of evaluating these methodologies, we have assembled a corpus of spreadsheets from a variety of sources. We have ensured that these spreadsheets are suitable for evaluating dependability devices in Microsoft Excel (the most commonly used commercial spreadsheet environment) and have measured a variety of feature of these spreadsheets to aid researchers in selecting subsets of the corpus appropriate to their needs.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{German:2005:FDU, author = "Daniel M. German and Davor Cubrani{\'c} and Margaret-Anne D. Storey", title = "A framework for describing and understanding mining tools in software development", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--5", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083160", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "We propose a framework for describing, comparing and understanding tools for the mining of software repositories. The fundamental premise of this framework is that mining should be done by considering the specific needs of the users and the tasks to be supported by the mined information. First, different types of users have distinct needs, and these needs should be taken into account by tool designers. Second, the data sources available, and mined, will determine if those needs can be satisfied. Our framework is based upon three main principles: the type of user, the objective of the user, and the mined information. This framework has the following purposes: to help tool designers in the understanding and comparison of different tools, to assist users in the assessment of a potential tool; and to identify new research areas. We use this framework to describe several mining tools and to suggest future research directions.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Giese:2005:RSC, author = "Holger Giese and Ekkart Kindler and Florian Klein and Robert Wagner", title = "Reconciling scenario-centered controller design with state-based system models", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--5", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083187", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Scenarios are an effective means for defining the expected behavior of a system during the design and implementation phase. The 'Come Let's Play' approach has demonstrated that scenarios can fully define a system's behavior. In practice, however, the expected behavior defined by scenarios must be achieved in the context of existing components that cannot be changed. Therefore, the scenario-based approach must be reconciled with state-based models. In this paper, we present such an approach for the design of flexible production systems which employs scenarios not only for describing and synthesizing the required system functionality but also for recording observed behavior for analysis or 3D-visualization. We illustrate our approach using an existing material flow system which is a major part of a real production system.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Gorg:2005:EDR, author = "Carsten G{\"o}rg and Peter Wei{\ss}gerber", title = "Error detection by refactoring reconstruction", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--5", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083148", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "In many cases it is not sufficient to perform a refactoring only at one location of a software project. For example, refactorings may have to be performed consistently to several classes in the inheritance hierarchy, e.g. subclasses or implementing classes, to preserve equal behavior. In this paper we show how to detect incomplete refactorings --- which can cause long standing bugs because some of them do not cause compiler errors --- by analyzing software archives. To this end we reconstruct the class inheritance hierarchies, as well as refactorings on the level of methods. Then, we relate these refactorings to the corresponding hierarchy in order to find missing refactorings and thus, errors and inconsistencies that have been introduced in a software project at some point of the history. Finally. we demonstrate our approach by case studies on two open source projects.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Gurguis:2005:TAW, author = "Sherif A. Gurguis and Amir Zeid", title = "Towards autonomic web services: achieving self-healing using web services", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--5", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083069", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Autonomic Computing was introduced to reduce the complexity of managing computing systems; however, the heterogeneous nature existing in most computing systems introduces some difficulty to achieve this target. Moreover, the notion of service as a computing component that seamlessly collaborates with other services in a loosely-coupled manner to perform complicated tasks was introduced by Service-Oriented Architecture (SOA); and then, fertilized by Web Services that added open standards to different roles and operations involved in a community of services; however, in order to gain the expected benefits of Web Services, the latter should be able to survive in normal and abnormal conditions. Our research aims at finding a hyper solution to that two-dimensional problem by allowing both Autonomic Computing and Web Services paradigms to lend each other their distinct features. First, Web Services lend Autonomic Computing the concept of platform-independency; second, Autonomic Computing lends Web Services the attributes providing self-management. The focus of this paper will be on how the self-healing autonomic attribute can be implemented and applied using Web Services.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Hamza:2005:SCE, author = "Haitham S. Hamza", title = "Separation of concerns for evolving systems: a stability-driven approach", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--5", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083137", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper describes an approach for separating and modeling concerns while considering system evolution. The objective is to reduce the need for re-separation and re-modeling of concerns when the system evolves in response to new or modified requirements. Software Stability Model (SSM) and the theory of Formal Concept Analysis (FCA) are used to analyze and encapsulate concerns into modules that are less likely to change over time. The approach is described and demonstrated through an example.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Harrison:2005:CMC, author = "William Harrison and Harold Ossher and Stanley Sutton and Peri Tarr", title = "Concern modeling in the concern manipulation environment", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--5", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083134", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The Concern Manipulation Environment (CME) is an AOSD environment in which software is organized and manipulated in terms of concerns. This paper is about ConMan, the CME concern manager, which supports the identification, definition, encapsulation, extraction and composition of concerns. ConMan models software in terms of concerns, relationships, constraints, units, artifacts, and associated information. The concern model is multidimensional and concerns can be defined extensionally and/or intensionally. ConMan is neutral with respect to artifact types and formalisms, and it can be used with both aspect-oriented and non-aspect oriented software and methods. ConMan is intended to serve both as a tool for directly modeling concerns and as a platform for developing alternative concern-modeling approaches.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Hayes:2005:TMS, author = "Jane Huffman Hayes and Alex Dekhtyar and Senthil Sundaram", title = "Text mining for software engineering: how analyst feedback impacts final results", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--5", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083153", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The mining of textual artifacts is requisite for many important activities in software engineering: tracing of requirements; retrieval of components from a repository; location of manpage text for an area of question, etc. Many such activities leave the ``final word'' to the analyst --- have the relevant items been retrieved? are there other items that should have been retrieved? When analysts become a part of the text mining process, their decisions on the relevance of retrieved elements impact the final outcome of the activity. In this paper, we undertook a pilot study to examine the impact of analyst decisions on the final outcome of a task.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Hernandez:2005:EUT, author = "Francisco Hern{\'a}ndez and Purushotham Bangalore and Kevin Reilly", title = "End-user tools for grid computing", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--5", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083237", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The present work describes an approach to simplifying the development and deployment of applications for the Grid. Our approach aims at hiding accidental complexities (e.g., low-level Grid technologies) met when developing these kinds of applications. To realize this goal, the work focuses on the development of end-user tools using concepts of domain engineering and domain-specific modeling which are modern software engineering methods for automating the development of software. This work is an attempt to contribute to the long term research goal of empowering users, to create complex applications for the Grid without depending on the expertise of support teams or on hand-crafted solutions.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Hindle:2005:SFM, author = "Abram Hindle and Daniel M. German", title = "{SCQL}: a formal model and a query language for source control repositories", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--5", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083161", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Source Control Repositories are used in most software projects to store revisions to source code files. These repositories operate at the file level and support multiple users. A generalized formal model of source control repositories is described herein. The model is a graph in which the different entities stored in the repository become vertices and their relationships become edges. We then define SCQL, a first order, and temporal logic based query language for source control repositories. We demonstrate how SCQL can be used to specify some questions and then evaluate them using the source control repositories of five different large software projects.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Huang:2005:DHM, author = "LiGuo Huang and Barry Boehm", title = "Determining how much software assurance is enough?: a value-based approach", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--5", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083095", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "A classical problem facing many software projects is to determine when to stop testing and release the product for use. Risk analyses address such ``how much is enough?'' questions, by balancing the risk exposure of doing too little with the risk exposure of doing too much. However, it's difficult to quantify the relative probabilities and sizes of loss in order to provide practical approaches for determining a risk-balanced ``sweet spot'' operating point. In this paper, we provide a quantitative approach based on the COCOMO II cost estimation model, the COQUALMO quality estimation model and the Value Estimating Relationships.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Huang:2005:MVH, author = "Shih-Kun Huang and Kang-min Liu", title = "Mining version histories to verify the learning process of Legitimate Peripheral Participants", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--5", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083158", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Since code revisions reflect the extent of human involvement in the software development process, revision histories reveal the interactions and interfaces between developers and modules. We therefore divide developers and modules into groups according to the revision histories of the open source software repository, for example, sourceforge.net. To describe the interactions in the open source development process, we use a representative model, Legitimate Peripheral Participation (LPP) [6], to divide developers into groups such as core and peripheral teams, based on the evolutionary process of learning behavior. With the conventional module relationship, we divide modules into kernel and non-kernel types (such as UI). In the past, groups of developers and modules have been partitioned naturally with informal criteria. In this work, however, we propose a developer-module relationship model to analyze the grouping structures between developers and modules. Our results show some process cases of relative importance on the constructed graph of project development. The graph reveals certain subtle relationships in the interactions between core and non-core team developers, and the interfaces between kernel and non-kernel modules.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Jain:2005:DTV, author = "Apurva Jain and Barry Boehm", title = "Developing a theory of value-based software engineering", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--5", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083101", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper presents an initial ``4+1'' theory of value-based software engineering (VBSE) that builds around the stakeholder win-win Theory W, and addresses the questions of ``which values are important?'' and ``how is success assured?'' for a given software engineering enterprise. The central Theory W then draws upon four additional theories --- utility theory (how important are the values?), decision theory (how do stakeholders' values determine decisions?), dependency theory (how do dependencies affect value realization?), and control theory (how to adapt to change and control value realization?).", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Jakobac:2005:SAC, author = "Vladimir Jakobac and Nenad Medvidovic and Alexander Egyed", title = "Separating architectural concerns to ease program understanding", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--5", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083132", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper presents an iterative, user-guided approach to program understanding based on a framework for analyzing and visualizing software systems. The framework is built around a pluggable and extensible set of clues about a given problem domain, execution environment, and/or programming language. The approach leverages two orthogonal architectural views of a system and describes how a proper identification of boundaries for separate concerns helps in reasoning about the system.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{John:2005:EBP, author = "Bonnie E. John", title = "Evidence-based practice in human-computer interaction and evidence maps", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--5", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083181", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "At the onset of evidence-based practice in software engineering, prospective disciples of this approach should inspect and learn from similar attempts in other disciplines. Having participated in the National Cancer Institute's multi-year effort compiling evidence-based guidelines for information-rich web-site design, I bring my personal experiences as a member of that group to the discussions at the workshop. From my experience doing other empirical research, I propose using an evidence map to communicate research questions, the available evidence to answer those questions, the relationship between the questions, and the meaning of different paths through the evidence map. I have used this device for several empirical studies, both in HCI and in software engineering, and have found it to be a useful organization tool that could help in pursuing evidence-based software engineering.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Kagdi:2005:TTA, author = "Huzefa Kagdi and Michael L. Collard and Jonathan I. Maletic", title = "Towards a taxonomy of approaches for mining of source code repositories", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--5", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083159", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Source code version repositories provide a treasure of information encompassing the changes introduced in the system throughout its evolution. These repositories are typically managed by tools such as CVS. However, these tools identify and express changes in terms of physical attributes i.e., file and line numbers. Recently, to help support the mining of software repositories (MSR), researchers have proposed methods to derive and express changes from source code repositories in a more source-code ``aware'' manner (i.e., syntax and semantic). Here, we discuss these MSR techniques in light of what changes are identified, how they are expressed, the adopted methodology, evaluation, and results. This work forms the basis for a taxonomic description of MSR approaches.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Keil:2005:PAT, author = "Patrick Keil", title = "Principal agent theory and its application to analyze outsourcing of software development", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--5", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083094", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Much has been written on process models, project management or tool support to increase the return on investment in software through higher quality of the development process and the resulting software or system. Yet, we lack understanding in the underlying economic principles; e.g., an external firm paid to develop software for someone else tries to maximize their own profit instead of the contractor's. These divergences of interests result in projects that consume more time and money and meet fewer requirements than expected. In this paper, we try to fill the gap by providing an insight into the theory and presenting applicable suggestions how to diminish or avoid the problems that arise when selecting the 'best' contractor and during the project. Basic advises on the formulation of contracts can be derived.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Kiebusch:2005:MSS, author = "Sebastian Kiebusch and Bogdan Franczyk and Andreas Speck", title = "Metrics for software system families", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--5", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083098", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Due to the fact that the complexity and development effort of software systems is constantly increasing, software components have to be reused. Software system families are a promising solution to gain a cost reduction by reusing common software assets in different variants of similar products. To support the economic management of this development approach we need software metrics to estimate the effort of building software system families. In general techniques of size measurement and cost estimation for software system families are highly insufficient. Furthermore measurement and estimation approaches do not support a process orientation which characterizes the software of many domains. Therefore this paper describes the Process-Family-Points approach to measure the size and estimate the effort of process focused software system families in multiple domains. Every single step of this new metrics approach will be illustrated from a high level perspective to communicate a conceptional view of this innovative sizing and estimating method.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Kim:2005:ASC, author = "Sunghun Kim and E. James Whitehead and Jennifer Bevan", title = "Analysis of signature change patterns", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--5", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083154", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Software continually changes due to performance improvements, new requirements, bug fixes, and adaptation to a changing operational environment. Common changes include modifications to data definitions, control flow, method/function signatures, and class/file relationships. Signature changes are notable because they require changes at all sites calling the modified function, and hence as a class they have more impact than other change kinds. We performed signature change analysis over software project histories to reveal multiple properties of signature changes, including their kind, frequency, and evolution patterns. These signature properties can be used to alleviate the impact of signature changes. In this paper we introduce a taxonomy of signature change kinds to categorize observed changes. We report multiple properties of signature changes based on an analysis of eight prominent open source projects including the Apache HTTP server, GCC, and Linux 2.5 kernel.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Kim:2005:UCG, author = "Miryung Kim and David Notkin", title = "Using a clone genealogy extractor for understanding and supporting evolution of code clones", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--5", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083146", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Programmers often create similar code snippets or reuse existing code snippets by copying and pasting. Code clones --- syntactically and semantically similar code snippets --- can cause problems during software maintenance because programmers may need to locate code clones and change them consistently. In this work, we investigate (1) how code clones evolve, (2) how many code clones impose maintenance challenges, and (3) what kind of tool or engineering process would be useful for maintaining code clones. Based on a formal definition of clone evolution, we built a clone genealogy tool that automatically extracts the history of code clones from a source code repository (CVS). Our clone genealogy tool enables several analyses that reveal evolutionary characteristics of code clones. Our initial results suggest that aggressive refactoring may not be the best solution for all code clones; thus, we propose alternative tool solutions that assist in maintaining code clones using clone genealogy information.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Koponen:2005:OSS, author = "Timo Koponen and Virpi Hotti", title = "Open source software maintenance process framework", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--5", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083265", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/gnu.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "To identify the Open Source maintenance process two well known Open Source projects Apache HTTP server and Mozilla web browser were studied. The Open Source software maintenance process is formal even anyone can submit modifications or defect reports to Open Source software projects. We assume that the Open Source maintenance process is similar to the maintenance process defined by the ISO/IEC. In the case studies. four activities were found similar to the activities of the ISO/IEC Maintenance process. This paper presents the Open Source maintenance process framework. The framework is exemplified with the ISO/IEC Maintenance process framework.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Koru:2005:IEM, author = "A. G{\"u}nes Koru and Hongfang Liu", title = "An investigation of the effect of module size on defect prediction using static measures", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--5", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083172", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "We used several machine learning algorithms to predict the defective modules in five NASA products, namely, CM1, JM1, KC1, KC2, and PC1. A set of static measures were employed as predictor variables. While doing so, we observed that a large portion of the modules were small, as measured by lines of code (LOC). When we experimented on the data subsets created by partitioning according to module size, we obtained higher prediction performance for the subsets that include larger modules. We also performed defect prediction using class-level data for KC1 rather than the method-level data. In this case, the use of class-level data resulted in improved prediction performance compared to using method-level data. These findings suggest that quality assurance activities can be guided even better if defect prediction is performed by using data that belong to larger modules.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Langari:2005:QCF, author = "Zarrin Langari and Anne Banks Pidduck", title = "Quality, cleanroom and formal methods", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--5", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083302", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "We have proposed a new approach to software quality combining cleanroom methodologies and formal methods. Cleanroom emphasizes defect prevention rather than defect removal. Formal methods use mathematical and logical formalizations to find defects early in the software development lifecycle. These two methods have been used separately to improve software quality since the 1980's. The combination of the two methods may provide further quality improvements through reduced software defects. This result, in turn, may reduce development costs, improve time to market, and increase overall product excellence. Defects in computer software are costly. Their detection is usually postponed to the test phase, and their removal is also a very time consuming and expensive task. Cleanroom software engineering is a methodology which relies on preventing the defects, rather than removing them. It is based on incremental development and it emphasizes the development phase. An enhancement to this methodology is presented in this paper, which combines formal methods and cleanroom. The efficiency of the new model rests on an appropriate logical representation, to write the specification of the intended system. In the new model, design plans are formally verified before any implementation is done. The advantages of finding defects in the early stages are decreased cost and increased quality. Results show that, by using formal methods, a higher quality will be achieved and the software project can also benefit from the existing mechanized tools of these two techniques.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Law:2005:EAP, author = "Amy Law and Raylene Charron", title = "Effects of agile practices on social factors", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--5", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083115", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Programmers are living in an age of accelerated change. State of the art technology that was employed to facilitate projects a few years ago are typically obsolete today. Presently, there are requirements for higher quality software with less tolerance for errors, produced in compressed timelines with fewer people. Therefore, project success is more elusive than ever and is contingent upon many key aspects. One of the most crucial aspects is social factors. These social factors, such as knowledge sharing. motivation, and customer collaboration, can be addressed through agile practices. This paper will demonstrate two successful industrial software projects which are different in all aspects; however, both still apply agile practices to address social factors. The readers will see how agile practices in both projects were adapted to fit each unique team environment. The paper will also provide lessons learned and recommendations based on retrospective reviews and observations. These recommendations can lead to an improved chance of success in a software development project.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Liu:2005:MCS, author = "Jing (Janet) Liu and Robyn R. Lutz and Jeffrey M. Thompson", title = "Mapping concern space to software architecture: a connector-based approach", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--5", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083126", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Concern modeling plays an important role in software design, implementation and maintenance. Hyperspace has provided a strong conceptual framework to separate concerns in multi-dimensional levels. The contribution of this work is to create an architectural element, called a concern connector, to support the implementation of hyperspace in the architectural design phase. The paper makes three basic claims for this idea. First, using concern connectors allows the scope of each hyperslice in a certain concern dimension to be defined and stored. Second, the concern interactions within each hypermodule can be specified in the concern connectors. Third, the association of concern modeling with this distinctive architectural element improves the flexibility of concern maintenance and evolution during the development process. To test these claims the paper investigates the use of concern connectors in a real-world architectural model. The results show how concern connectors implement concern modeling in the architectural design.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{MacGregor:2005:CPS, author = "Eve MacGregor and Yvonne Hsieh and Philippe Kruchten", title = "Cultural patterns in software process mishaps: incidents in global projects", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--5", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083116", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper describes a current and ongoing research project being conducted at the University of British Columbia, Canada. The paper begins by briefly describing past anthropological and sociological culture research. This research will inform our current exploration into the issues surrounding culture and its role in Global Software Development efforts. It then clarifies why this research is particularly important. The paper continues with a description of the current phase of this research, which is an exploratory qualitative approach rooted in Grounded Theory, and of the next phase, which will be a more quantitative approach looking at specific ``problem areas'' that were identified during the first phase.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Marin:2005:AAR, author = "Marius Marin and Leon Moonen and Arie van Deursen", title = "An approach to aspect refactoring based on crosscutting concern types", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--5", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083140", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "We argue for the importance of organizing generic crosscutting concerns by distinctive properties and describing them as types. A type's properties consist of a general intent, an implementation idiom criteria, and one (desired) aspect language mechanism to address the concerns within the specific type. We argue the usefulness of this approach for aspect refactoring, and in the areas of concern identification and aspect languages development.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Massey:2005:LAL, author = "Bart Massey", title = "Longitudinal analysis of long-timescale open source repository data", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--5", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083167", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/gnu.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "One of the more unique features of open source software development is the continuity of projects over large time scales and incremental development efforts. For this reason, the open development process provides an interesting environment for investigation of the software development process. The problems of data collection and analysis of two particular long-running repositories, the X Window System and the Nickle Programming Language, are considered here as instructive examples. The use of uniform software tools (CVS/RCS) with open formats and interfaces makes it possible to collect data that provide unique analysis opportunities.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Memmert:2005:CPA, author = "Juri Memmert", title = "Concern patterns and analysis", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--5", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083135", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper describes a few concern patterns to identify latent or missing concerns in a concern model and how they impact the development process.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Mierle:2005:MSC, author = "Keir Mierle and Kevin Laven and Sam Roweis and Greg Wilson", title = "Mining student {CVS} repositories for performance indicators", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--5", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083150", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Over 200 CVS repositories representing the assignments of students in a second year undergraduate computer science course have been assembled. This unique data set represents many individuals working separately on identical projects, presenting the opportunity to evaluate the effects of the work habits captured by CVS on performance. This paper outlines our experiences mining and analyzing these repositories. We extracted various quantitative measures of student behaviour and code quality, and attempted to correlate these features with grades. Despite examining 166 features, we find that grade performance cannot be accurately predicted; certainly no predictors stronger than simple lines-of-code were found.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Morris:2005:RDT, author = "Jennifer Morris and Philip Koopman", title = "Representing design tradeoffs in safety-critical systems", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--5", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083228", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Different fault-tolerance strategies have been shown to be effective at achieving fail-safe behavior in a number of safety-critical application domains with different dependability, service, and cost requirements. A technique for comparing the domain profiles and their fault-tolerance strategies could assist architects of new safety-critical systems in choosing an appropriate fault-tolerance strategy. We suggest an approach using Kiviat graphs to visually represent the dependability, service, and cost profile of a system, and show how such a graph can be used to analyze automotive x-by-wire applications.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Neamtiu:2005:USC, author = "Iulian Neamtiu and Jeffrey S. Foster and Michael Hicks", title = "Understanding source code evolution using abstract syntax tree matching", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--5", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083143", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Mining software repositories at the source code level can provide a greater understanding of how software evolves. We present a tool for quickly comparing the source code of different versions of a C program. The approach is based on partial abstract syntax tree matching, and can track simple changes to global variables, types and functions. These changes can characterize aspects of software evolution useful for answering higher level questions. In particular, we consider how they could be used to inform the design of a dynamic software updating system. We report results based on measurements of various versions of popular open source programs. including BIND, OpenSSH, Apache, Vsftpd and the Linux kernel.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Neubauer:2005:BPB, author = "Thomas Neubauer and Markus Klemen and Stefan Biffl", title = "Business process-based valuation of {IT-security}", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--5", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083099", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Growing business integration raises the need for secure business processes as security problems can affect the profit and the reputation of a company. However, decisions regarding a reasonable level of security in a business environment are often made in a value-neutral way. This paper presents a framework for the valuation of cost-benefit of various security levels with business processes. The framework can be used for planning security levels in software development and allows further continuous monitoring and improvement of cost-benefit of security measures along with operative business processes.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Ohba:2005:TMC, author = "Masaru Ohba and Katsuhiko Gondow", title = "Toward mining ``concept keywords'' from identifiers in large software projects", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--5", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083151", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "We propose the Concept Keyword Term Frequency/Inverse Document Frequency (ckTF/IDF) method as a novel technique to efficiency mine concept keywords from identifiers in large software projects. ckTF/IDF is suitable for mining concept keywords, since the ckTF/IDF is more lightweight than the TF/IDF method, and the ckTF/IDF's heuristics is tuned for identifiers in programs. We then experimentally apply the ckTF/IDF to our educational operating system udos, consisting of around 5,000 lines in C code, which produced promising results; the udos's source code was processed in 1.4 seconds with an accuracy of around 57\%. This preliminary result suggests that our approach is useful for mining concept keywords from identifiers, although we need more research and experience.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Ohira:2005:ACP, author = "Masao Ohira and Naoki Ohsugi and Tetsuya Ohoka and Ken-ichi Matsumoto", title = "Accelerating cross-project knowledge collaboration using collaborative filtering and social networks", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--5", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083163", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Vast numbers of free/open source software (F/OSS) development projects use hosting sites such as Java.net and Source-Forge.net. These sites provide each project with a variety of software repositories (e.g. repositories for source code sharing, bug tracking, discussions, etc.) as a media for communication and collaboration. They tend to focus on supporting rich collaboration among members in each project. However, a majority of hosted projects are relatively small projects consisting of few developers and often need more resources for solving problems. In order to support cross-project knowledge collaboration in F/OSS development, we have been developing tools to collect data of projects and developers at SourceForge, and to visualize the relationship among them using the techniques of collaborative filtering and social networks. The tools help a developer identify ``who should I ask?'' and ``what can I ask?'' and so on. In this paper, we report a case study of applying the tools to F/OSS projects data collected from SourceForge and how effective the tools can be used for helping cross-project knowledge collaboration.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Painter:2005:MSP, author = "Robert R. Painter and David Coppit", title = "A model for software plans", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--5", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083128", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Even in well-designed software, some concerns can not be easily encapsulated due to their dependence on surrounding context. Such concerns are intermingled with each other and the context code, making it difficult for developers to reason independently about them. We have introduced software plans as an editor-based approach for addressing the tangling of context-dependent concerns. Software plans provide programmers with partial views of the overall software which present only that code related to concerns of current interest. The problem we address is that the traditional sequence-of-characters representation for code is poorly suited for software plans. It lacks the ability to accurately model the concerns associated with a code block, the relationships between code blocks, and the notion of multiple independent plans. In this paper, we present a formally-defined code/concern model that supports these capabilities and more. Using this model, we were able to implement a prototype editing tool that supports software plans.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Pazos-Arias:2005:ERS, author = "Jos{\'e} J. Pazos-Arias and Jorge Garc{\'\i}a-Duque and Mart{\'\i}n L{\'o}pez-Nores", title = "Eliciting requirements and scenarios using the {SCTL}-{MUS} methodology: the shuttle system case study", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--5", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083189", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The development of complex systems demands methodologies that provide convenient support to the stakeholders in the creative tasks. In this paper, we present a methodology for the incremental elicitation of requirements and scenarios, driven by the integration checks performed over a state machine that represents the global behavior of the desired system.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Pazos-Arias:2005:LCC, author = "Jos{\'e} J. Pazos-Arias and Jorge Garc{\'\i}a-Duque and Mart{\'\i}n L{\'o}pez-Nores", title = "Locating crosscutting concerns in the formal specification of distributed reactive systems", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--5", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083130", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Requirements specification is a stage of software development in which the different concerns involved with a system are especially present. Commonly, the specification is conceived as an incremental process, in which the developers progressively add requirements until reaching a description of the system that satisfies their needs and expectations. In this paper, we introduce a semi-automated approach to locate crosscutting concerns at intermediate stages of such an incremental process. The aim is to help the developers go on with the specification tasks by focusing effectively their reasoning, avoiding phenomena of tangling and scattering.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Rainer:2005:SEP, author = "Austen Rainer and Dorota Jagielska and Tracy Hall", title = "Software engineering practice versus evidence-based software engineering research", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--5", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083177", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "In this paper, we review four examples in software engineering practice of the lack of use of empirical evidence. We use these examples to support our claims that practitioners and researchers appear to have different values with regards to empirical evidence, and appear to use different criteria when evaluating the credibility of evidence. From our examples, it seems that practitioners need to be persuaded to adopt evidence-based software engineering practices. Consequently, the research community needs to consider strategies for persuading practitioners. Paradoxically for software engineering research, the more effective persuasion strategies may be ones that, initially at least, do not rely on empirical evidence.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Ratzinger:2005:IET, author = "Jacek Ratzinger and Michael Fischer and Harald Gall", title = "Improving evolvability through refactoring", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--5", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083155", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Refactoring is one means of improving the structure of existing software. Locations for the application of refactoring are often based on subjective perceptions such as ``bad smells'', which are vague suspicions of design shortcomings. We exploit historical data extracted from repositories such as CVS and focus on change couplings: if some software parts change at the same time very often over several releases, this data can be used to point to candidates for refactoring. We adopt the concept of bad smells and provide additional change smells. Such a smell is hardly visible in the code, but easy to spot when viewing the change history. Our approach enables the detection of such smells allowing an engineer to apply refactoring on these parts of the source code to improve the evolvability of the software. For that, we analyzed the history of a large industrial system for a period of 15 months, proposed spots for refactorings based on change couplings, and performed them with the developers. After observing the system for another 15 months we finally analyzed the effectiveness of our approach. Our results support our hypothesis that the combination of change dependency analysis and refactoring is applicable and effective.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Robles:2005:DIM, author = "Gregorio Robles and Jesus M. Gonzalez-Barahona", title = "Developer identification methods for integrated data from various sources", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--5", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083162", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Studying a software project by mining data from a single repository has been a very active research field in software engineering during the last years. However, few efforts have been devoted to perform studies by integrating data from various repositories, with different kinds of information, which would, for instance, track the different activities of developers. One of the main problems of these multi-repository studies is the different identities that developers use when they interact with different tools in different contexts. This makes them appear as different entities when data is mined from different repositories (and in some cases, even from a single one). In this paper we propose an approach, based on the application of heuristics, to identify the many identities of developers in such cases, and a data structure for allowing both the anonymized distribution of information, and the tracking of identities for verification purposes. The methodology will be presented in general, and applied to the GNOME project as a case example. Privacy issues and partial merging with new data sources will also be considered and discussed.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Rodrigues:2005:SAS, author = "Gena{\'\i}na N. Rodrigues and David S. Rosenblum and Sebastian Uchitel", title = "Sensitivity analysis for a scenario-based reliability prediction model", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--5", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083229", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "As a popular means for capturing behavioural requirements, scenarios show how components interact to provide system-level functionality. If component reliability information is available, scenarios can be used to perform early system reliability assessment. In previous work we presented an automated approach for predicting software system reliability that extends a scenario specification to model (1) the probability of component failure, and (2) scenario transition probabilities. Probabilistic behaviour models of the system are then synthesized from the extended scenario specification. From the system behaviour model, reliability prediction can be computed. This paper complements our previous work and presents a sensitivity analysis that supports reasoning about how component reliability and usage profiles impact on the overall system reliability. For this purpose, we present how the system reliability varies as a function of the components reliabilities and the scenario transition probabilities. Taking into account the concurrent nature of component-based software systems, we also analyse the effect of implied scenarios prevention into the sensitivity analysis of our reliability prediction technique.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Rossi:2005:WPO, author = "Cristina Rossi and Andrea Bonaccorsi", title = "Why profit-oriented companies enter the {OS} field?: intrinsic vs. extrinsic incentives", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--5", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083269", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper contributes to the literature on Open Source (OS) by providing empirical evidence on the incentives of firms that engage in the field. Data collected by a survey on 146 Italian companies supplying OS solutions (Open Source firms) show that (surprisingly) intrinsic, community-based incentives do play a role but are not, in general, put into practise. We investigate this discrepancy between attitudes and behaviours and single out groups of firms adopting a more consistent behaviour. Our results are in line with the literature on individual motivations in the OS movement.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Saleh:2005:SCS, author = "Mazen Saleh and Hassan Gomaa", title = "Separation of concerns in software product line engineering", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--5", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083139", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "A software product line consists of a family of software systems that have some common functionality and some variable functionality. A better understanding of the product line can be obtained by separating the concerns of the common software, in terms of common features, components, and source code, from the variable software. This paper describes an approach and prototype tool support for separation of concerns and automatic customization of target applications, which are members of the software product line.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Sayre:2005:UMB, author = "Kirk Sayre", title = "Usage model-based automated testing of {C++} templates", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--5", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083277", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The object-oriented design of software in C++ using class templates presents many advantages over non-object-oriented or non-template based software design. However, the testing of template based C++ software involves some unique issues not usually faced during the testing of non-template based software. This paper will describe these testing issues and describe a proposed solution to these issues using a usage model-based automated testing framework.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Scacchi:2005:OBE, author = "Walt Scacchi", title = "{OpenEC\slash B}: electronic commerce and free\slash open source software development", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--5", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083270", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/gnu.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This report investigates Open Source E-Commerce or E-Business capabilities. This entails a case study within one firm that has undertaken an organizational initiative to develop, deploy, use, and support free/open source software systems for Enterprise Resource Planning (ERP), E-Commerce (EC) or E-Business (EB) services. The objective is to identify and characterize the resource-based software product development capabilities that lie at the center of the initiative.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Scaffidi:2005:ACE, author = "Christopher Scaffidi and Mary Shaw and Brad Myers", title = "An approach for categorizing end user programmers to guide software engineering research", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--5", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083232", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Over 64 million Americans used computers at work in 1997, and we estimate this number will grow to 90 million in 2012, including over 55 million spreadsheet and database users and 13 million self-reported programmers. Existing characterizations of this end user population based on software usage provide minimal guidance on how to help end user programmers practice better software engineering. We describe an enhanced method of characterizing the end user population, based on categorizing end users according to the ways they represent abstractions. Since the use of abstraction can facilitate or impede achieving key software engineering goals (such as improving reusability and maintainability), this categorization promises an improved ability to highlight niches of end users with special software engineering capabilities or struggles. We have incorporated this approach into an in-progress survey of end user programming practices.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Scaffidi:2005:VBA, author = "Chris Scaffidi and Ashish Arora and Shawn Butler and Mary Shaw", title = "A value-based approach to predicting system properties from design", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--5", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083096", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Traditional engineering requires evaluating designs before implementing them. Evaluating a design predicts the properties of a reasonable implementation and the value of these properties to a stakeholder. Software engineering has some (though not enough) relevant evaluation techniques but lacks frameworks to compare, develop, and apply those techniques in a manner that respects h value varies by stakeholder. We present an adaptation of economists' value models that, given a design and a development method, predicts value to a client. We give examples supporting our approach. Even in its preliminary state, our approach helps to explain and characterize design evaluation techniques and shows sufficient promise to justify further development.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Schilling:2005:IMD, author = "Albert Schilling and Kelma Madeira and Paula Donegan and K{\^e}nia Sousa and Elizabeth Furtado and Vasco Furtado", title = "An integrated method for designing user interfaces based on tests", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--5", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083280", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "We present artifacts and techniques used for User Interface (UI) evaluation, performed by professionals from the Human-Computer Interaction (HCI) area of study, covering Usability and Semiotic Engineering, which can assist Software Engineering (SE) to perform usability tests earlier. The study of various interaction alternatives, made possible by these artifacts, verifies if they are in accordance with users' preferences and constraints, and usability patterns, and can enhance the probability of achieving a more usable and reliable product.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Segal:2005:TPE, author = "Judith Segal", title = "Two principles of end-user software engineering research", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--5", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083240", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper argues the importance of two principles for end-user software engineering research. The first of these is that not all end-user developers are the same. The second is that research must be grounded in field studies of actual end-user development practice. In keeping with this second principle, our arguments are based on data from our own field studies of practice. These field studies involve a class of end user developer, whom we term 'professional end user developers' and who include scientists, mathematicians and engineers.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Shaikh:2005:LOL, author = "Maha Shaikh and Tony Cornford", title = "Learning\slash organizing in {Linux}: a study of the `spaces in between'", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--5", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083271", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib; http://www.math.utah.edu/pub/tex/bib/unix.bib", abstract = "We assume that open source communities or collectives are somewhat organized. we also assume that such collectives are capable of learning, and indeed do learn. However, it is far more difficult to say exactly where, when and how such learning occurs, or resulting (re-)organizing happens. Drawing on Clegg et al's [1] concept of learning and becoming this paper seeks to show, through a case study of the Linux discussion around version control software, how learning and organizing occur. The paper discusses the Linux community's engagement with BitKeeper and explains aspects of its adoption. In this we address version control software as not merely a collaborative, organizing vehicle but as a part of a generative duality.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Simmons:2005:PGA, author = "Bradley Simmons and Hanan Lutfiyya", title = "Policies, grids and autonomic computing", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--5", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083081", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The goals of resource management fall within the overall aims of autonomic and grid computing, namely the sharing of resources automatically, and the allocation of resources depending on both application and business needs. Resource allocation can be guided by policies which encapsulate decisions made by the management system. Policies can be used to encapsulate many different types of management decisions including possible corrective actions when a performance requirement of an application is not being satisfied and actions to take place when there is more demand then supply. System policy is derived from the interactions between Service Level Agreements (contractual agreements between businesses) and locally specified management rules. This paper explores the potential use of mathematical models (e.g., optimisation models) for relating the various types of policies. It describes the current and proposed work in applying policies to resource management in the context of autonomic and grid computing systems.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Sliwerski:2005:WDC, author = "Jacek {\'S}liwerski and Thomas Zimmermann and Andreas Zeller", title = "When do changes induce fixes?", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--5", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083147", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "As a software system evolves, programmers make changes that sometimes cause problems. We analyze CVS archives for fix-inducing changes --- changes that lead to problems, indicated by fixes. We show how to automatically locate fix-inducing changes by linking a version archive (such as CVS) to a bug database (such as BUGZILLA). In a first investigation of the MOZILLA and ECLIPSE history, it turns out that fix-inducing changes show distinct patterns with respect to their size and the day of week they were applied.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Spacco:2005:SRM, author = "Jaime Spacco and Jaymie Strecker and David Hovemeyer and William Pugh", title = "Software repository mining with Marmoset: an automated programming project snapshot and testing system", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--5", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083149", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Most computer science educators hold strong opinions about the ``right'' approach to teaching introductory level programming. Unfortunately, we have comparatively little hard evidence about the effectiveness of these various approaches because we generally lack the infrastructure to obtain sufficiently detailed data about novices' programming habits. To gain insight into students' programming habits, we developed Marmoset, a project snapshot and submission system. Like existing project submission systems, Marmoset allows students to submit versions of their projects to a central server, which automatically tests them and records the results. Unlike existing systems, Marmoset also collects finegrained code snapshots as students work on projects: each time a student saves her work, it is automatically committed to a CVS repository. We believe the data collected by Marmoset will be a rich source of insight about learning to program and software evolution in general. To validate the effectiveness of our tool, we performed an experiment which found a statistically significant correlation between warnings reported by a static analysis tool and failed unit tests. To make fine-grained code evolution data more useful, we present a data schema which allows a variety of useful queries to be more easily formulated and answered.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Stewart:2005:OPD, author = "Katherine J. Stewart and David P. Darcy and Sherae L. Daniel", title = "Observations on patterns of development in open source software projects", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--5", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083272", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/gnu.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper discusses a project aimed at understanding how open source software evolves by examining patterns of development and changes in releases over time. The methodological approach of the research and initial observations are described. These include descriptions of release cycles and categorization of projects based on the overall changes in size and complexity exhibited across releases. Implications of these observations are discussed in light of prior and future work on understanding OSS evolution.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Ubayashi:2005:CMC, author = "Naoyasu Ubayashi and Tetsuo Tamai", title = "Concern management for constructing model compilers", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--5", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083127", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Model-driven architecture (MDA) aims at automating software design processes. A model compiler transforms platform-independent models into platform-specific models automatically. In order to construct an effective model compiler, we need to take account of not only platform concerns but also other kinds of model transformation concerns including optimization, real-time constraints, and deployment. However, current model compilers do not provide a mechanism for managing these multiple concerns. We propose a method for constructing an extensible model compiler based on aspect-orientation. A modeler can manage multiple concerns and extend model transformation rules by defining new aspects in the process of modeling. In this paper, an aspect-oriented modeling language called AspectM is introduced for managing modeling-level aspects.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Wellington:2005:ETC, author = "Carol A. Wellington and Thomas Briggs and C. Dudley Girard", title = "Examining team cohesion as an effect of software engineering methodology", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--5", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083122", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper describes an experiment in which student teams developed products using two different methodologies: the Team Software Process (TSP) as a plan-driven methodology and Extreme Programming (XP) as an agile methodology. We carefully define cohesion and derive instruments appropriate for measuring cohesion. Then, throughout the projects, the teams were surveyed to measure various aspects of team cohesion and those results support conclusions about how methodology was affecting cohesion. The results show that the measures developed lead to interesting observations that can be applied to current, non-academic projects. In addition, future work in broadening this study is justified.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Williams:2005:EEC, author = "Laurie Williams and Lucas Layman and Pekka Abrahamsson", title = "On establishing the essential components of a technology-dependent framework: a strawman framework for industrial case study-based research", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--5", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083179", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "A goal of evidence-based software engineering is to provide a means by which industry practitioners can make rational decisions about technology adoption. When a technology is mature enough for potential widespread use, practitioners find empirical evidence most compelling when the study has taken place in a live, industrial situation in an environment comparable to their own. However, empirical software engineering is in need of guidelines and standards to direct industrial case studies so that the results of this research are valuable and can be combined into an evidentiary base. In this paper, we present a high-level view of a measurement framework that has been used with multiple agile software development industrial case studies. We propose that this technology-dependent framework can be used as a strawman for a guideline of data collection, analysis, and reporting of industrial case studies. Our goal in offering the framework as a strawman is to solicit input from the community on a guideline for the essential components of a technology-dependent framework for industrial case study research.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Williams:2005:RSS, author = "Chadd C. Williams and Jeffrey K. Hollingsworth", title = "Recovering system specific rules from software repositories", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--5", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083144", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "One of the most successful applications of static analysis based bug finding tools is to search the source code for violations of system-specific rules. These rules may describe how functions interact in the code, how data is to be validated or how an API is to be used. To apply these tools, the developer must encode a rule that must be followed in the source code. The difficulty is that many of these system-specific rules are undocumented and ``grow'' over time as the source code changes. Most research in this area relies on expert programmers to document these little-known rules. In this paper we discuss a method to automatically recover a subset of these rules, function usage patterns, by mining the software repository. We present a preliminary study that applies our work to a large open source software project.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Wu:2005:PTT, author = "Xiaoqing Wu and Barrett R. Bryant and Jeff Gray and Marjan Mernik", title = "Pattern transformation for two-dimensional separation of concerns", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--5", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083133", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Design patterns are utilized in software development to decouple individual concerns, so that a change in a design decision is isolated to one location of the code base. However, multidimensional concerns exist in software development and therefore no single design pattern offers a panacea toward addressing problems of change evolution. By analyzing the matrix of concerns during the software development process and utilizing transferable aspect-orientation and object-orientation, a pattern transformation based two-dimensional separation of concerns is described, which integrates the benefits derived from the Inheritance pattern and several GoF patterns. An example implementation is shown using Java and AspectJ.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Ying:2005:SCT, author = "Annie T. T. Ying and James L. Wright and Steven Abrams", title = "Source code that talks: an exploration of {Eclipse} task comments and their implication to repository mining", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--5", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083152", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "A programmer performing a change task to a system can benefit from accurate comments on the source code. As part of good programming practice described by Kernighan and Pike in the book \booktitle{The Practice of Programming}, comments should ``aid the understanding of a program by briefly pointing out salient details or by providing a larger-scale view of the proceedings.'' In this paper, we explore the widely varying uses of comments in source code. We find that programmers not only use comments for describing the actual source code, but also use comments for many other purposes, such as ``talking'' to colleagues through the source code using a comment ``Joan, please fix this method.'' This kind of comments can complicate the mining of project information because such team communication is often perceived to reside in separate archives, such as emails or newsgroup postings, rather than in the source code. Nevertheless, these and other types of comments can be very useful inputs for mining project information.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Zhang:2005:MDA, author = "Jing Zhang and Jeff Gray and Yuehua Lin", title = "A model-driven approach to enforce crosscutting assertion checking", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--5", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083138", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Design by Contract provides an effective principle to enable the construction of robust software by describing properties of a module using logical assertions. This paper presents a model-driven approach for weaving assertion checking aspects into a large software system. The approach is based on a technique called two-level aspect weaving. At the top level, crosscutting assertions are weaved into a model by use of a model weaver. The second step of the weaving process occurs when the Model-Driven Program Transformation technique is applied to perform large-scale adaptation of the underlying source code from the contracts specified in the high-level models. The paper briefly presents a case study to illustrate the concept.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Arshad:2005:DFD, author = "Naveed Arshad and Dennis Heimbigner and Alexander L. Wolf", title = "Dealing with failures during failure recovery of distributed systems", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--6", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083067", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "One of the characteristics of autonomic systems is self recovery from failures. Self recovery can be achieved through sensing failures, planning for recovery and executing the recovery plan to bring the system back to a normal state. For various reasons, however, additional failures are possible during the process of recovering from the initial failure. Handling such secondary failures is important because they can cause the original recovery plan to fail and can leave the system in a complicated state that is worse than before. In this paper techniques are identified to preserve consistency while dealing with such failures that occur during failure recovery.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Auguston:2005:EBM, author = "Mikhail Auguston and James Bret Michael and Man-Tak Shing", title = "Environment behavior models for scenario generation and testing automation", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--6", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083284", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper suggests an approach to automatic scenario generation from environment models for testing of real-time reactive systems. The behavior of the system is defined as a set of events (event trace) with two basic relations: precedence and inclusion. The attributed event grammar (AEG) specifies possible event traces and provides a uniform approach for automatically generating, executing, and analyzing test cases. The environment model includes a description of hazardous states in which the system may arrive and makes it possible to gather statistics for system safety assessment. The approach is supported by a generator that creates test cases from the AEG models. We demonstrate the approach with case studies of prototypes for the safety-critical computer-assisted resuscitation algorithm (CARA) software for a casualty intravenous fluid infusion pump and the Paderborn Shuttle System.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Barrera:2005:ILS, author = "Pablo Barrera and Gregorio Robles and Jos{\'e} M. Ca{\~n}as and Francisco Mart{\'\i}n and Vicente Matell{\'a}n", title = "Impact of libre software tools and methods in the robotics field", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--6", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083261", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Software is one of the major components of robots; in fact, it is the main bottleneck for the proliferation of robotics in our everyday lives. In the last years the field of robotics has been an emerging application area of the libre (free/open source) software phenomenon. Libre software tools have been traditionally popular among the robotics research and teaching community. Even companies whose main business model is to sell robots have found convenient to share the software in order to promote a community around their products. In this paper we analyze the situation of libre software in these three subareas: industry, teaching and research. In particular, we describe commercial robots like the Cye and the Pioneer, a software platform like Orocos as a examples of industrial world applications, the libre tools around the LEGO Mindstorms in the case of teaching, and the Robocup competition and the Player/Stage platform in research area. All these cases show that libre software can act as a catalyst in the robotics industry which is still a sector in its early research and industrial stages.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Boehm:2005:VBQ, author = "Barry Boehm", title = "Value-based quality processes and results", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--6", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083294", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Cost effectiveness is one of the important issues for developing products in a life cycle. And review is a key activity that can detect defects from the early stage and fix them. This paper provides Value-based review techniques adding cost effectiveness into review processes and reports on an experiment on Value-based review. Through the experiment, the Value-based review is shown to have higher cost effectiveness in review processes.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Boetticher:2005:NNS, author = "Gary D. Boetticher", title = "Nearest neighbor sampling for better defect prediction", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--6", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083173", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "An important step in building effective predictive models applies one or more sampling techniques. Traditional sampling techniques include random, stratified, systemic, and clustered. The problem with these techniques is that they focus on the class attribute, rather than the non-class attributes. For example, if a test instance's nearest neighbor is from the opposite class of the training set, then it seems doomed to misclassification. To illustrate this problem, this paper conducts 20 experiments on five different NASA defect datasets (CM1, JM1, KC1, KC2, PC1) using two different learners (J48 and Na{\"\i}ve Bayes). Each data set is divided into 3 groups, a training set, and ``nice/nasty'' neighbor test sets. Using a nearest neighbor approach, ``Nice neighbors'' consist of those test instances closest to class training instances. ``Nasty neighbors'' are closest to opposite class training instances. The ``Nice'' experiments average 94 percent accuracy and the ``Nasty'' experiments average 20 percent accuracy. Based on these results a new nearest neighbor sampling technique is proposed.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Botaschanjan:2005:TVA, author = "J. Botaschanjan and L. Kof and C. K{\"u}hnel and M. Spichkova", title = "Towards verified automotive software", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--6", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083199", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Automotive software is one of the most challenging fields of software engineering: it must meet real time requirements, is safety critical and distributed over multiple processors. With the increasing complexity of automotive software, as for example in the case of drive-by-wire, automated driving and driver assitents, software correctness becomes more and more a crucial issue. In order that these innovations can become reality, it is necessary to be able to guarantee software correctness. The presented work aims at verification of automotive software. For this purpose it introduces a verification approach, including a framework of verified modules which assists the verification of the actual application. Feasibility of this approach was validated on a case study that also showed how verification can be integrated into the development process.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Canfora:2005:CCF, author = "Gerardo Canfora and Piero Corte and Antonio De Nigro and Debora Desideri and Massimiliano {Di Penta} and Raffaele Esposito and Amedeo Falanga and Gloria Renna and Rita Scognamiglio and Francesco Torelli and Maria Luisa Villani and Paolo Zampognaro", title = "The {C-Cube} framework: developing autonomic applications through web services", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--6", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083087", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Web services constitute a promising technology to support autonomic computing. Automatic discovery of new services, their composition and binding based on Quality of Service (QoS) are just some of the most promising features that can be provided using web services. In other words, a service oriented system is able to automatically discover, bind, and use, at run time, the services that, among those available, offer a given piece of functionality with a QoS compatible with the system non-functional requirements. This paper describes our work-in-progress related to the development of an electronic marketplace, named C$^3$ (Creation, Certification and Classification of Services) to enable the publication, semantic discovery, service buying, SLA negotiation and QoS-aware composition and replanning. The marketplace is mainly targeted to corporate intranets, although its technologies and approaches can be easily exported to a wider scenario.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Chen:2005:FSS, author = "Zhihao Chen and Tim Menzies and Dan Port and Barry Boehm", title = "Feature subset selection can improve software cost estimation accuracy", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--6", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083171", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Cost estimation is important in software development for controlling and planning software risks and schedule. Good estimation models, such as COCOMO, can avoid insufficient resources being allocated to a project. In this study, we find that COCOMO's estimates can be improved via WRAPPER --- a feature subset selection method developed by the data mining community. Using data sets from the PROMISE repository, we show WRAPPER significantly and dramatically improves COCOMO's predictive power.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Clermont:2005:HAI, author = "Markus Clermont", title = "Heuristics for the automatic identification of irregularities in spreadsheets", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--6", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083234", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Spreadsheet programs turned out to be the most popular end-user programming environment that has ever been released. Important decisions are based on the results of spreadsheet programs and the list of known errors with large impact is growing daily --- although it surely is only the top of an iceberg. One way out of the crisis might be the introduction of software engineering techniques into spreadsheet development. Suggestions for the improvement of spreadsheet development range back as far as into the late eighties, but none has been successful yet. We argue this is either because not enough effort is put into the roll-out of the technique to the users and, mainly, because they neglect the fact that spreadsheet programmers are end-users, not willing or not able to spend any time on learning software engineering methods. We found out that most end users are willing to verify their spreadsheets, but only view have the time and skills to do really systematic testing of spreadsheets. We developed an approach to generate two orthogonal abstract representations of spreadsheet programs that are then displayed to the user by different visualisation techniques to support the auditing process. Usually, irregularities in the visualisation point out hot-spots on the spreadsheet with a high likelihood of erroneous formulas. In this paper we present new heuristics for identifying hot spots that are very efficient for large spreadsheet programs.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Denaro:2005:AIT, author = "Giovanni Denaro and Mauro Pezz{\'e} and Davide Tosi", title = "Adaptive integration of third-party web services", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--6", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083088", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Service based computing allows clients to dynamically bind services, and providers to modify the service implementation independently from their clients. The impossibility of statically determining which service implementation will be bound at runtime may lead to unexpected client-side failures. This position paper suggests a scenario in which service-based applications autonomously react to changes in the implementation of the used services, automatically detect possible integration mismatches, and dynamically execute suitable adaptation strategies. The proposed solution exploits ideas from autonomic computing and self-managed software. We propose a design methodology based on the definition of both test cases, to automatically diagnose service mismatches, and adaptation strategies, to overcome the revealed problems. We introduce a general runtime infrastructure that automatically embeds the test cases and the adaptation strategies into service based applications to guarantee self-adaptiveness.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Eklund:2005:EIR, author = "Ulrik Eklund and {\"O}rjan Askerdal and Johan Granholm and Anders Alminger and Jakob Axelsson", title = "Experience of introducing reference architectures in the development of automotive electronic systems", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--6", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083195", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The requirements on increasing functionality, quality, and, customisation, while reducing cost has lead to the introduction of an architecture centred development process for electronic systems at Volvo Cars. This process enables better control of system integration and achieving non-functional requirements, such as reusability, understandability, etc. The result of the process is a reference architecture that includes strategies for implementing the balanced requirements, architectural views that provide means for reasoning about all the concerns of all stakeholders, and a top-level design of the architecturally significant parts. The reference architecture guides the design of several projects, and thus, cost is optimised accordingly. The main contribution of this paper is that we present experiences from introducing the architecture centred process. The main conclusions are that disseminating and maintaining the reference architecture actually require more resources than developing it. Furthermore, experience shows it is difficult to create an architecture that enables a lot of different variants that is also strategically useable in the long term.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Froberg:2005:BSR, author = "Joakim Fr{\"o}berg and Kristian Sandstr{\"o}m and Christer Norstr{\"o}m", title = "Business situation reflected in automotive electronic architectures: analysis of four commercial cases", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--6", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083197", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Automotive vehicle electronic systems are developed facing a complex and large set of inter-related requirements from numerous stakeholders, many of which are internal to the Original Equipment Manufacturer, OEM. The electronic architecture, of the product, or its structure and design principles, form an equally complex construct; including technology and methods, which ultimately should be chosen to optimally support the organization's own business situation. In this paper, we have analyzed the relationship of four automotive electronic architectures to their respective business requirements and business context. The study shows four functionally rather similar products with computer controlled power train, body functions, and instrument. In the light of the business situation, we explain the solutions and why design principles are pursued. The analysis shows that despite a common base of similar vehicle functionality the resulting electronic architectures used by the four organizations are quite different. The reason for this becomes apparent when looking at different business context and business requirements and their affect on the architecture. Differences in business situation drive the use of different methods for integration, different standards, different number of configurations, and different focus in the development effort. Some key parameters in business situation affecting architectural design decisions are shown to be product volume, size of market, and business requirements on openness and customer adaptation. An important lesson from this is that one should be very careful to uncritically apply technical solutions from one industry in another, even when they are as closely related as the applications described in this work. Understanding the requirements from the business case is the key to choosing architectural solutions.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Geiger:2005:SDT, author = "Leif Geiger and Albert Z{\"u}ndorf", title = "Story driven testing --- {SDT}", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--6", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083186", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "In the last years, SCESM community has studied a number of synthesis approaches that turn scenario descriptions into some kind of state machine. In our story driven modeling approach, the statechart synthesis is done manually. Many other approaches rely on human interaction, too. Frequently, the resulting state machines are just the starting point for further system development. The manual steps and the human interaction and the subsequent development steps are subject to the introduction of errors. Thus, it is not guaranteed that the final implementation still covers the initial scenarios. Therefore, this paper proposes the exploitation of scenarios for the derivation of automatic tests. These tests may be used to force the implementation to implement at least the behavior outlined in the requirements scenarios. In addition, this approach raises the value of formal scenarios for requirements elicitation and analysis since such scenarios are turned into automatic tests that may be used to drive iterative development processes according to test-first principles.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Georgas:2005:ARC, author = "John C. Georgas and Andr{\'e} van der Hoek and Richard N. Taylor", title = "Architectural runtime configuration management in support of dependable self-adaptive software", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--6", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083225", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The dynamic nature of some self-adaptive software systems can result in potentially unpredictable adaptations, which may be detrimental to overall system dependability by diminishing trust in the adaptation process. This paper describes our initial work with architectural runtime configuration management in order to improve dependability and overall system usefulness by maintaining a record of reconfigurations and providing support for architectural recovery operations. Our approach --- fully decoupled from self-adaptive systems themselves and the adaptation management processes governing their changes --- provides for better adaptation visibility and self-adaptive process dependability. We elaborate on the vision for our overall approach, present early implementation and testing results from prototyping efforts, and discuss our future plans.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Georgas:2005:RIH, author = "John C. Georgas and Michael M. Gorlick and Richard N. Taylor", title = "Raging incrementalism: harnessing change with open-source software", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--6", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083263", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/gnu.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Change is a bitter fact of life for system developers and, to a large extent, conventional practices are aimed at arresting change and minimizing its effects. We take the opposite view and are exploring system engineering practices that harness the forces of change for the ongoing, incremental improvement of systems --- a view we name raging incrementalism. We harness three powerful forces to ride the waves of change: open-source software, commodity hardware, and web-like, representational state transfer architectures. This paper describes an early experiment in applying raging incrementalism to a complex system: large-scale digital video capture, distribution, and archival for launch range operations. We outline the methodology of raging incrementalism, describe the vital role open-source plays in system development and construction, and offer insights on the programmatic consequences of embracing open-source software.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Giesecke:2005:ASP, author = "Simon Giesecke and Timo Warns and Wilhelm Hasselbring", title = "Availability simulation of peer-to-peer architectural styles", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--6", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083230", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper addresses the issue of quantitatively investigating availability within peer-to-peer systems. We devise a conceptual framework integrating architectural styles, architectures, and concrete systems. We identify basic characteristics of architectural styles for peer-to-peer systems and give a formal model to describe derived architectures. Architectural descriptions are used as input for simulations to predict the availability of services within real-world systems.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Grisham:2005:CRE, author = "Paul S. Grisham and Dewayne E. Perry", title = "Customer relationships and Extreme Programming", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--6", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083113", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Extreme Programming (XP) brings the customer and development team together into a tight functional unit, while eliminating many of the process activities of more structured software development processes. While agile methods may yield benefits in terms of product cost and quality, there is also a risk that the very practices that make agile methods effective may weaken the customer relationship. This paper examines XP from the perspective of customer satisfaction and motivates the need for more analysis of the social, psychological, and business factors in studies of software development methods.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Guessoum:2005:ARL, author = "Zahia Guessoum and Nora Faci and Jean-Pierre Briot", title = "Adaptive replication of large-scale multi-agent systems: towards a fault-tolerant multi-agent platform", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--6", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1082977", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "In order to construct and deploy large-scale multi-agent systems, we must address one of the fundamental issues of distributed systems, the possibility of partial failures. This means that fault-tolerance is an inevitable issue for large-scale multi-agent systems. In this paper, we discuss the issues and propose an approach for fault-tolerance of multi-agent systems. The starting idea is the application of replication strategies to agents, the most critical agents being replicated to prevent failures. As criticality of agents may evolve during the course of computation and problem solving, and as resources are bounded, we need to dynamically and automatically adapt the number of replicas of agents, in order to maximize their reliability and availability. We will describe our approach and related mechanisms for evaluating the criticality of a given agent (based on application-level semantic information, e.g. interdependences, and also system-level statistical information, e.g., communication load) and for deciding what strategy to apply (e.g., active replication, passive) how to parameterize it (e.g., number of replicas). We also will report on experiments conducted with our prototype architecture (named DimaX).", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Gurbani:2005:CSO, author = "Vijay K. Gurbani and Anita Garvert and James D. Herbsleb", title = "A case study of open source tools and practices in a commercial setting", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--6", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083264", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/gnu.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Commercially, many in the industry are using products based on Open Source. What have been missing are studies on if the commercial industry benefits from developing software following the open source development model. We present a case study that examines this issue by applying the concepts of the open source software development methodology to creating industrial-strength software. We conclude with lessons learned and open research questions.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Herraiz:2005:TPM, author = "Israel Herraiz and Gregorio Robles and Jesus M. Gonzalez-Barahona", title = "Towards predictor models for large libre software projects", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--6", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083168", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Libre (free/open source) software provides an ample range of publicly available data sources about its development, which can be retrieved and analyzed. Consequently, it offers a good opportunity to build predictive estimation and evolution models. The main challenge to understand libre software development is that its development nature is radically different from 'classical' in-house software development, common in industry in the last decades. Developers and other human resources are generally a mixture of a few hired developers and many volunteers whose contribution (in number of hours per week and in total time devoted to the project) is not foreseeable in advance. This paper is a first step in finding predictive models in the libre software world. We have studied three data repositories (versioning system, mailing lists and bug tracking system) of GNOME, a large libre software project with several thousand contributors and several millions of lines of code, measuring activity and participation in it during the last years. Results and correlations for these sources allow us to adventure some first estimations of how participation and activity will evolve in the future.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{John:2005:HSF, author = "Michael John and Frank Maurer and Bj{\o}rnar Tessem", title = "{Human and Social Factors of Software Engineering}: workshop summary", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--6", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083000", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Software is developed for people and by people. Human and social factors have a very strong impact on the success of software development endeavours and the resulting system. Surprisingly, much of software engineering research in the last decade is technical, quantitative and deemphasizes the people aspect. The workshop on Human and Social Factors in Software Engineering has been picking up on the some of the soft aspects in software development that was highlighted in the early days of software engineering. It also follows a recent trend in the software industry, namely the introduction of agile methods, and provides a scientific perspective on these. Including and combining approaches of software engineering with social science, the workshop looked at software engineering from a number of perspectives, including those of agile methods and communication theory, in order to point out solutions and conditions for human-centred software engineering.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Kiebusch:2005:RTM, author = "Sebastian Kiebusch and Bogdan Franczyk and Andreas Speck", title = "A real time measure of software system families", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--6", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083307", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Software systems with inherent real time characteristics have become the driving force in many areas of technology like the automotive sector. Control functions of cars, driver assistance as well as systems for information and entertainment are accomplished by software driven control units. Due to the high complexity and development effort of real time systems, these resources have to be reused. Software system families are a promising solution to gain a cost reduction by reusing common software assets in different variants of an automobile. To support the economic management of this development approach we need software metrics to estimate the effort of building embedded software system families. Techniques of size measurement and cost estimation for software system families are highly insufficient in general and do not exist for the automotive domain. Therefore this article describes a conglomerate of innovative metrics to analyze a realtime perspective of embedded software system families in the automotive domain. These size metrics calculate an unadjusted measure of software driven control units to indicate and estimate their development costs.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Kruger:2005:SAE, author = "Ingolf H. Kr{\"u}ger and Reena Mathew and Michael Meisinger", title = "From scenarios to aspects: exploring product lines", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--6", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083188", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Software product lines are gaining importance because they allow improvements in time to market, cost, productivity and quality of software products. Architecture evaluation is one important aspect in the development of product lines for large-scale distributed systems. It is desirable to evaluate and compare architectures for functionality and quality attributes before implementing or changing the whole system. Often, the effort required for the thorough evaluation of alternatives using prototypes is prohibitive. In this paper, we present an approach for cost-efficient software architecture evaluation, based on scenario-oriented software specifications, modeling the system services. We show how to map the same set of services to several possible target architectures and give a procedure to generate evaluation prototypes using aspect-oriented programming techniques. This significantly reduces the effort required to explore architectural alternatives. We explain our approach using the Center TRACON Automation System as an example.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Liu:2005:QAS, author = "Xiaoqing (Frank) Liu and Yan Sun and Gautam Kane and Yuji Kyoya and Kunio Noguchi", title = "{QFD} application in software process management and improvement based on {CMM}", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--6", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083298", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Capability Maturity Model (CMM) from Software Engineering Institute has been used successfully by many organizations for software process improvement. However, there exists a disconnection between business goals and maturity levels. A new framework using Quality Function Deployment (QFD) is developed to deal with this problem. This framework serves three purposes: (1) it provides a connection between business requirements and CMM; (2) it proposed a methodology for the priority assessment of requirements from multiple perspectives; and (3) it helps identify a set of software process improvement actions based on business requirements and CMM.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Mair:2005:ADS, author = "Carolyn Mair and Martin Shepperd and Magne J{\o}rgensen", title = "An analysis of data sets used to train and validate cost prediction systems", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--6", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083166", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "OBJECTIVE --- to build up a picture of the nature and type of data sets being used to develop and evaluate different software project effort prediction systems. We believe this to be important since there is a growing body of published work that seeks to assess different prediction approaches.METHOD --- we performed an exhaustive search from 1980 onwards from three software engineering journals for research papers that used project data sets to compare cost prediction systems.RESULTS --- this identified a total of 50 papers that used, one or more times, a total of 71 unique project data sets. We observed that some of the better known and easily accessible data sets were used repeatedly making them potentially disproportionately influential. Such data sets also tend to be amongst the oldest with potential problems of obsolescence. We also note that only about 60\% of all data sets are in the public domain. Finally, extracting relevant information from research papers has been time consuming due to different styles of presentation and levels of contextural information.CONCLUSIONS --- first, the community needs to consider the quality and appropriateness of the data set being utilised; not all data sets are equal. Second, we need to assess the way results are presented in order to facilitate meta-analysis and whether a standard protocol would be appropriate.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Menzies:2005:SSC, author = "Tim Menzies and Dan Port and Zhihao Chen and Jairus Hihn", title = "Simple software cost analysis: safe or unsafe?", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--6", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083170", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Delta estimation uses changes to old projects to estimate new projects. Delta estimation assumes that new costs can be extrapolated from old projects. In this study, we show that in certain real-world data sets. there exists attributes where this assumption does not hold. We define here an automatic method to find which attributes can be safely used for delta estimation.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Noppen:2005:DIQ, author = "Joost Noppen and Pim van den Broek and Mehmet Aksit", title = "Dealing with imprecise quality factors in software design", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--6", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083303", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "During the design of a software system impreciseness can manifest itself in for instance the requirements or performance estimations. While it is common to eliminate the impreciseness by information that can not be justified, it is better to model the impreciseness since it is the most accurate description that is available at the current point in time. In this paper we present an approach, which allows the explicit specification of quality estimations and quality requirements including the imprecise nature. In this approach the impreciseness is modeled and addressed using representations from probability theory and fuzzy set theory.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Pettersson:2005:AUC, author = "Fredrik Pettersson and Martin Ivarsson and Peter {\"O}hman", title = "Automotive use case standard for embedded systems", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--6", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083193", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Today the lack of deliveries from suppliers to automotive OEMs in early phases of software development cause a number of problems such as misinterpreted requirements and difficulties in keeping deadlines. We have identified use cases as a means to communicate and visualize requirements. A well defined standard is needed to enable communication between different organizations. In this paper we propose a two level use case standard for embedded systems. The standard consists of a template and guidelines specifying how to write consistent and unambiguous use cases while capturing the necessary requirements.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Phongpaibul:2005:IQT, author = "Monvorath Phongpaibul and Barry Boehm", title = "Improving quality through software process improvement in {Thailand}: initial analysis", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--6", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083299", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "For almost 10 years there have been attempts in Thailand to improve software quality by adopting western software process improvement models. Only 17 of the 380 companies in Thailand were able to implement software process models that we see here in the US. 14 out of the 17 companies were not able to improve their process to a higher level. Why were companies not successful in implementing these software process models? Did they find other ways to improve quality? The objective of this paper is to analyze the experiences of software developers, project managers and executive managers in implementing these software process models in Thailand. The results will show that cultural differences are a key factor to this problem. Thai people have different cultural values. which we will explore further in this paper.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Reiss:2005:DDV, author = "Steven P. Reiss", title = "Dynamic detection and visualization of software phases", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--6", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083254", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Software executes in phases. JIVE is a software visualization tool that provides a high-level view of what is occurring in a Java system as it happens, offering information about both what classes are executing, what classes are being allocated, synchronizations, and what are the threads and what state each thread is in. This paper describes how we used the information available to JIVE to detect and then display the current phase of execution.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Ruthruff:2005:SCS, author = "Joseph R. Ruthruff and Margaret Burnett", title = "Six challenges in supporting end-user debugging", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--6", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083244", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper summarizes six challenges in end-user programming that can impact the debugging efforts of end users. These challenges have been derived through our experiences and empirical investigation of interactive fault localization techniques in the spreadsheet paradigm. Our contributions reveal several insights into debugging techniques for end-user programmers, particularly fault localization techniques, that can help guide the direction of future end-user software engineering research.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Schaefer:2005:DQM, author = "Robert Schaefer", title = "Deeper questions: the metaproblem of large organizations developing complex systems and the limits of process", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--6", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083008", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "One applies process improvement to the software development process to increase efficiency and decrease defects. Process improvement is not a one-shot deal. Theoretically processes can be improved continuously, forever, but \ldots{}. The belief that continuous improvement can continue forever is analogous to the belief that by continuously improving an automobile's efficiency, eventually the day will come when the driver is forced to stop every so often to pour off excess spontaneously created gasoline. Here, the limits are the laws of thermodynamics. For the software development process the limits are the constraints of the software development organization. To improve a software process past a certain point, the organization that hosts the process's context will need to be improved, and then the context that hosts 'that' organization's process, and so on. Aha! A recursive pattern!The recognition of having a recursive problem raises deeper questions about the nature of process and process improvement, which, for this paper, will be addressed in the context of the development of large, complex, information intensive systems. Systems of this type are the ones most prone to failure and thus should benefit most from process improvement.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Sharp:2005:SSF, author = "Helen Sharp and Hugh Robinson", title = "Some social factors of software engineering: the maverick, community and technical practices", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--6", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083117", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "While the importance of 'people factors' in software engineering has been recognised for over 25 years, few specific factors, and their impact on software engineering, have been identified. 'People factors' covers a wide and diverse set of issues. In this paper we focus on social factors, i.e. factors that arise from the various interactions that need to take place in order to develop software. We draw on three different studies we have conducted over the last 10 years to identify three specific factors and their impact on software development.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Shepherd:2005:ULC, author = "David Shepherd and Lori Pollock and Tom Tourw{\'e}", title = "Using language clues to discover crosscutting concerns", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--6", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083129", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Researchers have developed ways to describe a concern, to store a concern, and even to keep a concern's code quickly available while updating it. Work on identifying concerns (semi-)automatically, however, has yet to gain attention and practical use, even though it is a desirable prerequisite to all of the above activities, particularly for legacy applications. This paper describes a concern identification technique that leverages the natural language processing (NLP) information in source code. Developers often use NLP clues to help understand software, because NLP helps them identify concepts that are semantically related. However, few analyses use NLP to understand programs, or to complement other program analyses. We have observed that an NLP technique called lexical chains offers the NLP equivalent of a concern. In this paper, we investigate the use of lexical chaining to identify crosscutting concerns, present the design and implementation of an algorithm that uses lexical chaining to expose concerns, and provide examples of concerns that our tool is able to discover automatically.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Sherriff:2005:EED, author = "Mark Sherriff and Nachiappan Nagappan and Laurie Williams and Mladen Vouk", title = "Early estimation of defect density using an in-process {Haskell} metrics model", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--6", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083285", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Early estimation of defect density of a product is an important step towards the remediation of the problem associated with affordably guiding corrective actions in the software development process. This paper presents a suite of in-process metrics that leverages the software testing effort to create a defect density prediction model for use throughout the software development process. A case study conducted with Galois Connections, Inc. in a Haskell programming environment indicates that the resulting defect density prediction is indicative of the actual system defect density.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Sturmer:2005:OES, author = "Ingo St{\"u}rmer and Daniela Weinberg and Mirko Conrad", title = "Overview of existing safeguarding techniques for automatically generated code", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--6", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083192", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Code generators are increasingly used in an industrial context to translate graphical models into executable code. Since the code is often deployed in safety-related environments, the quality of the code generators is of paramount importance. In this paper, we will present and discuss state-of-the-art techniques for safeguarding automatic code generation applied in model-based development.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Sundaram:2005:BRT, author = "Senthil Karthikeyan Sundaram and Jane Huffman Hayes and Alexander Dekhtyar", title = "Baselines in requirements tracing", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--6", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083169", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "We summarize the results of our requirements tracing work to date, focusing on our empirical results with open source datasets. Specifically, we describe the problem of after-the-fact requirements tracing for Verification and Validation (V\&V) analysts, we provide a brief overview of Information Retrieval methods we have applied as well as measures used to evaluate them, we describe our tracing tool, and we present the results of a number of empirical studies. Two of the open source datasets that we have used are available to the research community at http://promise.site.uottawa.ca/SERepository/.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Sutcliffe:2005:ASG, author = "Alistair Sutcliffe", title = "Applying small group theory to analysis and design of {CSCW} systems", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--6", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083119", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper introduces a social psychological theory --- Small Groups as Complex Systems --- as a contribution to software engineering and more specifically, design of CSCW systems. Small Group Theory is composed of local dynamics which model the internal view of a group; global dynamics that represent whole group emergent properties; and contextual dynamics that model the influences of the group's environment on its composition, coherence and behaviour. The potential contribution of Small Group Theory to the design of CSCW systems is investigated by model-based analysis of group members, supporting technology, and design principles motivated by the theory.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Umarji:2005:PAS, author = "Medha Umarji and Carolyn Seaman", title = "Predicting acceptance of Software Process Improvement", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--6", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083121", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Software Process Improvement (SPI) initiatives induce organizational change, by introducing new tools, techniques and work practices. Organizations have to address acceptance issues such as resistance to change, compatibility and fear of adverse consequences. Social psychology literature includes the Technology Acceptance Model (TAM) and the Theory of Planned Behavior (TPB), which study such adoption issues and predict intention to use and actual usage of workplace technology. Some constructs of these models could be applied to software organizations to make it easier for them to counter the initial resistance and to assimilate process improvement into the work culture. To increase applicability of these models to the SPI context, some additional constructs are proposed, by taking into account organizational culture, the impact of changes caused by SPI and the unique characteristics of software developers.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Vipindeep:2005:ESA, author = "V. Vipindeep and Pankaj Jalote", title = "Efficient static analysis with path pruning using coverage data", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--6", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083257", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Soundness and completeness are two primary concerns of a static analysis tool for finding defects in software. Exhaustive static analysis of the program through all paths is not always possible, especially for a large software causing incompleteness in the analysis. Also, exhaustive testing of the program to detect all bugs is not possible. In this work, we describe a technique which uses coverage data from testing to remove the tested paths and then statically analyzes the remaining code. This pruning of tested paths allows a static analyzer to perform a more thorough analysis of the reduced code, thereby improving its effectiveness. This work is a step towards integration of static analysis and testing frameworks. The proposed technique is applied with a few static analyzers publicly available. Our experience shows that the approach results in lesser false positives as well as detection of more serious errors which might have gone unnoticed otherwise.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Wagner:2005:SQE, author = "Stefan Wagner and Tilman Seifert", title = "Software quality economics for defect-detection techniques using failure prediction", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--6", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083296", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Defect-detection techniques, like reviews or tests, are still the prevalent method to assure the quality of software. However, the economics behind those techniques are not fully understood. It is not always obvious when and for how long to use which technique. A cost model for defect-detection techniques is proposed that uses a reliability model and expert opinion for cost estimations and predictions. It is detailed enough to allow fine-grained estimates but also can be used with different defect-detection techniques not only testing. An application of the model is shown using partly data from an industrial project.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Weide:2005:IPC, author = "Bruce W. Weide and Paolo Bucci and Wayne D. Heym and Murali Sitaraman and Giorgio Rizzoni", title = "Issues in performance certification for high-level automotive control software", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--6", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083196", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "High-level supervisory control software for automotive applications (e.g., drive-by-wire) presents many challenges to making performance guarantees, which are a necessary part of the software's certification for deployment. The features of such systems demand that a compositional, or modular, approach to reasoning about performance be devised and applied. We discuss one such analytical approach as an alternative to simulation and testing.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Xu:2005:APN, author = "Lihua Xu and Hadar Ziv and Debra Richardson and Thomas A. Alspaugh", title = "An architectural pattern for non-functional dependability requirements", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--6", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083219", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "We address the research question of transforming dependability requirements into corresponding software architecture constructs. by proposing first that dependability needs can be classified into three types of requirements and second, an architectural pattern that allows requirements engineers and architects to map dependability requirements into three corresponding types of architectural components. The proposed pattern is general enough to work with existing requirements techniques and existing software architectural styles, including enterprise and product-line architectures.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Zhou:2005:OSS, author = "Ying Zhou and Joseph Davis", title = "Open source software reliability model: an empirical approach", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--6", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083273", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/gnu.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "We collected bug tracking data from a few popular open source projects and investigated the time related bug reporting patterns from them. The results indicate that along its development cycle, open source projects exhibit similar reliability growth pattern with that of closed source project. Bug arrivals of most open source project will stabilize at a very low level, even though in comparison, no formal testing activities are involved. This stabilizing point would be viewed as the mature point for adoption consideration. The results also show that general Weibull distribution offers possible way to establish the reliability model; Also, popular measures such as page views and download are not highly correlated with the bug arrival rate and may not be suitable measures for a project's quality.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Zuser:2005:SQD, author = "Wolfgang Zuser and Stefan Heil and Thomas Grechenig", title = "Software quality development and assurance in {RUP}, {MSF} and {XP}: a comparative study", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--6", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083300", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The support of software quality in a software development process may be regarded under two aspects: first, by providing techniques, which support the development of high quality software and second, by providing techniques, which assure the required quality attributes in existing artifacts. Both approaches have to be combined to achieve effective and successful software engineering. In this study, we compare three of the most industrially relevant software development process models (Rational Unified Process (RUP), Microsoft Solution Framework (MSF) and Extreme Programming (XP)) regarding their software quality support in terms of software quality development and software quality assurance. Based on the results we propose a de-facto standard for quality support in software development process models.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Abi-Antoun:2005:ISD, author = "Marwan Abi-Antoun and Jonathan Aldrich and David Garlan and Bradley Schmerl and Nagi Nahas and Tony Tseng", title = "Improving system dependability by enforcing architectural intent", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--7", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083218", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Developing dependable software systems. requires enforcing conformance between architecture and implementation during software development and evolution. We address this problem with a multi-pronged approach: (a) automated refinement of a component-and-connector (C\&C) architectural view into an initial implementation, (b) enforcement of architectural structure at the programming language level, (c) automated abstraction of a C\&C view from an implementation, and (d) semi-automated incremental synchronization between the architectural and the implementation C\&C views. We use an Architecture Description Language (ADL), Acme, to describe the architecture, and ArchJava, an implementation language which embeds a C\&C architecture specification within Java implementation code. Although both Acme and ArchJava specify C\&C views, a number of structural differences may arise. Our approach can detect structural differences which correspond directly to implementation-level violations of the well thoughtout architectural intent. Furthermore, supplementing the C\&C view extracted from the implementation with architectural types and styles can uncover additional violations.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Amrit:2005:CSD, author = "Chintan Amrit", title = "Coordination in software development: the problem of task allocation", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--7", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083107", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "To systematize software development, many process models have been proposed over the years. These models focus on the sequence of steps used by developers to create reliable software. Though these process models have helped companies to gain certification and attain global standards, they don't take into account interpersonal interactions and various other social aspects of software development organizations. In this paper we tackle one crucial part of the Coordination problem in Software Development, namely the problem of task assignment in a team. We propose a methodology to test a hypothesis based on how social networks can be used to improve coordination in Software Industry. In a pilot case study based on 4 teams of Masters Student working in a globally distributed environment (Holland and India), the social network structures along with the task distribution in each of the teams were analyzed. In each case we observed patterns, which could be used to test many hypotheses on team coordination and task allocation between them.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Balasubramaniam:2005:SAA, author = "Dharini Balasubramaniam and Ron Morrison and Graham Kirby and Kath Mickan and Brian Warboys and Ian Robertson and Bob Snowdon and R. Mark Greenwood and Wykeen Seet", title = "A software architecture approach for structuring autonomic systems", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--7", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083077", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Autonomic systems manage themselves given high-level objectives by their administrators. They utilise feedback from their own execution and their environment to self-adapt in order to satisfy their goals. An important consideration for such systems is a structure which is conducive to self-management. This paper presents a structuring methodology for autonomic systems which explicitly models self-adaptation while separating functionality and evolution. Our contribution is a software architecture-based framework combining an architecture description language based on {\pi}-calculus for describing the structure and behaviour of autonomic systems, a development methodology for evolution and mechanisms for feedback and change.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Banerjee:2005:LAM, author = "Somo Banerjee and Chris A. Mattmann and Nenad Medvidovic and Leana Golubchik", title = "Leveraging architectural models to inject trust into software systems", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--7", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083213", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Existing software systems have become increasingly durable and their lifetimes have significantly lengthened. They are increasingly distributed and decentralized. Our dependence on them has grown tremendously. As such, the issues of trustworthiness and security have become prime concerns in designing, constructing, and evolving software systems. However, the exact meanings of these concepts are not universally agreed upon, nor is their role in the different phases of the software development lifecycle. In this paper, we argue that trustworthiness is a more broadly encompassing term than security, and that the two are often interdependent. We then identify a set of dimensions of trustworthiness. Finally, we analyze how the key elements of a software system's architecture can be leveraged in support of those trustworthiness dimensions. Our ultimate goal is to apply these ideas in the context of a concrete software architecture project. The goal of this paper is more modest: to understand the problem area and its relation to software architecture.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Bartelt:2005:DIH, author = "Christian Bartelt and Thomas Fischer and Dirk Niebuhr and Andreas Rausch and Franz Seidl and Marcus Trapp", title = "Dynamic integration of heterogeneous mobile devices", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--7", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083085", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "In these days the trend ``everything, every time, everywhere'' becomes more and more apparent. As consequence of this trend everyone has a lot of small or invisible devices in his direct environment, e.g. mobile phones, PDAs, or music players. Also some network technologies to connect the different devices like (W)LAN or Bluetooth moved mainstream. Today in most domains the considered devices and technologies are integrated in isolated applications with fixed hardware settings. But humans live in changing environments and have varying requirements, so they need customizable systems which adapt dynamically. As many different types of devices exist, it is a big challenge to integrate them within one system. In this paper we introduce a concept that enables dynamic integration of heterogeneous devices at run time. Although our concept is at an early stage we built a promising implementation in the domain of assisted training to validate the basic principles.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Bastos:2005:RMA, author = "Lucia R. D. Bastos and Jaelson F. B. Castro", title = "From requirements to multi-agent architecture using organisational concepts", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--7", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1082980", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "There is a clear relationship between requirements and architectures. However, evolving and elaborating system requirements into a software architecture satisfying those requirements is still a difficult task, mainly based on intuition. To narrow these problems, we are investigating techniques for deriving architectural model in concert with Multi-Agent System (MAS) requirement specifications. Our framework advocates that a multi-agent system corresponds to the organisational structure, in which actors are members of a group in order to perform specific roles. An organisation comprises groups, goals, members, roles and interactions.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Bauer:2005:FIS, author = "Thomas Bauer and Jens Herrmann and Peter Liggesmeyer and Christopher Robinson-Mallett", title = "A flexible integration strategy for in-car telematics systems", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--7", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083194", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper presents an approach for the planning of integration tests of automotive telematics systems. To our knowledge no method for the determination of an integration order exists that takes the project and the system environment into account, which in our opinion greatly influence the integration order. Furthermore, most known test generation methods and structural quality measures demand syntactically sound specifications to be applied efficiently. In our projects Message Sequence Charts are often created manually from the scratch with many different tools, and therefore they are of rather low syntactical quality. This paper addresses the determination of an integration strategy, which can easily be adapted to changes in the project or in the system environment, and which can be manually applied to any given specification.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Beranek:2005:FGR, author = "Georgine Beranek and Wolfgang Zuser and Thomas Grechenig", title = "Functional group roles in software engineering teams", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--7", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083108", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "For building and leading successful software engineering teams it is vital to understand their team structure as well as many other ``soft'' factors, e.g. the personality and skills of individual team members. A key element of the team structure, besides power distribution, knowledge distribution etc., is the role distribution within the team. The role distribution has a twofold aspect: first, the formal role distribution, which is defined by the standard process and role model or the project management, and second, the informal role distribution which grows within a team by the natural interactions between the team members and is based to some extent upon their individual characteristics. This paper presents an empirical examination of the informal role distribution in student software engineering teams and compares the results to the concept of functional group roles.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Biyani:2005:BCF, author = "Karun N. Biyani and Sandeep S. Kulkarni", title = "Building component families to support adaptation", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--7", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083090", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Autonomic systems undergo dynamic compositional adaptation that often require state transfer and synchronization to correctly initialize the state of the new component, while ensuring that multiple fractions of the component are added and removed consistently. In general, if there are n different components for a given functionality, then there exist n (n - 1) possible adaptations for selecting an appropriate component. Identifying all these adaptations is not an easy task. Moreover, as verification of such adaptations is also difficult, it is desirable to reduce total number of these adaptations. We propose a component family design for systematically building a repository of components from the perspective of dynamic adaptation. For a family of n components, we show that it suffices to identify n different adaptations. Moreover, to add a new component to this family, it suffices to consider only two adaptations. We also propose a design to separate the adaptation concern from component functionality for simplifying the specification and verification of adaptation. We introduce the enhanced-primitive relation between two components; when such a relation is known to exist, we show that it is possible to simplify the adaptation and its verification.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Boroday:2005:DAJ, author = "S. Boroday and A. Petrenko and J. Singh and H. Hallal", title = "Dynamic analysis of {Java} applications for multithreaded antipatterns", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--7", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083247", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.math.utah.edu/pub/tex/bib/multithreading.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Formal verification is not always applicable to large industrial software systems due to scalability issues and difficulties in formal model and requirements specification. The scalability and model derivation problems could be alleviated by runtime trace analysis, which combines both testing and formal verification. We implement and compare an ad-hoc custom approach and a formal approach to detect common bug patterns in multithreaded Java software. We use the tracing platform of the Eclipse IDE and state-of-the-art model checker Spin.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Bouquet:2005:RTA, author = "F. Bouquet and E. Jaffuel and B. Legeard and F. Peureux and M. Utting", title = "Requirements traceability in automated test generation: application to smart card software validation", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--7", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083282", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Automated test case and test driver generation from a formal model is becoming a more widely used practice in the smart card area. This innovative approach for validation testing makes it possible to ensure the functional coverage of the test suite and to automate the production of executable test scripts. This paper presents an approach to automatically produce the Traceability Matrix from requirements to test cases, as part of the test generation process. This approach is embedded in the LEIRIOS Test Generator (LTG) tool, and has been used for several real-life applications in the smart card industry. This paper introduces the approach to annotating the formal model and using it to generate the Traceability Matrix. It also discusses some lessons learnt from our experience using Model-Based Testing for smart card software validation.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Bowdidge:2005:RGU, author = "Robert W. Bowdidge", title = "Refactoring {\tt gcc} using structure field access traces and concept analysis", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--7", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083248", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/gnu.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Refactoring usually involves statically analyzing source code to understand which transformations safely preserve execution behavior of the program. However, static analysis may not scale well for large programs when analysis results are too general, when tools for analyzing the source code are unwieldy, or when the tools simply do not exist. In such cases, it can be simpler to analyze the program at runtime to gather answers needed for safe code changes. I show how dynamic data can guide refactoring of a single data structure into a hierarchy of classes. Specifically, I show how I refactored the gcc compiler to cut its use of heap memory. In order to partition the declaration data structure into more efficiently-sized parts, I used data structure field access traces to automatically identify how the data structure might be refactored. I also identified other potential refactorings of the data structure using concept analysis. These results then guided by-hand modifications to the compiler. I finally evaluated what size test cases would be needed to gather adequate information to correctly perform the refactoring. The case study showed the refactoring could be performed with the dynamic information, but without traces from an exhaustive set of test cases, some fields would be moved incorrectly.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Breech:2005:FTS, author = "Ben Breech and Lori Pollock", title = "A framework for testing security mechanisms for program-based attacks", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--7", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083208", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Program vulnerabilities leave organizations open to malicious attacks that can result in severe damage to company finances, resources, consumer privacy, and data. Engineering applications and systems so that vulnerabilities do not exist would be the best solution, but this strategy may be impractical due to fiscal constraints or inadequate knowledge. Therefore, a variety of program and system-based solutions have been proposed to deal with vulnerabilities in a manageable way. Unfortunately, proposed strategies are often poorly tested, because current testing techniques focus on the common case whereas vulnerabilities are often exploited by uncommon inputs. In this paper, we present the design of a testing framework that enables the efficient, automatic and systematic testing of security mechanisms designed to prevent program-based attacks. The key insight of the framework is that dynamic compilation technology allows us to insert and simulate attacks during program execution. Thus, a security mechanism can be tested using any program, not only those with known vulnerabilities.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Bryce:2005:TPP, author = "Ren{\'e}e C. Bryce and Charles J. Colbourn", title = "Test prioritization for pairwise interaction coverage", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--7", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083275", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Interaction testing is widely used in screening for faults. In software testing, it provides a natural mechanism for testing systems to be deployed on a variety of hardware and software configurations. Several algorithms published in the literature are used as tools to automatically generate these test suites; AETG is a well known example of a family of greedy algorithms that generate one test at a time. In many applications where interaction testing is needed, the entire test suite is not run as a result of time or cost constraints. In these situations, it is essential to prioritize the tests. Here we adapt a ``one-test-at-a-time'' greedy method to take importance of pairs into account. The method can be used to generate a set of tests in order, so that when run to completion all pairwise interactions are tested, but when terminated after any intermediate number of tests, those deemed most important are tested. Computational results on the method are reported.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Cai:2005:ECC, author = "Xia Cai and Michael R. Lyu", title = "The effect of code coverage on fault detection under different testing profiles", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--7", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083288", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Software testing is a key procedure to ensure high quality and reliability of software programs. The key issue in software testing is the selection and evaluation of different test cases. Code coverage has been proposed to be an estimator for testing effectiveness, but it remains a controversial topic which lacks of support from empirical data. In this study, we hypothesize that the estimation of code coverage on testing effectiveness varies under different testing profiles. To evaluate the performance of code coverage, we employ coverage testing and mutation testing in our experiment to investigate the relationship between code coverage and fault detection capability under different testing profiles. From our experimental data, code coverage is simply a moderate indicator for the capability of fault detection on the whole test set. However, it is clearly a good estimator for the fault detection of exceptional test cases, but a poor one for test cases in normal operations. For other testing profiles, such as functional testing and random testing, the correlation between code coverage and fault coverage is higher in functional test than in random testing, although these different testing profiles are complementary in the whole test set. The effects of different coverage metrics are also addressed in our experiment.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Clermont:2005:UIA, author = "Markus Clermont and David Parnas", title = "Using information about functions in selecting test cases", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--7", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083276", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "We consider the problem of generating a set of test cases from a black box specification. We focus on stress testing, i.e. picking test cases that seem most likely to reveal program bugs. Our approach assumes that so-called interesting points, i.e. points in a function's domain where properties change, e.g. maxima, are likely to reveal any problems and examine how we can determine the interesting points for a function defined by a complex expression if we know the interesting points for the functions named in that expression.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{dAmorim:2005:EBR, author = "Marcelo d'Amorim and Klaus Havelund", title = "Event-based runtime verification of {Java} programs", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--7", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083249", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "We introduce the temporal logic HAWK and its supporting tool for runtime verification of Java programs. A monitor for a HAWK formula checks if a finite trace of program events satisfies the formula. HAWK is a programming-oriented extension of the rule-based EAGLE logic that has been shown capable of defining and implementing a range of finite trace monitoring logics, including future and past time temporal logic, metric (real-time) temporal logics, interval logics, forms of quantified temporal logics, extended regular expressions, state machines, and others. Monitoring is achieved on a state-by-state basis avoiding any need to store the input trace. HAWK extends EAGLE with constructs for capturing parameterized program events such as method calls and method returns. Parameters can be executing thread, the objects that methods are called upon, arguments to methods, and return values. HAWK allows one to refer to these in formulae. The tool synthesizes monitors from formulae and automates program instrumentation.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Dehlinger:2005:PLR, author = "Josh Dehlinger and Robyn R. Lutz", title = "A product-line requirements approach to safe reuse in multi-agent systems", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--7", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1082981", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The dynamic nature of highly autonomous agents within distributed systems is difficult to specify with existing requirements techniques. However, capturing the possibly shifting configurations of agents in the requirements specification is essential for safe reuse of agents. The contribution of this work is an extensible agent-oriented requirements specification template for distributed systems that supports safe reuse. We make two basic claims for this idea. First, by adopting a product-line-like approach, it exploits component reuse during system evolution. Second, the template allows ready integration with an existing tool-supported, safety analysis technique sensitive to dynamic variations within the components (i.e., agents) of a system. To illustrate these claims, we apply the requirements specification template and safety analysis to a real-world context-aware, distributed satellite system.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Dekel:2005:SDS, author = "Uri Dekel", title = "Supporting distributed software design meetings: what can we learn from co-located meetings?", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--7", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083109", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Although virtual conferencing tools have been successfully used in executive meetings, current tools appear inadequate for the needs of software designers. As a result, while distributed code writing is becoming widespread, almost all software design meetings are still carried out face-to-face incurring costs that undermine the potential of distributed software development. Our research strives to build successful tools for supporting distributed software design meetings. To do so, we must first identify the unique activities of software design which must be mimicked in the virtual world. This paper does so with a detailed study of two colocated design meetings. We discuss issues that must be tackled in the transition to virtual settings, outline requirements for such tools, and propose strategies for meeting these requirements. In doing so, we also identify problems in existing colocated meetings which could be alleviated with these tools.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{DeLoach:2005:MSE, author = "Scott A. DeLoach", title = "Multiagent systems engineering of organization-based multiagent systems", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--7", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1082967", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "In this paper, we examine the Multiagent Systems Engineering (MaSE) methodology and its applicability to developing organization-based multiagent systems, which are especially relevant to context aware systems. We discuss the inherent shortcomings of MaSE and then present our approach to modeling the concepts required for organizations including goals, roles, agents, capabilities, and the assignment of agents to roles. Finally, we extend MaSE to allow it to overcome its inherent shortcomings and capture the organizational concepts defined in our organizational model.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Demir:2005:DAA, author = "Omer Erdem Demir and Prem Devanbu and Nenad Medvidovic and Eric Wohlstadter", title = "{DISCOA}: architectural adaptations for security and {QoS}", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--7", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083201", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Modern distributed systems have greatly benefited from developments such as model-driven development, and architectural description languages. Abstract models of components (e.g., IDL) and models of interconnection (e.g., architectural description languages, or ADLs) provide important software engineering advantages, such as explicit design models, type-checked integration across machine and language boundaries (with generated marshaling and dispatch code), the possibility of third-party components, and automated verification of design artifacts. But, when distributed systems are enhanced to provide security features, many of these advantages do not apply. Security features are hand-written into almost every part of the system; there is no explicit component or architectural model, or separable ``security component'' security code fragments are scattered and tangled through the different distributed elements of the system, and are often reduced to communicating through lowest-common denominator fragments (like raw bytes) since they are not represented in the model. In this paper, we describe DISCOA, a proposed extension of our earlier work on DADO [23] to handle security features in distributed systems, using explicit architectural models with aspect-oriented extensions.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Dwaikat:2005:RTR, author = "Zaid Dwaikat and Francesco Parisi-Presicce", title = "Risky trust: risk-based analysis of software systems", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--7", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083206", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Measuring the security of a software system is a difficult problem. This paper presents a model using common security concepts to evaluate the security of a system under design. After providing definitions for all relevant concepts and formalizing some of them, we define security requirements for transactions and provide mechanisms to measure the likelihood of violation of these requirements. Our model is based on individual risks presented by system components. Based on the security policy and individual risks, we calculate violation risk for a certain transaction. Context and other risk factors are considered and can be used to adjust the final risk figure. As part of our discussion, we address trust and risk and their significance to security engineering. Based on the decision process, the same trust assumptions may increase, or decrease, the risk to the system. We model the fact that small individual risks can be transformed into major risks when combined together in a complex attack.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Farcas:2005:RTC, author = "Emilia Farcas and Claudiu Farcas and Wolfgang Pree and Josef Templ", title = "Real-time component integration based on transparent distribution", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--7", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083198", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper introduces a real-time component model that offers a separation of concerns which allows a straight-forward integration of independently developed components. So-called transparent distribution forms the backbone of the integration process. Transparent distribution means that (1) the functional and temporal behavior of a system is the same no matter on which node of a distributed system a component is executed and (2) the developer does not have to care about the differences of local versus distributed execution of a component. We first present the concepts of a component model for real time systems that is well suited for transparent distribution. The component model is based on logical execution time, which abstracts from physical execution time and thereby from both the execution platform and the communication topology. Then we discuss the resulting tool chain and integration process. A case study rounds out the paper.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Filho:2005:FAE, author = "Fernando Castor Filho and Patrick H. S. Brito and Cec{\'\i}lia Mary F. Rubira", title = "A framework for analyzing exception flow in software architectures", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--7", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083221", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "We present Aereal, a framework for analyzing exception flow in architecture descriptions. Aereal works as a customizable architectural-level exception handling system that can be further constrained or have some of its rules relaxed. Since different architectural styles have different policies for exception flow, Aereal makes it possible to specify rules on how exceptions flow in a given style and to check for violations of these rules. As enabling technologies. Aereal uses Alloy, a first-order relational language, ACME, an interchange language for architecture description, and their associated tool sets.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Fleming:2005:AID, author = "Scott D. Fleming and Betty H. C. Cheng and R. E. Kurt Stirewalt and Philip K. McKinley", title = "An approach to implementing dynamic adaptation in {C++}", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--7", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083089", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper describes TRAP/C++, a software tool that enables new adaptable behavior to be added to existing C++ programs in a transparent fashion. In previous investigations, we used an aspect-oriented approach to manually define aspects for adaptation infrastructure, which were woven into the original application code at compile time. In follow-on work, we developed TRAP, a transparent shaping technique for automatically generating adaptation aspects, where TRAP/J is a specific instantiation of TRAP. This paper presents our work into building TRAP/C++, which was intended to be a port of TRAP/J into C++. Designing TRAP/C++ required us to overcome two major hurdles: lack of reflection in C++ and the incompatibility between the management of objects in C++ and the aspect weaving technique used in TRAP/J. We used generative programming methods to produce two tools, TrapGen and TrapCC, that work together to produce the desired TRAP/C++ functionality. Details of the TRAP/C++ architecture and operation are presented, which we illustrate with a description of a case study that adds dynamic auditing capabilities to an existing distributed C++ application.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Gaffar:2005:HPS, author = "Ashraf Gaffar and Ahmed Seffah and John A. {Van der Poll}", title = "{HCI} pattern semantics in {XML}: a pragmatic approach", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--7", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083112", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "User interface design is a multidisciplinary field at the crossroads between software engineering, computer science, psychology and cognitive science. HCI pattern writers focus on usability and human aspects of the interface. They use elaborate narrative formats to convey theories and practices of interaction design. Pattern users are typically software developers who need concise and pragmatic guidance of when and how patterns can be used. Narrative descriptions make it difficult to integrate patterns into design (CASE) tools. In this paper, we discuss how patterns can be represented in XML to effectively support their dissemination and assimilation in a programmable environment.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Gegick:2005:MAP, author = "Michael Gegick and Laurie Williams", title = "Matching attack patterns to security vulnerabilities in software-intensive system designs", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--7", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083211", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Fortifying software applications from attack is often an effort that occurs late in the software development process. Applying patches to fix vulnerable applications in the field is a common approach to securing applications. Abstract representations of attacks such as attack trees and attack nets can be used for identifying potential threats before a system is released. We have constructed attack patterns that can illuminate security vulnerabilities in a software-intensive system design. Matching our attack patterns to vulnerabilities in the design phase may stimulate security efforts to start early and to become integrated with the software process. The intent is that our attack patterns can be used to effectively encode software vulnerabilities in vulnerability databases. A case study of our approach with undergraduate students in a security course indicated that our attack patterns can provide general descriptions of vulnerabilities. The students were able to accurately map the patterns to vulnerabilities in a system design.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Griffith:2005:MME, author = "Rean Griffith and Gail Kaiser", title = "Manipulating managed execution runtimes to support self-healing systems", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--7", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083066", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib; http://www.math.utah.edu/pub/tex/bib/virtual-machines.bib", abstract = "Self-healing systems require that repair mechanisms are available to resolve problems that arise while the system executes. Managed execution environments such as the Common Language Runtime (CLR) and Java Virtual Machine (JVM) provide a number of application services (application isolation, security sandboxing, garbage collection and structured exception handling) which are geared primarily at making managed applications more robust. However, none of these services directly enables applications to perform repairs or consistency checks of their components. From a design and implementation standpoint, the preferred way to enable repair in a self-healing system is to use an externalized repair/adaptation architecture rather than hardwiring adaptation logic inside the system where it is harder to analyze, reuse and extend. We present a framework that allows a repair engine to dynamically attach and detach to/from a managed application while it executes essentially adding repair mechanisms as another application service provided in the execution environment.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Guinness:2005:SMM, author = "David Mc Guinness and Liam Murphy", title = "A simulation model of a multi-server {EJB} system", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--7", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083278", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Despite the fact that EJB (Enterprise Java Beans) is a widely used technology, research in the area of performance modelling of EJB application servers is quite sparse. This paper will describe how Workbench{\TM}, an advanced simulation modelling tool, can be used to build a scalable model of a multi-server EJB system that allows users to input variables that describe interactions and their constituent methods, as well as system parameters. The model will output the average time for each given user interaction and allow users to seek system improvements by changing the system parameters and workloads.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Halfond:2005:CSA, author = "William G. J. Halfond and Alessandro Orso", title = "Combining static analysis and runtime monitoring to counter {SQL-injection} attacks", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--7", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083250", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Our dependence on web applications has steadily increased, and we continue to integrate them into our everyday routine activities. When we are making reservations, paying bills, and shopping on-line, we expect these web applications to be secure and reliable. However, as the availability of these services has increased, there has been a corresponding increase in the number and sophistication of attacks that target them. One of the most serious types of attack against web applications is SQL injection. SQL injection is a class of code-injection attacks in which user input is included in a SQL query in such a way that part of the input is treated as code. Using SQL injection. attackers can leak confidential information, such as credit card numbers, from web applications' databases and even corrupt the database. In this paper, we propose a novel technique to counter SQL-injection. The technique combines conservative static analysis and runtime monitoring to detect and stop illegal queries before they are executed on the database. In its static part, the technique builds a conservative model of the legitimate queries that could be generated by the application. In its dynamic part, the technique inspects the dynamically generated queries for compliance with the statically-built model. We also present a preliminary evaluation of the technique performed on two small web applications. The results of the evaluation are promising --- our technique was able to prevent all of the attacks that we performed on the two applications.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Jochen:2005:ECA, author = "Mike Jochen and Anteneh Addis Anteneh and Lori L. Pollock and Lisa M. Marvel", title = "Enabling control over adaptive program transformation for dynamically evolving mobile software validation", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--7", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083210", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Many researchers are investigating the use of adaptive program transformation as a way to efficiently improve program performance. Performance improving transformations are performed at runtime to adapt to the possibly changing runtime characteristics of the program. Leveraging this kind of program transformation on multiple hosts can achieve these same performance gains while reducing the overhead to apply the transformations on the local machine running the program. The reduction in overhead is obtained by distributing the responsibilities for the transformation process to multiple hosts throughout the network. The use of this technology could greatly benefit applications running on networked computation nodes; however, one must first establish confidence in the secure generation and distribution of the transformed versions of the original program before acceptance and execution can occur for many network environments. Since programs are being transformed dynamically, traditional program validation methods such as checksums and digital signatures will be unable to efficiently meet the security needs of this possibly itinerant, transforming software. New validation methods must be developed in order to allow future software to avail itself of the advantages that dynamic program modification may provide while mitigating potential security risks. In this paper, we present our framework to validate dynamically-transforming software in a manner that enables the system to restrict how the software can transform as it executes on a network of hosts. Our prototype system utilizes specification languages to communicate program transformations and controls for those transformations on hosts in the system. This first step towards validating evolving mobile code before transformation occurs, will make dynamically-transforming software a safe and viable future technology.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Karr:2005:DPT, author = "Alan F. Karr and Adam A. Porter", title = "Distributed performance testing using statistical modeling", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--7", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083287", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This article briefly presents some of our recent research in distributed continuous performance analysis. In general this work pushes substantial parts of performance analysis out of developer laboratories and onto remote, end-user machines. To do this effectively we have found it useful to recast performance analysis as a model-based experimental design and execution problem. Our experience suggests that this approach has merit, but that much future work remains to be done. We therefore discuss some of the limitations of our current efforts and describe some plans for future work.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Kim:2005:PLS, author = "Minseong Kim and Jaemin Jeong and Sooyong Park", title = "From product lines to self-managed systems: an architecture-based runtime reconfiguration framework", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--7", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083078", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Adaptability and/or high availability are requirements which have become more prevalent and important for computing systems in recent years. To support adaptability and availability, a system must be able to dynamically change its behavior at runtime as user requirements, execution environments, or technologies change. Our aim is to develop a dynamic software product line in which a product line member can be dynamically modified after its deployment and thus new products can be produced during runtime without newly developing the products. To do so, we present a runtime reconfiguration framework based on reconfigurable components in supporting building dynamic product lines, particularly within the embedded software domain. Ultimately, our framework supports dynamic reconfiguration and not only reusable, but also reconfigurable components development in the context of self-managed systems.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Lakey:2005:MBS, author = "Peter B. Lakey", title = "Model-based specification and testing applied to the Ground-Based Midcourse Defense {(GMD)} system: an industry report", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--7", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083291", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Cognitive Concepts LLC (CC) is a small business that specializes in software reliability engineering. In the past several years CC has become convinced that the best available practice for software reliability on complex systems is model-based specification and testing (MST). CC completed a small business innovative research project with the Missile Defense Agency in 2004 in which the goal was to demonstrate the feasibility and value of applying MST on some aspect of the National Missile Defense (NMD). This paper describes the results of that research effort.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Lapouchnian:2005:TRD, author = "Alexei Lapouchnian and Sotirios Liaskos and John Mylopoulos and Yijun Yu", title = "Towards requirements-driven autonomic systems design", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--7", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083075", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Autonomic computing systems reduce software maintenance costs and management complexity by taking on the responsibility for their configuration, optimization, healing, and protection. These tasks are accomplished by switching at runtime to a different system behaviour --- the one that is more efficient, more secure, more stable, etc. --- while still fulfilling the main purpose of the system. Thus, identifying and analyzing alternative ways of how the main objectives of the system can be achieved and designing a system that supports all of these alternative behaviours is a promising way to develop autonomic systems. This paper proposes the use of requirements goal models as a foundation for such software development process and sketches a possible architecture for autonomic systems that can be built using the this approach.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Lee:2005:ETS, author = "Seok Won Lee and Robin A. Gandhi and Gail-Joon Ahn", title = "Establishing trustworthiness in services of the critical infrastructure through certification and accreditation", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--7", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083205", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Trustworthiness in services provided by the Critical Infrastructure (CI) is essentially dependent on the quality of underlying software, systems, practice and environment, as which the software information infrastructures are becoming increasingly a major component of business, industry, government and defense. The level of trustworthiness required from services that are operational in such critical software information infrastructures is often established based on standardized infrastructure-wide evaluation criteria --- Certification and Accreditation (C\&A) --- through the identification of operational risks and the determination of conformance with established security standards and best practices. In order to effectively establish such levels of trustworthiness for services in the CI, we identify the need for a structured and comprehensive C\&A framework with appropriate tool support that combines its theoretical and practical aspects. In this paper, we present our efforts in developing such a framework that leverages novel techniques from software requirements engineering and knowledge engineering to support the automation of the Department of Defense Information Technology Security Certification and Accreditation Process (DITSCAP), which is a standard for certifying and accrediting the information networks that support the Defense Information Infrastructure (DII). Through the examples derived from our case study, we further motivate the applicability and appropriateness of our framework.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Litoiu:2005:HMB, author = "Marin Litoiu and Murray Woodside and Tao Zheng", title = "Hierarchical model-based autonomic control of software systems", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--7", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083071", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Various control algorithms are used in autonomic control to maintain Quality of Service (QoS) and Service Level Agreements (SLAs). Controllers are all based to some extent on models of the relationship between resources, QoS measures, and the workload imposed by the environment. This work discusses the range of algorithms with an emphasis on richer and more powerful models to describe non-linear performance relationships, and strong interactions among the system resources. A hierarchical framework is described which accommodates different scopes and timescales of control actions, and different control algorithms. The control algorithms and architectures can be considered in three stages: tuning, load balancing and provisioning. Different situations warrant different solutions, so this work shows how different control algorithms and architectures at the three stages can be combined to fit into different autonomic environments to meet QoS and SLAs across a large variety of workloads.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Liu:2005:DEB, author = "WenQian Liu and Charles L. Chen and Vidya Lakshminarayanan and Dewayne E. Perry", title = "A design for evidence --- based soft research", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--7", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083180", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Active research is being done in how to go from requirements to architecture. However, no studies have been attempted in this area despite a long history of empirical research in software engineering (SE). Our goal is to establish a framework for the transformation from requirements to architecture on the basis of a series of empirical studies. The first step is to collect evidence about practice in industry before designing relevant techniques, methods and tools. As part of this step, we use an interview-based multiple-case study with a carefully designed process of conducting the interviews and of preparing the data collected for analysis while preserving its integrity. In this paper, we describe the design of this multiple-case study, delineate the evidence trail, discuss validity issues, outline the data analysis focus, discuss meta issues on evidence-based SE particularly on combining and using evidence, describe triangulation approaches, and present two methods for accumulating evidence.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Lott:2005:MRC, author = "C. Lott and A. Jain and S. Dalal", title = "Modeling requirements for combinatorial software testing", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--7", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083281", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The combinatorial approach to software testing uses models to generate a minimal number of test inputs so that selected combinations of input values are covered. The most common coverage criteria is two-way, or pairwise coverage of value combinations, though for higher confidence three-way or higher coverage may be required. This paper presents example system requirements and corresponding models for applying the combinatorial approach to those requirements. These examples are intended to serve as a tutorial for applying the combinatorial approach to software testing. Although this paper focuses on pairwise coverage, the discussion is equally valid when higher coverage criteria such as three-way (triples) are used. We use terminology and modeling notation from the AETG$^1$ system to provide concrete examples.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Marcos:2005:SER, author = "Esperanza Marcos", title = "Software engineering research versus software development", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--7", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083005", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Engineering research differs greatly, both in its aims and in its methods, from traditional ``scientific'' research. While Sciences deal with the study of existing objects and phenomena, be it physically, metaphysically or conceptually, Engineering is based on how to do things, how to create new objects. For this reason, ``scientific'' research methods are not always directly applicable to research problems of an engineering nature. In the present article, we concentrate on the problems and research methods of a specific branch of engineering: Software Engineering, discussing, on the one hand, the nature of the method in this field while and, on the other, the similarity of the methods of research in Software Engineering and those of software development.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Masri:2005:UDI, author = "Wes Masri and Andy Podgurski", title = "Using dynamic information flow analysis to detect attacks against applications", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--7", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083216", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper presents a new approach to using dynamic information flow analysis to detect attacks against application software. The approach can be used to reveal and, under some conditions, to prevent attacks that violate a specified information flow policy or exhibit a known information flow signature. When used in conjunction with automatic cluster analysis, the approach can also reveal novel attacks that exhibit unusual patterns of information flows. A set of prototype tools implementing the approach have been developed for Java byte code programs. Case studies in which this approach was applied to several subject programs are described.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Mead:2005:SQR, author = "Nancy R. Mead and Ted Stehney", title = "Security quality requirements engineering {(SQUARE)} methodology", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--7", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083214", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Requirements engineering, a vital component in successful project development, often neglects sufficient attention to security concerns. Further, industry lacks a useful model for incorporating security requirements into project development. Studies show that upfront attention to security saves the economy billions of dollars. Industry is thus in need of a model to examine security and quality requirements in the development stages of the production lifecycle. In this paper, we examine a methodology for both eliciting and prioritizing security requirements on a development project within an organization. We present a model developed by the Software Engineering Institute's Networked Systems Survivability (NSS) Program, and then examine two case studies where the model was applied to a client system. The NSS Program continues to develop this useful model, which has proven effective in helping an organization understand its security posture.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Merideth:2005:RNA, author = "Michael G. Merideth and Priya Narasimhan", title = "Retrofitting networked applications to add autonomic reconfiguration", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--7", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083073", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "To reduce user maintenance is an important goal for applications that must dynamically adapt based on their environments. There are many existing popular applications that lack support for this autonomic reconfiguration, but that are beginning to be used in these dynamic environments, in which they must update themselves frequently; not all of these applications will be completely redesigned and redeveloped in order to support autonomic features. In this paper, we explore how to retrofit pre-existing networked applications to add support for autonomic reconfiguration. To illustrate our methods, we retrofit a popular open-source intrusion detection system, Snort, to enable it to reconfigure itself using online program updates and information about its environment.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Muccini:2005:TSA, author = "Henry Muccini and Marcio S. Dias and Debra J. Richardson", title = "Towards software architecture-based regression testing", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--7", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083223", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "When architecting dependable systems, in addition to improving system dependability by means of construction (fault-tolerant and redundant mechanisms, for instance), it is also important to evaluate, and thereby confirm, system dependability. There are many different approaches for evaluating system dependability, and testing always has been an important one. Previous work on software architecture testing has shown it is possible to apply conformance-testing techniques to yield confidence that the behavior of an implemented system conforms to the expected behavior of the software architecture, specified with Architecture Description Languages. In this work, we explore how regression testing can be systematically applied at the software architecture level in order to reduce the cost of retesting modified systems, and also to assess the regression testability of the evolved system. We consider assessing both ``top-down'' and ``bottom-up'' evolution, i.e., whether a slightly modified implementation conforms to the initial architecture, and whether the (modified) implementation conforms an evolved architecture. A better understanding on how regression testing can be applied at the software architecture level will help us to assess and identify architecture with higher dependability.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Nagappan:2005:EES, author = "Nachiappan Nagappan and Laurie Williams and Mladen Vouk and Jason Osborne", title = "Early estimation of software quality using in-process testing metrics: a controlled case study", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--7", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083304", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "In industrial practice, information on post-release field quality of a product tends to become available too late in the software development process to affordably guide corrective actions. An important step towards remediation of this problem of late information lies in the ability to provide an early estimation of software post-release field quality. This paper presents the use of a suite of in-process metrics that leverages the software testing effort to provide (1) an estimation of potential software field quality in early software development phases, and (2) the identification of low quality software programs. A controlled case study conducted at North Carolina State University provides initial indication that our approach is effective for making an early assessment of post-release field quality.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Olimpiew:2005:MBT, author = "Erika Mir Olimpiew and Hassan Gomaa", title = "Model-based testing for applications derived from software product lines", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--7", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083279", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper describes an approach for mapping the models of an SPL (Software Product Line) to tests so that functional tests can be automatically generated and selected when an application is derived from an SPL. Information relevant for testing is added to and then extracted from the SPL models. A Hotel Product line example is used to illustrate the approach.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Oliveira:2005:XED, author = "Toacy C. Oliveira and Paulo Alencar and Don Cowan and Carlos Lucena", title = "{xTAO}: enabling a declarative approach to the specification of multi-agent systems", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--7", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1082968", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Research on software agents has produced a diversity of conceptual models for high-level abstract descriptions of multi-agent systems (MASs). However, it is still difficult and costly for designers that need a unique set of agent modeling features to either develop a new agent modeling language from scratch or undertake the task of modifying an existing language. In addition to the modeling itself, in both cases a significant effort needs to be expended in building or adapting tools to support the language. An extensible agent modeling language is crucial to experimenting with and building tools for novel modeling constructs that arise from evolving research. Existing approaches typically support a basic set of modeling constructs very well, but adapt to others poorly. A declarative language such as XML and its supporting tools provides an ideal platform upon which to develop an extensible modeling language for multi-agent systems. In this paper we describe xTAO, an extensible agent modeling language, and also demonstrate its value in the context of a real-world application.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Orso:2005:SCR, author = "Alessandro Orso and Bryan Kennedy", title = "Selective capture and replay of program executions", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--7", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083251", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "In this paper, we present a technique for selective capture and replay of program executions. Given an application, the technique allows for (1) selecting a subsystem of interest, (2) capturing at runtime all the interactions between such subsystem and the rest of the application, and (3) replaying the recorded interactions on the subsystem in isolation. The technique can be used in several scenarios. For example, it can be used to generate test cases from users' executions, by capturing and collecting partial executions in the field. For another example. it can be used to perform expensive dynamic analyses off-line. For yet another example, it can be used to extract subsystem or unit tests from system tests. Our technique is designed to be efficient, in that we only capture information that is relevant to the considered execution. To this end, we disregard all data that, although flowing through the boundary of the subsystem of interest, do not affect the execution. In the paper, we also present a preliminary evaluation of the technique performed using SCARPE, a prototype tool that implements our approach.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Palankar:2005:MTH, author = "Mayur Palankar and Jonathan E. Cook", title = "Merging traces of hardware-assisted data breakpoints", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--7", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083252", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Future improvements in hardware and O/S support for monitoring programs will depend on providing feedback for current support (even if it is quite limited). We look at using hardware breakpoint registers and performance counters in order to trace data accesses in a program. We first present a small experiment to understand how these features can be used to monitor a program. and then detail an algorithm for using these limited resources to trace any amount of data accesses in a program and achieve a complete and correct trace by merging partial traces.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Paradkar:2005:CSF, author = "Amit Paradkar", title = "Case studies on fault detection effectiveness of model based test generation techniques", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--7", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083286", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Model-based test generation (MBTG) is becoming an area of active research. These techniques differ in terms of (1) modeling notations used, and (2) the adequacy criteria used for test generation. This paper (1) reviews different classes of MBTG techniques at a conceptual level, and (2) reports results of two case studies comparing various techniques in terms of their fault detection effectiveness. Our results indicate that MBTG technique which employs mutation and explicitly generates state verification sequences has better fault detection effectiveness than those based on boundary values, and predicate coverage criteria for transitions. Instead of a default adequacy criteria, certain techniques allow the user to specify test objectives in addition to the model. Our experience indicates that the task of defining appropriate test objectives is not intuitive. Furthermore, notations provided to describe such test objectives may have inadequate expressive power. We posit the need for a suitable fault modeling notation.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Pettersson:2005:MPS, author = "Niklas Pettersson", title = "Measuring precision for static and dynamic design pattern recognition as a function of coverage", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--7", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083253", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "We strive to detect design pattern like patterns in software. This cannot be done efficiently with sufficient precision using only static analysis; we need to combine static and dynamic analysis. In this process, the pattern candidates produced from static analysis are monitored during executions of the software: Candidates detected by static analysis violating the expected dynamic protocol of the pattern are excluded. In this article, we investigate where to put effort when trying to perform high precision pattern detection in code. We do so by investigating which parameters are most important to improve the precision of the detection process: precision of initial static analysis or coverage of the dynamic analysis. Varying the precision of the dynamic analysis is a third important parameter, but this parameter is left as a constant during our experiments. The results show that simple behavioral protocols double the precision when 30\% coverage is obtained. We also have indications that simple behavioral protocols give very high precision when high coverage is obtained. In such case, the quality of the static analysis is only interesting for precision if high coverage cannot be reached.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Rawashdeh:2005:UTD, author = "Osamah A. Rawashdeh and Garrett D. Chandler and James E. Lumpp", title = "A {UAU} test and development environment based on dynamic system reconfiguration", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--7", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083227", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper describes ongoing research to develop a framework for implementing dynamically reconfiguring avionics and control systems for unmanned aerial vehicles (UAVs) and a test and development environment for experimental UAVs. The framework supports graceful degradation, where hardware and software failures cause a reduction in the quality or capability of the control system but does not result in total system failure. The approach uses a graphical specification representing modular software interdependencies and a runtime system manager that reconfigures the system. The techniques are currently being applied to the design of UAV control systems as part of the BIG BLUE Mars airplane testbed project at the University of Kentucky.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Ren:2005:TAT, author = "Jie Ren and Richard Taylor and Paul Dourish and David Redmiles", title = "Towards an architectural treatment of software security: a connector-centric approach", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--7", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083203", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Security is a very important concern for software architecture and software components. Previous modeling approaches provide insufficient support for an in-depth treatment of security. This paper argues for a more comprehensive treatment based on software connectors. Connectors provide a suitable vehicle to model, capture, and enforce security. Our approach models security principal, privilege, trust, and context of architectural constituents. Extending our existing architecture description language and support tools, our approach can facilitate describing the security characteristics of an architecture generating enabling infrastructure, and monitoring run-time conformance. Initial results of applying this approach are illustrated through a case study. The contribution of this research is a deeper and more comprehensive treatment of architectural security through software connectors.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Rits:2005:XBB, author = "Maarten Rits and Benjamin {De Boe} and Andreas Schaad", title = "{XacT}: a bridge between resource management and access control in multi-layered applications", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--7", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083202", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "In this paper we describe the eXtreme access control Tool (XacT) which provides an automated way to obtain access control information out of multi-layered applications. We believe that based on this information consistent access control policies can be specified to prevent over-privileged accounts. The main difficulty, that leads to these over-privileged accounts, comes from the distinction that must be made between identifying which users should perform a workflow task (resource management) and which users are allowed to perform a task (access control), as well as the fact that access control enforcement is typically spread over different layers in applications (e.g. database layer, operating system layer, workflow layer). In this paper, we present an automated way to obtain access control information out of multi-layered applications. We base our observations on recent insights into workflow controlled judicial information systems.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Robinson-Mallett:2005:GOD, author = "Christopher Robinson-Mallett and Peter Liggesmeyer and Tilo M{\"u}cke and Ursula Goltz", title = "Generating optimal distinguishing sequences with a model checker", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--7", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083283", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper presents an approach for the automatic generation of shortest Distinguishing Sequences (DS) with the Uppaal model checker. The presented method is applicable to a large number of extended finite state machines and it will find an optimal result, if a DS sequence exists for the considered automaton. Our approach is situated in an integrated testing environment that is used to generate checking sequences. The generation method is based on a DS model, which is derived from the same test model that is used for generating test cover sets. The problem of generating DS is reduced to the definition of a DS model and for this reason the complexity of our approach depends mainly on the used model checking algorithm. This means, that the presented method is automatically improved, when the model checking algorithm is improved. This includes the generation of optimal DS depending on the ability of the model checker to produce optimal results.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Sadjadi:2005:TSE, author = "S. Masoud Sadjadi and Philip K. McKinley and Betty H. C. Cheng", title = "Transparent shaping of existing software to support pervasive and autonomic computing", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--7", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083086", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The need for adaptability in software is growing, driven in part by the emergence of pervasive and autonomic computing. In many cases, it is desirable to enhance existing programs with adaptive behavior, enabling them to execute effectively in dynamic environments. In this paper, we propose a general programming model called transparent shaping to enable dynamic adaptation in existing programs. We describe an approach to implementing transparent shaping that combines four key software development techniques: aspect-oriented programming to realize separation of concerns at development time, behavioral reflection to support software reconfiguration at run time, component-based design to facilitate independent development and deployment of adaptive code, and adaptive middleware to encapsulate the adaptive functionality. After presenting the general model, we discuss two specific realizations of transparent shaping that we have developed and used to create adaptable applications from existing programs.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Salehie:2005:ACE, author = "Mazeiar Salehie and Ladan Tahvildari", title = "Autonomic computing: emerging trends and open problems", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--7", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083082", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The increasing heterogeneity, dynamism and interconnectivity in software applications, services and networks led to complex, unmanageable and insecure systems. Coping with such a complexity necessitates to investigate a new paradigm namely Autonomic Computing. Although academic and industry efforts are beginning to proliferate in this research area, there are still a lots of open issues that remain to be solved. This paper proposes a categorization of complexity in I/T systems and presents an overview of autonomic computing research area. The paper also discusses a summary of the major autonomic computing systems that have been already developed both in academia and industry, and finally outlines the underlying research issues and challenges from a practical as well as a theoretical point of view.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Sampath:2005:ACW, author = "Sreedevi Sampath and Sara Sprenkle and Emily Gibson and Lori Pollock and Amie Souter", title = "Analyzing clusters of web application user sessions", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--7", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083255", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "User sessions provide valuable insight into the dynamic behavior of web applications. They also play a key role in user-session-based testing, which gathers user sessions in the field and replays selected sessions to test an evolving application. To decrease the testing and analysis effort, testers reduce the set of collected user sessions by either clustering user sessions by their shared URL attributes or by program coverage requirements-based reduction techniques. Clustering URL attributes can be considerably less expensive; however, the tradeoff may be that clustering is not representative of dynamic behavior similarities. This paper describes our analysis of user session data to reveal correlations between sessions clustered on the sessions' attributes and the relative dynamic behavior of the program for those sessions. The results of our analysis also motivate other clustering and test suite reduction techniques. Our results can also be used to learn more about how clusters of web application use cases are related in terms of the underlying user session attributes, program coverage, and fault detection.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Sant:2005:ESM, author = "Jessica Sant and Amie Souter and Lloyd Greenwald", title = "An exploration of statistical models for automated test case generation", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--7", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083256", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "In this paper, we develop methods that use logged user data to build models of a web application. Logged user data captures dynamic behavior of an application that can be useful for addressing the challenging problems of testing web applications. Our approach automatically builds statistical models of user sessions and automatically derives test cases from these models. We provide several alternative modeling approaches based on statistical machine learning methods. We investigate the effectiveness of the test suites generated from our methods by performing a preliminary study that evaluates the generated test cases. The results of this study demonstrate that our techniques are able to generate test cases that achieve high coverage and accurately model user behavior. This study provides insights into improving our methods and motivates a larger study with a more diverse set of applications and testing metrics.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Sen:2005:OEK, author = "Rohan Sen and Gregory Hackmann and Gruia-Catalin Roman and Christopher Gill", title = "Opportunistic exploitation of knowledge to increase predictability of agent interactions in {MANETs}", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--7", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1082972", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Mobile Ad hoc Networks (MANETs) are dynamic environments where frequent changes in the network topology due to physical mobility of hosts result in unpredictable, sporadic and transient connectivity. Due to this high level of uncertainty, only limited guarantees can be given for interactions among agents that run on the mobile hosts. This is not desirable as any interaction among agents on different hosts is susceptible to interruption. In this paper, we explore means to alleviate the level of uncertainty in a MANET by having hosts and agents share knowledge of their non-functional attributes such as location, velocity, etc. with each other. This shared knowledge can be used to compute, for example, the points in space and time when two hosts are likely to be within communication range. This information can then be provided to individual agents, making them more aware of the constraints within which they operate and thereby giving them a chance to tailor their behavior so that they are less affected by unpredictable disconnections. The contributions of this paper are a minimalist formalism for knowledge exchange, a software architecture supporting knowledge exchange, and an empirical evaluation of the benefits of exploiting knowledge to increase the predictability of interactions.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Shin:2005:CBS, author = "Michael E. Shin and Daniel Cooke", title = "Connector-based self-healing mechanism for components of a reliable system", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--7", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083068", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper describes the self-healing mechanism for components in reliable systems. Each component in a self-healing system is designed as a layered architecture, structured with the healing layer and the service layer. The healing layer of a self-healing component is responsible for detection of anomalous objects in the service layer, reconfiguration of the service layer, and repair of anomalous objects detected. The service layer of a self-healing component provides functionality to other components, which consists of tasks (concurrent or active objects), connectors, and passive objects accessed by tasks. A connector supports the self-healing mechanism for self-healing components as well as encapsulates the synchronization mechanism for message communication between tasks in a component. Connectors are involved in detection of anomalous objects, reconfiguration of components, and repair of anomalous objects. This paper also specifies connectors --- the message queue self-healing connector. message buffer self-healing connector, and message buffer and response self-healing connector --- which provide functionalities for the self-healing mechanism.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Sohr:2005:AEA, author = "Karsten Sohr and Gail-Joon Ahn and Lars Migge", title = "Articulating and enforcing authorisation policies with {UML} and {OCL}", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--7", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083215", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Nowadays, more and more security-relevant data are stored on computer systems; security-critical business processes are mapped to their digital pendants. This situation applies to various critical infrastructures requiring that different security requirements must be fulfilled. It demands a way to design and express higher-level security policies for such critical organizations. In this paper we focus on authorisation policies to demonstrate how software engineering techniques can help validate authorisation constraints and enforce access control policies. Our approach leverages features and functionalities of the UML/OCL modeling methods as well as model driven approach to represent and specify authorisation model and constraints. Using our authorisation constraints editor, we articulate role-based authorisation policies. Also, we attempt to validate and enforce such constraints with the USE (UML Specification Environment) tool.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Srivastava:2005:ASM, author = "Deepti Srivastava and Priya Narasimhan", title = "Architectural support for mode-driven fault tolerance in distributed applications", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--7", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083226", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Many distributed applications exhibit different types of system behaviors, or modes, during the course of their operation. Each such mode may have different functional and non-functional requirements (such as fault tolerance, availability, and security). A static software fault-tolerance solution can not cater to the needs of every mode, and also does not utilize system resources intelligently. A flexible architecture is required to provide dependability that can be tailored for such applications. We propose a novel mode-driven fault-tolerance approach that includes: (i) a generic framework to extend the specification of modes with fault-tolerance requirements, and (ii) a software architecture that uses this description to provide the appropriate fault tolerance for each mode at runtime. We also present a case study using a distributed multi-modal CORBA application to demonstrate the effectiveness of our approach.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Staron:2005:EAU, author = "Miroslaw Staron and Ludwik Kuzniarz and Christian Thurn", title = "An empirical assessment of using stereotypes to improve reading techniques in software inspections", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--7", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083308", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Stereotypes were introduced into the Unified Modeling Language (UML) in order to provide a means of customizing the language for particular needs. The stereotypes can increase the comprehension of UML diagrams and therefor influence reading techniques used for inspections of software artefacts. In this paper we evaluate how the usage of stereotypes in UML designs influences outcomes of three reading techniques used for verification and validation of UML models. The study presented in this paper is done in the context of the UML domain modeling, but the results can be generalized to other kinds of models expressed in UML. The results show that the presence of stereotypes improves the efficiency and effectiveness of the studied methods and shows the magnitude of the improvements. We also investigate which of the reading techniques are the most efficient and effective for analysis of UML designs with stereotypes.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Tripathi:2005:PDC, author = "Anand Tripathi and Devdatta Kulkarni and Tanvir Ahmed", title = "Policy-driven configuration and management of agent based distributed systems", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--7", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1082975", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "In this paper, we demonstrate a policy based approach for building and managing large scale agent based systems. We identify different classes of policies for agent based component integration. We also identify the system services and mechanisms that are required for policy based integration of components and their management. The utility of this approach is presented through case studies involving two applications making use the distributed event monitoring system that we have developed.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Verhanneman:2005:RTS, author = "Tine Verhanneman and Frank Piessens and Bart {De Win} and Wouter Joosen", title = "Requirements traceability to support evolution of access control", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--7", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083212", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "One of the hurdles in the enforcement of access control remains the translation of the organization's high level policy, that drives the access control decisions, down to technology specific deployment descriptors, configuration files and code. This huge gap between the high level policy and the access logic has as a consequence that it is hard to trace implementation fragments to the actual requirement they contribute to, and to support evolution. The notion of an access interface is introduced as a contract between the authorization engine and the various applications using its services. A so-called view connector makes sure that the application behaves consistently with this contract. The implementation is based on aspect orientation, rendering the whole design more robust in the light of unanticipated changes.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Viega:2005:BSR, author = "John Viega", title = "Building security requirements with {CLASP}", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--7", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083207", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Traditionally, security requirements have been derived in an ad hoc manner. Recently, commercial software development organizations have been looking for ways to produce effective security requirements. In this paper, we show how to build security requirements in a structured manner that is conducive to iterative refinement and, if followed properly, metrics for evaluation. While requirements specification cannot be a complete science, we provide a framework that is an obvious improvement over traditional methods that do not consider security at all. We provide an example using a simple three-tiered architecture. The methodology we document is a subset of CLASP, a set of process pieces for application security that we have recently published, in conjunction with IBM/Rational.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Weaver:2005:CSE, author = "Rob Weaver and Georgios Despotou and Tim Kelly and John McDermid", title = "Combining software evidence: arguments and assurance", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--7", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083182", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Argumentation is an approach which can be used for describing how evidence satisfies requirements and objectives. A structured argumentation notation allows developers to determine the need for individual items of evidence and allows reviewers to determine whether a complete set of evidence satisfies the requirements. This paper introduces an established argumentation notation from the safety critical domain, as well as new research into dependability arguments and assurance of arguments. These techniques and concepts have been applied to the development and certification of safety critical software and it is believed they are both applicable to and beneficial for the wider field of evidence-based software engineering.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Weber:2005:SFT, author = "Sam Weber and Paul A. Karger and Amit Paradkar", title = "A software flaw taxonomy: aiming tools at security", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--7", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083209", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Although proposals were made three decades ago to build static analysis tools to either assist software security evaluations or to find security flaws, it is only recently that static analysis and model checking technology has reached the point where such tooling has become feasible. In order to target their technology on a rational basis, it would be useful for tool-builders to have available a taxonomy of software security flaws organizing the problem space. Unfortunately, the only existing suitable taxonomies are sadly out-of-date, and do not adequately represent security flaws that are found in modern software. In our work, we have coalesced previous efforts to categorize security problems as well as incident reports in order to create a security flaw taxonomy. We correlate this taxonomy with available information about current high-priority security threats, and make observations regarding the results. We suggest that this taxonomy is suitable for tool developers and to outline possible areas of future research.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Weyns:2005:ADD, author = "Danny Weyns and Kurt Schelfthout and Tom Holvoet", title = "Architectural design of a distributed application with autonomic quality requirements", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--7", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083076", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "An autonomic system is essentially characterized by quality requirements that specify that the system should be able to adapt itself (configure optimize, heal, etc.) under varying circumstances and situations. These quality requirements call for an architecture centric software engineering approach. In this paper, we discuss and illustrate the architectural design of a complex real-world distributed application with autonomic quality requirements. In particular, we present an architecture with autonomous entities (agents) for managing warehouse logistics. We illustrate how the subsequent architectural decisions are guided by a reference architecture for situated multi-agent systems on the one hand, and by functional and quality requirements of the application on the other hand.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{DeWin:2005:TUV, author = "Bart {De Win} and Frank Piessens and Jan Smans and Wouter Joosen", title = "Towards a unifying view on security contracts", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--7", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083204", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "A key property of software component technology is predictability, which means that the properties of an overall system can be deduced from the properties of the individual components. One of the crucial building blocks in component technology is the notion of component contract. In order to leverage predictability for the construction of secure systems, security requirements and properties must be adequately supported by component contracts, which is currently a challenging and open problem. This paper provides an overview of the problem domain by presenting an initial taxonomy of security contracts and their representative security properties.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Wu:2005:FMS, author = "Weihang Wu and Tim Kelly", title = "Failure modelling in software architecture design for safety", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--7", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083222", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "In mission-critical industries, early feedback on the safety properties of a software system is critical and cost effective. This paper presents a compositional method for failure analysis of a system based on the proposed software architecture. This method is based upon the use of CSP as the failure modelling language and its associated tools as failure analysis. Preliminary findings from the application of this approach are also presented.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Young:2005:PCX, author = "S. Michelle Young and Helen M. Edwards and Sharon McDonald and J. Barrie Thompson", title = "Personality characteristics in an {XP} team: a repertory grid study", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--7", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083123", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "There is a ``folk belief'' that certain personalities fit with particular systems development roles: however, there is little evidence to confirm this supposition. As part of a larger study an XP development team was investigated using a repertory grid approach (this is discussed in detail) to determine whether coherent personalities and characteristics emerge for different roles. The results, which are inevitably limited, suggest that this is the case. Further work remains to be done to build a large corpus of data for future analysis before firm mappings can be made between appropriate personality characteristics and software development roles.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Zannier:2005:QEE, author = "Carmen Zannier and Frank Maurer", title = "A qualitative empirical evaluation of design decisions", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--7", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083124", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "In this paper, we motivate examining software design decision making and provide the process by which the examination will occur. The objective is to provide qualitative results indicative of rational or naturalistic software design decision making. In a rational decision a decision maker evaluates decision alternatives and potential outcomes for each alternative using a utility function and probabilities of the outcome of each alternative. The utility function assigns a value to each possible alternative based on its outcome. The goal of rational decision making is selecting the optimal alternative. A naturalistic decision manifests itself in dynamic and continually changing conditions, embodies real-time reactions to these changes, embraces ill-defined tasks, and has a goal of selecting a satisfactory alternative. The proposed empirical qualitative study consists of inductive and deductive interviewing and deductive observations.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Zhang:2005:SAS, author = "Ji Zhang and Betty H. C. Cheng", title = "Specifying adaptation semantics", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--7", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083220", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Computer software must dynamically adapt to changing conditions. In order to fully realize the benefit of dynamic adaptation, it must be performed correctly. The correctness of adaptation cannot be properly addressed without precisely specifying the requirements for adaptation. This paper introduces an approach to formally specifying adaptation requirements in temporal logic. We introduce A-LTL, an adaptation-based extension to linear temporal logic, and use this logic to specify three commonly used adaptation semantics. Neighborhood composition and sequential composition techniques are developed and applied to A-LTL to construct the specification of an adaptive system. We introduce adaptation semantics graphs to visually present the adaptation semantics. Specifications for adaptive systems can be automatically generated from adaptation semantics graphs.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Dinkel:2005:MNR, author = "Michael Dinkel and Uwe Baumgarten", title = "Modeling nonfunctional requirements: a basis for dynamic systems management", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--8", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083191", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The management of dynamic systems is an upcoming challenge for software engineers in automotive and other embedded systems. The complexity of current automotive computing systems is already difficult to handle for car makers and the expected growth in the area of electronic devices in vehicles will even intensify this situation. This paper presents a model based approach for enabling automatic configuration of distributed component oriented systems. Nonfunctional requirements and capabilities of software components and platforms are explicitly modeled and provide for well-founded statements whether a component is able to execute on a certain platform or not. With application models and platform models the validity of a configuration is defined in this paper. The models even allow reconfigurations based on information regarding the actual system context like user behavior, backend or environmental sensor information.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Garcia:2005:SELb, author = "Alessandro Garcia and Ricardo Choren and Carlos Lucena and Alexander Romanovsky and Holger Giese and Danny Weyns and Tom Holvoet and Paolo Giorgini", title = "{Software Engineering for Large-Scale Multi-Agent Systems --- SELMAS 2005}: workshop report", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--8", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1082998", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper is intended to sum up the results of the 4th International Workshop on Software Engineering for Large-Scale Multi-Agent Systems (SELMAS 2005) held in St. Louis, Missouri, USA, May 15--16, 2005, as part of the 27$^{th}$ International Conference on Software Engineering (ICSE'05). The main purpose of this workshop was to share and pool together the collective experience of people, both academics and practitioners, who are actively working on software engineering for large-scale multi-agent systems. A selected set of expanded workshop papers and invited papers will appear in the 4$^{th}$ edition of the book Software Engineering for Multi-Agent Systems (LNCS, Springer, 2006). The theme of this workshop edition was ``Software Everywhere --- Context-Aware Agents''. The workshop consisted of an opening presentation, several paper presentations organized into three technical sessions, two keynotes, one panel, and two discussion groups. During the workshop we informally reviewed ongoing and previous work and debated a number of important issues. The SELMAS 2005 Web site, including the electronic version of this report, can be found at www.teccomm.les.inf.pucrio.br/selmas2005. We begin by presenting an overview of our goals and the workshop structure, and then focus on the workshop technical program and results.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Jamali:2005:LAR, author = "Nadeem Jamali and Shangping Ren", title = "A layered architecture for real-time distributed multi-agent systems", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--8", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1082978", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Real-time computations in open distributed systems have functional as well as coordination requirements. Specifically, distributed agents may require to be coordinated to satisfy real-time and other quality of service (QoS) constraints. However, this coordination is difficult to achieve because of the unpredictability of computational resource availability in an open system.A three-layered architecture for computations in an open distributed multi-agent system is presented, which keeps functional, coordination and resource concerns of an application separate, allowing each to be studied separately. Functional requirements of the computation are pursued by a system of primitive agents called actors. Timing constraints are imposed on these agents through meta-operations carried out by coordinators. Resource encapsulations called cyberorgs are used for creating execution environments for agents and coordinators with predictable availability of resources. Programming constructs are developed for implementing cyber-orgs and coordinators.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Klein:2005:ADP, author = "Florian Klein and Holger Giese", title = "Analysis and design of physical and social contexts in multi-agent systems using {UML}", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--8", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1082969", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Multi-agent technology promises to provide the ability to adapt to changing external contexts. To tap this potential, context needs to play a central role in the analysis and design of multi-agent systems. In this paper, a pragmatic approach to the classification and modeling of the relevant contexts is presented, focusing on a useful operational description rather than epistemological correctness. We then show how our approach supports the analysis and design of physical and social contexts for embedded multi-agent systems using the UML, providing a number of different examples.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Mertens:2005:CAD, author = "Koenraad Mertens and Tom Holvoet and Yolande Berbers", title = "A case for adaptation of the distributed environment layout in multiagent applications", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--8", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1082974", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "A multiagent application consists of an environment and a number of agents. The environment contains information that the agents use and manipulate to do their work. When a multiagent system is distributed over a number of different hosts (i.e. more than one execution platform is used), the environment has to be distributed as well. The distributed layout of the environment can influence the performance of agents and of the system. In this paper we discuss when a distributed environment can dynamically change its distribution layout. Our focus is on a distributed environment in which mobile agents move around and are aware of the distributed nature of the system. Changes to the layout of the distribution are not only triggered by the agents (like other, application-specific actions), but they can also be triggered by external events, and the environment itself has the ability to pro-actively change its distribution layout over the different hosts when this improves the behavior and efficiency of the application. Using a specific application (solving distributed constraint satisfaction problems) as an example, we indicate the usefulness of changes to the distribution layout and how they can be incorporated easily into a multiagent application design. It turns out that for some problems, the improvement in efficiency can be more than 30\%.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Schelfthout:2005:VCA, author = "Kurt Schelfthout and Tom Holvoet and Yolande Berbers", title = "Views: customizable abstractions for contextaware applications in {MANETs}", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--8", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1082973", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Programming applications for highly dynamic environments such as mobile ad hoc networks (MANETs) is complex, since the working context of applications changes continuously. This paper presents ``views'' as abstractions for representing and maintaining context information, tailored to applications in MANETs. An application agent can define a view by declaratively describing the context information it is interested in. A supporting middleware platform, called ObjectPlaces, ensures that the information represented by a view continuously reflects the agent's context information, despite the dynamic situation in a MANET. We elaborate on the distributed protocol that ObjectPlaces uses to maintain the information of views, and give a thorough evaluation.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Henderson:2005:SEEc, author = "Peter B. Henderson", title = "Software Engineering Education {(SEEd)}", journal = j-SIGSOFT, volume = "30", number = "4", pages = "6--6", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1082985", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "To date I have not received any comments regarding Don Reifer's article ``Educating Software Engineers: An Industry Viewpoint'' in the last SEEd column. Perhaps there are a few letters to the editor. By the way, I would like to complement Will Tracz SEN editor. He does an excellent job pulling each issue of SEN together, and we are indebted to the time and effort he contributes to making SEN very readable and informative.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Parnas:2005:GSE, author = "David Parnas and Lillian Chik-Parnas", title = "Goals for software engineering student education", journal = j-SIGSOFT, volume = "30", number = "4", pages = "6--8", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1082986", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Tichy:2005:COS, author = "Matthias Tichy and Holger Giese and Daniela Schilling and Wladimir Pauls", title = "Computing optimal self-repair actions: damage minimization versus repair time", journal = j-SIGSOFT, volume = "30", number = "4", pages = "1--6", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083224", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The dependability of a software system can be improved by online redeployment of failed software components using appropriate system self-repair actions. The effect of different self-repair actions can vary to a great extent w.r.t. the resulting temporary service unavailability and reduced redundancy of services. We therefore developed an approach to efficiently compute self-repair actions which realize requested repair steps in a nearly optimal manner. We show that our approach achieves a suitable compromise between the usually infeasible optimal deployment modification w.r.t. damage minimization and repair time minimization by presenting a number of simulation results.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Saur:2005:PMH, author = "Joe Saur", title = "Project management: here we go again!", journal = j-SIGSOFT, volume = "30", number = "4", pages = "8--8", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1082987", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "In the 9 June issue of Network Computing, Tim Wilson (``What's a Project Manager to Do?'') quotes Standish Group numbers regarding the success rate of IT projects: $ \bullet $ 53\% ``challenged'' (past deadline or over budget) $ \bullet $ 18\% failed (terminated before completion, or completed and never used) $ \bullet $ 29\% successfully completed (on time and on budget)", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Wing:2005:PSG, author = "Michael Wing", title = "In praise of {SE} Geeks", journal = j-SIGSOFT, volume = "30", number = "4", pages = "8--9", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1082988", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Doernhoefer:2005:SNSd, author = "Mark Doernhoefer", title = "Surfing the net for {{\booktitle{Software Engineering Notes}}}", journal = j-SIGSOFT, volume = "30", number = "4", pages = "10--18", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1082990", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "We have periodic brown bag lunches at the office where, in addition to free pizza, colleagues present a short briefing on some technical topic. A recent presentation provided a short primer on Aspect Oriented Programming, or AOP. AOP is also sometimes referred to by the acronym AOSD, for Aspect-Oriented Software Development. I knew a little about AOP before the presentation, how the behavior of AOP programs change depending upon the included programming aspects, but I had no idea of the power and danger of this extension to traditional OO programming. So after the briefing, I went for a little surfing expedition to learn more about AOP.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Neumann:2005:RPd, author = "Peter G. Neumann", title = "Risks to the public", journal = j-SIGSOFT, volume = "30", number = "4", pages = "19--35", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1082992", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Edited by Peter G. Neumann (Risks Forum Moderator and Chairman of the ACM Committee on Computers and Public Policy), plus personal contributions by others, as indicated. Opinions expressed are individual rather than organizational, and all of the usual disclaimers apply. We address problems relating to software, hardware, people, and other circumstances relating to computer systems. To economize on space, we include pointers to items in the online Risks Forum: (R i j) denotes RISKS vol i number j. Cited RISKS items generally identify contributors and sources, together with URLs. Official RISKS archives are available at www.risks.org (which redirects to Newcastle and gets you nice html formatting and a search engine courtesy of Lindsay Marshall; http://catless.ncl.ac.uk/Risks/i.j.html gets you (R i j)) and at ftp://www.sri.com/risks.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Ben-anachem:2005:RSE, author = "Mordechai Ben-anachem", title = "Review of {{\booktitle{Software Endgames: Eliminating Defects, Controlling Change, and the Countdown to On-Time Delivery}} by Robert Galen, Dorset House, ISBN: 0-932633-62-5, 2005}", journal = j-SIGSOFT, volume = "30", number = "4", pages = "82--83", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083028", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Che:2005:RAM, author = "Haoyang Che", title = "Review of {{\booktitle{Agile Modeling: Effective Practice for eXtreme Programming and the Unified Process}} by Scott W. Ambler, John Wiley and Sons, Inc, 2002, 0-471-20282-7}", journal = j-SIGSOFT, volume = "30", number = "4", pages = "83--83", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083029", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Marliss:2005:RSM, author = "G. S. Marliss", title = "Review of {{\booktitle{Systems Modeling and Requirements Specification Using ECSAM: an Analysis Method for Embedded and Computer-Based Systems}} by Jonah Z. Lavi and Joseph Kudish, Dorset House Publishing Co. Inc., 2005, ISBN 0-932633-45-5}", journal = j-SIGSOFT, volume = "30", number = "4", pages = "83--84", month = jul, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1082983.1083030", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:14:51 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Anonymous:2005:FTLb, author = "Anonymous", title = "Frontmatter ({TOC}, Letters, Philosophy of computer science, Interviewers needed, Taking software requirements creation from folklore to analysis, {SW} components and product lines: from business to systems and technology, Software engineering survey)", journal = j-SIGSOFT, volume = "30", number = "5", pages = "0--0", month = sep, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1095430.1095431", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:07 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Chung:2005:SIW, author = "Lawrence Chung and Xavier Franch and Neil Maiden", title = "{Second International Workshop on Models and Processes for the Evaluation of Off-the-Shelf Components (MPEC'05)}", journal = j-SIGSOFT, volume = "30", number = "5", pages = "1--3", month = sep, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1095430.1095434", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:07 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Off-The-Shelf Software components (hereafter OTS) play an increasingly important role in software systems development. One of the central activities in a successful OTS-based system development is OTS evaluation, which is one of the cornerstones of OTS selection, OTS implementation and cost models for OTS. Achieving a better understanding of this activity is the objective of the ``International Workshop on Models and Processes for the Evaluation of OTS Components (MPEC)''. After the first edition collocated with ICSE'04, a second edition has taken place (May 21$^{th}$, 2005, Saint Louis, Missouri, USA), again as a satellite event of ICSE. This paper reports on the structure of the workshop, presenting short summaries of the talks given and the research issues identified and heavily discussed during the workshop. More details are available at the workshop URL: http://www.lsi.upc.es/events/mpec.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Dalal:2005:AMB, author = "Siddhartha R. Dalal and Ashish Jain and Jesse Poore", title = "Advances in model-based software testing {(A-MOST)}", journal = j-SIGSOFT, volume = "30", number = "5", pages = "1--3", month = sep, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1095430.1095436", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:07 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This is a summary of the Advances in Model-Based Software Testing (A-MOST) workshop held on May 15-16, 2005, in St. Louis, Missouri. The workshop had approximately 40 participants. The goals of this workshop were to offer a comprehensive overview of model-based testing to the ICSE community, and bring the researchers and practitioners together to discuss advances, applications, and the complex problems yet to be solved in model-based testing. The workshop was lively and maintained participant interest for the entire two-day program. A brief summary based upon agenda items is provided. Details on the workshops are archived at http://aetgweb.argreenhouse.com.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Diehl:2005:RMI, author = "Stephan Diehl and Ahmed E. Hassan and Richard C. Holt", title = "Report on {MSR 2005: International Workshop on Mining Software Repositories}", journal = j-SIGSOFT, volume = "30", number = "5", pages = "1--3", month = sep, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1095430.1095433", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:07 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "A one-day workshop on the topic of Mining Software Repositories (MSR) was held at ICSE 2005 in St. Louis, Missouri. Researchers and practitioners in the MSR field try to transform static record keeping software repositories to active ones. These repositories permit researchers to gain empirically based understanding of software development, while software practitioners use these repositories to predict and plan various aspects of their project. Following the success of last year's workshop, MSR 2005 had a large number of high quality submissions and a great number of participants. 22 papers were accepted from 38 submissions --- 11 papers were presented as Lightning talks (5 mins) and another 11 papers were presented as regular talks (15 mins). The Lighting talks were followed with a walk-around demo and discussion session. This report includes an overview of the presentations made during the day and a summary of the issues raised throughout the workshop.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Schaefer:2005:RLO, author = "Robert Schaefer", title = "The risks of large organizations in developing complex systems", journal = j-SIGSOFT, volume = "30", number = "5", pages = "1--3", month = sep, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1095430.1095444", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:07 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The risks to the large organization of being able to complete the development of large software intensive systems on time and in budget include not just the defining and maintaining of proper requirements and work processes, but also in the defining and maintaining of the proper organizational work structures. Bureaucratic structures prevalent in large organizations can be inefficient and irrational especially in regards to unplanned surprises, exigencies, contingencies, and the emergent properties that are the normal part of the development and integration of first-of and one-of-a-kind large systems. All large software intensive systems, at their true core, are experiments, and experimentation and bureaucracy have proved to be, over time, destructively antithetical in basic values. Conway's law, first stated in 1968, has by the lights of 2005 provided only a superficial explanation of the antipathy of bureaucracy towards the unknown and risk. The belief that ``[o]rganizations which design systems \ldots{} are constrained to produce designs which are copies of the communication structures of these organizations'', can be easily refuted by noting that hierarchical organizations have been quite successful in designing and implementing networked systems subsequent to the invention of Ethernet and TCP/IP. The example provided by Conway was not sufficient by itself to draw the conclusion was made, a common fallacy of cause and effect, but he was certainly on an interesting path of investigation. Large system development failures cannot be prevented solely through improved planning, requirements, processes and software. Improvement must also come from the recognition of the limits of organization, planning and process; the recognition of the basic antipathy between bureaucracy and risk; the recognition of the need for organizational structures that scale yet remain responsive; the recognition of the need for better attitudes towards faults and failures, and the recognition that in order to reduce the risks that are inherent when the technical becomes political, that one must reduce the risks of speaking truth to power. The short article that follows is intended to raise more questions than provide answers, and the references are intended to provide a starting point for further research.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Aggarwal:2005:ECM, author = "K. K. Aggarwal and Yogesh Singh and Pravin Chandra and Manimala Puri", title = "An expert committee model to estimate lines of code", journal = j-SIGSOFT, volume = "30", number = "5", pages = "1--4", month = sep, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1095430.1095439", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:07 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Resource Estimation is a challenging activity, in the early stages of project development. Once the functionality desired by the user is ascertained, function points can be calculated. This paper proposes to estimate Lines of Code once the Function Point count is known, using linear regression techniques and also a neural network model. These two are then combined to propose an expert committee model which gives better results. This is validated by empirical data available from ISBSG data set (release 9).", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Bhansali:2005:USS, author = "P. V. Bhansali", title = "Universal software safety standard", journal = j-SIGSOFT, volume = "30", number = "5", pages = "1--4", month = sep, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1095430.1095440", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:07 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper identifies the minimum subset required for a truly universal safety-critical software standard. This universal software standard could be used in but is not limited to the following application domains: commercial, military and space aviation; medical diagnostic and therapeutic instruments; automotive and transportation systems; industrial process control and robotics; nuclear power plants and weapons control; commercial appliances and ride electronics. The standard takes into account that safety is a system attribute but focuses on software as the critical component. Its roots are based in MoD 00-55, 56, DO-178B, ARP 4754 and 4761, Mil-Std-882 and Software Safety Handbook, IEC 61508, IEC 60880, ANSI/ISA-S84.01, ANSI/AAMI SW68:2001, NASA-STD-8719.13, UL 1998, EN 50128, MISRA Automotive Standard, and IEEE 1228. This minimum subset uses existing system and software technology and can be adapted to future applications. A universal software safety standard would benefit the entire safety-critical industry by lowering the cost and improving the quality of software by having common processes and tools. As an additional benefit, various application sectors could share data on the efficacy of each technique used in the development and verification of safety-critical software. This in turn could improve the overall safety of systems in the future.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Bontemps:2005:SSM, author = "Yves Bontemps and Alexander Egyed", title = "{Scenarios and State Machines: Models, Algorithms, and Tools}: a summary of the 4th workshop", journal = j-SIGSOFT, volume = "30", number = "5", pages = "1--4", month = sep, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1095430.1095437", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:07 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This report summarizes the Workshop on Scenarios and State Machines: Models, Algorithms, and Tools, held in St. Louis, Missouri, USA, on 21 May 2005, in conjunction with the International Conference on Software Engineering (ICSE 2005). The workshop consisted of a keynote and nine presentations. The workshop web page, which includes presented papers and the keynote presentation, can be found at http://www.info.fundp.ac.be/~ybo/scesm05/.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Darbari:2005:MBS, author = "Manuj Darbari and Vipin Saxena", title = "Modeling biological systems: a unified approach", journal = j-SIGSOFT, volume = "30", number = "5", pages = "1--4", month = sep, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1095430.1095441", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:07 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "In this paper we demonstrate the relevance of abstraction, reuse, objects, classes, component and inheritance hierarchies, multiplicity, visual modeling, and other current software development best practices. We show how it is possible to start with a direct diagrammatic representation of a biological structure such as a cell, using terminology familiar to biologists, and by following a process of gradually adding more and more detail, arrive at a system with structure and behavior of arbitrary complexity that can run and be observed on a computer. We will be discussing various tools of UML used to describe biological modeling.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Budgen:2005:REB, author = "David Budgen and Barbara Kitchenham", title = "Realising evidence-based software engineering: a report from the workshop held at {ICSE 2005}", journal = j-SIGSOFT, volume = "30", number = "5", pages = "1--5", month = sep, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1095430.1095435", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:07 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Context: The workshop was held to explore the potential for adapting the ideas of evidence-based practices as used in medicine and other disciplines for use in software engineering. Objectives: To devise ways of developing suitable evidence-based practices and procedures, especially the use of structured literature reviews, and introducing these into software engineering research and practice. Method: Three sessions were dedicated to a mix of presentations based on position papers and interactive discussion, while the fourth focused upon the key issues as decided by the participants. Results: An initial scoping of the major issues, identification of useful parallels, and some plans for future development of an evidence-based software engineering community. Conclusions: While there are substantial challenges to introducing evidence-based practices, there are useful experiences to be drawn from a variety of other domains.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Zayaraz:2005:SQA, author = "G. Zayaraz and P. Thambidurai and Madhu Srinivasan and Paul Rodrigues", title = "Software quality assurance through {COSMIC FFP}", journal = j-SIGSOFT, volume = "30", number = "5", pages = "1--5", month = sep, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1095430.1095445", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:07 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Success in software development depends on the satisfaction of the quality requirements stated by the stakeholders. Software architecture ensures development of quality software. Quality measurement at the software architecture level leads to risk mitigation, cost reduction and quality assurance. Existing software architectural measurement techniques are qualitative in nature. However, quantification of quality measures facilitates the process of effective quality assurance. In this paper, we propose a new quantitative measurement technique based on COSMIC Full Function Points (CFFP) and ISO 9126 quality standards. Though CFFP methodology was basically designed to measure the functional size of software at the requirements level, attempt has been made to apply COSMIC FFP principles at the architectural level to measure quality attributes based on ISO 9126 quality standards.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Fass:2005:SAT, author = "Leona F. Fass", title = "Some agent theory for the semantic web", journal = j-SIGSOFT, volume = "30", number = "5", pages = "1--6", month = sep, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1095430.1095442", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:07 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "We take the position that for any goal achievable on the Semantic Web, there will be a ``best'' system of Web-dwelling software agents to realize that goal, and that such a system may be discovered effectively. The process of determining the ``best'' agent system may be overseen by a distinguished Manager Agent. But with realistic time and space constraints, and the dynamic nature of the Semantic Web, finding an approximating system may be acceptable. The approximation then may be adapted iteratively, to approach the ideal. We show that very practical researchers have looked at software agents and Semantic Web problems in a similar way, determining approximating sub-optimal systems and subsequently adapting them. Their applied research confirms that theory provides a good foundation for practice.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Riehle:2005:ESC, author = "Richard Riehle", title = "Engineering on the surprise continuum: as applied to software practice", journal = j-SIGSOFT, volume = "30", number = "5", pages = "1--6", month = sep, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1095430.1095443", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:07 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Speakers at conferences often mention the Principle of Least Surprise. This article explores the notion of surprise on a Surprise Tolerance Continuum. We also comment on how different disciplines benefit from managing surprise. Since this publication deals with software engineering, we focus on problems related to the creation, management, and maintenance of software.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Nierstrasz:2005:SMA, author = "Oscar Nierstrasz and St{\'e}phane Ducasse and Tudor G{\u{\i}}rba", title = "The story of {{\sc Moose}}: an agile reengineering environment", journal = j-SIGSOFT, volume = "30", number = "5", pages = "1--10", month = sep, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1095430.1081707", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:07 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "{\sc Moose} is a language-independent environment for reverse- and re-engineering complex software systems. {\sc Moose} provides a set of services including a common meta-model, metrics evaluation and visualization, a model repository, and generic GUI support for querying, browsing and grouping. The development effort invested in {\sc Moose} has paid off in precisely those research activities that benefit from applying a combination of complementary techniques. We describe how {\sc Moose} has evolved over the years, we draw a number of lessons learned from our experience, and we outline the present and future of {\sc Moose}.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Doernhoefer:2005:SNSe, author = "Mark Doernhoefer", title = "Surfing the net for {{\booktitle{Software Engineering Notes}}}", journal = j-SIGSOFT, volume = "30", number = "5", pages = "8--15", month = sep, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1095430.1095447", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:07 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Our last survey of Internet software security sites was about four years ago. I thought it was about time to take another look at the web to see what has been added in the last few years. Some of the sites we've visited before have added extensive new information and resources for developers working on secure software. And this time around, I'd like to focus on some open source software that can help you test and evaluate your applications.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Robillard:2005:AGS, author = "Martin P. Robillard", title = "Automatic generation of suggestions for program investigation", journal = j-SIGSOFT, volume = "30", number = "5", pages = "11--20", month = sep, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1095430.1081711", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:07 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Before performing a modification task, a developer usually has to investigate the source code of a system to understand how to carry out the task. Discovering the code relevant to a change task is costly because it is an inherently human activity whose success depends on a large number of unpredictable factors, such as intuition and luck. Although studies have shown that effective developers tend to explore a program by following structural dependencies, no methodology is available to guide their navigation through the typically hundreds of dependency paths found in a non-trivial program. In this paper, we propose a technique to automatically propose and rank program elements that are potentially interesting to a developer investigating source code. Our technique is based on an analysis of the topology of structural dependencies in a program. It takes as input a set of program elements of interest to a developer and produces a fuzzy set describing other elements of potential interest. Empirical evaluation of our technique indicates that it can help developers quickly select program elements worthy of investigation while avoiding less interesting ones.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{McCloskey:2005:ANA, author = "Bill McCloskey and Eric Brewer", title = "{ASTEC}: a new approach to refactoring {C}", journal = j-SIGSOFT, volume = "30", number = "5", pages = "21--30", month = sep, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1095430.1081712", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:07 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The C language is among the most widely used in the world, particularly for critical infrastructure software. C programs depend upon macros processed using the C preprocessor, but these macros are difficult to analyze and are often error-prone[4]. Existing tools that analyze and transform C source code have rudimentary support for the preprocessor, leading to obscure error messages and difficulty refactoring. We present a three part solution: (1) a replacement macro language, ASTEC, that addresses the most important important deficiencies of the preprocessor and that eliminates many of the errors it introduces; (2) a translator, MACROSCOPE, that converts existing code into ASTEC semi-automatically; and (3), an ASTEC-aware refactoring tool that handles preprocessor constructs naturally.ASTEC's primary benefits are its analyzability and its refactorability. We present several refactorings that are enabled by ASTEC. Additionally, ASTEC eliminates many of the sources of errors that can plague C preprocessor macros; Ernst et al.[4] estimate that more than 20\% of macros may contain errors. In this paper, we describe our translation and refactoring tools and evaluate them on a suite of programs including OpenSSH and the Linux kernel.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Henzinger:2005:PI, author = "Thomas A. Henzinger and Ranjit Jhala and Rupak Majumdar", title = "Permissive interfaces", journal = j-SIGSOFT, volume = "30", number = "5", pages = "31--40", month = sep, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1095430.1081713", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:07 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "A modular program analysis considers components independently and provides a succinct summary for each component, which is used when checking the rest of the system. Consider a system consisting of a library and a client. A temporal summary, or interface, of the library specifies legal sequences of library calls. The interface is safe if no call sequence violates the library's internal invariants; the interface is permissive if it contains every such sequence. Modular program analysis requires full interfaces, which are both safe and permissive: the client does not cause errors in the library if and only if it makes only sequences of library calls that are allowed by the full interface of the library. Previous interface-based methods have focused on safe interfaces, which may be too restrictive and thus reject good clients. We present an algorithm for automatically synthesizing software interfaces that are both safe and permissive. The algorithm generates interfaces as graphs whose vertices are labeled with predicates over the library's internal state, and whose edges are labeled with library calls. The interface state is refined incrementally until the full interface is constructed. In other words, the algorithm automatically synthesizes a typestate system for the library, against which any client can be checked for compatibility. We present an implementation of the algorithm which is based on the BLAST model checker, and we evaluate some case studies.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Letier:2005:FTL, author = "Emmanuel Letier and Jeff Kramer and Jeff Magee and Sebastian Uchitel", title = "Fluent temporal logic for discrete-time event-based models", journal = j-SIGSOFT, volume = "30", number = "5", pages = "70--79", month = sep, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1095430.1081719", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:07 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Fluent model checking is an automated technique for verifying that an event-based operational model satisfies some state-based declarative properties. The link between the event-based and state-based formalisms is defined through ``fluents'' which are state predicates whose value are determined by the occurrences of initiating and terminating events that make the fluents values become true or false, respectively. The existing fluent temporal logic is convenient for reasoning about untimed event-based models but difficult to use for timed models. The paper extends fluent temporal logic with temporal operators for modelling timed properties of discrete-time event-based models. It presents two approaches that differ on whether the properties model the system state after the occurrence of each event or at a fixed time rate. Model checking of timed properties is made possible by translating them into the existing untimed framework.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Shen:2005:TUF, author = "Junrong Shen and Xi Sun and Gang Huang and Wenpin Jiao and Yanchun Sun and Hong Mei", title = "Towards a unified formal model for supporting mechanisms of dynamic component update", journal = j-SIGSOFT, volume = "30", number = "5", pages = "80--89", month = sep, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1095430.1081720", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:07 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The continuous requirements of evolving a delivered software system and the rising cost of shutting down a running software system are forcing researchers and practitioners to find ways of updating software as it runs. Dynamic update is a kind of software evolution that updates a running program without interruption. This paper covers the fundamental issues of the mechanisms of dynamic update theoretically. Based on a similarity analysis of many typical approaches to dynamic update during the past decades, we propose a unified formal model (namely, Dynamic Update Connector) to specify mechanisms of updating an architectural component, and reason about its properties. The model borrows the concept of connectors from software architecture community and is specified using process algebra CSP. We also demonstrate the applications of our DUC model.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Renieris:2005:APP, author = "Manos Renieris and Shashank Ramaprasad and Steven P. Reiss", title = "Arithmetic program paths", journal = j-SIGSOFT, volume = "30", number = "5", pages = "90--98", month = sep, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1095430.1081721", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:07 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "We present Arithmetic Program Paths, a novel, efficient way to compress program control-flow traces that reduces program bit traces to less than a fifth of their original size while being fast and memory efficient. In addition, our method supports online, selective tracing and compression of individual conditionals, trading off memory usage and compression rate. We achieve these properties by recording only the directions taken by conditional statements during program execution, and using arithmetic coding for compression. We provide the arithmetic coder with a probability distribution for each conditional that we obtain using branch prediction techniques. We implemented the technique and experimented on several SPEC 2000 programs. Our method matches the compression rate of state-of-the-art tools while being an order of magnitude faster.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Ducasse:2005:MAR, author = "St{\'e}phane Ducasse and Tudor G{\^\i}rba and Oscar Nierstrasz", title = "{Moose}: an agile reengineering environment", journal = j-SIGSOFT, volume = "30", number = "5", pages = "99--102", month = sep, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1095430.1081723", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:07 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Software systems are complex and difficult to analyze. Reengineering is a complex activity that usually involves combining different techniques and tools. MOOSE is an reengineering environment designed to provide the necessary infrastructure for building new tools and for integrating them. MOOSE centers on a language independent meta-model, and offers services like grouping, querying, navigation, and meta-descriptions. Several tools have been built on top of MOOSE dealing with different aspects of reengineering like: visualization, evolution analysis, semantic analysis, concept analysis or dynamic analysis.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Schmerl:2005:DDA, author = "Bradley Schmerl and David Garlan and Hong Yan", title = "Dynamically discovering architectures with {DiscoTect}", journal = j-SIGSOFT, volume = "30", number = "5", pages = "103--106", month = sep, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1095430.1081724", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:07 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "One of the challenges for software architects is ensuring that an implemented system faithfully represents its architecture. We describe and demonstrate a tool, called DiscoTect, that addresses this challenge by dynamically monitoring a running system and deriving the software architecture as that system runs. The derivation process is based on mappings that relate low level system-level events to higher-level architectural events. The resulting architecture is then fed into existing architectural design tools so that comparisons can be conducted with the design time architecture and architectural analyses can be re-run to ensure that they are still valid. In addition to the demonstration, we briefly describe the mapping language and formal definition of the language in terms of Colored Petri Nets.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Sliwerski:2005:HRR, author = "Jacek {\'S}liwerski and Thomas Zimmermann and Andreas Zeller", title = "{HATARI}: raising risk awareness", journal = j-SIGSOFT, volume = "30", number = "5", pages = "107--110", month = sep, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1095430.1081725", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:07 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "As a software system evolves, programmers make changes which sometimes lead to problems. The risk of later problems significantly depends on the location of the change. Which are the locations where changes impose the greatest risk? Our HATARI prototype relates a version history (such as CVS) to a bug database (such as BUGZILLA) to detect those locations where changes have been risky in the past. HATARI makes this risk visible for developers by annotating source code with color bars. Furthermore, HATARI provides views to browse through the most risky locations and to analyze the risk history of a particular location.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Inverardi:2005:CET, author = "Paola Inverardi and Henry Muccini and Patrizio Pelliccione", title = "{CHARMY}: an extensible tool for architectural analysis", journal = j-SIGSOFT, volume = "30", number = "5", pages = "111--114", month = sep, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1095430.1081726", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:07 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "CHARMY is a framework for designing and validating architectural specifications. In the early stages of the software development process, the CHARMY framework assists the software architect in the design and validation phases. To increase its usability in an industrial context, the tool allows the use of UML-like notations to graphically design the system. Once the design is done, a formal prototype is automatically created for simulation and analysis purposes. The framework provides extensibility mechanisms to enable the introduction of new design and analysis features.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Xie:2005:CPS, author = "Yichen Xie and Alex Aiken", title = "Context- and path-sensitive memory leak detection", journal = j-SIGSOFT, volume = "30", number = "5", pages = "115--125", month = sep, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1095430.1081728", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:07 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "We present a context- and path-sensitive algorithm for detecting memory leaks in programs with explicit memory management. Our leak detection algorithm is based on an underlying escape analysis: any allocated location in a procedure P that is not deallocated in P and does not escape from P is leaked. We achieve very precise context- and path-sensitivity by expressing our analysis using boolean constraints. In experiments with six large open source projects our analysis produced 510 warnings of which 455 were unique memory leaks, a false positive rate of only 10.8\%. A parallel implementation improves performance by over an order of magnitude on large projects; over five million lines of code in the Linux kernel is analyzed in 50 minutes.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Metz:2005:PDC, author = "Edu Metz and Raimondas Lencevicius and Teofilo F. Gonzalez", title = "Performance data collection using a hybrid approach", journal = j-SIGSOFT, volume = "30", number = "5", pages = "126--135", month = sep, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1095430.1081729", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:07 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Performance profiling consists of monitoring a software system during execution and then analyzing the obtained data. There are two ways to collect profiling data: event tracing through code instrumentation and statistical sampling. These two approaches have different advantages and drawbacks. This paper proposes a hybrid approach to data collection that combines the completeness of event tracing with the low cost of statistical sampling. We propose to maximize the weighted amount of information obtained during data collection, show that such maximization can be performed in linear time or is NP-hard depending on the data collected and the collection implementation. We propose an approximation algorithm for NP-hard case. Our paper also presents an application of the formal approach to an example use case.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Srinivas:2005:SAP, author = "Kavitha Srinivas and Harini Srinivasan", title = "Summarizing application performance from a components perspective", journal = j-SIGSOFT, volume = "30", number = "5", pages = "136--145", month = sep, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1095430.1081730", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:07 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "In the era of distributed development, it is common for large applications to be assembled from multiple component layers that are developed by different development teams. Layered applications have deep call paths and numerous invocations (average call stack depth of up to 75, and upto 35 million invocations in the applications we studied) making summarization of performance problems a critical issue. Summarization of performance by classes, methods, invocations or packages is usually inadequate because they are often at the wrong level of granularity. We propose a technique that uses thresholding and filtering to identify a small set of interesting method invocations in components deemed interesting by the user. We show the utility of this technique with a set of 7 real-life applications, where the technique was used to identify a small set (10-93) of expensive invocations which accounted for 82-99\% of the overall performance costs of the application. Our experience shows that this type of characterization can help quickly isolate the specific parts of a large system that can benefit most from performance tuning.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Haran:2005:ACT, author = "Murali Haran and Alan Karr and Alessandro Orso and Adam Porter and Ashish Sanil", title = "Applying classification techniques to remotely-collected program execution data", journal = j-SIGSOFT, volume = "30", number = "5", pages = "146--155", month = sep, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1095430.1081732", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:07 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "There is an increasing interest in techniques that support measurement and analysis of fielded software systems. One of the main goals of these techniques is to better understand how software actually behaves in the field. In particular, many of these techniques require a way to distinguish, in the field, failing from passing executions. So far, researchers and practitioners have only partially addressed this problem: they have simply assumed that program failure status is either obvious (i.e., the program crashes) or provided by an external source (e.g., the users). In this paper, we propose a technique for automatically classifying execution data, collected in the field, as coming from either passing or failing program runs. (Failing program runs are executions that terminate with a failure, such as a wrong outcome.) We use statistical learning algorithms to build the classification models. Our approach builds the models by analyzing executions performed in a controlled environment (e.g., test cases run in-house) and then uses the models to predict whether execution data produced by a fielded instance were generated by a passing or failing program execution. We also present results from an initial feasibility study, based on multiple versions of a software subject, in which we investigate several issues vital to the applicability of the technique. Finally, we present some lessons learned regarding the interplay between the reliability of classification models and the amount and type of data collected.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Basit:2005:DHL, author = "Hamid Abdul Basit and Stan Jarzabek", title = "Detecting higher-level similarity patterns in programs", journal = j-SIGSOFT, volume = "30", number = "5", pages = "156--165", month = sep, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1095430.1081733", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:07 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Cloning in software systems is known to create problems during software maintenance. Several techniques have been proposed to detect the same or similar code fragments in software, so-called simple clones. While the knowledge of simple clones is useful, detecting design-level similarities in software could ease maintenance even further, and also help us identify reuse opportunities. We observed that recurring patterns of simple clones --- so-called structural clones --- often indicate the presence of interesting design-level similarities. An example would be patterns of collaborating classes or components. Finding structural clones that signify potentially useful design information requires efficient techniques to analyze the bulk of simple clone data and making non-trivial inferences based on the abstracted information. In this paper, we describe a practical solution to the problem of detecting some basic, but useful, types of design-level similarities such as groups of highly similar classes or files. First, we detect simple clones by applying conventional token-based techniques. Then we find the patterns of co-occurring clones in different files using the Frequent Itemset Mining (FIM) technique. Finally, we perform file clustering to detect those clusters of highly similar files that are likely to contribute to a design-level similarity pattern. The novelty of our approach is application of data mining techniques to detect design level similarities. Experiments confirmed that our method finds many useful structural clones and scales up to big programs. The paper describes our method for structural clone detection, a prototype tool called Clone Miner that implements the method and experimental results.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Sullivan:2005:IHI, author = "Kevin Sullivan and William G. Griswold and Yuanyuan Song and Yuanfang Cai and Macneil Shonle and Nishit Tewari and Hridesh Rajan", title = "Information hiding interfaces for aspect-oriented design", journal = j-SIGSOFT, volume = "30", number = "5", pages = "166--175", month = sep, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1095430.1081734", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:07 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The growing popularity of aspect-oriented languages, such as AspectJ, and of corresponding design approaches, makes it important to learn how best to modularize programs in which aspect-oriented composition mechanisms are used. We contribute an approach to information hiding modularity in programs that use quantified advising as a module composition mechanism. Our approach rests on a new kind of interface: one that abstracts a crosscutting behavior, decouples the design of code that advises such a behavior from the design of the code to be advised, and that can stipulate behavioral contracts. Our interfaces establish design rules that govern how specific points in program execution are exposed through a given join point model and how conforming code on either side should behave. In a case study of the HyperCast overlay network middleware system, including a real options analysis, we compare the widely cited oblivious design approach with our own, showing significant weaknesses in the former and benefits in the latter.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Camara:2005:IPC, author = "Ant{\'o}nio S. Camara", title = "Innovations in pervasive computing", journal = j-SIGSOFT, volume = "30", number = "5", pages = "176--176", month = sep, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1095430.1081708", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:07 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Pervasive computing is a broad term that may have different meanings. In this talk, we will focus on its ubiquitous and persistent dimensions. Fundamental methods and conventional applications of pervasive computing are briefly reviewed considering the most common technologies (hardware and software) and user interfaces. Two innovative applications of pervasive computing are presented: Undercover2, a persistent world location based multi-player mobile game; and L-INK, a ubiquitous computing application based on photo-chemical principles. Undercover2 is an application that shows how to mix virtual and real worlds in a mobile environment. The design of its interface, game engine, messaging, positioning and billing system is described herein. Future developments of the game and related applications derived from the current market experience are also discussed.L-INK is an application where one attempts to escape traditional computation by either pre-programming or triggering a chain of photo-chemical reactions. One can then visualize the computing efforts in non-electronic surfaces such as textiles, wood and paper. L-INK is limited to pictorial calculus formulations. With this approach, images are not decoded numerically or verbally. It is shown that these formulations may be sufficient for a broad range of applications. They include interactive T-shirts, tables and paper maps. Innovation is invention translated into products that the consumer is willing to pay. The management of this translation for Undercover and L-INK, two pioneer applications of pervasive computing, is paradigmatic of the challenges facing a spin-off from university research. The log of the events that went from early brainstorms to products available in the market is presented for illustrative purposes.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Bevan:2005:FSE, author = "Jennifer Bevan and E. James {Whitehead, Jr.} and Sunghun Kim and Michael Godfrey", title = "Facilitating software evolution research with kenyon", journal = j-SIGSOFT, volume = "30", number = "5", pages = "177--186", month = sep, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1095430.1081736", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:07 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Software evolution research inherently has several resource-intensive logistical constraints. Archived project artifacts, such as those found in source code repositories and bug tracking systems, are the principal source of input data. Analysis-specific facts, such as commit metadata or the location of design patterns within the code, must be extracted for each change or configuration of interest. The results of this resource-intensive ``fact extraction'' phase must be stored efficiently, for later use by more experimental types of research tasks, such as algorithm or model refinement. In order to perform any type of software evolution research, each of these logistical issues must be addressed and an implementation to manage it created. In this paper, we introduce Kenyon, a system designed to facilitate software evolution research by providing a common set of solutions to these common logistical problems. We have used Kenyon for processing source code data from 12 systems of varying sizes and domains, archived in 3 different types of software configuration management systems. We present our experiences using Kenyon with these systems, and also describe Kenyon's usage by students in a graduate seminar class.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Kim:2005:ESC, author = "Miryung Kim and Vibha Sazawal and David Notkin and Gail Murphy", title = "An empirical study of code clone genealogies", journal = j-SIGSOFT, volume = "30", number = "5", pages = "187--196", month = sep, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1095430.1081737", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:07 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Zhang:2005:MEH, author = "Xiangyu Zhang and Rajiv Gupta", title = "Matching execution histories of program versions", journal = j-SIGSOFT, volume = "30", number = "5", pages = "197--206", month = sep, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1095430.1081738", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:07 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "We develop a method for matching dynamic histories of program executions of two program versions. The matches produced can be useful in many applications including software piracy detection and several debugging scenarios. Unlike some static approaches for matching program versions, our approach does not require access to source code of the two program versions because dynamic histories can be collected by running instrumented versions of program binaries. We base our matching algorithm on comparison of rich program execution histories which include: control flow taken, values produced, addresses referenced, as well as data dependences exercised. In developing a matching algorithm we had two goals: producing an accurate match and producing it quickly. By using rich execution history, we are able to compare the program versions across many behavioral dimensions. The result is a fast and highly precise matching algorithm. Our algorithm first uses individual histories of instructions to identify multiple potential matches and then it refines the set of matches by matching the data dependence structure established by the matching instructions. To test our algorithm we attempted matching of execution histories of unoptimized and optimized program versions. Our results show that our algorithm produces highly accurate matches which are highly effective when used in comparison checking approach to debugging optimized code.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Kuncak:2005:RAA, author = "Viktor Kuncak and Daniel Jackson", title = "Relational analysis of algebraic datatypes", journal = j-SIGSOFT, volume = "30", number = "5", pages = "207--216", month = sep, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1095430.1081740", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:07 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "We present a technique that enables the use of finite model finding to check the satisfiability of certain formulas whose intended models are infinite. Such formulas arise when using the language of sets and relations to reason about structured values such as algebraic datatypes. The key idea of our technique is to identify a natural syntactic class of formulas in relational logic for which reasoning about infinite structures can be reduced to reasoning about finite structures. As a result, when a formula belongs to this class, we can use existing finite model finding tools to check whether the formula holds in the desired infinite model.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Bierhoff:2005:LOS, author = "Kevin Bierhoff and Jonathan Aldrich", title = "Lightweight object specification with typestates", journal = j-SIGSOFT, volume = "30", number = "5", pages = "217--226", month = sep, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1095430.1081741", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:07 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Previous work has proven typestates to be useful for modeling protocols in object-oriented languages. We build on this work by addressing substitutability of subtypes as well as improving precision and conciseness of specifications. We propose a specification technique for objects based on abstract states that incorporates state refinement, method refinement, and orthogonal state dimensions. Union and intersection types form the underlying semantics of method specifications. The approach guarantees substitutability and behavioral subtyping. We designed a dynamic analysis to check existing object-oriented software for protocol conformance and validated our approach by specifying two standard Java libraries. We provide preliminary evidence for the usefulness of our approach.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Fischer:2005:JDP, author = "Jeffrey Fischer and Ranjit Jhala and Rupak Majumdar", title = "Joining dataflow with predicates", journal = j-SIGSOFT, volume = "30", number = "5", pages = "227--236", month = sep, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1095430.1081742", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:07 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Dataflow analyses sacrifice path-sensitivity for efficiency and lead to false positives when used for verification. Predicate refinement based model checking methods are path-sensitive but must perform many expensive iterations to find all the relevant facts about a program, not all of which are naturally expressed and analyzed using predicates. We show how to join these complementary techniques to obtain efficient and precise versions of any lattice-based dataflow analysis using predicated lattices. A predicated lattice partitions the program state according to a set of predicates and tracks a lattice element for each partition. The resulting dataflow analysis is more precise than the eager dataflow analysis without the predicates. In addition, we automatically infer predicates to rule out imprecisions. The result is a dataflow analysis that can adaptively refine its precision. We then instantiate this generic framework using a symbolic execution lattice, which tracks pointer and value information precisely. We give experimental evidence that our combined analysis is both more precise than the eager analysis in that it is sensitive enough to prove various properties, as well as much faster than the lazy analysis, as many relevant facts are eagerly computed, thus reducing the number of iterations. This results in an order of magnitude improvement in the running times from a purely lazy analysis.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Holmes:2005:SER, author = "Reid Holmes and Robert J. Walker and Gail C. Murphy", title = "Strathcona example recommendation tool", journal = j-SIGSOFT, volume = "30", number = "5", pages = "237--240", month = sep, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1095430.1081744", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:07 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Using the application programming interfaces (API) of large software systems requires developers to understand details about the interfaces that are often not explicitly defined. However, documentation about the API is often incomplete or out of date. Existing systems that make use of the API provide a form of implicit information on how to use that code. Manually searching through existing projects to find relevant source code is tedious and time consuming. We have created the Strathcona Example. Recommendation Tool to assist developers in finding relevant fragments of code, or examples, of an API's use. These examples can be used by developers to provide insight on how they are supposed to interact with the API.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Tillmann:2005:PUTa, author = "Nikolai Tillmann and Wolfram Schulte", title = "Parameterized unit tests with {Unit Meister}", journal = j-SIGSOFT, volume = "30", number = "5", pages = "241--244", month = sep, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1095430.1081745", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:07 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Parameterized unit tests extend the current industry practice of using closed unit tests defined as parameterless methods. Traditional closed unit tests are re-obtained by instantiating the parameterized unit tests. We have developed the prototype tool Unit Meister, which uses symbolic execution and constraint solving to automatically compute a minimal set of inputs that exercise a parameterized unit test given certain coverage criteria. In addition, the parameterized unit tests can be used as symbolic summaries during symbolic execution, which allows our approach to scale for arbitrary abstraction levels. Unit Meister has a command-line interface, and is also integrated into Visual Studio 2005 Team System.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Chatley:2005:KLP, author = "Robert Chatley and Thomas Timbul", title = "{KenyaEclipse}: learning to program in eclipse", journal = j-SIGSOFT, volume = "30", number = "5", pages = "245--248", month = sep, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1095430.1081746", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:07 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "A fundamental part of a Computer Science degree is learning to program. Rather than starting students on a full commercial language, we favour using a dedicated ``teaching language'' to introduce programming concepts. At the same time, we want to introduce students to popular tools that assist in the software development process. However, up until now our teaching language, Kenya, has not been supported by professional IDEs. Therefore, we have been unable to progress smoothly from first principles to the state of the art within one environment. We present work that integrates the Kenya language into the Eclipse environment. Students can now become familiar with the major features of a professional IDE while learning to program, and experience a smooth transition to commercial languages within the same environment. One of the hardest things to teach students is good programming style. Compilers reveal syntactic and type errors, but do not analyse style. We have harnessed as-you-type code checking, as seen in Eclipse's Java development tools, to provide advice on program style as well as correctness.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Grigorenko:2005:VTG, author = "Pavel Grigorenko and Ando Saabas and Enn Tyugu", title = "Visual tool for generative programming", journal = j-SIGSOFT, volume = "30", number = "5", pages = "249--252", month = sep, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1095430.1081747", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:07 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "A way of combining object-oriented and structural paradigms of software composition is demonstrated in a tool for generative programming. Metaclasses are introduced that are components with specifications called metainterfaces. Automatic code generation is used that is based on structural synthesis of programs. This guarantees that problems of handling data dependencies, order of application of components, usage of higher-order control structures etc are handled automatically. Specifications can be written either in a specification language or given visually on an architectural level. The tool is Java-based and portable.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Tillmann:2005:PUTb, author = "Nikolai Tillmann and Wolfram Schulte", title = "Parameterized unit tests", journal = j-SIGSOFT, volume = "30", number = "5", pages = "253--262", month = sep, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1095430.1081749", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:07 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Parameterized unit tests extend the current industry practice of using closed unit tests defined as parameterless methods. Parameterized unit tests separate two concerns: (1) They specify the external behavior of the involved methods for all test arguments. (2) Test cases can be re-obtained as traditional closed unit tests by instantiating the parameterized unit tests. Symbolic execution and constraint solving can be used to automatically choose a minimal set of inputs that exercise a parameterized unit test with respect to possible code paths of the implementation. In addition, parameterized unit tests can be used as symbolic summaries which allows symbolic execution to scale for arbitrary abstraction levels. We have developed a prototype tool which computes test cases from parameterized unit tests. We report on its first use testing parts of the {.NET} base class library.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Sen:2005:CCU, author = "Koushik Sen and Darko Marinov and Gul Agha", title = "{CUTE}: a concolic unit testing engine for {C}", journal = j-SIGSOFT, volume = "30", number = "5", pages = "263--272", month = sep, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1095430.1081750", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:07 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "In unit testing, a program is decomposed into units which are collections of functions. A part of unit can be tested by generating inputs for a single entry function. The entry function may contain pointer arguments, in which case the inputs to the unit are memory graphs. The paper addresses the problem of automating unit testing with memory graphs as inputs. The approach used builds on previous work combining symbolic and concrete execution, and more specifically, using such a combination to generate test inputs to explore all feasible execution paths. The current work develops a method to represent and track constraints that capture the behavior of a symbolic execution of a unit with memory graphs as inputs. Moreover, an efficient constraint solver is proposed to facilitate incremental generation of such test inputs. Finally, CUTE, a tool implementing the method is described together with the results of applying CUTE to real-world examples of C code.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Veanes:2005:OTM, author = "Margus Veanes and Colin Campbell and Wolfram Schulte and Nikolai Tillmann", title = "Online testing with model programs", journal = j-SIGSOFT, volume = "30", number = "5", pages = "273--282", month = sep, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1095430.1081751", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:07 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Online testing is a technique in which test derivation from a model program and test execution are combined into a single algorithm. We describe a practical online testing algorithm that is implemented in the model-based testing tool developed at Microsoft Research called Spec Explorer. Spec Explorer is being used daily by several Microsoft product groups. Model programs in Spec Explorer are written in the high level specification languages AsmL or Spec\\#. We view model programs as implicit definitions of interface automata. The conformance relation between a model and an implementation under test is formalized in terms of refinement between interface automata. Testing then amounts to a game between the test tool and the implementation under test.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Kramer:2005:EDS, author = "Jeff Kramer and Jeff Magee", title = "Engineering distributed software: a structural discipline", journal = j-SIGSOFT, volume = "30", number = "5", pages = "283--285", month = sep, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1095430.1081709", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:07 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The role of structure in specifying, designing, analysing, constructing and evolving software has been the central theme of our research in Distributed Software Engineering. This structural discipline dictates formalisms and techniques that are compositional, components that are context independent and systems that can be constructed and evolved incrementally. This extended abstract overviews our development of a structural approach to engineering distributed software and gives indications of our future work which moves from explicit to implicit structural specification. With the benefit of hindsight we attempt to give a ``rational history'' to our research.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Liu:2005:SSM, author = "Chao Liu and Xifeng Yan and Long Fei and Jiawei Han and Samuel P. Midkiff", title = "{SOBER}: statistical model-based bug localization", journal = j-SIGSOFT, volume = "30", number = "5", pages = "286--295", month = sep, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1095430.1081753", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:07 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Automated localization of software bugs is one of the essential issues in debugging aids. Previous studies indicated that the evaluation history of program predicates may disclose important clues about underlying bugs. In this paper, we propose a new statistical model-based approach, called SOBER, which localizes software bugs without any prior knowledge of program semantics. Unlike existing statistical debugging approaches that select predicates correlated with program failures, SOBER models evaluation patterns of predicates in both correct and incorrect runs respectively and regards a predicate as bug-relevant if its evaluation pattern in incorrect runs differs significantly from that in correct ones. SOBER features a principled quantification of the pattern difference that measures the bug-relevance of program predicates. We systematically evaluated our approach under the same setting as previous studies. The result demonstrated the power of our approach in bug localization: SOBER can help programmers locate 68 out of 130 bugs in the Siemens suite when programmers are expected to examine no more than 10\% of the code, whereas the best previously reported is 52 out of 130. Moreover, with the assistance of SOBER, we found two bugs in bc 1.06 (an arbitrary precision calculator on UNIX/Linux), one of which has never been reported before.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Livshits:2005:DFC, author = "Benjamin Livshits and Thomas Zimmermann", title = "{DynaMine}: finding common error patterns by mining software revision histories", journal = j-SIGSOFT, volume = "30", number = "5", pages = "296--305", month = sep, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1095430.1081754", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:07 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "A great deal of attention has lately been given to addressing software bugs such as errors in operating system drivers or security bugs. However, there are many other lesser known errors specific to individual applications or APIs and these violations of application-specific coding rules are responsible for a multitude of errors. In this paper we propose DynaMine, a tool that analyzes source code check-ins to find highly correlated method calls as well as common bug fixes in order to automatically discover application-specific coding patterns. Potential patterns discovered through mining are passed to a dynamic analysis tool for validation; finally, the results of dynamic analysis are presented to the user. The combination of revision history mining and dynamic analysis techniques leveraged in DynaMine proves effective for both discovering new application-specific patterns and for finding errors when applied to very large applications with many man-years of development and debugging effort behind them. We have analyzed Eclipse and jEdit, two widely-used, mature, highly extensible applications consisting of more than 3,600,000 lines of code combined. By mining revision histories, we have discovered 56 previously unknown, highly application-specific patterns. Out of these, 21 were dynamically confirmed as very likely valid patterns and a total of 263 pattern violations were found.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Li:2005:PMA, author = "Zhenmin Li and Yuanyuan Zhou", title = "{PR-Miner}: automatically extracting implicit programming rules and detecting violations in large software code", journal = j-SIGSOFT, volume = "30", number = "5", pages = "306--315", month = sep, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1095430.1081755", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:07 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Programs usually follow many implicit programming rules, most of which are too tedious to be documented by programmers. When these rules are violated by programmers who are unaware of or forget about them, defects can be easily introduced. Therefore, it is highly desirable to have tools to automatically extract such rules and also to automatically detect violations. Previous work in this direction focuses on simple function-pair based programming rules and additionally requires programmers to provide rule templates. This paper proposes a general method called PR-Miner that uses a data mining technique called frequent itemset mining to efficiently extract implicit programming rules from large software code written in an industrial programming language such as C, requiring little effort from programmers and no prior knowledge of the software. Benefiting from frequent itemset mining, PR-Miner can extract programming rules in general forms (without being constrained by any fixed rule templates) that can contain multiple program elements of various types such as functions, variables and data types. In addition, we also propose an efficient algorithm to automatically detect violations to the extracted programming rules, which are strong indications of bugs. Our evaluation with large software code, including Linux, PostgreSQL Server and the Apache HTTP Server, with 84K--3M lines of code each, shows that PR-Miner can efficiently extract thousands of general programming rules and detect violations within 2 minutes. Moreover, PR-Miner has detected many violations to the extracted rules. Among the top 60 violations reported by PR-Miner, 16 have been confirmed as bugs in the latest version of Linux, 6 in PostgreSQL and 1 in Apache. Most of them violate complex programming rules that contain more than 2 elements and are thereby difficult for previous tools to detect. We reported these bugs and they are currently being fixed by developers.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Estublier:2005:RVL, author = "Jacky Estublier and German Vega", title = "Reuse and variability in large software applications", journal = j-SIGSOFT, volume = "30", number = "5", pages = "316--325", month = sep, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1095430.1081757", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:07 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Reuse has always been a major goal in software engineering, since it promises large gains in productivity, quality and time to market reduction. Practical experience has shown that substantial reuse has only successfully happened in two cases: libraries, where many generic and small components can be found; and product lines, where domains-specific components can be assembled in different ways to produce variations of a given product. In this paper we examine how product lines have successfully achieved reuse of coarse-grained components, and the underlying factors limiting this approach to narrowly scoped domains. We then build on this insight to present an approach, called software federation, which proposes a mechanism to overcome the identified limitations, and therefore makes reuse of coarse-grained components possible over a larger range of applications. Our approach extends and generalizes the product line approach, extending the concepts and mechanisms available to manage variability. The system is in use in different companies, validating the claims made in this paper.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Pettersson:2005:IEB, author = "Ulf Pettersson and Stan Jarzabek", title = "Industrial experience with building a web portal product line using a lightweight, reactive approach", journal = j-SIGSOFT, volume = "30", number = "5", pages = "326--335", month = sep, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1095430.1081758", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:07 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Imprecise, frequently changing requirements and short time-to-market create challenges for application of conventional software methods in Web Portal engineering. To address these challenges, ST Electronics (Info-Software Systems) Pte. Ltd. applied a lightweight, reactive approach to support a Web Portal product line. Unique characteristics of the approach were fast, low-cost migration from a single conventional Web Portal towards a reusable ``generic Web Portal'' solution, effective handling of large number of functional variants and their dependencies, the ability to rapidly develop new Web Portals from the generic one, and to independently evolve multiple Web Portals without ever losing a connection between them and the ``generic Web Portal''. The initial Web Portal was built using state-of-the-art conventional methods. The Web Portal was not flexible enough to reap the benefits of new business opportunities that required the company to rapidly develop and further maintain many similar Web Portals. To overcome the limitations of the conventional solution, a reuse technique called XVCL was applied incrementally. Over a period of three weeks, the conventional solution was converted into a Web architecture capable of handling nine Web Portals from a base of code smaller than the original Web Portal. In the paper, we describe the process that led to building the above Web Portal product line. We explain the difficulties in building an effective generic Web solution using conventional techniques. We analyze our reuse-based solution in qualitative and quantitative ways.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Xu:2005:IDR, author = "Chang Xu and S. C. Cheung", title = "Inconsistency detection and resolution for context-aware middleware support", journal = j-SIGSOFT, volume = "30", number = "5", pages = "336--345", month = sep, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1095430.1081759", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:07 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Context-awareness is a key feature of pervasive computing whose environments keep evolving. The support of context-awareness requires comprehensive management including detection and resolution of context inconsistency, which occurs naturally in pervasive computing. In this paper we present a framework for realizing dynamic context consistency management. The framework supports inconsistency detection based on a semantic matching and inconsistency triggering model, and inconsistency resolution with proactive actions to context sources. We further present an implementation based on the Cabot middleware. The feasibility of the framework and its performance are evaluated through a case study and a simulated experiment, respectively.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Aranda:2005:AAS, author = "Jorge Aranda and Steve Easterbrook", title = "Anchoring and adjustment in software estimation", journal = j-SIGSOFT, volume = "30", number = "5", pages = "346--355", month = sep, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1095430.1081761", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:07 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Anchoring and adjustment is a form of cognitive bias that affects judgments under uncertainty. If given an initial answer, the respondent seems to use this as an 'anchor', adjusting it to reach a more plausible answer, even if the anchor is obviously incorrect. The adjustment is frequently insufficient and so the final answer is biased. In this paper, we report a study to investigate the effects of this phenomenon on software estimation processes. The results show that anchoring and adjustment does occur in software estimation, and can significantly change the resulting estimates, no matter what estimation technique is used. The results also suggest that, considering the magnitude of this bias, software estimators tend to be too confident of their own estimations.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Hochstein:2005:CSR, author = "Lorin Hochstein and Victor R. Basili and Marvin V. Zelkowitz and Jeffrey K. Hollingsworth and Jeff Carver", title = "Combining self-reported and automatic data to improve programming effort measurement", journal = j-SIGSOFT, volume = "30", number = "5", pages = "356--365", month = sep, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1095430.1081762", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:07 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Measuring effort accurately and consistently across subjects in a programming experiment can be a surprisingly difficult task. In particular, measures based on self-reported data may differ significantly from measures based on data which is recorded automatically from a subject's computing environment. Since self-reports can be unreliable, and not all activities can be captured automatically, a complete measure of programming effort should incorporate both classes of data. In this paper, we show how self-reported and automatic effort can be combined to perform validation and to measure total programming effort.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Baroni:2005:QAU, author = "Aline L{\'u}cia Baroni", title = "Quantitative assessment of {UML} dynamic models", journal = j-SIGSOFT, volume = "30", number = "5", pages = "366--369", month = sep, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1095430.1081764", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:07 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "In this work we plan to provide a suite of measures to address mainly two problem areas within contemporary object-oriented software measurement: (i) the lack of measures for the early stages of system development, like conceptual modeling and (ii) the lack of measures for dynamic models of an object-oriented system. Our suite of measures is going to be taken from UML 2.0 diagrams. OCL (Object-Constraint Language) and the UML 2.0 meta-model will be used to formalize and contextualize the definitions.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{LeGear:2005:RTC, author = "Andrew {Le Gear} and Jim Buckley", title = "Reengineering towards components using {``Reconn-exion''}", journal = j-SIGSOFT, volume = "30", number = "5", pages = "370--373", month = sep, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1095430.1081765", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:07 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Continuing to develop software from scratch will not be feasible indefinitely. Reusing existing software would seem to be a viable solution to this problem. The paradigm of component-based development (CBD) explicitly accounts for reuse in its process. Unfortunately the majority of existing software systems are not implemented using CBD, thus reusing portions of this software using CBD becomes difficult. Reengineering and maintenance research contains a plethora of software analysis and restructuring techniques that could be used to help us exploit legacy applications for reuse. This thesis focuses on two such techniques and combines variations of them for the purpose of component recovery: A feature location technique called Software Reconnaissance and a design recovery technique called Software Reflexion Modelling. Their combination is called ``Component Reconn-exion.'' We describe the technique, highlight results and evaluation to date and finally discuss further work necessary to complete our contribution as a PhD. thesis.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Erfurth:2005:UUP, author = "Ivonne Erfurth and Wilhelm Rossak", title = "{UPEX}: user participation by example", journal = j-SIGSOFT, volume = "30", number = "5", pages = "374--376", month = sep, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1095430.1081766", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:07 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The failure of projects is often based on difficulties in the direct and indirect communication between developer and customer teams. For the customer it is hard to understand the frequently used terms, process models, and technological concepts. Developers have a hard time to understand domain specific processes and structures, and exhibit a tendency to abstract concrete examples to higher level constructs. This makes it difficult for the customer team to understand the developing architecture and processes, and to match their needs and intentions, during evaluation phases, to seemingly unrelated generalised drawings and specifications. This set of problems is especially hard to avoid during the development of dynamic, distributed systems with multiple nodes and possibly asynchronous behaviour. Our research tries to mediate in this conflict by providing a customer-friendly reference model as basis of communication in early development phases. This model presents and simulates the dynamic aspects of (distributed) systems without immediate abstraction from examples and allows for a stepwise generalisation and evaluation with help of the customer team. In its final version the reference model will serve as a requirements statement for the professional developer.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Barbosa:2005:RCS, author = "Marco Antonio Barbosa", title = "A refinement calculus for software components and architectures", journal = j-SIGSOFT, volume = "30", number = "5", pages = "377--380", month = sep, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1095430.1081767", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:07 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The complexity and ubiquity achieved by software in the present world makes it imperative, more than ever, the availability of both technologies and sound methods to drive its development. Programming ' in--the--large ', component--based programming and software architecture are popular expressions which embody this concern and correspond to driving forces in current software engineering. In such a context, this paper reports on the research, which constitutes the PhD project of the author, on a formal calculus for reasoning about and transforming component--based architectures.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Sherriff:2005:UVV, author = "Mark Sherriff", title = "Utilizing verification and validation certificates to estimate software defect density", journal = j-SIGSOFT, volume = "30", number = "5", pages = "381--384", month = sep, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1095430.1081768", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:07 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "In industry, information on defect density of a product tends to become available too late in the software development process to affordably guide corrective actions. Our research objective is to build a parametric model which utilizes a persistent record of the validation and verification (V\&V) practices used with a program to estimate the defect density of that program. The persistent record of the V\&V practices are recorded as certificates which are automatically recorded and maintained with the code. PhD Advisor: Dr. Laurie Williams, [email protected]", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Hordijk:2005:SFI, author = "Wiebe Hordijk and Roel Wieringa", title = "Surveying the factors that influence maintainability: research design", journal = j-SIGSOFT, volume = "30", number = "5", pages = "385--388", month = sep, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1095430.1081769", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:07 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "We want to explore and analyse design decisions that influence maintainability of software. Software maintainability is important because the effort expended on changes and fixes in software is a major cost driver. We take an empirical, qualitative approach, by investigating cases where a change has cost more or less than comparable changes, and analysing the causes for those differences. We will use this analysis of causes as input to following research in which the individual contributions of a selection of those causes will be quantitatively analysed.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{staff:2005:FTLc, author = "{ACM SIGSOFT Software Engineering Notes Staff}", title = "Frontmatter ({TOC}, Letter from the vice-chair, Letters to the editor, Programmer productivity, Software assurance, Workshop and conference summaries, Calendar of events)", journal = j-SIGSOFT, volume = "30", number = "6", pages = "0--0", month = nov, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1102107.1102108", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:11 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Feller:2005:OSA, author = "Joseph Feller and Brian Fitzgerald and Scott Hissam and Karim Lakhani and Walt Scacchi", title = "{Open Source Application Spaces: 5th Workshop on Open Source Software Engineering}", journal = j-SIGSOFT, volume = "30", number = "6", pages = "1--2", month = nov, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1102107.1102110", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:11 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/gnu.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Building on the success of the first four workshops in the series, which were held at ICSE 2001 (Toronto), ICSE 2002 (Orlando), ICSE 2003 (Portland) and ICSE 2004 (Edinburgh), the 5$^{th}$ Workshop on Open Source Software Engineering, (``Open Source Application Spaces'') brought together researchers and practitioners for the purpose of building a roadmap of the ways in which various computing application spaces have been impacted by open source software and also by open source development methods, tools and organizational structures.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Kanaskar:2005:GSM, author = "Nitin V. Kanaskar and Umit Topaloglu and Coskun Bayrak", title = "{Globus} security model for grid environment", journal = j-SIGSOFT, volume = "30", number = "6", pages = "1--9", month = nov, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1102107.1102112", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:11 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Grid technology is increasingly being looked upon as a natural extension of the internet for engaging in complex data processing tasks over resources which are distributed across the world. Architects and developers employing grid systems must take into consideration security implications. Dynamic generation of virtual organizations leads to a synergistic picture which has to address security requirements never encountered before. Globus toolkit has devised a framework for making secure use of grid resource components which has been proved to be a feasible solution by a number of academic and scientific organizations. This paper is an attempt to identify and discern mechanisms proposed by Globus security model with certain test scenarios.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Henderson:2005:SEEd, author = "Peter B. Henderson", title = "Software engineering education {(SEEd)}", journal = j-SIGSOFT, volume = "30", number = "6", pages = "3--4", month = nov, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1102107.1102114", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:11 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This is my first column using the electronic version only formatting. The SEEd column did not appear in the previous issue because I was still trying to figure out the new schedule of six issues per year instead of 4. Interesting how we become creatures of habit, especially as we grow older. So now I have the schedule figured out, but have to decide whether I am going to do six shorter columns a year or stick to 4 longer columns a year, missing one here and there.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Doernhoefer:2005:SNSf, author = "Mark Doernhoefer", title = "Surfing the net for {{\booktitle{Software Engineering Notes}}}", journal = j-SIGSOFT, volume = "30", number = "6", pages = "5--13", month = nov, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1102107.1102116", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:11 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Service Oriented Architecture (SOA) is one of the more popular buzzwords floating around the software engineering community these days. But what the heck is a Service Oriented Architecture? In various places I have seen SOA called an approach to software design, a reuse strategy, a development methodology, or a design pattern. Can an SOA be used to describe an entire enterprise architecture or does SOA refer to a single application architecture? For example, the Federal Enterprise Architecture contains a service component model, implying that a complete enterprise architecture could be composed entirely of services. Finally, is an SOA an effective architecture for actually implementing software? We'll try to find web resources that can help answer these questions.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Neumann:2005:RPe, author = "Peter G. Neumann", title = "Risks to the public", journal = j-SIGSOFT, volume = "30", number = "6", pages = "14--25", month = nov, year = "2005", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1102107.1102118", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:11 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Edited by Peter G. Neumann (Risks Forum Moderator and Chairman of the ACM Committee on Computers and Public Policy), plus personal contributions by others, as indicated. Opinions expressed are individual rather than organizational, and all of the usual disclaimers apply. We address problems relating to software, hardware, people, and other circumstances relating to computer systems. To economize on space, we include pointers to items in the online Risks Forum: (R i j) denotes RISKS vol i number j. Cited RISKS items generally identify contributors and sources, together with URLs. Official RISKS archives are available at www.risks.org (which redirects to Newcastle and gets you nice html formatting and a search engine courtesy of Lindsay Marshall; http://catless.ncl.ac.uk/Risks/i.j.html gets you (R i j)) and at ftp://www.sri.com/risks.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{staff:2006:FTL, author = "{ACM SIGSOFT Software Engineering Notes Staff}", title = "Frontmatter ({TOC}, Letter from the chair, Letter from the editor, Letters to the editor, {ACM} policy and procedures on plagiarism, {PASTE} abstracts, Calendar of future events, Workshop and conference information)", journal = j-SIGSOFT, volume = "31", number = "1", pages = "0--0", month = jan, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1108768.1108769", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:12 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Das:2006:PM, author = "Manuvir Das", title = "{PASTE} at {Microsoft}", journal = j-SIGSOFT, volume = "31", number = "1", pages = "1--1", month = jan, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1108768.1108794", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:12 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The Windows division of Microsoft Corporation is in the midst of a massive effort to improve the security and reliability of the next release of the product --- Windows Vista. In this talk, I will explain how the Center for Software Excellence at Microsoft has used program analysis technology to build the tools that enable this effort. Along the way, I will cover the current Windows engineering process and the role of the tools in the process, the core program analysis techniques we have invented and used in the tools, business and environment issues that govern the engineering process, and research directions suggested by our experience so far.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Gill:2006:ISC, author = "Nasib S. Gill", title = "Importance of software component characterization for better software reusability", journal = j-SIGSOFT, volume = "31", number = "1", pages = "1--3", month = jan, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1108768.1108771", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:12 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Component-based software development (CBSD) is the process of assembling existing software components in an application such that they interact to satisfy a predefined functionality. This approach can potentially be used to reduce software development costs, assemble systems rapidly, and reduce the maintenance overhead. One of the key challenges faced by software developers is to make component-based development (CBD) an efficient and effective approach. Since components are to be reused across various products and product-families, components must be characterized and tested properly. The present paper is a survey paper and firstly, it discusses CBD and related issues that help improving software reuse. Testing of third party components is a very difficult task in the absence a properly characterized software component. Besides improving software reusability, component characterization also provides better understanding of architecture, better retrieval, better usage and better cataloguing. This paper mainly discusses the essence of proper component characterization that ultimately helps the developers in software reuse, which is highly desirable in component-based software development. Further, paper also discusses other benefits of component characterization that are most essential in component-based development.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Kushwaha:2006:MCI, author = "Dharmender Singh Kushwaha and A. K. Misra", title = "A modified cognitive information complexity measure of software", journal = j-SIGSOFT, volume = "31", number = "1", pages = "1--4", month = jan, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1108768.1108776", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:12 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Most discipline of science have their own method of investigation built on foundation that is empirical and verifiable. Cognitive Informatics is no different. Cognitive Informatics is a field that studies internal information processing mechanism of the human brain and its application in software coding and computing. This paper attempts to empirically demonstrate the amount of information contained in software and develops a concept of cognitive information complexity measure based on the information contained in the software. It is found that software with higher cognitive information complexity measure has more information units contained in it. Therefore cognitive information complexity measure can be used to understand the cognitive information complexity and the information coding efficiency of the software.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Zirkind:2006:HDI, author = "Givon Zirkind", title = "How data inspection and consideration, provides for index compression and record access optimization of genetic databases", journal = j-SIGSOFT, volume = "31", number = "1", pages = "1--4", month = jan, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1108768.1108779", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:12 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "With the many advances in computer hardware, the constant and historical challenges of optimization in processing and data storage diminished if not disappeared almost entirely. With hard drives getting larger and larger, while prices keep dropping; and the same occurring to memory; computer programs have turned more and more into bloatware. Likewise, processing speed has made efficiency and streamlining of program code, virtually a non-issue. The field of genetic research provides the perfect regeneration of those classical challenges to computer engineers. Genetic research requires extremely large databases, with extremely large indexes, with complex search criteria, with an extremely large number of inquiries and searches initiated remotely. Often, search requests are initiated over long geographic distances. To improve database performance, indexing access speed, and reduce index size, the author developed a new, genetic database, herein discussed.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Riehle:2006:LCS, author = "Richard Riehle", title = "Linguistic continuity in software engineering", journal = j-SIGSOFT, volume = "31", number = "1", pages = "1--5", month = jan, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1108768.1108774", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:12 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Many different concerns contribute to the complexity of software development. Some of these concerns are easy to spot. Others are right in front of us all along but not explicitly identified in a way that makes them intellectually accessible. We describe an idea that has always been in the background of awareness for programmers and software designers, but which seldom gets sufficient acknowledgement to be written about on its own. We call this linguistic [dis]continuity.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Wang:2006:ERT, author = "Yuan Wang and Feng Xu and Jian L{\"u}", title = "Establishing recommendation trust relationships for internetwares", journal = j-SIGSOFT, volume = "31", number = "1", pages = "1--5", month = jan, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1108768.1108777", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:12 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Internetware is a kind of significant emerging software systems built upon the coordination of autonomous, heterogeneous, and distributed software entities in the Internet. For the openness and dynamism of Internetwares, there are no central controllers existing to choose reliable software entities for them. Recently some distributed systems apply recommendation as the evidence to choose reliable entities, which may be a new approach suitable for internetwares. However, how to establish the recommendation trust relationships (RTR) among entities in the Internet dynamically is a very hard problem. This paper proposes an approach based on the relevant experiences to establish RTR among software entities dynamically during the runtime of internetwares. The main work includes: (1) providing a general approach to quantify trust and a description for experiences; (2) presenting an approach to evaluate recommendations based on the idea of hypothesis testing in statistics; (3) evolving the RTR based on the evaluations by considering history information and information quantity of interactions. It will be a beneficial contribution to the reliability and evolution of internetwares. A simulation is conducted to verify the rationality and validity of the approach at the end of the paper.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Girardi:2006:OBK, author = "Rosario Girardi and Alisson Neres Lindoso", title = "An ontology-based knowledge base for the representation and reuse of software patterns", journal = j-SIGSOFT, volume = "31", number = "1", pages = "1--6", month = jan, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1108768.1108772", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:12 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The description, localization and effective reuse of software patterns and systems of patterns can be approached through an ontology-based formalism. An ontology is an explicit specification of objects, concepts and entities of an area of interest, besides the relationships between these concepts expressed through axioms. This work introduces ONTOPATTERN, an ontology that represents knowledge about how patterns are described and about their relationships in a pattern system. Patterns are included as instances of classes in the ontology, thus turning ONTOPATTERN a knowledge base where concepts are semantically related and where searches and inferences can be made thus facilitating the understanding and reuse of patterns. The use of ONTOPATTERN is illustrated through an example on the construction of a multi-agent framework.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Kushwaha:2006:RAC, author = "Dharmender Singh Kushwaha and A. K. Misra", title = "Robustness analysis of cognitive information complexity measure using {Weyuker} properties", journal = j-SIGSOFT, volume = "31", number = "1", pages = "1--6", month = jan, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1108768.1108775", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:12 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Cognitive information complexity measure is based on cognitive informatics, which helps in comprehending the software characteristics. For any complexity measure to be robust, Weyuker properties must be satisfied to qualify as good and comprehensive one. In this paper, an attempt has also been made to evaluate cognitive information complexity measure in terms of nine Weyuker properties, through examples. It has been found that all the nine properties have been satisfied by cognitive information complexity measure and hence establishes cognitive information complexity measure based on information contained in the software as a robust and well-structured one.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Zacharias:2006:PAD, author = "Manousaridis Zacharias and Sagheb-Tehrani Mehdi and Mamaloukas Christos", title = "Practical aspects of {DSS} design for commodities transportation during special events", journal = j-SIGSOFT, volume = "31", number = "1", pages = "1--6", month = jan, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1108768.1108778", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:12 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Transport firms that daily pickup or deliver commodities encounter a plethora of problems relating to their Vehicle Routing and Scheduling (VRS) activities. To make decisions about Routing and Scheduling during special events is even more complicated process. During the Athens Olympic Games 2004 in Athens, the Vehicle Routing and Scheduling problem was very keen. Actually, the commodities transportation had to be done within strictly defined time-periods and under many security and traffic restrictions [2], [8]. ``Xenios'' is a specific DSS that was developed to assist the daily VRS activities of Greek transport firms during special events. This system incorporated essential functions of GIS, database systems and model management techniques to support overall routing, scheduling and decision-making processes for VRS problems encountered during the Athens 2004 Olympic Games (ATHENS 2004). Our work aimed at the successful setting up of DSS ``Xenios'' so that it could cover a wide range of variations of the VRS problem, especially problems with hard time-windows in the route generation [15], [17]. The first step in the development of any specific DSS is the identification of the applying problem dimensions [3], [7], [10]. In order to make easier the development procedure, we tried to classify the most significant VRS problem dimensions that have common characteristics in groups. According to our consideration, this work could accelerate and ease the development of the specific DSS.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Oquendo:2006:FMS, author = "Flavio Oquendo", title = "Formally modelling software architectures with the {UML} 2.0 profile for {$ \pi $-ADL}", journal = j-SIGSOFT, volume = "31", number = "1", pages = "1--13", month = jan, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1108768.1108773", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:12 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "A key aspect of the design of any software system is its architecture. An architecture description, from a runtime perspective, should provide a formal model of the architecture in terms of components and connectors, their ports and behaviours, and how they are composed together. The Unified Modelling Language (UML) is widely used in the design of software systems and has recently been extended to better support software architecture description. This paper presents the UML 2.0 Profile for {\pi}-ADL, a novel ADL that has been designed in the ArchWare European Project. It briefly presents {\pi}-ADL and its UML 2.0 Profile, then it illustrates through a case study how the UML 2.0 Profile for {\pi}-ADL can be used for formally modelling software architectures. The toolset for supporting the UML 2.0 Profile for {\pi}-ADL is outlined: it supports architecture modelling, architectural behaviour animation, and model checking of architectural properties.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Bradbury:2006:EFC, author = "Jeremy S. Bradbury and James R. Cordy and Juergen Dingel", title = "An empirical framework for comparing effectiveness of testing and property-based formal analysis", journal = j-SIGSOFT, volume = "31", number = "1", pages = "2--5", month = jan, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1108768.1108795", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:12 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Today, many formal analysis tools are not only used to provide certainty but are also used to debug software systems --- a role that has traditional been reserved for testing tools. We are interested in exploring the complementary relationship as well as tradeoffs between testing and formal analysis with respect to debugging and more specifically bug detection. In this paper we present an approach to the assessment of testing and formal analysis tools using metrics to measure the quantity and efficiency of each technique at finding bugs. We also present an assessment framework that has been constructed to allow for symmetrical comparison and evaluation of tests versus properties. We are currently beginning to conduct experiments and this paper presents a discussion of possible outcomes of our proposed empirical study.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Wing:2006:R, author = "Michael Wing", title = "Reminiscences", journal = j-SIGSOFT, volume = "31", number = "1", pages = "4--4", month = jan, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1108768.1108781", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:12 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "My favorite column in ACM publications is the ``Reminiscences on Influential Papers'' in the SIGMOD Record. I don't know of anything else like it, anywhere. Each issue contains a handful of short essays (usually 2 or 3 long paragraphs), explaining why one research paper or another made an impression. Usually, the cited paper influenced the author's Ph.D. thesis or subsequent research.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Doernhoefer:2006:SNSa, author = "Mark Doernhoefer", title = "Surfing the net for {{\booktitle{Software Engineering Notes}}}", journal = j-SIGSOFT, volume = "31", number = "1", pages = "5--13", month = jan, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1108768.1108783", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:12 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The September issue of IEEE Spectrum was dedicated to a special report on failed software development projects. Led by the cover story on the FBI Virtual Case File, also known as Trilogy, the magazine contained several case studies on software projects that blew up during development or shortly after release. Readers of Peter Neumann's RISKS column or books by Yourdon, Glass, and others know that software development failures are noting new.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Liang:2006:EIC, author = "Donglin Liang and Maikel Pennings and Mary Jean Harrold", title = "Evaluating the impact of context-sensitivity on {Andersen}'s algorithm for {Java} programs", journal = j-SIGSOFT, volume = "31", number = "1", pages = "6--12", month = jan, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1108768.1108797", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:12 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Program analysis and program optimization of Java programs require reference information that estimates the instances of classes that may be accessed through dereferences. Recent work has presented several approaches for adapting Andersen's algorithm [1] --- the most precise flow-insensitive and context-insensitive points-to analysis algorithm developed for C --- for analyzing Java programs (e.g., [5, 9, 12]). Studies in our previous work [6] indicate that this algorithm may compute very imprecise reference information for Java programs.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Hovemeyer:2006:ETS, author = "David Hovemeyer and Jaime Spacco and William Pugh", title = "Evaluating and tuning a static analysis to find null pointer bugs", journal = j-SIGSOFT, volume = "31", number = "1", pages = "13--19", month = jan, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1108768.1108798", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:12 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Using static analysis to detect memory access errors, such as null pointer dereferences, is not a new problem. However, much of the previous work has used rather sophisticated analysis techniques in order to detect such errors. In this paper we show that simple analysis techniques can be used to identify many such software defects, both in production code and in student code. In order to make our analysis both simple and effective, we use a non-standard analysis which is neither complete nor sound. However, we find that it is effective at finding an interesting class of software defects. We describe the basic analysis we perform, as well as the additional errors we can detect using techniques such as annotations and inter-procedural analysis. In studies of both production software and student projects, we find false positive rates of around 20\% or less. In the student code base, we find that our static analysis techniques are able to pinpoint 50\% to 80\% of the defects leading to a null pointer exception at runtime.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Neumann:2006:RPa, author = "Peter G. Neumann", title = "Risks to the public", journal = j-SIGSOFT, volume = "31", number = "1", pages = "14--19", month = jan, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1108768.1108785", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:12 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Edited by Peter G. Neumann (Risks Forum Moderator and Chairman of the ACM Committee on Computers and Public Policy), plus personal contributions by others, as indicated. Opinions expressed are individual rather than organizational, and all of the usual disclaimers apply. We address problems relating to software, hardware, people, and other circumstances relating to computer systems. To economize on space, we include pointers to items in the online Risks Forum: (R i j) denotes RISKS vol i number j. Cited RISKS items generally identify contributors and sources, together with URLs. Official RISKS archives are available at www.risks.org (which redirects to Newcastle and gets you nice html formatting and a search engine courtesy of Lindsay Marshall; http://catless.ncl.ac.uk/Risks/i.j.html gets you (R i j)) and at ftp://www.sri.com/risks.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Privat:2006:LTS, author = "Jean Privat and Roland Ducournau", title = "Link-time static analysis for efficient separate compilation of object-oriented languages", journal = j-SIGSOFT, volume = "31", number = "1", pages = "20--27", month = jan, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1108768.1108799", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:12 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Compilers used in industry are mainly based on a separate compilation framework. However, the knowledge of the whole program improves efficiency of object-oriented language compilers, therefore more efficient implementation techniques are based on a global compilation framework. In this paper, we propose a compromise by including three global compilation techniques (type analysis, coloring and binary tree dispatching) in a separate compilation framework. Files are independently compiled into standard binary files with unresolved symbols. The program is build by linking object files: files are gathered and analyzed, some link code is generated then symbols are resolved.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Ben-Menachem:2006:RTS, author = "Mordechai Ben-Menachem", title = "Review of {{\booktitle{Trustworthy Systems Through Quantitative Software Engineering}} by Lawrence Bernstein and C. M. Yuhas, IEEE Computer Society Press, 2005}", journal = j-SIGSOFT, volume = "31", number = "1", pages = "27--28", month = jan, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1108768.1108787", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:12 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Bernstein:2006:RCE, author = "Larry Bernstein", title = "Review of {{\booktitle{Competitive Engineering}} by Tom Gilb, Elsevier, 2005. ISBN: 0-7506-6507-6}", journal = j-SIGSOFT, volume = "31", number = "1", pages = "28--28", month = jan, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1108768.1108788", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:12 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Kumar:2006:LOP, author = "Naveen Kumar and Bruce R. Childers and Mary Lou Soffa", title = "Low overhead program monitoring and profiling", journal = j-SIGSOFT, volume = "31", number = "1", pages = "28--34", month = jan, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1108768.1108801", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:12 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Program instrumentation, inserted either before or during execution, is rapidly becoming a necessary component of many systems. Instrumentation is commonly used to collect information for many diverse analysis applications, such as detecting program invariants, dynamic slicing and alias analysis, software security checking, and computer architecture modeling. Because instrumentation typically has a high run-time overhead, techniques are needed to mitigate the overheads. This paper describes ``instrumentation optimizations'' that reduce the overhead of profiling for program analysis. Our approach applies transformations to the instrumentation code that reduce the (1) number of instrumentation points executed, (2) cost of instrumentation probes, and (3) cost of instrumentation payload, while maintaining the semantics of the original instrumentation. We present the transformations and apply them for program profiling and computer architecture modeling. We evaluate the optimizations and show that the optimizations improve profiling performance by 1.26-2.63x and architecture modeling performance by 2-3.3x.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Tallam:2006:CAI, author = "Sriraman Tallam and Neelam Gupta", title = "A concept analysis inspired greedy algorithm for test suite minimization", journal = j-SIGSOFT, volume = "31", number = "1", pages = "35--42", month = jan, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1108768.1108802", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:12 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Software testing and retesting occurs continuously during the software development lifecycle to detect errors as early as possible and to ensure that changes to existing software do not break the software. Test suites once developed are reused and updated frequently as the software evolves. As a result, some test cases in the test suite may become redundant as the software is modified over time since the requirements covered by them are also covered by other test cases. Due to the resource and time constraints for re-executing large test suites, it is important to develop techniques to minimize available test suites by removing redundant test cases. In general, the test suite minimization problem is NP complete. In this paper, we present a new greedy heuristic algorithm for selecting a minimal subset of a test suite T that covers all the requirements covered by T. We show how our algorithm was inspired by the concept analysis framework. We conducted experiments to measure the extent of test suite reduction obtained by our algorithm and prior heuristics for test suite minimization. In our experiments, our algorithm always selected same size or smaller size test suite than that selected by prior heuristics and had comparable time performance.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Cook:2006:MSU, author = "Jonathan Cook and Alessandro Orso", title = "{MonDe}: safe updating through monitored deployment of new component versions", journal = j-SIGSOFT, volume = "31", number = "1", pages = "43--46", month = jan, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1108768.1108803", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:12 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Safely updating software at remote sites is a cautious balance of enabling new functionality and avoiding adverse effects on existing functionality. A useful first step in this process would be to evaluate the performance of a new version of a component on the current workload before enabling its functionality. This step would let the engineers assess the component's performance over more (and more realistic) data points than by simply performing regression testing in-house. In this paper we propose to evaluate the performance of a new version of a component by (1) deploying it to remote sites, (2) running it in a controlled environment with the actual workloads being generated at that site, and (3) reporting the results back to the development engineers. Running the new version can either be done on-line, alongside the current system, or offline, using capture-replay techniques. By running at the remote site and reporting concise results, issues of data security, protection, and confidentiality are diminished, yet the new version can be evaluated on real workloads.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Myers:2006:MDS, author = "Andrew Myers", title = "Making distributed systems secure with program analysis and transformation", journal = j-SIGSOFT, volume = "31", number = "1", pages = "47--47", month = jan, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1108768.1108805", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:12 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Building secure distributed systems is difficult, and making sure they are secure is even harder. For strong security, a variety of different mechanisms are used, such as encryption, digital signatures, access control, and replication. But once the system is built, it is difficult to know that system-level security objectives have been achieved.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Hamlet:2006:IST, author = "Dick Hamlet", title = "Invariants and state in testing and formal methods", journal = j-SIGSOFT, volume = "31", number = "1", pages = "48--51", month = jan, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1108768.1108806", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:12 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Logical formulas called invariants are a staple of formal methods for program analysis. Persistent-state variables appear in these formulas playing their proper intuitive role, which is somewhere between inputs and internal variables. In software testing theory, on the contrary, state is not usually accorded explicit treatment. Comparing the viewpoints of formal methods and testing theory suggests new roles that formal methods can play in testing. This examination is motivated by recent systems such as Daikon, which use both tests and invariants.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Hampapuram:2006:SPS, author = "Hari Hampapuram and Yue Yang and Manuvir Das", title = "Symbolic path simulation in path-sensitive dataflow analysis", journal = j-SIGSOFT, volume = "31", number = "1", pages = "52--58", month = jan, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1108768.1108808", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:12 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Symbolic path simulation is becoming an increasingly important component in many static analysis tasks. The emergence of inter-procedural path-sensitive dataflow algorithms has both raised the demands and posed new challenges for effective techniques in path feasibility analysis. This paper develops a general-purpose path simulator and applies it to support path-sensitive dataflow analysis. The core component of the path simulator is a simulation engine that supports a wide variety of programming language features. This simulation engine can be ``wrapped'' with an interface layer to support a given client application. As a concrete case study, we discuss the experiences gained in integrating the path simulator with ESP, a software validation tool for C/C++ programs. We apply ESP to validate a future version of Windows against critical security properties. Our results show that the global path simulation mechanism is both critical in improving precision and scalable enough to be of practical use.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Pickett:2006:SSF, author = "Christopher J. F. Pickett and Clark Verbrugge", title = "{SableSpMT}: a software framework for analysing speculative multithreading in {Java}", journal = j-SIGSOFT, volume = "31", number = "1", pages = "59--66", month = jan, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1108768.1108809", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:12 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.math.utah.edu/pub/tex/bib/multithreading.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib; http://www.math.utah.edu/pub/tex/bib/virtual-machines.bib", abstract = "Speculative multithreading (SpMT) is a promising optimisation technique for achieving faster execution of sequential programs on multiprocessor hardware. Analysis of and data acquisition from such systems is however difficult and complex, and is typically limited to a specific hardware design and simulation environment. We have implemented a flexible, software-based speculative multithreading architecture within the context of a full-featured Java virtual machine. We consider the entire Java language and provide a complete set of support features for speculative execution, including return value prediction. Using our system we are able to generate extensive dynamic analysis information, analyse the effects of runtime feedback, and determine the impact of incorporating static, offline information. Our approach allows for accurate analysis of Java SpMT on existing, commodity multiprocessor hardware, and provides a vehicle for further experimentation with speculative approaches and optimisations.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Strout:2006:RIP, author = "Michelle Mills Strout and John Mellor-Crummey and Paul Hovland", title = "Representation-independent program analysis", journal = j-SIGSOFT, volume = "31", number = "1", pages = "67--74", month = jan, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1108768.1108810", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:12 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Program analysis has many applications in software engineering and high-performance computation, such as program understanding, debugging, testing, reverse engineering, and optimization. A ubiquitous compiler infrastructure does not exist; therefore, program analysis is essentially reimplemented for each compiler infrastructure. The goal of the OpenAnalysis toolkit is to separate analysis from the intermediate representation (IR) in a way that allows the orthogonal development of compiler infrastructures and program analysis. Separation of analysis from specific IRs will allow faster development of compiler infrastructures, the ability to share and compare analysis implementations, and in general quicker breakthroughs and evolution in the area of program analysis. This paper presents how we are separating analysis implementations from IRs with analysis-specific, IR-independent interfaces. Analysis-specific IR interfaces for alias/pointer analysis algorithms and reaching constants illustrate that an IR interface designed for language dependence is capable of providing enough information to support the implementation of a broad range of analysis algorithms and also represent constructs within many imperative programming languages.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{VanPut:2006:LNC, author = "Ludo {Van Put} and Bjorn {De Sutter} and Matias Madou and Bruno {De Bus} and Dominique Chanet and Kristof Smits and Koen {De Bosschere}", title = "{LANCET}: a nifty code editing tool", journal = j-SIGSOFT, volume = "31", number = "1", pages = "75--81", month = jan, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1108768.1108812", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:12 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper presents LANCET, a multi-platform software visualization tool that enables the inspection of programs at the binary code level. Implemented on top of the link-time rewriting framework DIABLO, LANCET provides several views on the interprocedural control flow graph of a program. These views can be used to navigate through the program, to edit the program in a efficient manner, and to interact with the existing whole-program analyses and optimizations that are implemented in DIABLO or existing applications of DIABLO. As such, LANCET is an ideal tool to examine compiler-generated code, to assist the development of new compiler optimizations, or to optimize assembly code manually.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Barnett:2006:WPU, author = "Mike Barnett and K. Rustan M. Leino", title = "Weakest-precondition of unstructured programs", journal = j-SIGSOFT, volume = "31", number = "1", pages = "82--87", month = jan, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1108768.1108813", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:12 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Program verification systems typically transform a program into a logical expression which is then fed to a theorem prover. The logical expression represents the weakest precondition of the program relative to its specification; when (and if!) the theorem prover is able to prove the expression, then the program is considered correct. Computing such a logical expression for an imperative, structured program is straightforward, although there are issues having to do with loops and the efficiency both of the computation and of the complexity of the formula with respect to the theorem prover. This paper presents a novel approach for computing the weakest precondition of an unstructured program that is sound even in the presence of loops. The computation is efficient and the resulting logical expression provides more leeway for the theorem prover efficiently to attack the proof.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Christodorescu:2006:SAX, author = "Mihai Christodorescu and Nicholas Kidd and Wen-Han Goh", title = "String analysis for x86 binaries", journal = j-SIGSOFT, volume = "31", number = "1", pages = "88--95", month = jan, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1108768.1108814", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:12 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Information about string values at key points in a program can help program understanding, reverse engineering, and forensics. We present a static-analysis technique for recovering possible string values in an executable program, when no debug information or source code is available. The result of our analysis is a regular language that describes a superset of the string values possible at a given program point. We also impart some of the lessons learned in the process of implementing our analysis as a tool for recovering C-style strings in x86 executables.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Rountev:2006:SCF, author = "Atanas Rountev and Olga Volgin and Miriam Reddoch", title = "Static control-flow analysis for reverse engineering of {UML} sequence diagrams", journal = j-SIGSOFT, volume = "31", number = "1", pages = "96--102", month = jan, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1108768.1108816", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:12 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "UML sequence diagrams are commonly used to represent the interactions among collaborating objects. Reverse-engineered sequence diagrams are constructed from existing code, and have a variety of uses in software development, maintenance, and testing. In static analysis for such reverse engineering, an open question is how to represent the intraprocedural flow of control from the code using the control-flow primitives of UML 2.0. We propose simple UML extensions that are necessary to capture general flow of control. The paper describes an algorithm for mapping a reducible exception-free intraprocedural control-flow graph to UML, using the proposed extensions. We also investigate the inherent tradeoffs of different problem solutions, and discuss their implications for reverse-engineering tools. This work is a substantial step towards providing high-quality tool support for effective and efficient reverse engineering of UML sequence diagrams.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Khurshid:2006:GSE, author = "Sarfraz Khurshid and Yuk Lai Suen", title = "Generalizing symbolic execution to library classes", journal = j-SIGSOFT, volume = "31", number = "1", pages = "103--110", month = jan, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1108768.1108817", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:12 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Forward symbolic execution is a program analysis technique that allows using symbolic inputs to explore program executions. The traditional applications of this technique have focused on programs that manipulate primitive data types, such as integer or boolean. Recent extensions have shown how to handle reference types at their representation level. The extensions have favorably been backed by advances in constraint solving technology, and together they have made symbolic execution applicable, at least in theory, to a large class of programs. In practice, however, the increased potential for applications has created significant issues with scalability of symbolic execution to programs of non-trivial size --- the ensuing path conditions rapidly become unfeasibly complex. We present Dianju, a new technique that aims to address the scalability of symbolic execution. The fundamental idea in Dianju is to perform symbolic execution of commonly used library classes (such as strings, sets and maps) at the abstract level rather than the representation level. Dianju defines semantics of operations on symbolic objects of these classes, which allows Dianju to abstract away from the complexity that is normally inherent in library implementations, thus promising scalable analyses based on symbolic execution.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Perkins:2006:AGR, author = "Jeff H. Perkins", title = "Automatically generating refactorings to support {API} evolution", journal = j-SIGSOFT, volume = "31", number = "1", pages = "111--114", month = jan, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1108768.1108818", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:12 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "When library APIs change, client code should change in response, in order to avoid erroneous behavior, compilation failures, or warnings. Previous research has introduced techniques for generating such client refactorings. This paper improves on the previous work by proposing a novel, lightweight technique that takes advantage of information that programmers can insert in the code rather than forcing them to use a different tool to re-express it. The key idea is to replace calls to deprecated methods by their bodies, where those bodies consist of the appropriate replacement code. This approach has several benefits. It requires no change in library development practice, since programmers already adjust method bodies and/or write example code, and there are no new tools or languages to learn. It does not require distribution of new artifacts, and a tool to apply it can be lightweight. We evaluated the applicability of our approach on a number of libraries and found it to to be applicable in more than 75\% of the cases.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Blundell:2006:AGT, author = "Colin Blundell and Dimitra Giannakopoulou and Corina S. P{\u{a}}s{\u{a}}reanu", title = "Assume-guarantee testing", journal = j-SIGSOFT, volume = "31", number = "2", pages = "1:1--1:??", month = mar, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1108768.1123060", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:15 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/multithreading.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Verification techniques for component-based systems should ideally be able to predict properties of the assembled system through analysis of individual components before assembly. This work introduces such a modular technique in the context of testing. Assume-guarantee testing relies on the (automated) decomposition of key system-level requirements into local component requirements at design time. Developers can verify the local requirements by checking components in isolation; failed checks may indicate violations of system requirements, while valid traces from different components compose via the assume-guarantee proof rule to potentially provide system coverage. These local requirements also form the foundation of a technique for efficient predictive testing of assembled systems: given a correct system run, this technique can predict violations by alternative system runs without constructing those runs. We discuss the application of our approach to testing a multi-threaded NASA application, where we treat threads as components.", acknowledgement = ack-nhfb, articleno = "1", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Collins:2006:ADV, author = "Michael Collins and Charles Reynolds and Christine Le and Cihan Varol and Coskun Bayrak", title = "Automated data verification in a format-free environment", journal = j-SIGSOFT, volume = "31", number = "2", pages = "1--4", month = mar, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1118537.1118539", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:15 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Data collection and interpretation are vital for innumerable purposes: both commercial and academic. Sifting through vast mountains of data to separate correct information from incorrect can be expensive both in terms of money and of time. Automation of as much of this process as possible is the key to collecting useful information in an efficient and timely manner. This paper discusses a system designed to automate the comparison of raw collected data to store of previously verified data. This comparison can be used both to estimate the accuracy and the value of the collected data. In addition, it is possible to gauge the efficacy of various collection methods. In this system special attention was paid to accepting a wide range of document formats and to properly handling data sets whose attribute types might be differently organized than those in the reference data.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Kushwaha:2006:CCM, author = "Dharmender Singh Kushwaha and A. K. Misra", title = "Cognitive complexity metrics and its impact on software reliability based on cognitive software development model", journal = j-SIGSOFT, volume = "31", number = "2", pages = "1--6", month = mar, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1118537.1118544", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:15 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Software metrics provide a quantitative basis for the development and validation of models of software development process. Information gained from metrics is used in managing the development process in order to improve the reliability and quality of software product. The software metric is used to estimate various parameters of software development lifecycle such as cost, schedule productivity, quality and reliability. In this paper, an attempt has been made to frame the cognitive complexity metrics that will aid in increasing the reliability of software product being developed during the development lifecycle.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Diev:2006:SEM, author = "Sergey Diev", title = "Software estimation in the maintenance context", journal = j-SIGSOFT, volume = "31", number = "2", pages = "1--8", month = mar, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1118537.1118540", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:15 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This article describes an extension of the Use Case Points method of software estimation. The main goal of this extension, called UCPm, is to reflect the specifics of the maintenance phase of software life cycle. UCPm takes into consideration the complexity of the base system. Then, UCPm does not consider the environmental factor as size-contributing entity and defines product size only via unadjusted use case points and technical factor. UCPm also applies four technical factors at the use case level, rather than at the level of the overall product. The method has been applied to more than 30 projects in the course of work on achieving CMM Level 4. It was found that even when requirements are not produced in the use case style, it is relatively easy to build a use case model for the purpose of estimation. It is also believed that the relatively high level of UCP/UCPm reduces the amount of work on estimation. In our preliminary estimates, one use case point maps to approximately four function points.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Misic:2006:PEP, author = "Vojislav B. Mi{\v{s}}i{\'c}", title = "Perceptions of extreme programming: an exploratory study", journal = j-SIGSOFT, volume = "31", number = "2", pages = "1--8", month = mar, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1118537.1118542", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:15 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Extreme Programming (XP) is probably the best known and (arguably) the most controversial of the so-called agile software development methodologies. The paper presents the main findings of a small pilot survey about user perceptions of XP.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Mateescu:2006:AAA, author = "Radu Mateescu and Flavio Oquendo", title = "{$ \pi $-AAL}: an architecture analysis language for formally specifying and verifying structural and behavioural properties of software architectures", journal = j-SIGSOFT, volume = "31", number = "2", pages = "1--19", month = mar, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1118537.1118541", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:15 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "A key aspect of the design of any software system is its architecture. An architecture description, from a runtime perspective, provides a formal representation of the architecture in terms of its components and connectors, their ports and behaviours, and how they are composed together. In the past decade, several Architecture Description Languages (ADLs) have been defined for representing the structure and behaviour of software architectures. However, describing the structure and behaviour of an architecture in terms of a configuration of components and connectors is needed, but it is not enough. Indeed, in addition to representing software architectures, we need to rigorously specify their required and desired architectural properties, in particular related to completeness, consistency and correctness. This article presents {\pi}-AAL, a novel Architecture Analysis Language (AAL) that has been designed in the ArchWare European Project to address formal analysis of software architectures. It is a formal, well-founded theoretically language based on the modal {\mu}-calculus designed to enable the specification of structural and behavioural properties and their verification using an analytical toolset based on theorem proving and model checking techniques.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Schaefer:2006:RTS, author = "Robert Schaefer", title = "A rational theory of system-making systems", journal = j-SIGSOFT, volume = "31", number = "2", pages = "1--20", month = mar, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1118537.1118543", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:15 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "All current models of software development abstract away key interactions of the hosting organization, the results of which can be seen in practice with the common reoccurrence of large software intensive system project failures. Poor model matches with reality can be detected by anomaly, by paradox, and by poor results when approved process is properly applied. The current paradigm is that the software development process (and the more inclusive systems development process) must be abstracted away from the host organization, and that this abstraction must be treated as the whole of the model. This model began its life as a useful fiction to permit a cutting out of what for small projects were (at the time) second-order factors to enable a more concentrated analysis on the principal factors. For the smaller software project, this model has, and continues to work quite well. But over the decades, as systems and systems makers have grown in size and complexity, this working fiction has outgrown its ability to model reality, and at the same time due to past success, has assumed the trappings of a truth; a law not to be questioned. Arguments to date on software process have been only about what variant methodology to apply and how strict one should be in applying methods, but never about the validity of the boundaries of the model. All efforts for improvement have been no more than continual tweaking of a bad model to see what happens. The paradigm for a better model begins with the realization that the larger the system maker and the larger the system, the greater the influence of the internally directed goals, the politics and the structures of the organization have on the design and implementation of the product. This paper attempts to reintroduce these externalities through a new model; the system-making system model. This model can be used to explain observations; predict outcomes; identify where current theory should no longer be treated as law and where current practice should no longer treated as optimal. The advantage of this model happens also to be its only drawback (sigh), that politics must be discussed.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Bidinger:2006:DTD, author = "Philippe Bidinger and Matthieu Leclercq and Vivien Qu{\'e}ma and Alan Schmitt and Jean-Bernard Stefani", title = "Dream types: a domain specific type system for component-based message-oriented middleware", journal = j-SIGSOFT, volume = "31", number = "2", pages = "2:1--2:??", month = mar, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1108768.1123061", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:15 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "We present a type system for the Dream component-based message-oriented middleware. This type system aims at preventing the erroneous use of messages, such as the access of missing content. To this end, we adapt to our setting a type system developed for extensible records.", acknowledgement = ack-nhfb, articleno = "2", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Ciobanu:2006:SLC, author = "Gabriel Ciobanu and Dorel Lucanu", title = "A specification language for coordinated objects", journal = j-SIGSOFT, volume = "31", number = "2", pages = "3:1--3:??", month = mar, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1108768.1123062", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:15 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The paper presents a specification language of autonomous objects supervised by a coordinating process. The coordination is defined by means of an interaction wrapper. The coordination semantics is described in the terms of bisimulation relations. The properties of the coordinated objects are expressed as temporal formulas, and verified by specific model-checking algorithms. We use the alternating bit protocol to exemplify our specification language and its semantics. This approach allows a clear separation of concerns: the same coordinating process can be used with different concurrent objects, and the same objects can be used with a different coordinator. Thus our specification language allows easy modifications and customization. The method is effective in assembling increasingly complex systems from components. Moreover, composing different coordinating processes can be done without changing the code of the coordinated objects. In this way, the difficult task of implementing the mechanism of coordination becomes substantially easier.", acknowledgement = ack-nhfb, articleno = "3", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Henderson:2006:SEEa, author = "Peter B. Henderson", title = "Software engineering education {(SEEd)}", journal = j-SIGSOFT, volume = "31", number = "2", pages = "3--3", month = mar, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1118537.1118546", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:15 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "I have strived to sprinkle different points of view from various sources regarding software engineering education through this column. Views from academics, researchers and software practitioners --- notably people with extensive experience. This column provides a different perspective, someone just starting their career as a software engineer. I won't say anything else here as you will find our guest columnist, Jeremy Lanman, speaks for himself.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Lanman:2006:ISE, author = "Jeremy T. Lanman", title = "Industrial software engineering: developing software systems", journal = j-SIGSOFT, volume = "31", number = "2", pages = "3--5", month = mar, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1118537.1118547", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:15 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Software Engineering is an incredibly complex interdisciplinary subject that requires intense problem solving and communication skills. It is an art and a science which requires an open mind and adaptation to various domains \ldots{} in essence, a software engineer must think outside of the box! I started my path in software engineering with the undergraduate computer science program at Butler University. There I learned the common fundamentals of computer science through studying algorithms and data structures, theory of computing, databases, and of course discrete mathematics. In addition to a traditional computer science program, a software engineering curriculum was introduced. Although, nearing graduation, I decided to take a couple of these software classes, and afterwards it was clear to me that my passion was to develop software systems. I decided to learn more and enrolled into a graduate program in software engineering at Embry-Riddle Aeronautical University. At ERAU, I had specific courses in each area of the software engineering development lifecycle, and collaborative corporate internships to apply my knowledge. My most profound internship was with the aerospace defense contractor, Lockheed Martin Corporation. It was there where I truly learned how to be an ``Industrial Software Engineer''.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Brim:2006:CIA, author = "Lubo{\v{s}} Brim and Ivana {\v{C}}ern{\'a} and Pavl{\'\i}na Va{\v{r}}ekov{\'a} and Barbora Zimmerova", title = "Component-interaction automata as a verification-oriented component-based system specification", journal = j-SIGSOFT, volume = "31", number = "2", pages = "4:1--4:??", month = mar, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1108768.1123063", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:15 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "In the paper, we present a new approach to component interaction specification and verification process which combines the advantages of both architecture description languages (ADLs) at the beginning of the process, and a general formal verification-oriented model connected to verification tools at the end. After examining current general formal models with respect to their suitability for description of component-based systems, we propose a new verification-oriented model, Component-Interaction automata, and discuss its features. The model is designed to preserve all the interaction properties to provide a rich base for further verification, and allows the system behaviour to be configurable according to the architecture description (bindings among components) and other specifics (type of communication used in the synchronization of components).", acknowledgement = ack-nhfb, articleno = "4", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Wing:2006:LHB, author = "Michael Wing", title = "Lonesome hacker blues", journal = j-SIGSOFT, volume = "31", number = "2", pages = "5--5", month = mar, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1118537.1118548", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:15 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "I'm sitting in my office, daydreaming. My friends are out skiing this weekend, but I promised to come in and fix this custom control, so it can be tested for shipment next week. The product managers told me about it at 5 last night.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Xu:2006:PMP, author = "Jing Xu and Alexandre Oufimtsev and Murray Woodside and Liam Murphy", title = "Performance modeling and prediction of enterprise {JavaBeans} with layered queuing network templates", journal = j-SIGSOFT, volume = "31", number = "2", pages = "5:1--5:??", month = mar, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1108768.1123064", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:15 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Component technologies, such as Enterprise Java Beans (EJB) and {.NET}, are used in enterprise servers with requirements for high performance and scalability. This work considers performance prediction from the design of an EJB system, based on the modular structure of an application server and the application components. It uses layered queueing models, which are naturally structured around the software components. This paper describes a framework for constructing such models, based on layered queue templates for EJBs, and for their inclusion in the server. The resulting model is calibrated and validated by comparison with an actual system.", acknowledgement = ack-nhfb, articleno = "5", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Lumpe:2006:CEM, author = "Markus Lumpe and Jean-Guy Schneider", title = "{Classboxes}: an experiment in modeling compositional abstractions using explicit contexts", journal = j-SIGSOFT, volume = "31", number = "2", pages = "6:1--6:??", month = mar, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1108768.1123065", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:15 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The development of flexible and reusable abstractions for software composition has suffered from the inherent problem that reusability and extensibility are hampered by the dependence on position and arity of parameters. In order to address this issue, we have defined {\lambda} F, a substitution-free variant of the {\lambda}-calculus where names are replaced with first-class namespaces and parameter passing is modeled using explicit contexts. We have used {\lambda} F to define a model for classboxes, a dynamically typed module system for object-oriented languages that provides support for controlling both the visibility and composition of class extensions. This model not only illustrates the expressive power and flexibility of {\lambda} F as a suitable formal foundation for compositional abstractions, but also assists us in validating and extending the concept of classboxes in a language-neutral way.", acknowledgement = ack-nhfb, articleno = "6", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Tomayko:2006:PJT, author = "James E. Tomayko", title = "{Professor James E. Tomayko}", journal = j-SIGSOFT, volume = "31", number = "2", pages = "6--6", month = mar, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1118537.1118549", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:15 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Carnegie Mellon professor and alumnus James Tomayko (HS'71,'80), a founder and former director of the Master in Software Engineering (MSE) program in the School of Computer Science (SCS), died on Monday, Jan. 9, 2006, after a long illness. He was 56.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Neumann:2006:RPb, author = "Peter G. Neumann", title = "Risks to the public", journal = j-SIGSOFT, volume = "31", number = "2", pages = "6--16", month = mar, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1118537.1118551", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:15 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Edited by Peter G. Neumann (Risks Forum Moderator and Chairman of the ACM Committee on Computers and Public Policy), plus personal contributions by others, as indicated. Opinions expressed are individual rather than organizational, and all of the usual disclaimers apply. We address problems relating to software, hardware, people, and other circumstances relating to computer systems. To economize on space, we include pointers to items in the online Risks Forum: (R i j) denotes RISKS vol i number j. Cited RISKS items generally identify contributors and sources, together with URLs. Official RISKS archives are available at www.risks.org (which redirects to Newcastle and gets you nice html formatting and a search engine courtesy of Lindsay Marshall; http://catless.ncl.ac.uk/Risks/i.j.html gets you (R i j)) and at ftp://www.sri.com/risks.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Kulczycki:2006:SBA, author = "Gregory Kulczycki and Murali Sitaraman and Bruce W. Weide and Atanas Rountev", title = "A specification-based approach to reasoning about pointers", journal = j-SIGSOFT, volume = "31", number = "2", pages = "7:1--7:??", month = mar, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1108768.1123066", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:15 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper explains how a uniform, specification-based approach to reasoning about component-based programs can be used to reason about programs that manipulate pointers. No special axioms, language semantics, global heap model, or proof rules for pointers are necessary. We show how this is possible by capturing pointers and operations that manipulate them in the specification of a software component. The proposed approach is mechanizable as long as programmers are able to understand mathematical specifications and write assertions, such as loop invariants. While some of the previous efforts in reasoning do not require such mathematical sophistication on the part of programmers, they are limited in the kinds of properties they can prove about programs that use pointers. We illustrate the idea using a ``Splice'' operation for linked lists, which has been used previously to explain other analysis techniques. Not only can the proposed approach be used to establish shape properties given lightweight specifications, but also it can be used to establish total correctness given more complete specifications.", acknowledgement = ack-nhfb, articleno = "7", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Thang:2006:SVI, author = "Nguyen Truong Thang and Takuya Katayama", title = "Specification and verification of inter-component constraints in {CTL}", journal = j-SIGSOFT, volume = "31", number = "2", pages = "8:1--8:??", month = mar, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1108768.1123067", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:15 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The most challenging issue of component-based software is about component composition. Current component specification, in addition to the syntactic level, is very limited in dealing with semantic constraints. Even so, only static aspects of components are specified. This paper gives a formal approach to make component specification more comprehensive by including component semantic. Fundamentally, the component semantic is expressed via the powerful temporal logic CTL. There are two semantic aspects in the paper, component dynamic behavior and consistency --- namely a component does not violate some property in another when composed. Based on the proposed semantic, components can be efficiently cross-checked for their consistency by an incremental verification method --- OIMC, even for many future component extensions.", acknowledgement = ack-nhfb, articleno = "8", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Chalin:2006:NNR, author = "Patrice Chalin and Fr{\'e}d{\'e}ric Rioux", title = "Non-null references by default in the {Java} modeling language", journal = j-SIGSOFT, volume = "31", number = "2", pages = "9:1--9:??", month = mar, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1108768.1123068", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:15 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Based on our experiences and those of our peers, we hypothesized that in Java code, the majority of declarations that are of reference types are meant to be non-null. Unfortunately, the Java Modeling Language (JML), like most interface specification and object-oriented programming languages, assumes that such declarations are possibly-null by default. As a consequence, developers need to write specifications that are more verbose than necessary in order to accurately document their module interfaces. In practice, this results in module interfaces being left incompletely and inaccurately specified. In this paper we present the results of a study that confirms our hypothesis. Hence, we propose an adaptation to JML that preserves its language design goals and that allows developers to specify that declarations of reference types are to be interpreted as non-null by default. We explain how this default is safer and results in less writing on the part of specifiers than null-by-default. The paper also reports on an implementation of the proposal in some of the JML tools.", acknowledgement = ack-nhfb, articleno = "9", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Perez-Serrano:2006:SDC, author = "Pedro L. P{\'e}rez-Serrano and Marisol S{\'a}nchez-Alonso", title = "Specification and design of component-based coordination systems by integrating coordination patterns", journal = j-SIGSOFT, volume = "31", number = "2", pages = "10:1--10:??", month = mar, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1108768.1123069", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:15 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Rewriting logic has been revealed as a powerful tool to represent concurrent and state-transitions aspects in a declarative way, providing an adequate environment to specify and execute system representations. Moreover, rewriting logic is reflective, allowing for the definition of operations that transform, combine and manipulate specification modules by making use of the logic itself. Taking advantage of these capabilities, this paper presents a set of tools based on the rewriting logic language Maude to express the specifications of component-based systems with important coordination constraints, where coordination aspects are treated as separate components from functional ones. This representation allows for the testing of the system behavior from the early stages in the development process by executing the specifications. In addition, the development of basic coordination patterns using UML is presented to describe the coordination relationships between components in any system, providing a standard notation that complements the tools of the proposal.", acknowledgement = ack-nhfb, articleno = "10", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Ceballos:2006:CST, author = "Rafael Ceballos and Rafael Martinez Gasca and Diana Borrego", title = "Constraint satisfaction techniques for diagnosing errors in design by contract software", journal = j-SIGSOFT, volume = "31", number = "2", pages = "11:1--11:??", month = mar, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1108768.1123070", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:15 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Design by Contract enables the development of more reliable and robust software applications. In this paper, a methodology that diagnoses errors in software is proposed. This is based on the combination of Design by Contract, Model-based Diagnosis and Constraint Programming. Contracts are specified by using assertions. These assertions together with an abstraction of the source code are transformed into constraints. The methodology detects if the contracts are consistent, and if there are incompatibilities between contracts and source code. The process is automatic and is based on constraint programming.", acknowledgement = ack-nhfb, articleno = "11", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Junior:2006:CCC, author = "Francisco Heron de Carvalho Junior and Rafael Dueire Lins", title = "A categorical characterization for the compositional features of the \# component model", journal = j-SIGSOFT, volume = "31", number = "2", pages = "12:1--12:??", month = mar, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1108768.1123071", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:15 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The \# programming model attempts to address the needs of the high performance computing community for new paradigms that reconcile efficiency, portability, abstraction and generality issues on parallel programming for high-end distributed architectures. This paper provides a semantics for the compositional features of \# programs, based on category theory.", acknowledgement = ack-nhfb, articleno = "12", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Ereno:2006:SPL, author = "Montse Ere{\~n}o and Uxue Landa and Dra. Rebeca Cortazar", title = "Software product lines structuring based upon market demands", journal = j-SIGSOFT, volume = "31", number = "2", pages = "13:1--13:??", month = mar, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1108768.1123072", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:15 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Nowadays the increasing demand for customized products and services in traditional areas such as Automation Manufacturing or Aeronautical Component Engineering is being satisfied with a new approach called ``Product Platform''. This successful approach is also being considered in the design of software-based components in these areas, which are recognized as complex and critical. In this paper, we present the research that is being carried out at Mondragon University. This effort focuses on the analysis of existing Product Platform Development methods and the transference of this know-how to Software Product Development. As a result, a Software Product Line (SPL) development method will be defined and applied in a real case. This method will be based upon market demands, so it should be flexible enough to respond to customer's requests and market pressure. In this paper we will explain in detail one step of the process. This step is concerned with how QFD technique can be used to the specification of components in a SPL.", acknowledgement = ack-nhfb, articleno = "13", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Guerrouat:2006:CBS, author = "Abdelaziz Guerrouat and Harald Richter", title = "A component-based specification approach for embedded systems using {FDTs}", journal = j-SIGSOFT, volume = "31", number = "2", pages = "14:1--14:??", month = mar, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1108768.1123073", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:15 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper presents a framework for specification and testing of component-based embedded systems using formal description techniques (FDTs). We deal with embedded systems from the point of view of communication and thus we propose a communication model for them. We further explain the meaning of component-based embedded systems and how these can be specified using FDTs. FDTs such as Estelle and SDL are based on EFSMs (Extended finite State Machines) and have been widely used in the automation of the development process of protocols and communicating systems, i.e. for specification, analysis and validation purposes. The main goal of this work is to demonstrate the reusability of FDTs for component-based systems.", acknowledgement = ack-nhfb, articleno = "14", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Chekin:2006:TIS, author = "Konstantin Chekin", title = "Theory of infinite streams and objects", journal = j-SIGSOFT, volume = "31", number = "2", pages = "15:1--15:??", month = mar, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1108768.1123074", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:15 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper provides a theory of infinite streams and objects, which contains our point of view on the problem of formal modelling of behaviors of objects and their systems with big or infinite number of internal states.", acknowledgement = ack-nhfb, articleno = "15", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Doernhoefer:2006:SNSb, author = "Mark Doernhoefer", title = "Surfing the net for {{\booktitle{Software Engineering Notes}}}", journal = j-SIGSOFT, volume = "31", number = "2", pages = "17--25", month = mar, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1118537.1118553", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:15 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "I've titled this article ``Requirements Management'', but I actually want to discuss several topics related to the collection, modeling, management, implementation, testing, and tracing of requirements in a software system. That's quite a list of topics associated with software requirements, but the requirement set is typically the starting point for building any software-based system. Sure, if you're prototyping or a hobbyist just messing around, you may be able to dive in and just start coding. But a professional software engineer, building a product for a customer, will use some form of requirements specification to describe what is to be built and to set the customer expectations on what the finished product will do.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Feng:2006:RBM, author = "Yu Feng", title = "Review of {{\booktitle{The Build Master: Microsoft's Software Configuration Management Best Practices}} by Vincent Maraia, Addison-Wesley, 2005, 0-321-33205-9}", journal = j-SIGSOFT, volume = "31", number = "2", pages = "32--32", month = mar, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1118537.1118556", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:15 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Saur:2006:RST, author = "Joe Saur", title = "Review of {{\booktitle{System Testing with an Attitude: an Approach That Nurtures Front-Loaded (Designed and built in \ldots{} not tested in!) Software Quality}} by Nathan Petschenik, Dorset House Publishing, 2005, ISBN 0-932633-46-3}", journal = j-SIGSOFT, volume = "31", number = "2", pages = "32--33", month = mar, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1118537.1118557", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:15 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Saur:2006:RJE, author = "Joe Saur", title = "Review of {{\booktitle{Just Enough Requirements Management: Where Software Development Meets Marketing}} by Alan M. Davis, Dorset House Publishing, 2005, ISBN 0-932633-64-1}", journal = j-SIGSOFT, volume = "31", number = "2", pages = "33--33", month = mar, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1118537.1118558", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:15 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Schaefer:2006:RHB, author = "Robert Schaefer", title = "Review of {{\booktitle{Hiring The Best Knowledge Workers, Techies and Nerds}} by Johanna Rothman, Dorset House, 2004, 0-932633-59-5}", journal = j-SIGSOFT, volume = "31", number = "2", pages = "34--34", month = mar, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1118537.1118559", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:15 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Schaefer:2006:RMW, author = "Robert Schaefer", title = "Review of {{\booktitle{Mobile Wireless Communications}} by Mischa Schwarz, Cambridge University Press, 2005, 0-521-84347-2}", journal = j-SIGSOFT, volume = "31", number = "2", pages = "34--34", month = mar, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1118537.1118560", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:15 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Tracz:2006:RPI, author = "Will Tracz", title = "Review of {{\booktitle{Process Improvement in Practice --- A Handbook for IT Companies}} by Tore Dyb{\"a}, Torgeir Dings{\o}yr, and Nils Brede Moe, Kluwer Academic Publishers, 2004, ISBN 1-4020-7869-2}", journal = j-SIGSOFT, volume = "31", number = "2", pages = "35--35", month = mar, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1118537.1118561", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:15 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Bajaj:2006:SEF, author = "Nonika Bajaj and Alok Tyagi and Rakesh Agarwal", title = "Software estimation: a fuzzy approach", journal = j-SIGSOFT, volume = "31", number = "3", pages = "1--5", month = may, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1127878.1127881", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:17 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Software projects are failing because of the poor project planning and due to this estimation have gained interest in recent times. Estimation process reduces the risk around schedule and cost. Effective software project estimation is one of the most challenging activities in software development that software industries are facing. Proper project planning and control is not possible without a reliable estimate. Top down and bottom up are traditionally the most commonly used techniques to estimate the effort of the software project. Studies suggest that the software companies should use Bottom up approach unless they have a vast experience from the similar projects. The goal of this research work is to extend the existing bottom up approach to achieve greater precision in the estimates. This work proposes the use and concepts of fuzzy set theory to extend the Bottom up approach to Fuzzy bottom up approach. With the productivity rate generated by fuzzy bottom up, derived values such as effort of development can be more precisely determined.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Beaver:2006:EDT, author = "Justin M. Beaver and Guy A. Schiavone", title = "The effects of development team skill on software product quality", journal = j-SIGSOFT, volume = "31", number = "3", pages = "1--5", month = may, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1127878.1127882", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:17 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper provides an analysis of the effect of the skill/experience of the software development team on the quality of the final software product. A method for the assessment of software development team skill and experience is proposed, and was derived from a workforce management tool currently in use by the National Aeronautics and Space Administration. Using data from 26 small-scale software development projects, the team skill measures are correlated to 5 software product quality metrics from the ISO/IEC 9126 Software Engineering Product Quality standard. In the analysis of the results, development team skill is found to be a significant factor in the adequacy of the design and implementation. In addition, the results imply that inexperienced software developers are tasked with responsibilities ill-suited to their skill level, and thus have a significant adverse effect on the quality of the software product.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Bhatt:2006:IFO, author = "Pankaj Bhatt and Williams K. and Gautam Shroff and Arun K. Misra", title = "Influencing factors in outsourced software maintenance", journal = j-SIGSOFT, volume = "31", number = "3", pages = "1--6", month = may, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1127878.1127883", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:17 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Software lifecycle management is a complex phenomenon with each stage posing its unique technical and other challenges. Maintenance and enhancement of software brings in its own share of complexities to this phase. While uncertainties associated with software baseline in themselves pose a huge challenge in planning and estimation of maintenance activities, there are several other factors that contribute to overall success of software maintenance project especially in an outsourcing scenario. This paper brings out the results of an analysis of some such factors, their interrelationship and influence on software maintenance activities and effort.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Ranjan:2006:HMA, author = "Prabhat Ranjan and A. K. Misra", title = "A hybrid model for agent based system requirements analysis", journal = j-SIGSOFT, volume = "31", number = "3", pages = "1--7", month = may, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1127878.1127886", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:17 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Many well known agent-oriented software analysis method have been proposed such as GAIA, ROADMAP, PROMETHUS and TROPOS methodology. Out of the numerous proposed methods, selecting a particular analysis method is again a problem, as every method has its own advantages and disadvantages. There is an ongoing effort to find such a comprehensive agent oriented analysis method, which addresses most of the parameters of software analysis and also satisfies most of the existing methodology properties. In our previous work, we presented a methodology for open and adaptive system to provide a clear separation between requirement gathering and analysis phases. In this paper, we propose a new analysis method based on the methodology proposed by us in our previous work. An agent-based system is a complex software system with functional and non-functional attributes. Non-functional requirements (NFRs) are crucial software requirements that have been specified early in the software development process while eliciting the functional requirements (FRs) in agent oriented software development. Some of the functional and non-functional attributes are of a crosscutting nature i.e. it is difficult to represent clearly how an attribute may effect several other requirements simultaneously. This new analysis methodology splits the analysis phase into the System User centric Analysis and the System centric Analysis phases. This refinement is achieved by identification and separation of all requirements into three types of requirements i.e. Functional, Non-Functional and Crosscutting requirements.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Rotondi:2006:CHA, author = "Guido Rotondi and Gianpiero Guerrera", title = "A consistent history authentication protocol", journal = j-SIGSOFT, volume = "31", number = "3", pages = "1--7", month = may, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1127878.1127887", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:17 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/cryptography2000.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Traditional strong authentication systems rely on a certification chain to delegate the authority of trusting an intermediate end. However, in some practical life scenarios a relayed authentication is not accepted and thus it would be advisable a straight proof of trustiness with a direct interaction with the involved party. Our protocol introduces a registry of certified operations from which it descends the authentication and the consequent proof of identity. Despite the fact that such system requires for registrar initialization, the Consistent History Protocol provides a reasonable degree of reliability in identifying subjects at the steady state. As application, we deployed the protocol in the indirect electronic data collection scenario, where large data flows have to be exchanged and certified among a set of mutually trusted Institutions. The experimental results report the processing overhead introduced by the authentication protocol, which results negligible with respect a classical strong authentication method built around the OpenSSL library.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Yang:2006:MAA, author = "Qun Yang and Xianchun Yang and Manwu Xu", title = "A mobile agent approach to dynamic architecture-based software adaptation", journal = j-SIGSOFT, volume = "31", number = "3", pages = "1--7", month = may, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1127878.1127889", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:17 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Increasingly, software are required to be ready to adapt itself to the changing environment caused by a wide range of maintenance, evolution and operation problems. Furthermore, in large complex distributed systems and continuous running systems, the traditional approaches to bringing about change require that the system be taken offline temporarily, which is often undesirable due to requirements for high availability. To address this new kind of capability, dynamic software adaptation, which refers to software changes in both structure and behavior without bring it down, is proposed. In this paper, we explore an architecture-based mobile agent approach to dynamic software adaptation. Our goal is to automate the software adaptation on the fly on the basis of explicating and reasoning about architectural knowledge about the running system. For that, we introduce the dynamic software architecture, which means the architecture itself can also be introspected and altered at runtime, to guide and control the adaptation. We use the architectural reflection to observe and control the system architecture, while use the architectural style to ensure the consistency and correctness of the architecture reconfiguration. To handle the adaptation of the running system, mobile agents, which is well suited for complex management issues, is employed. Mobile agents carry self-contained mobile code and act upon running components. The usage of meta-architecture and the mobile agents not only forms an adaptation feedback loop onto the running system, it also separates the concerns among the architectural model, the target system and the facilities use for adaptation. It will simplify the developing, deploying and maintaining of the system, while pose a good basis for enabling the reuse of the adaptation facilities.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Oquendo:2006:MMD, author = "Flavio Oquendo", title = "{$ \pi $-Method}: a model-driven formal method for architecture-centric software engineering", journal = j-SIGSOFT, volume = "31", number = "3", pages = "1--13", month = may, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1127878.1127885", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:17 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Software systems have become increasingly complex and are often used in highly dynamic, distributed and mobile environments. Formal development of such software systems in order to guarantee their completeness and correctness is a large research challenge. This article presents the {\pi}-Method, a novel formal method that has been designed in the ArchWare European Project to address model-driven development of safe software systems. It is a well-founded theoretically method relying on formal foundations: its formal language for architecture description is based on the {\pi}-calculus, for architecture analysis on the {\mu}-calculus, and for architecture transformation and refinement on the rewriting logic. The {\pi}-Method, like formal methods such as B, FOCUS, VDM, and Z, aims to provide full support for formal development of software systems. However, unlike these methods that do not provide any architectural support, the {\pi}-Method has been built from scratch to formally support architecture-centric component-based model-driven development. Furthermore, a major impetus behind defining formal languages and method is that their formality renders them suitable to be manipulated by software tools. Indeed, a comprehensive toolset supporting formal model-driven engineering has been developed.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Wang:2006:SDG, author = "Zhong-Jie Wang and De-Chen Zhan and Xiao-Fei Xu", title = "{STCIM}: a dynamic granularity oriented and stability based component identification method", journal = j-SIGSOFT, volume = "31", number = "3", pages = "1--14", month = may, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1127878.1127888", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:17 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Among recent developments in the field of software reuse has been the increasing reuse of coarse-grained components, and it has been proved that granularity has great impact on component's reuse performance. However, previous studies have ignored rigorous and effective methods to support coarse-grained component identification and design, particularly granularity optimization design. In this paper, a stability-based component identification method, STCIM, is presented to resolve this problem. First a feature-oriented component model and the corresponding component granularity metrics are briefly presented. By establishing mappings between business model space and component space, component design process may be regarded as the process of decomposition, abstraction and composition of business model elements, with four different mapping strategies discussed to obtain dynamic component granularities. Furthermore, it is thought that component granularity is closely correlative to the stability of business models: the more stable the business model, the larger the corresponding component granularity may be. A metrics for model stability with three factors, i.e., number of isomers, stability entropy and isomer similarity, is presented, and the corresponding component identification algorithm based on Most Stable Set is discussed in details. Finally a practical case is described to validate the method in this paper.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Amorim:2006:MLS, author = "Leonardo Amorim and Paulo Maciel and Meuse Nogueira and Raimundo Barreto and Eduardo Tavares", title = "Mapping live sequence chart to coloured {Petri} nets for analysis and verification of embedded systems", journal = j-SIGSOFT, volume = "31", number = "3", pages = "1--25", month = may, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1127878.1127880", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:17 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper presents a methodology for mapping the Live Sequence Chart (LSC) language to an equivalent Coloured Petri Net (CPN) model as an approach for analysis and verification of embedded systems' properties. LSC is a language for system specification, allowing one to specify what should happen for all execution of the system as well as the modeling of anti-scenarios. However, analysis and verification of systems' properties are not possible. In order to allow diagnosis of inconsistent specifications, besides simulation, verification and analysis should be considered. Therefore the proposition of a CPN model for LSC allows verification and analysis of systems described in LSC, hence, contributing for increasing designers' confidence on the system development process and reducing risks that may lead to project failure.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Leavens:2006:PDJ, author = "Gary T. Leavens and Albert L. Baker and Clyde Ruby", title = "Preliminary design of {JML}: a behavioral interface specification language for {Java}", journal = j-SIGSOFT, volume = "31", number = "3", pages = "1--38", month = may, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1127878.1127884", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:17 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "JML is a behavioral interface specification language tailored to Java(TM). Besides pre- and postconditions, it also allows assertions to be intermixed with Java code; these aid verification and debugging. JML is designed to be used by working software engineers; to do this it follows Eiffel in using Java expressions in assertions. JML combines this idea from Eiffel with the model-based approach to specifications, typified by VDM and Larch, which results in greater expressiveness. Other expressiveness advantages over Eiffel include quantifiers, specification-only variables, and frame conditions. This paper discusses the goals of JML, the overall approach, and describes the basic features of the language through examples. It is intended for readers who have some familiarity with both Java and behavioral specification using pre- and postconditions.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Henderson:2006:SEEb, author = "Peter B. Henderson", title = "Software engineering education {(SEEd)}", journal = j-SIGSOFT, volume = "31", number = "3", pages = "5--5", month = may, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1127878.1127891", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:17 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "You may have noticed that recent SEEd columns have included insights from a number of guest contributors. I hope you find these different perspectives interesting and useful. For this column I am honored to have Dennis Frailey as guest contributor. As many of you know, Dennis is a Principal Fellow at Raytheon, a software practitioner, an adjunct professor of computer science and engineering, and an ABET evaluator.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Frailey:2006:WMR, author = "Dennis J. Frailey", title = "What math is relevant for a {CS} or {SE} student?: an employer's perspective", journal = j-SIGSOFT, volume = "31", number = "3", pages = "6--7", month = may, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1127878.1127892", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:17 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "In the Fall of 2005, Kenneth A. Williams began a discussion on the SIGCSE email list on the topic of what math is relevant for a student in the computing sciences. He began by questioning the value of differential equations, stating that he was ``\ldots{} unable to find a homework assignment or exam question in any Computer Science course that requires differential equations for its solution.'' [1] I was one of several respondents to that email. This article is a somewhat expanded version of my remarks on that topic.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Wing:2006:HN, author = "Michael Wing", title = "Be here now", journal = j-SIGSOFT, volume = "31", number = "3", pages = "7--7", month = may, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1127878.1127894", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:17 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Be here now. Improve this moment by responding to the people and the situation around you, deliberately, not randomly. Of course, one must plan, too, but don't get carried away.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Doernhoefer:2006:SNSc, author = "Mark Doernhoefer", title = "Surfing the net for {{\booktitle{Software Engineering Notes}}}", journal = j-SIGSOFT, volume = "31", number = "3", pages = "8--16", month = may, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1127878.1127896", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:17 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The World Wide Web is a wonderful place for research, but finding relevant information can sometimes be a problem. Most of the major search engines are great at finding key words or performing Boolean searches on key words, but there's no way to add meaning to the searches. For example, every month I pick a software engineering topic and search the web, looking for web sites containing research and reference material pertaining to the selected topic. Traditional Google searches yield tons of results, but very few of these hits actually wind up as featured sites in the column. When I run a search, instead of the reference and educational information I'm looking for, I get all sites relating to the selected topic, including advertising, jokes, blogs, eBay auctions and other content unsuitable for my purposes. I have no way of telling the search engines to show me all white papers or journal articles relating to ``topic X''.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Neumann:2006:RPc, author = "Peter G. Neumann", title = "Risks to the public", journal = j-SIGSOFT, volume = "31", number = "3", pages = "17--24", month = may, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1127878.1127898", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:17 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Clarke:2006:HPR, author = "Lori A. Clarke and David S. Rosenblum", title = "A historical perspective on runtime assertion checking in software development", journal = j-SIGSOFT, volume = "31", number = "3", pages = "25--37", month = may, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1127878.1127900", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:17 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This report presents initial results in the area of software testing and analysis produced as part of the Software Engineering Impact Project. The report describes the historical development of runtime assertion checking, including a description of the origins of and significant features associated with assertion checking mechanisms, and initial findings about current industrial use. A future report will provide a more comprehensive assessment of development practice, for which we invite readers of this report to contribute information.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Bernstein:2006:RPS, author = "Larry Bernstein", title = "Review of {{\booktitle{Practical Support for CMMI-SW Software Project Documentation Using IEEE Software Engineering Standards}} by Susan K. Lan and John W. Walz, IEEE Computer Society Wiley Interscience, 2006, ISBN: 0-471-73849-2}", journal = j-SIGSOFT, volume = "31", number = "3", pages = "41--41", month = may, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1127878.1127902", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:17 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Bernstein:2006:RMC, author = "Larry Bernstein", title = "Review of {{\booktitle{Mobile Computing Principles}} by Reza B'Far, Cambridge University Press, 2005, ISBN: 0-521-81733-1}", journal = j-SIGSOFT, volume = "31", number = "3", pages = "41--42", month = may, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1127878.1127903", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:17 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Petro:2006:RMJ, author = "Andrew Petro", title = "Review of {{\booktitle{More Java Gems}} by Dwight Deugo, Cambridge University Press, 2000, ISBN: 0-521-77477-2}", journal = j-SIGSOFT, volume = "31", number = "3", pages = "42--42", month = may, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1127878.1127904", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:17 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Elssamadisy:2006:RHJ, author = "Amr Elssamadisy", title = "Review of {{\booktitle{Hibernate: a J2EE Developer's Guide by Will Iverson}}, Pearson Education Inc., 2005, ISBN: 0-471-20282-7}", journal = j-SIGSOFT, volume = "31", number = "3", pages = "42--43", month = may, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1127878.1127905", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:17 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Elssamadisy:2006:RFD, author = "Amr Elssamadisy", title = "Review of {{\booktitle{Fit for Developing Software: Framework for Integrated Tests}} by Rick Mugridge and Ward Cunningham, Pearson Education Inc., 2005, ISBN: 0-321-26934-9}", journal = j-SIGSOFT, volume = "31", number = "3", pages = "43--44", month = may, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1127878.1127906", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:17 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Glass:2006:RCP, author = "Robert L. Glass", title = "Review of {{\booktitle{COBOL Programmers Swing With Java}} by E. Reed Doke, Bill C. Hardgrave and Richard A. Johnson, Cambridge University Press, 2005}", journal = j-SIGSOFT, volume = "31", number = "3", pages = "44--45", month = may, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1127878.1127907", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:17 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Ali:2006:IES, author = "Muhammad Raza Ali", title = "Imparting effective software engineering education", journal = j-SIGSOFT, volume = "31", number = "4", pages = "1--3", month = jul, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1142958.1142960", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:19 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Software plays a critical role in industry, academia and everyday life. Owing to the fact that practices in other fields such as science, engineering and business have changed over the years. Nature of real world problems is rapidly changing. As a result Software engineering has emerged as perhaps the most dynamic discipline of engineering, software engineers of the twenty-first century face new challenges and their roles are being constantly redefined. In order to better equip software engineers for these roles, software engineering education has to be constantly reviewed and innovations must be introduced. This paper suggests some measures (utilizing some recent innovations) that can help improve software engineering education Better preparing software engineering students for professional careers. Target audiences for this paper are mainly those software engineering educators who are willing to improve education at their universities/colleges.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Garzia:2006:HSS, author = "Mario Garzia and John Hudepohl and Will Snipes and Michael Lyu and John Musa and Carol Smidts and Laurie Williams", title = "How should software reliability engineering {(SRE)} be taught?", journal = j-SIGSOFT, volume = "31", number = "4", pages = "1--5", month = jul, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1142958.1142961", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:19 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This article on teaching software reliability engineering (SRE) represents a consensus of views of experienced software reliability engineering leaders from diverse backgrounds but with ties to education: directors of software reliability and software reliability training in industry, a consultant who teaches SRE practice to industry, and university professors. The first topic covered is how to attract participants to SRE courses. We then analyze the job-related educational needs of current and future (those now university students) software practitioners, SRE practitioners, researchers, and nonsoftware professionals. Special needs relating to backgrounds, limited proficiency in the course language, and work conflicts are outlined. We discuss how the needs presented should influence course content and structure, teaching methods, and teaching materials. Finally, we cover our experiences with distance learning and its special needs. Some of this article applies to any course and is not SRE-specific.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Kushwaha:2006:CWB, author = "Dharmender Singh Kushwaha and R. K. Singh and A. K. Misra", title = "Cognitive web based software development process: towards a more reliable approach", journal = j-SIGSOFT, volume = "31", number = "4", pages = "1--6", month = jul, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1142958.1142963", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:19 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Web engineering is a mix of scientific, engineering, management and cognitive principles that are used to create web based software applications. In order to successfully build large and complex web based applications, web developers and practitioners should adopt a disciplined development process in order to achieve the desired goals. It is by far more complex than the conventional software development process, where we have a fair idea about the users. Hence we cannot proceed by the conventional methods and processes for successful web based software development. The complexity of Web based-software applications is by far very different from traditional procedural or object-oriented paradigms. The failure rate of web based applications is particularly higher. To increase the success rates, we should acknowledge that it is a mix of engineering, management and cognitive principles involving a high user-centric bias. There are numerous factors that contribute to the complexity of web based applications. Unfortunately, the complexity issues have not been even paid due attention although numerous authors have pointed towards high failure rates of web based software applications. The existing models have not been able to reduce the failure rate of web based software applications. This paper makes an attempt to propose the major factors responsible for failure of web based applications. We emphasize on user-centric and a more holistic approach of requirement engineering to help increase the success rate and reliability of web based software applications. Finally the complexity issues of web application and importance of operation research is highlighted.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Schaefer:2006:CPS, author = "Robert Schaefer", title = "A critical programmer searches for professionalism", journal = j-SIGSOFT, volume = "31", number = "4", pages = "1--17", month = jul, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1142958.1142962", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:19 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The phrase ``critical programmer'' in this article's title is meant to be thought of as the programmer who carefully, respectfully, questions conventional wisdom. The particular conventional wisdom under consideration here (held mainly by those who do not write programs, as part of a team, for pay) to be critically thought about is the accountability of the software programmer, whether the programmer should alone be held strictly accountable for software faults, that if the programmer were provided a more rigorous education, if the programmer were to conduct him or herself in a more professional manner and held to a greater professional standard, that fewer software faults would result. The critical question is, is the premise valid? Should the programmer be the one solely held accountable for software faults? Would greater education and professionalism solve all software faults or only some, and if only some, then which ones? The critical analysis that follows investigates these as well as other radical questions, (radical as in ``root'', not as in ``revolutionary''), such as: What is accountability? What is trust? What is professionalism? Where do software faults come from, and What can be done?", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Darroch:2006:AFP, author = "Fiona Darroch and Mark Toleman", title = "{ACM Fellow} profile: {Bob Glass}", journal = j-SIGSOFT, volume = "31", number = "4", pages = "2--6", month = jul, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1142958.1150033", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:19 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Henderson:2006:SEEc, author = "Peter B. Henderson", title = "Software engineering education {(SEEd)}", journal = j-SIGSOFT, volume = "31", number = "4", pages = "8--8", month = jul, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1142958.1142965", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:19 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "I hope you took some time to read Dennis Frailey contribution ``What Math is Relevant for a CS or SE Student? --- An Employer's Perspective'' in the previous SEEd column as it provided many useful insights for both software educators and practitioners. In this column Tim Lethbridge provides his reflections on this years Conference on Software Engineering and Training, CSEE\&T 2006. Before reading Tim's contribution, there are two brief points I would to highlight.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Lethbridge:2006:RC, author = "Timothy C. Lethbridge", title = "Reflections on {CSEE\&T} 2006", journal = j-SIGSOFT, volume = "31", number = "4", pages = "8--9", month = jul, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1142958.1142966", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:19 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The 19th Conference on Software Engineering Education and Training (CSEE\&T) was held at the Turtle Bay Resort, on the north shore of Oahu, Hawaii, April 19-21, 2006.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Wing:2006:GP, author = "Michael Wing", title = "Growing up is painful", journal = j-SIGSOFT, volume = "31", number = "4", pages = "9--9", month = jul, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1142958.1142968", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:19 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Anyone who's raised teenagers knows it. Anyone who remembers his or her own teens does, too. Years of dealing with peer pressure. Trying to fit in with the crowd, or rejecting them utterly and going one's own way. Getting kicked around by the older crowd. Deciding whether to grow up to be like one's friends, one's parents, or one's heroes.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Raccoon:2006:LPS, author = "L. B. S. Raccoon", title = "A leadership primer for software engineers", journal = j-SIGSOFT, volume = "31", number = "4", pages = "10--15", month = jul, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1142958.1142970", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:19 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The principles of leadership resemble the life lessons we (are supposed to) learn as children: introduce yourself first, accentuate the positive, and set an example for others. Everyone knows most of them, already. The hard part of leading (the secret of leading) is that you have to do it, and do it consistently. This essay is intended for career software engineers who want to help their friends and colleagues in the SE community to succeed, whether helping their teams to complete projects or helping the SE profession to thrive.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Doernhoefer:2006:J, author = "Mark Doernhoefer", title = "{JavaScript}", journal = j-SIGSOFT, volume = "31", number = "4", pages = "16--24", month = jul, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1142958.1142972", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:19 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "A whole article on JavaScript? You bet. JavaScript has always been the glue that holds your HTML pages together and now, in conjunction with XML, JavaScript is enjoying a new wave of popularity. So I thought I'd dedicate this month's column to a short exploration of JavaScript and highlight some sites that will not only help you write JavaScript, but also explore some of the things you can do with JavaScript.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Neumann:2006:RPd, author = "Peter G. Neumann", title = "Risks to the public", journal = j-SIGSOFT, volume = "31", number = "4", pages = "25--37", month = jul, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1142958.1142974", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:19 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Edited by Peter G. Neumann (Risks Forum Moderator and Chairman of the ACM Committee on Computers and Public Policy), plus personal contributions by others, as indicated. Opinions expressed are individual rather than organizational, and all of the usual disclaimers apply. We address problems relating to software, hardware, people, and other circumstances relating to computer systems. To economize on space, we include pointers to items in the online Risks Forum: (R i j) denotes RISKS vol i number j. Cited RISKS items generally identify contributors and sources, together with URLs. Official RISKS archives are available at www.risks.org (which redirects to Newcastle and gets you nice html formatting and a search engine courtesy of Lindsay Marshall; http://catless.ncl.ac.uk/Risks/i.j.html gets you (R i j)) and at ftp://www.sri.com/risks.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Breu:2006:REB, author = "Silvia Breu", title = "Review of {{\booktitle{Eclipse --- Building Commercial-Quality Plug-Ins}} by Eric Clayberg and Dan Rubel, Addison-Wesley, 2004, 0-321-22847-2}", journal = j-SIGSOFT, volume = "31", number = "4", pages = "39--39", month = jul, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1142958.1142976", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:19 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Law:2006:RMI, author = "James Law", title = "Review of {{\booktitle{Migrating to IPv6}} by Marc Blanchet, John Wiley and Sons, Ltd., 2006, 0-471-49892-0}", journal = j-SIGSOFT, volume = "31", number = "4", pages = "39--40", month = jul, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1142958.1142977", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:19 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Tracz:2006:RWW, author = "Will Tracz", title = "Review of {{\booktitle{Weinberg on Writing: The Fieldstone Method}} by Gerald M. Weinberg, Dorsett House, 2006}", journal = j-SIGSOFT, volume = "31", number = "4", pages = "40--40", month = jul, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1142958.1142978", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:19 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{deBoer:2006:AKD, author = "Remco C. de Boer", title = "Architectural knowledge discovery: why and how?", journal = j-SIGSOFT, volume = "31", number = "5", pages = "1:1--1:??", month = sep, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1163514.1178641", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:20 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The need for a method for architectural knowledge discovery stems from the difficulty to find relevant architectural knowledge in the documentation that accompanies a software product. This difficulty arises in particular when the document set is very large, and has been expressed by auditors as a need for a ``reading guide'' during a case study we conducted at a company that performs software product audits. Based on the needs of these auditors, we identify the main characteristics an architectural knowledge discovery method should exhibit. This paper argues that Latent Semantic Analysis (LSA) is a promising technique for architectural knowledge discovery.", acknowledgement = ack-nhfb, articleno = "1", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Dahiya:2006:AAO, author = "Deepak Dahiya and Rajinder K. Sachdeva", title = "Approaches to aspect oriented design: a study", journal = j-SIGSOFT, volume = "31", number = "5", pages = "1--4", month = sep, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1163514.1163531", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:20 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "There is a need to study various approaches in the use of object-oriented design patterns and aspect oriented design approach in enterprise systems for architecture and its implementation. The development of aspect oriented requirements gathering approach, design notation and environment for development of enterprise systems needs to be further refined in the context of software applications and industry. Current development in aspects and the path to future work in this direction is highlighted regarding developing a general-purpose design language for aspect oriented software development.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Rekoske:2006:PEV, author = "Jeffrey Rekoske and Hamid Ghasemiyeh and Ahmed Salem", title = "A practical extension to the {VORD} model", journal = j-SIGSOFT, volume = "31", number = "5", pages = "1--5", month = sep, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1163514.1163532", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:20 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper describes an extension to the VORD model and attempts to resolve its lack of direct support for viewpoint interaction. Supporting the viewpoint interaction provides a useful tool for analyzing requirements changes and automating systems. It can also be used to indicate when multiple requirements are specified as a single requirement. The extension is demonstrated with the bank auto-teller system that was part of the original VORD proposal.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Singh:2006:EBE, author = "R. K. Singh and Pravin Chandra and Yogesh Singh", title = "An evaluation of {Boolean} expression testing techniques", journal = j-SIGSOFT, volume = "31", number = "5", pages = "1--6", month = sep, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1163514.1163534", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:20 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Increase in the size and complexity of the software developed has made software testing a challenging exercise. A number of testing techniques are available but they differ in terms of statement coverage, condition coverage and particularly in fault detection capabilities. The size of the test suite also differs from one technique to other. Fault that has propagated into the system inadvertently, especially into the branch statements, have severe effects as they affect the logic of the program. In this paper, an experimental evaluation of the popular branch-testing techniques (Elmendorf's method, Boolean Operator (BOR), Modified Condition/Decision Coverage (MCDC), and Reinforced Criteria/Decision Coverage (RCDC)) is presented. These techniques are evaluated on the basis of types of faults they identify, size of the test suite and their effectiveness in fault detection. For experiments, various branch statements used and referred in literature are selected. Test cases and mutants were prepared for these branch statements. Mutants were prepared by seeding single operator and operand faults into the statements. The results indicate that for a subset of fault types BOR is effective. A variant of MCDC and RCDC demonstrate better performance on the full class of faults and are only slightly worse than Elmendorf's (CEG) method test suite.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Kushwaha:2006:ICI, author = "Dharmender Singh Kushwaha and A. K. Misra", title = "Improved cognitive information complexity measure: a metric that establishes program comprehension effort", journal = j-SIGSOFT, volume = "31", number = "5", pages = "1--7", month = sep, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1163514.1163533", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:20 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Understanding the software system is known as program comprehension and is a cognitive process. This cognitive process is the driving force behind creation of software that is easier to understand i.e. has lower cognitive complexity, because essentially it is the natural intelligence of human brain that describes the comprehensibility of software. The research area carrying out this study is cognitive informatics. This work has developed an improved cognitive information complexity measure (CICM) that is based on the amount of information contained in the software and encompasses all the major parameters that have a bearing on the difficulty of comprehension or cognitive complexity of software. It is also able to establish the relationship between cognitive complexity of a program and time taken to understand the program, thus mapping closely to the comprehension strategy of a person.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Counsell:2006:OOC, author = "Steve Counsell and Stephen Swift and Allan Tucker and Emilia Mendes", title = "Object-oriented cohesion subjectivity amongst experienced and novice developers: an empirical study", journal = j-SIGSOFT, volume = "31", number = "5", pages = "1--10", month = sep, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1163514.1163530", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:20 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The concept of software cohesion in both the procedural and object-oriented paradigm is well known and documented. What is not so well known or documented is the perception of what empirically constitutes a cohesive 'unit' by software engineers. In this paper, we describe an empirical investigation using object-oriented (OO) classes as a basis. Twenty-four subjects (drawn from IT experienced and novice groups) were asked to rate ten classes sampled from two industrial systems in terms of their overall cohesiveness; a class environment was used to carry out the study. Three hypotheses were investigated as part of the study, relating to class size, the role of comment lines and the differences between the two groups in terms of how they rated cohesion. Several key results were observed. Firstly, class size (when expressed in terms of number of methods) only influenced the perception of cohesion by novice subjects. Secondly, well-commented classes were rated more highly amongst IT experienced than novice subjects. Thirdly, results suggest strongly that cohesion comprises a combination of various class factors including low coupling, small numbers of attributes and well-commented methods, rather than any single, individual class feature per se. Finally, if the research supports the view that cohesion is a subjective concept reflecting a cognitive combination of class features then cohesion is also a surrogate for class comprehension.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Falessi:2006:DDR, author = "Davide Falessi and Martin Becker and Giovanni Cantone", title = "Design decision rationale: experiences and steps ahead towards systematic use", journal = j-SIGSOFT, volume = "31", number = "5", pages = "2:1--2:??", month = sep, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1163514.1178642", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:20 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Design decisions crucially influence the success of every software project. While the resulting design is typically documented quite well, the situation is usually different for the underlying rationale and decision-making process. Despite being recognized as a helpful approach in general, the explicit documentation of Design Decision Rationale (DDR) is not yet largely utilized due to some inhibitors (e.g., additional documentation effort). Experience with other qualities, e.g. software reusability, evidently shows that an improvement of these qualities only pays off on a large scale and therefore has to be pursued in a strategic, pre-planned, and carefully focused way. In this paper we argue that this also has to be considered for documenting DDR. To this end the paper presents: (i) the Decision, Goal, and Alternatives (DGA) DDR framework, (ii) experience in dealing with DGA, (iii) motivators and inhibitors of using DDR, and (iv) an approach for systematic DDR use that follows value-based software engineering principles.", acknowledgement = ack-nhfb, articleno = "2", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Farenhorst:2006:TKS, author = "Rik Farenhorst", title = "Tailoring knowledge sharing to the architecting process", journal = j-SIGSOFT, volume = "31", number = "5", pages = "3:1--3:??", month = sep, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1163514.1178643", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:20 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Sharing knowledge pertaining to software architectures becomes increasingly important. If this knowledge is not explicitly stored or communicated, valuable knowledge dissipates. However, knowledge sharing is challenged by the fact that stakeholders are often located at large distances from each other, now that offshoring and virtual organizations become the trend. We conjecture that successful architectural knowledge sharing is only possible when the sharing mechanisms are tailored to the architecting process. We base this claim on observations made during a case study in a large software organization, and some important lessons learned from these observations.", acknowledgement = ack-nhfb, articleno = "3", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Capilla:2006:WBT, author = "Rafael Capilla and Francisco Nava and Sandra P{\'e}rez and Juan C. Due{\~n}as", title = "A web-based tool for managing architectural design decisions", journal = j-SIGSOFT, volume = "31", number = "5", pages = "4:1--4:??", month = sep, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1163514.1178644", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:20 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Software architectures represent the design for describing the main parts of a software system. In software projects, different stakeholders with different roles may need to share the documentation generated during the project. Also, during the architecture construction phase we need to communicate the architecture to the stakeholders involved in the process, but the lack of tools for documenting, managing and sharing this architectural knowledge constitutes a big barrier. In other cases it can be useful to recreate the design decisions taken because such decisions are frequently lost during the development process. To cover these issues, we outline in this paper a web-based tool able to record and manage architecture design decisions.", acknowledgement = ack-nhfb, articleno = "4", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Wing:2006:RC, author = "Michael Wing", title = "Roller coaster", journal = j-SIGSOFT, volume = "31", number = "5", pages = "4--4", month = sep, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1163514.1163516", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:20 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Sometimes, debugging reminds me of a sine wave, you know, the 5 stages of grief, followed by the 5 stages of the fix. Today is a 7-out-of-10-green-lights-on-the-way-to-work kind of day. I'm feeling fine, not great, not bad, just cruising along, when my project manager hands me a bug report.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Berzal:2006:CPL, author = "Fernando Berzal", title = "A crossword on programming languages", journal = j-SIGSOFT, volume = "31", number = "5", pages = "5--5", month = sep, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1163514.1163518", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:20 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Sinnema:2006:UVM, author = "Marco Sinnema and Jan Salvador van der Ven and Sybren Deelstra", title = "Using variability modeling principles to capture architectural knowledge", journal = j-SIGSOFT, volume = "31", number = "5", pages = "5:1--5:??", month = sep, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1163514.1178645", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:20 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "In the field of software architectures, there is an emerging awareness of the importance of architectural decisions. In this view, the architecting process is explained as a decision process, while the design and eventually the software system are seen as the result of this decision process. However, the effects of different alternatives on the quality of the system often remain implicit. In the field of software product families, the same issues arise when configuring products. We propose to use the proven expertise from COVAMOF, a framework for managing variability, to solve the issues that arise when relating quality attributes to architectural decisions.", acknowledgement = ack-nhfb, articleno = "5", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Garcia:2006:DMA, author = "Alessandro Garcia and Thais Batista and Awais Rashid and Claudio Sant'Anna", title = "Driving and managing architectural decisions with aspects", journal = j-SIGSOFT, volume = "31", number = "5", pages = "6:1--6:??", month = sep, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1163514.1178646", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:20 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Software architects face decisions every day which have a broadly-scoped impact on the software architecture. These decisions are the core of the architecting process as they typically have implications in a multitude of architectural elements and views. Without an explicit representation and management of those crucial choices, architects cannot properly communicate and reason about them and their crosscutting effects. The result is a number of architectural breakdowns, such as decreased evolvability, time-consuming trade-off analysis, and unmanageable traceability. Aspects are a natural way to capture widely-scoped architectural decisions and promote software architectures with superior modularity.", acknowledgement = ack-nhfb, articleno = "6", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Doernhoefer:2006:SNSd, author = "Mark Doernhoefer", title = "Surfing the net for {{\booktitle{Software Engineering Notes}}}", journal = j-SIGSOFT, volume = "31", number = "5", pages = "6--15", month = sep, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1163514.1163520", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:20 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "I mention many different free open source software (FOSS) products in this column in conjunction with the topics I select each month. This month, instead of focusing on a single topic, I thought I'd present a collection of some of the most popular free and open source software products currently in production in order to give you an impression on the size and scope of FOSS packages available.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Neumann:2006:RPe, author = "Peter G. Neumann", title = "Risks to the public", journal = j-SIGSOFT, volume = "31", number = "5", pages = "16--21", month = sep, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1163514.1163522", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:20 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Edited by Peter G. Neumann (Risks Forum Moderator and Chairman of the ACM Committee on Computers and Public Policy), plus personal contributions by others, as indicated. Opinions expresses are individual rather than organizational, and all of the usual disclaimers apply. We address problems relating to software, hardware, people, and other circumstances relating to computer systems. To economize on space, we include pointers to items in the online Risks Forum: (R i j) denotes RISKS vol i number j. Cited RISKS items generally identify contributors and sources, together with URLs. Official RISKS archives are available at www.risks.org (which redirects to Newcastle and gets you nice html formatting and a search engine courtesy of Lindsay Marshall); http://catless.ncl.ac.uk/Risks/i.j.html gets you (R i j) and at ftp://www.sri.com/risks.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Rappl:2006:IIW, author = "Martin Rappl and Alexander Pretschner and Christian Salzmann and Thomas Stauner", title = "{3rd Intl. ICSE Workshop on Software Engineering for Automotive Systems}", journal = j-SIGSOFT, volume = "31", number = "5", pages = "22--23", month = sep, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1163514.1163524", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:20 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This workshop summary outlines the main results of the one-day International Workshop on Software Engineering for Automotive Systems [5], held in conjunction with the 28th International Conference on Software Engineering (ICSE'06). In the sequel, a brief overview of the presented papers is given and the most interesting discussions are highlighted.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Garcia:2006:SEL, author = "Alessandro Garcia and Holger Giese and Alexander Romanovsky and Ricardo Choren and Ho-fung Leung and Carlos Lucena and Florian Klein and Eric Platon", title = "{Software engineering for large-scale multi-agent systems --- SELMAS 2006}: workshop report", journal = j-SIGSOFT, volume = "31", number = "5", pages = "24--32", month = sep, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1163514.1163525", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:20 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper is intended to sum up the results of the 5th International Workshop on Software Engineering for Large-Scale Multi-Agent Systems (SELMAS 2006) held in Shanghai, China, May 22-23, 2006, as part of the 28th International Conference on Software Engineering (ICSE 2006). The main purpose of this workshop was to share and pool together the collective experience of people, both academics and practitioners, who are actively working on software engineering for large-scale multi-agent systems. A selected set of expanded workshop papers and invited papers will appear in the 5th edition of the book Software Engineering for Multi-Agent Systems (LNCS, Springer, 2007). The theme of this workshop edition was ``Building Dependable Multi-Agent Systems''. The workshop consisted of an opening presentation, several paper presentations organized into four technical sessions, two keynotes and two discussion groups. During the workshop we informally reviewed ongoing and previous work and debated a number of important issues. The SELMAS 2006 Web site can be found at www.teccomm.les.inf.puc-rio.br/selmas2006. We begin by presenting an overview of our goals and the workshop structure, and then focus on the workshop technical program and results.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Lago:2006:FWS, author = "Patricia Lago and Paris Avgeriou", title = "{First Workshop on Sharing and Reusing Architectural Knowledge}", journal = j-SIGSOFT, volume = "31", number = "5", pages = "32--36", month = sep, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1163514.1163526", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:20 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The first SHARK (SHAring and Reusing architectural Knowledge) workshop, attempted to explore the state of the art as well as the state of the practice in this emerging field. This workshop report presents the themes of the workshop, it summarizes the results of the discussions held about various topics, and suggests some research topics that are worthwhile to pursue in the future.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{DiNitto:2006:RIW, author = "Elisabetta {Di Nitto} and Robert J. Hall and Jun Han and Yanbo Han and Andrea Polini and Kurt Sandkuhl and Andrea Zisman", title = "Report on the {International Workshop on Service Oriented Software Engineering (IW-SOSE06)}", journal = j-SIGSOFT, volume = "31", number = "5", pages = "36--38", month = sep, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1163514.1163527", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:20 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper presents a report of the International Workshop on Service Oriented Software Engineering colocated with ICSE2006. In particular, we shortly present the papers that have been accepted for publication in the workshop proceedings, the keynote speech, and the discussion topics that have emerged during the workshop.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Whittle:2006:IWS, author = "Jon Whittle and Leif Geiger and Michael Meisinger", title = "{5th Intl. Workshop on Scenarios and State Machines: Models --- Algorithms --- and Tools (SCESM)}", journal = j-SIGSOFT, volume = "31", number = "5", pages = "39--40", month = sep, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1163514.1163528", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:20 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "SCESM'06 was the 5th International Workshop on Scenarios and State Machines: Models, Algorithms and Tools. It was a one day ICSE'06 workshop taking place on May 27, 2006. Details about SCESM'06 may be found at http://ise.gmu.edu/scesm06/.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{staff:2006:FTM, author = "{ACM SIGSOFT Software Engineering Notes Staff}", title = "Frontmatter ({TOC}, Miscellaneous material)", journal = j-SIGSOFT, volume = "31", number = "6", pages = "0--0", month = nov, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1218776.1218777", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:21 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Anbalagan:2006:CAJ, author = "Prasanth Anbalagan and Tao Xie", title = "{Clamp}: automated joinpoint clustering and pointcut mining in aspect-oriented refactoring", journal = j-SIGSOFT, volume = "31", number = "6", pages = "1--2", month = nov, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1218776.1218795", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:21 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Software refactoring consists of a set of techniques to reorganize code while preserving the external behavior. Aspect-Oriented Programming (AOP) provides new modularization of software systems by encapsulating crosscutting concerns. Based on these two techniques, Aspect-Oriented (AO) refactoring restructures crosscutting elements in code. AO refactoring includes two steps: aspect mining (identification of aspect candidates in code) and aspect refactoring (semantic-preserving transformation to migrate the aspect-candidate code to AO code). Aspect refactoring clusters the join points for the aspect candidates and encapsulates each cluster with an effective pointcut definition. With the increase in size of the code and crosscutting concerns, it is tedious to manually identify aspects and their corresponding join points, cluster the join points, and infer a pointcut expression. This paper proposes an automated framework that clusters join point candidates and infers a pointcut expression for each cluster.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Arnautovic:2006:AGT, author = "Edin Arnautovic and Hermann Kaindl and J{\"u}rgen Falb", title = "An architecture for gradual transition towards self-managed software systems", journal = j-SIGSOFT, volume = "31", number = "6", pages = "1--2", month = nov, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1218776.1218792", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:21 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "While management of today's software systems is usually performed by humans using some user interface (UI), autonomic systems would be self-managed. Our research addresses the research problem of gradual transition towards self-managed software systems and proposes and investigates a particular architecture for its solution. In particular, we propose unified communication between a system to be managed and its (human or autonomic) manager. Such communication is specified using our high-level discourse metamodel based on insights from theories of human communication. This should make such communication easier to design and understand by humans.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Dig:2006:RAS, author = "Danny Dig and Kashif Manzoor and Tien N. Nguyen and Ralph Johnson", title = "Refactoring-aware software merging and configuration management", journal = j-SIGSOFT, volume = "31", number = "6", pages = "1--2", month = nov, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1218776.1218797", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:21 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Refactoring tools allow programmers to change their source code quicker than before. However, the complexity of these changes cause versioning tools that operate at a file level to lose the history of entities and be unable to merge refactored entities. This problem can be solved by semantic, operation-based SCM with persistent IDs. MolhadoRef, our proto-type, can successfully merge edit and refactoring operations which were performed on different development branches, preserves program history better and makes it easier to understand program evolution.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Dyer:2006:NPD, author = "Robert Dyer and Harish Narayanappa and Hridesh Rajan", title = "{Nu}: preserving design modularity in object code", journal = j-SIGSOFT, volume = "31", number = "6", pages = "1--2", month = nov, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1218776.1218802", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:21 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib; http://www.math.utah.edu/pub/tex/bib/virtual-machines.bib", abstract = "For a number of reasons, such as to generate object code that is compliant with the existing virtual machines (VM), current compilers for aspect-oriented languages sacrifice design modularity when transforming source to object code by losing textual locality and intermingling concerns in the object code. Sacrificing design modularity has significant costs, especially in terms of the speed of incremental compilation. We present an intermediate language design that preserves aspect-oriented design modularity in Java byte code. We briefly describe our extensions to the Sun Hotspot VM to support the new intermediate language design.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Hanna:2006:SEB, author = "Youssef Hanna and Hridesh Rajan", title = "{SLEDE}: event-based specification of sensor network security protocols", journal = j-SIGSOFT, volume = "31", number = "6", pages = "1--2", month = nov, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1218776.1218801", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:21 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The semantic gap between specification and implementation languages for sensor networks security protocols impedes the specification and verification of the protocols. In this work, we present SLEDE, an event-based specification language and its verifying compiler that address this semantic gap. We demonstrate the features of SLEDE through an example specification of the {\mu}Tesla, secure broadcast protocol for sensor networks.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Kiniry:2006:FTR, author = "Joseph R. Kiniry and Alan E. Morkan and Dermot Cochran and Martijn Oostdijk and Engelbert Hubbers", title = "Formal techniques in a remote voting system", journal = j-SIGSOFT, volume = "31", number = "6", pages = "1--2", month = nov, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1218776.1218793", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:21 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Kiezen op Afstand (KOA) is a Free Software, remote voting system developed for the Dutch government in 2003/2004. In addition to being Open Source, key components have been, or are currently being formally specified and verified. These include a tally system and a modeling of the Irish electoral system. In this paper, we describe the formal techniques incorporated during the development of components of the KOA system. It also includes continuing work including the development of a platform for trustworthy voting from a mobile phone.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Kotb:2006:ISD, author = "Yasser Kotb and Takuya Katayama", title = "Improving software documentation using textual entailment", journal = j-SIGSOFT, volume = "31", number = "6", pages = "1--2", month = nov, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1218776.1218796", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:21 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Formal online errors/bugs documentation of real-time software is a difficult and error prone task. Conceptual and tool support for this activity plays a central role in the agenda of building large complex software products, especially if this software targets market abroad that requires a continuous massive inflow of data customers' needs and a regarding product requirements. Unfortunately, the manual linkage that is routinely performed today is cumbersome, time-consuming, and error-prone. This paper presents a framework to explore the redundancy of error reports in online documentation. The framework employs a recent natural language processing technique called Textual Entailment.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Larson:2006:SID, author = "Eric Larson", title = "{SUDS}: an infrastructure for dynamic software bug detection using static analysis", journal = j-SIGSOFT, volume = "31", number = "6", pages = "1--2", month = nov, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1218776.1218790", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:21 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "SUDS is a powerful infrastructure for creating dynamic bug detection tools. Its instrumentation engine is designed in a manner that allows users to create their own correctness models quickly but is flexible to support construction of a wide range of different tools. Several static analysis phases improve the number of bugs found, the quality of the defects detected, and the run-time performance. The effectiveness of SUDS is demonstrated by showing that is capable of finding high-quality bugs with reasonable performance.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Memmert:2006:OGC, author = "Juri Memmert and Hridesh Rajan", title = "{Osiris}: generating concern models from source code", journal = j-SIGSOFT, volume = "31", number = "6", pages = "1--2", month = nov, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1218776.1218800", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:21 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Comprehending software is hard. There's an inversely proportional relationship between a software system's complexity and size on the one hand and the usability of existing approaches for program comprehension on the other. Ironically, the need for these approaches increases directly proportional with the size of the system. In this work, we describe our approach and tool Osiris for automatic generation of concern models from source code. Our approach helps in program comprehension by identifying coherent sets of methods, grouping them into concerns and propagating these concerns along the concern graph of the application.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Rajan:2006:ARB, author = "Ajitha Rajan", title = "Automated requirements-based test case generation", journal = j-SIGSOFT, volume = "31", number = "6", pages = "1--2", month = nov, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1218776.1218799", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:21 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Black-box testing is a technique in which test cases are derived from requirements without regard to the internal structure of the implementation. In current practice, the black-box test cases are derived manually from requirements. Manually deriving test cases from requirements is a costly and time consuming process. In this paper, we present the notion of autogenerating black-box test cases from requirements, that can result in dramatic time and cost savings. To accomplish this, we use requirements formalized as temporal logic properties. We define coverage metrics directly on the structure of the formalized requirements, and use an automated test case generation tool, like the model checker, to generate test cases from formal requirements that satisfy the desired criteria. To evaluate the effectiveness of black-box test suites generated in this manner, we measure the implementation coverage achieved by the test suites, and their fault-finding effectiveness. In [11], we conducted a preliminary investigation using a close to production model of a Flight Guidance System developed at Rockwell Collins Inc. We autogenerated requirements-based test suites for three different requirements coverage criteria and evaluated them by measuring the implementation coverage achieved.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Sabetzadeh:2006:RDA, author = "Mehrdad Sabetzadeh and Shiva Nejati and Steve Easterbrook and Marsha Chechik", title = "A relationship-driven approach to view merging", journal = j-SIGSOFT, volume = "31", number = "6", pages = "1--2", month = nov, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1218776.1218794", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:21 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "A key problem in view-based software development is merging a set of disparate views into a single seamless view. To merge a set of views, we need to know how they are related. In this extended abstract, we discuss the methodological aspects of describing the relationships between views. We argue that view relationships should be treated as first-class artifacts in the merge problem and propose a general approach to view merging based on this argument. We illustrate the usefulness of our approach by instantiating it to the state-machine modelling domain and developing a flexible tool for merging state-machines.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Schroter:2006:WDB, author = "Adrian Schr{\"o}ter and Thomas Zimmermann and Rahul Premraj and Andreas Zeller", title = "Where do bugs come from?", journal = j-SIGSOFT, volume = "31", number = "6", pages = "1--2", month = nov, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1218776.1218791", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:21 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "``Where do bugs in programs come from?'' --- this is one of the pivotal research questions in software engineering. To answer it, one can find out which parts of a program are more defect-prone than others, and then investigate which properties correlate with defect density. In other words, once we can measure the effect, we can search for its causes. Bug databases of open-source projects are a good place to begin search because they record all the problems that occurred during the projects's lifetime. However, the location of the fix (and thus the defect) is hidden in version archives and has to be extracted separately [5]. As a result one obtains a mapping from defects to code locations.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Uzuncaova:2006:PSD, author = "Engin Uzuncaova and Sarfraz Khurshid", title = "Program slicing for declarative models", journal = j-SIGSOFT, volume = "31", number = "6", pages = "1--2", month = nov, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1218776.1218798", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:21 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The declarative modeling language Alloy and its automatic analyzer provide an effective tool-set for building designs of systems and checking their properties. The Alloy Analyzer performs bounded exhaustive analysis using off-the-shelf SAT solvers. The analyzer's performance hinges on the complexity of the models and so far, its feasibility has been shown only within small bounds. With the growing popularity of analyzable declarative modeling languages, in general, and Alloy, in particular, it is imperative to develop new techniques that allow the underlying solvers to scale to real systems. We present Kato, a novel technique that defines program slicing for declarative models and enables efficient analyses using existing analyzers, such as the Alloy Analyzer. Given a declarative model, Kato identifies a slice, which represents the model's core: a satisfying solution to the slice can be systematically extended to generate a solution for the entire model, while unsatisfiability of the core implies unsatisfiability of the entire model. The experimental results show that it is possible to achieve a significant improvement in the solving time.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Misra:2006:MTV, author = "Sanjay Misra and Hurevren Kilic", title = "Measurement theory and validation criteria for software complexity measures", journal = j-SIGSOFT, volume = "31", number = "6", pages = "1--3", month = nov, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1218776.1218782", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:21 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The relation between measurement theory and evaluating criteria for software complexity measure is well established by several researchers. A new software complexity measure should also be satisfied by measurement theory criteria. However, most of the developers of new complexity measures do not care about measurement theory. In this paper, we evaluate measurement theory and point out why measurement theory is not well applicable for evaluating complexity measure.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Diev:2006:UCM, author = "Sergey Diev", title = "Use cases modeling and software estimation: applying use case points", journal = j-SIGSOFT, volume = "31", number = "6", pages = "1--4", month = nov, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1218776.1218780", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:21 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This article discusses software size/effort estimation by the Use Case Points method (UCP). It is based on the experience accumulated during deployment of the UCP in a software development department of a major financial institution. Typical for such an environment is that software is developed on top of existing applications, and that there are significant differences between projects in business domains, scope, size, complexity, project management details, etc. In a previous article [3] an extension of the Use Case Points method, called UCPm, was described that addresses these issues. Due to their level, use cases make high-level estimation easier. However, this article, presenting a number of real world situations, demonstrates that to obtain reasonably accurate estimates we need to reflect in use case models some aspects of the existing application and of the current project. It also suggests some clarifications of the concept of use case transaction and outlines some ways to support use case models consistency within and across projects.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Ranjan:2006:ABS, author = "Prabhat Ranjan and A. K. Misra", title = "Agent based system development: a domain-specific goal approach", journal = j-SIGSOFT, volume = "31", number = "6", pages = "1--6", month = nov, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1218776.1218783", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:21 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "It is unlikely that a single analysis model will be able to analyze the requirements for the complete system. For capturing and analyzing the overall requirement separate models and analyst experts are needed. It is necessary to model at different level of abstraction so that both domain experts and developers can get an idea of the overall system behavior or focus on a particular part of the system in detail if required. This paper proposes a methodology, which is an improved process for requirements gathering and analysis. The proposed methodology is based on model-based techniques to provide a specific model for the type of requirements to be gathered. This methodology also provides domain-based technique, for providing a domain specific goal model for domain experts. The domain specific technique also provides multiple level of analysis and refinement process of goal in all domains by specific domain experts.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Cohen:2006:TAC, author = "Myra B. Cohen and Joshua Snyder and Gregg Rothermel", title = "Testing across configurations: implications for combinatorial testing", journal = j-SIGSOFT, volume = "31", number = "6", pages = "1--9", month = nov, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1218776.1218785", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:21 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "User configurable software systems allow users to customize functionality at run time. In essence, each such system consists of a family of potentially thousands or millions of program instantiations. Testing methods cannot test all of these configurations, therefore some sampling mechanism must be applied. A common approach to providing such a mechanism has been to use combinatorial interaction testing. To date, however, little work has been done to quantify the effects of different configurations on a test suites' operation and effectiveness. In this paper we present a case study that investigates the effects of changing configurations on two types of test suites. Our results show that test coverage and fault detection effectiveness do not vary much across configurations for entire test suites; however, for individual test cases and certain types of faults, configurations matter.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{deFigueiredo:2006:GIT, author = "Andr{\'e} L. L. de Figueiredo and Wilkerson L. Andrade and Patr{\'\i}cia D. L. Machado", title = "Generating interaction test cases for mobile phone systems from use case specifications", journal = j-SIGSOFT, volume = "31", number = "6", pages = "1--10", month = nov, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1218776.1218788", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:21 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The mobile phone market has become even more competitive, demanding high quality standards. In this context, applications are built as sets of functionalities, called features. Such features are combined in use scenarios of the application. Due to the fact that the features are usually developed in isolation, the tests of their interactions in such scenarios are compromised. In this paper, we present a proposal of specifying feature interaction requirements with use cases; generating a behavioral model from such specification; and a strategy for generating test cases from the behavioral model that aims to extract feature interaction scenarios in such a way that interactions can be tested.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Fraser:2006:PRS, author = "Gordon Fraser and Franz Wotawa", title = "Property relevant software testing with model-checkers", journal = j-SIGSOFT, volume = "31", number = "6", pages = "1--10", month = nov, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1218776.1218787", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:21 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Verification is applied to software as a proof method with respect to its requirements. Software testing is necessary due to the fact that verification is often infeasible. Automation is desirable since the complexity and the effort involved are significant. However, automated software testing is commonly used to ensure confidence in the conformance of an implementation to an abstract model, not to its requirement properties. In this paper, we introduce the notion of property relevance of test-cases. Property relevant test-cases can be used to determine property violations. It is shown how to detect the properties relevant to a test-case. New coverage criteria based on property relevance are introduced. Automated generation of test-suites satisfying these criteria is also presented. Finally, feasibility is illustrated with an empirical evaluation.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Robinson-Mallett:2006:ACC, author = "Christopher Robinson-Mallett and Robert M. Hierons and Peter Liggesmeyer", title = "Achieving communication coverage in testing", journal = j-SIGSOFT, volume = "31", number = "6", pages = "1--10", month = nov, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1218776.1218786", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:21 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper considers the problem of testing the communication between components of a timed distributed software system. We assume that communication is specified using timed interface automata and use computational tree logic (CTL) to define coverage criteria that refer to send- and receive-statements and communication paths. Given such a state-based specification of a distributed system and a concrete coverage goal, a model checker is used in order to determine the coverage provided by a finite set of test-cases, expressed using sequence diagrams. If parts of the specification remain uncovered then a goal is derived so that the model checker can be used to generate test cases that increase the coverage provided by the test suite. A major benefit of the presented approach is the generation of a potentially minimal set of test cases with the confidence that every interaction between components is executed during testing. A potential additional benefit of this approach is that it provides a visual description of the state based testing of distributed systems, which may be beneficial in other contexts such as education and program comprehension. The complexity of our approach strongly depends on the input model, the testing goal, and the model checking algorithm, which is implemented in the used tool. While a particular model checker, UPPAAL, was used, it should be relatively straightforward to adapt the approach for use with other CTL based model checkers.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Brooks:2006:SPI, author = "Andy Brooks", title = "Software process improvement uncut: interviews", journal = j-SIGSOFT, volume = "31", number = "6", pages = "1--11", month = nov, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1218776.1218779", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:21 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Publication in software engineering usually means materials are highly sanitized and readers, whether they be students, educators, or professional engineers, are not exposed often to the full underlying detail. To address this lack of exposure, an interview guide and the interview results on a software process improvement (SPI) project are presented uncut.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Becker:2006:TSS, author = "Steffen Becker and Wilhelm Hasselbring and Alexandra Paul and Marko Boskovic and Heiko Koziolek and Jan Ploski and Abhishek Dhama and Henrik Lipskoch and Matthias Rohr and Daniel Winteler and Simon Giesecke and Roland Meyer and Mani Swaminathan and Jens Happe and Margarete Muhle and Timo Warns", title = "Trustworthy software systems: a discussion of basic concepts and terminology", journal = j-SIGSOFT, volume = "31", number = "6", pages = "1--18", month = nov, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1218776.1218781", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:21 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Basic concepts and terminology for trustworthy software systems are discussed. Our discussion of definitions for terms in the domain of trustworthy software systems is based on former achievements in dependable, trustworthy and survivable systems. We base our discussion on the established literature and on approved standards. These concepts are discussed in the context of our graduate school TrustSoft on trustworthy software systems. In TrustSoft, we consider trustworthiness of software systems as determined by correctness, safety, quality of service (performance, reliability, availability), security, and privacy. Particular means to achieve trustworthiness of component-based software systems --- as investigated in TrustSoft --- are formal verification, quality prediction and certification; complemented by fault diagnosis and fault tolerance for increased robustness.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Henderson:2006:SEEd, author = "Peter B. Henderson", title = "Software Engineering Education {(SEEd)}", journal = j-SIGSOFT, volume = "31", number = "6", pages = "9--9", month = nov, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1218776.1218804", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:21 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Do you read Money Magazine? If so, did you see the Money Magazine article on the Best Jobs in America? If not, did you see any news from about this article? If you are a software engineer, then can you guess what the Number 1 ranked job is? If you knew/guessed Software Engineering, then you are right. Check out http://money.cnn.com/magazines/moneymag/bestjobs/ if you don't believe it. It is very important to note that they didn't say computer science, information technology or computer programming, it was software engineering. Does this mean that our discipline is getting more noticed? More respect? Let's hope so. Also, let's hope that Money Magazine really knows what software engineering is, and what a software engineer does. You can determine that by reading the articles details of a career in software engineering yourself. Here are a few details from the article to help motivate you.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Wing:2006:BAN, author = "Michael Wing", title = "{Burt} add numbers: a tale of software", journal = j-SIGSOFT, volume = "31", number = "6", pages = "10--10", month = nov, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1218776.1218805", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:21 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "One day, an agent from the government asked Burt, a software engineer of great renown, who lives near the realm of possibility, to write a program to add up the numbers from 1 to 10. Apparently, the government adds numbers quite often, and when the government wants to automate their processes they consult with the best and the brightest. On the grounds that there is nothing quite so banal as the answer to a question, Burt turned down the commission, which would have rewarded him with one hour of time on the government's biggest iron: a super duper computer. Besides, other commissions kept him busy.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Doernhoefer:2006:SNSe, author = "Mark Doernhoefer", title = "Surfing the net for {{\booktitle{Software Engineering Notes}}}", journal = j-SIGSOFT, volume = "31", number = "6", pages = "11--20", month = nov, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1218776.1218807", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:21 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "I talk about software security on a regular basis in this column. Past articles have featured web sites addressing security design tips and techniques, security reporting sites, and other security resources available on the Internet. I'd like to stop talking about security but the subject seems to keep coming up in the press. Recent news reports on lost laptops compromising personal data, security of voting machines, new zero day exploits, and new rootkits would indicate that we are still not where we need to be in the field of software security.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Neumann:2006:RPf, author = "Peter G. Neumann", title = "Risks to the public", journal = j-SIGSOFT, volume = "31", number = "6", pages = "21--37", month = nov, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1218776.1218809", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:21 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Edited by Peter G. Neumann (Risks Forum Moderator and Chairman of the ACM Committee on Computers and Public Policy), plus personal contributions by others, as indicated. Opinions expressed are individual rather than organizational, and all of the usual disclaimers apply. We address problems relating to software, hardware, people, and other circumstances relating to computer systems. To economize on space, we include pointers to items in the online Risks Forum: (R i j) denotes RISKS vol i number j. Cited RISKS items generally identify contributors and sources, together with URLs. Official RISKS archives are available at www.risks.org (which redirects to Newcastle and gets you nice html formatting and a search engine courtesy of Lindsay Marshall; http://catless.ncl.ac.uk/Risks/i.j.html gets you (R i j)) and at ftp://www.sri.com/risks.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Kramer:2006:RAS, author = "Jeff Kramer and Orit Hazzan", title = "The Role of Abstraction in Software Engineering", journal = j-SIGSOFT, volume = "31", number = "6", pages = "38--39", month = nov, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1218776.1226833", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:21 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Saur:2006:RIC, author = "Joe Saur", title = "Review of {{\booktitle{IEEE Computer Society Real-World Software Engineering Problems: a Self-Study Guide for Today's Software Professional}} by J. Fernando Naveda and Stephen B. Seidman, Prentice Hall, 2006, ISBN 0-471-71051-2}", journal = j-SIGSOFT, volume = "31", number = "6", pages = "58--58", month = nov, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1218776.1218811", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:21 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Schaefer:2006:RDT, author = "Robert Schaefer", title = "Review of {{\booktitle{Design For Trustworthy Software}} by Bijay K. Jayaswal and Peter C. Patton, Prentice Hall, 2007, ISBN 0-13-187250-8}", journal = j-SIGSOFT, volume = "31", number = "6", pages = "58--59", month = nov, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1218776.1218812", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:21 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", note = "See response \cite{Jayaswall:2006:RAD}.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Jayaswall:2006:RAD, author = "Bijay Jayaswall", title = "Response from authors of {``Design For Trustworthy Software''}", journal = j-SIGSOFT, volume = "31", number = "6", pages = "59--59", month = nov, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1218776.1218813", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:21 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", note = "See \cite{Schaefer:2006:RDT}.", abstract = "It is true that quality processes have not served software development well, and that is why we wrote the book, to correct the past abuses that seem to pain the reviewer. But quality is no longer the third rail of software design and development; one can now touch it and draw power from it without limiting one's career. It is also true that we are now working as consultants, but we have together spent some 80 years as university teachers of software and/or hardware development or quality process management.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Schaefer:2006:RCD, author = "Robert Schaefer", title = "Review of {{\booktitle{Catastrophe Disentanglement}} by E. M. Bennatan, Addison Wesley, 2006, ISBN 0-321-33662-0}", journal = j-SIGSOFT, volume = "31", number = "6", pages = "59--60", month = nov, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1218776.1218814", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:21 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Weber-Wulff:2006:RFG, author = "Debora Weber-Wulff", title = "Review of {{\booktitle{Fascicle 4: Generating All Trees --- History of Combinatorial Generation}} by Donald E. Knuth, Addison-Wesley, 2006, ISBN 0-321-33570-8}", journal = j-SIGSOFT, volume = "31", number = "6", pages = "60--60", month = nov, year = "2006", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1218776.1218815", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:21 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Anonymous:2007:FTL, author = "Anonymous", title = "Frontmatter ({TOC}, Letters, Calendar, Calls)", journal = j-SIGSOFT, volume = "32", number = "1", pages = "0--0", month = jan, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1226816.1226817", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:27 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Notkin:2007:FFa, author = "David Notkin", title = "{FAQs} and figures", journal = j-SIGSOFT, volume = "32", number = "1", pages = "3--3", month = jan, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1226816.1226819", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:27 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "ACM Transactions on Software Engineering and Methodology (TOSEM) was founded in 1992 under the guidance of Rick Adrion as the charter Editor-in-Chief (EIC). Thompson ISI's Impact Factor rankings for 2005, the most recently published, ranks TOSEM second out of 79 journals in the software engineering category. The Impact Factor is a ratio of the number of citations in 2005 of a given journal compared to the journal's total articles for 2004 and 2003. In other words, Rick and his successors as EIC --- Axel van Lamsweerde and Carlo Ghezzi --- have taken TOSEM from zero to sixty in just 15 years. They didn't make this remarkable leap alone: they had help from ACM, from the exceptionally diligent editorial assistants, from the dedicated associate editors, and of course from the software engineering research community, in particular the reviewers and, even more, the authors.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Ellis:2007:SEE, author = "Heidi Ellis", title = "Software engineering: effective teaching and learning approaches and practices", journal = j-SIGSOFT, volume = "32", number = "1", pages = "4--4", month = jan, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1226816.1226822", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:27 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "A much-needed book presenting the latest developments in software engineering education will be published in early 2008 by the IDEA Group, Inc. Titled Software Engineering: Effective Teaching and Learning Approaches and Practices, the book is edited by Heidi Ellis (Trinity College), Steven Demurjian (University of Connecticut), and Fernando Naveda (Rochester Institute of Technology). The book will contain contributions from approximately 20 software engineering educators from around the world and encompasses areas including student assessment and learning, innovative teaching methods, project-based software engineering, educational technology, professional practice and ethics, curriculum management and certification and licensing. To give you a taste of what is coming, tentative chapter titles include Software Engineering Apprenticeship by Immersion, Managing the Intellectual Commons Associated with Academic Software Teams, and Professional Software Engineering Credentials: An International Perspective.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Henderson:2007:SEEa, author = "Peter B. Henderson", title = "Software engineering education {(SEEd)}", journal = j-SIGSOFT, volume = "32", number = "1", pages = "4--4", month = jan, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1226816.1226821", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:27 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "In my last column I mentioned the article in Money Magazine regarding the Best Jobs in America. The number one rated job was software engineer (Check out the following URL for more information http://money.cnn.com/magazines/moneymag/bestjobs/). A number of people responded to my column and were skeptical about my optimistic viewpoint. They basically pointed out several things: First, jobs in many hot areas tend to either be cyclic or fade away (recall the line from the Beatles song 19$^{th}$ Nervous Breakdown --- ``your father's still perfecting ways of making sealing wax''). Second, one typically does not pursue a career in engineering just to make money. It is something one must like and enjoy as a career path. Please keep these in mind when advising students, however, I still feel optimistic about careers in software engineering for students who are interested in software development and the management of software projects.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Wing:2007:HL, author = "Michael Wing", title = "Hacking with love", journal = j-SIGSOFT, volume = "32", number = "1", pages = "4--5", month = jan, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1226816.1226823", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:27 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "I like pasta. As a kid, I ate spaghetti a couple times a week, sometimes more often. We made sauce from whatever was at hand, usually canned tomatoes and frozen hamburger, though today I prefer fancier versions like marinara made from fresh ingredients and sausage. I always enjoy sharing dinner with Edo and Patty. Patty is a fabulous cook and Edo, born and raised in Italy, is proud of, dare I say passionate about, his heritage. Edo once explained in great depth over a couple of bottles of Italian wine that what I like isn't Italian food, but an American transmogrification. I had heard comments to that effect before but, until then, I hadn't met anyone who knew enough and cared enough to explain. Then I read Heat, in which Bill Buford writes about making and obsessing over Italian food.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Doernhoefer:2007:SNSa, author = "Mark Doernhoefer", title = "Surfing the net for {{\booktitle{Software Engineering Notes}}}", journal = j-SIGSOFT, volume = "32", number = "1", pages = "6--14", month = jan, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1226816.1226825", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:27 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "In addition to all of the free and open source software (FOSS) and specialized information available on the web, the Internet is also a great place to get specific answers to your specific problems. There are thousands of forums where you can post a question and, hopefully, some kind soul will post a reply. These help forums vary in quality and depth of information, but if you're stuck on a particular problem, it can't hurt to toss your question out to the masses. Even if you don't get the exact answer to your question or some of the replies are dead wrong, you may benefit from the responses in that they may give you a new way of looking at the problem. You just might get that bolt of lightning you need to solve the problem by yourself.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Neumann:2007:RPa, author = "Peter G. Neumann", title = "Risks to the public", journal = j-SIGSOFT, volume = "32", number = "1", pages = "15--20", month = jan, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1226816.1226827", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:27 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Edited by Peter G. Neumann (Risks Forum Moderator and Chairman of the ACM Committee on Computers and Public Policy), plus personal contributions by others, as indicated. Opinions expressed are individual rather than organizational, and all of the usual disclaimers apply. We address problems relating to software, hardware, people, and other circumstances relating to computer systems. To economize on space, we include pointers to items in the online Risks Forum: (R i j) denotes RISKS vol i number j. Cited RISKS items generally identify contributors and sources, together with URLs. Official RISKS archives are available at www.risks.org (which redirects to Newcastle and gets you nice html formatting and a search engine courtesy of Lindsay Marshall; http://catless.ncl.ac.uk/Risks/i.j.html gets you (R i j)) and at ftp://www.sri.com/risks.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Emmerich:2007:IRM, author = "Wolfgang Emmerich and Mikio Aoyama and Joe Sventek", title = "The impact of research on middleware technology", journal = j-SIGSOFT, volume = "32", number = "1", pages = "21--46", month = jan, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1226816.1226829", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:27 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The middleware market represents a sizable segment of the overall Information and Communication Technology market. In 2005, the annual middleware license revenue was reported by Gartner to be in the region of 8.5 billion US Dollars. In this article we address the question whether research had any involvement in the creation of the technology that is being sold in this market? We attempt a scholarly discourse. We present the research method that we have applied to answer this question. We then present a brief introduction into the key middleware concepts that provide the foundation for this market. It would not be feasible to investigate any possible impact that research might have had. Instead we select a few very successful technologies that are representative for the middleware market as a whole and show the existence of impact of research results in the creation of these technologies. We investigate the origins of web services middleware, distributed transaction processing middleware, message oriented middleware, distributed object middleware and remote procedure call systems. For each of these technologies we are able to show ample influence of research and conclude that without the research conducted by PhD students and researchers in university computer science labs at Brown, CMU, Cambridge, Newcastle, MIT, Vrije, and University of Washington as well as research in industrial labs at APM, AT\&T Bell Labs, DEC Systems Research, HP Labs, IBM Research and Xerox PARC we would not have middleware technology in its current form. We summarise the article by distilling lessons that can be learnt from this evidenced impact for future technology transfer undertakings.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Ben-Menachem:2007:RSM, author = "Mordechai Ben-Menachem", title = "Review of {{\booktitle{Software Measurement and Estimation: a Practical Approach}} by Linda M. Laird and M. Carol Brennan, Wiley-Interscience, 2006}", journal = j-SIGSOFT, volume = "32", number = "1", pages = "47--47", month = jan, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1226816.1226831", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:27 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Feng:2007:RCD, author = "Yu Feng", title = "Review of {{\booktitle{The Cognitive Dynamics of Computer Science: Cost-Effective Large Scale Software Development}} by Szabolcs Michael de Gyurky, Wiley-IEEE Computer Society, 2006, 0-471-97047-6}", journal = j-SIGSOFT, volume = "32", number = "1", pages = "47--48", month = jan, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1226816.1226832", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:27 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Neumann:2007:SDR, author = "Peter Neumann", title = "Session details: Risks to the public", journal = j-SIGSOFT, volume = "32", number = "1", pages = "??--??", month = jan, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/3263112", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:27 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Rech:2007:DTS, author = "J{\"o}rg Rech", title = "Discovering trends in software engineering with {Google Trend}", journal = j-SIGSOFT, volume = "32", number = "2", pages = "1--2", month = mar, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1234741.1234765", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:28 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Trends are a valuable tool to shape one's research, decide on acquisitions, inform about technologies or standards used in the development process. Google Trends is a new service by Google for researching the amount of searches and news articles collected by their search engines, which can be used to discover trends in software engineering. In May 2006 Google Trends was opened to the public to support researching trends based on searches to Google Search and news articles collected in Google News. This short paper shows how information from Google Trend can be used to analyze media attention, search interests, and cause-effect relations of one topic or between multiple topics such as technologies, tools, or methodologies.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Rech:2007:PAS, author = "J{\"o}rg Rech", title = "Podcasts about software engineering", journal = j-SIGSOFT, volume = "32", number = "2", pages = "1--2", month = mar, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1234741.1234764", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:28 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Podcasts are a new form of information source that enables every-one to listen to information stored in audio files --- similar to audio books --- on the internet. Podcasts are a valuable tool to spread in-formation in acoustic form especially such as interviews with experts from industry, features about new technologies, or news from conferences. Similar to radio these contributions are stored on the internet and can be downloaded by anyone, anytime, and anywhere. This paper presents several podcasts for software engineering and the technology behind Podcasting.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Diev:2007:RDM, author = "Sergey Diev", title = "Requirements development as a modeling activity", journal = j-SIGSOFT, volume = "32", number = "2", pages = "1--3", month = mar, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1234741.1234756", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:28 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Considering requirements development as a modeling activity, this paper outlines our view of what a requirements model is. It then introduces some techniques useful in requirements development: concept-based requirements and requirements molecules.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Hazzan:2007:WSE, author = "Orit Hazzan and Yael Dubinsky", title = "Why software engineering programs should teach agile software development", journal = j-SIGSOFT, volume = "32", number = "2", pages = "1--3", month = mar, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1234741.1234758", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:28 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "In this paper we propose ten reasons why it is important, suitable and timely to introduce agile software development into software engineering programs in the academia. These reasons address technical, social and cognitive issues.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Misra:2007:MTV, author = "Sanjay Misra and Hurevren Kilic", title = "Measurement theory and validation criteria for software complexity measures", journal = j-SIGSOFT, volume = "32", number = "2", pages = "1--3", month = mar, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1234741.1234760", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:28 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The relation between measurement theory and evaluating criteria for software complexity measure is well established by several researchers. A new software complexity measure should also be satisfied by the measurement theory criteria. However, most of the developers of new complexity measures do not care about measurement theory. In this paper, we evaluate measurement theory and point out why measurement theory is not well applicable for evaluating complexity measure.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Rech:2007:VSS, author = "J{\"o}rg Rech and Waldemar Sch{\"a}fer", title = "Visual support of software engineers during development and maintenance", journal = j-SIGSOFT, volume = "32", number = "2", pages = "1--3", month = mar, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1234741.1234766", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:28 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Software systems have reached a level of complexity that puts them beyond our ability to evolve and maintain them easily. This increases the need for soft-ware organizations to develop new or rework existing systems with high quality. CodeSonar was developed to support software engineers during software development and maintenance activities through the visualization of source code and quality defects using a visual interface in the eclipse IDE. A first qualitative evaluation indicates that it helps the user in navigating in the software system.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Fass:2007:FWU, author = "Leona F. Fass", title = "Fostering web use in some real environments", journal = j-SIGSOFT, volume = "32", number = "2", pages = "1--4", month = mar, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1234741.1234754", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:28 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Web-based systems accessed in real environments are analyzed, identifying technical and non-technical factors critical to good practice and effective use. User-centric and e-enabling approaches to successful deployment are suggested, applying theoretical background and interactions with practitioners to assess feasibility of practice. Specific technical innovations by Web and Semantic Web researchers and practitioners are recommended, as is user education and community support, to foster widespread successful Web and Semantic Web use.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Gill:2007:CTR, author = "Nasib S. Gill and Pradeep Tomar", title = "{CBS} testing requirements and test case process documentation revisited", journal = j-SIGSOFT, volume = "32", number = "2", pages = "1--4", month = mar, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1234741.1234757", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:28 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Component-based software testing is an important capability that supports productivity and quality assurance in component-based software development. The increased size and complexity of software systems has led to the current focus on developing distributed applications that are constructed primarily using components. Thus, the component-based systems require efficient and effective ways to test these systems and need to develop effective techniques for testing various aspects of the components such as reusability, security, dependability and safety. Study on the subject by several researchers indicates that more than fifty percent of the cost of software development is devoted to testing and it results into very high cost for testing complex software. The present paper is aimed at improving component-based system testing while considering two factors: component-based system testing requirement and test case process documentation. Lastly, the paper also discusses the limitations of component-based software testing that hinders component-based development.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Jiufu:2007:ISB, author = "Liu Jiufu", title = "Integration of statechart and B method based analysis and verification for flight control software of unmanned aerial vehicle", journal = j-SIGSOFT, volume = "32", number = "2", pages = "1--4", month = mar, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1234741.1234759", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:28 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "B is a formal method which enables the automatic generation of an executable code through successive refinements from an abstract specification. Unified Modeling Language (UML) specifications can be formally verified by analyzing the corresponding B specification, and integration of UML specifications and B method can overcomes the drawbacks of UML. In this paper Statemate, one tool supporting the virtual prototype technology, is used, and the flight control software behaviors are presented in the form of statecharts The B method is adopted to translate the statecharts into B specification of flight control software.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Romanovsky:2007:LFT, author = "Alexander Romanovsky", title = "A looming fault tolerance software crisis?", journal = j-SIGSOFT, volume = "32", number = "2", pages = "1--4", month = mar, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1234741.1234767", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:28 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Experience suggests that it is edifying to talk about software crises at NATO workshops. It is argued in this position paper that proper engineering of fault tolerance software has not been getting the attention it deserves. The paper outlines the difficulties in building fault tolerant systems and describes the challenges software fault tolerance is facing. The solution being advocated is to place a special emphasis on fault tolerance software engineering which would provide a set of methods, techniques, models and tools that would exactly fit application domains, fault assumptions and system requirements and support disciplined and rigorous fault tolerance throughout all phases of the life cycle. The paper finishes with an outline of some directions of work requiring special focused efforts from the R\&D community.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Diev:2007:SCR, author = "Sergey Diev", title = "Structuring complex requirements", journal = j-SIGSOFT, volume = "32", number = "2", pages = "1--5", month = mar, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1234741.1234755", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:28 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Sets of requirements that analysts are dealing with are often big and complex. That makes requirements structuring one of the most important activities in requirements engineering, because of how requirements are structured and presented directly impacts the requirements development process and the quality of requirements. In this methodological paper we argue that a requirements analyst has to build a requirements architecture that fits the properties of the problem. In particular, the requirements analyst should create a clear vision of the principles governing how requirements are being defined, built and presented. We review some of the instruments that an analyst can use to structure requirements: requirements sets, views, levels and links. Among static views we emphasize concepts view, and also consider functions view, application architecture view, and other views; among dynamic views we consider use cases view, operational scenarios view, events view, and others. We specifically notice the importance of individual requirements sets, the purpose of which is to reveal the requirements for a particular element (concept, function, action, etc.). We argue in favor of differentiating between requirements model and requirements representation. We demonstrate on examples how requirements architecture is needed in complex contexts.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Misra:2007:ECC, author = "Sanjay Misra and A. K. Misra", title = "Evaluation and comparison of cognitive complexity measure", journal = j-SIGSOFT, volume = "32", number = "2", pages = "1--5", month = mar, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1234741.1234761", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:28 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Weyuker properties have been suggested as a guiding tool in identification of a good and comprehensive complexity measure. In this paper, an attempt has been made to compare cognitive complexity measure in terms of nine Weyuker's properties with other complexity measures, such as McCabe's, Halstead's and Oviedo's complexity measures. Our intension is to study what kinds of new information about the measures are able to give.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Podgorelec:2007:ESC, author = "Vili Podgorelec and Marjan Heri{\v{c}}ko", title = "Estimating software complexity from {UML} models", journal = j-SIGSOFT, volume = "32", number = "2", pages = "1--5", month = mar, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1234741.1234763", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:28 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The possibility of predicting complexity of a software system in the design phase would be of an immense benefit for estimating complexity and with it associated effort of the implemented system. In this paper we cogitate on estimating complexity of a software system based on the UML models of the system. We test whether there is a valid relation between the complexities of an implemented software system and its UML model; and how this relation can be appropriately used. The measuring is performed with the fractal complexity measure a, which is based on long-range power law correlations.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Nami:2007:ADE, author = "Mohammad Reza Nami and Mehdi Sagheb Tehrani and Mohsen Sharifi", title = "Applying domain engineering using {RAISE} into a particular banking domain", journal = j-SIGSOFT, volume = "32", number = "2", pages = "1--6", month = mar, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1234741.1234762", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:28 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Recently, several flavors of formal methods have been gaining industrial acceptance and production quality software tools have begun emerging. Domain Engineering (DE) has been introduced as one of outstanding ideas in software development. It serves Formal Methods (FMs) that provide a rigorous, mathematical based framework for specifying, defining, and verifying systems in the software development for critical systems. New software engineering includes three phases consisting of domain engineering, requirement engineering, and design and implementation. The purpose of this paper is to introduce the key concepts of domain engineering with providing overview information about formal methods and applying RAISE as a formal method that has been used successfully on various, diverse applications. Then, a particular banking domain is specified with using them. Formal model presented in this paper is provable to implement this domain. With merginging object oriented technology with domain engineering, this model can be extended for serving in distributed systems. It improves reusability and reliability in such environments.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Rosa:2007:FFM, author = "Nelson Souto Rosa and Paulo Roberto Freire Cunha", title = "A formal framework for middleware behavioural specification", journal = j-SIGSOFT, volume = "32", number = "2", pages = "1--7", month = mar, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1234741.1234768", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:28 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The number of open specifications of middleware systems and middleware services is increasing. Despite their complexity, they are traditionally described through APIs (the operation signatures) and informal prose (the behaviour). This fact often leads to ambiguities, whilst making difficult a better understanding of what is actually described. This paper presents a formal framework, specified in LOTOS (Language Of Temporal Ordering Specification), for the specification of middleware systems. The framework consists of a set of basic/common middleware components and some guidelines on how to compose them. The components of the framework facilitate the formal specification of different middleware systems. In order to illustrate how the framework may be used, it is adopted to specify procedural (synchronous) and message-oriented (asynchronous) middleware systems.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Tavares:2007:SSH, author = "Eduardo Tavares and Raimundo Barreto and Paulo Maciel and Meuse {Oliveira, Jr.} and Leonardo Amorim and Fernando Rocha and Ricardo Lima", title = "Software synthesis for hard real-time embedded systems with multiple processors", journal = j-SIGSOFT, volume = "32", number = "2", pages = "1--10", month = mar, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1234741.1234769", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:28 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Hard real-time embedded systems have stringent timing constraints that must be met in order to ensure the correct functioning of the system. In many cases, these systems are composed of several CPU-bound tasks, which may need to rely on multiple processors, since just a single processor may not allow meeting all timing constraints. In order to deal with stringent constraints, specialized operating system kernels are often adopted in real-time embedded systems. However, the operating system usage may introduce significant overheads in execution time as well as in memory requirement. Software synthesis is an alternative approach to operating systems usage, since it can generate tailored code that satisfy: (i) functional, performance, and resource constraints; and (ii) other features such as scheduling, resource management, communication and synchronization. In this paper, a software synthesis approach based on a formalism, namely, time Petri nets, is presented in order to generate predictable scheduled code for hard real-time embedded systems with multiple processors.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Bastani:2007:RAF, author = "Behzad Bastani", title = "A requirements analysis framework for open systems requirements engineering", journal = j-SIGSOFT, volume = "32", number = "2", pages = "1--19", month = mar, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1234741.1234753", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:28 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Requirements Engineering [26, 27] is an old discipline which has been conveniently subject to being overlooked by system designers. Most requirements analysis writings either advise general guidelines which are short of any concrete operational aspects, or they are not simply at the scale of complex open systems construction. This paper presents a new analytical framework and a method which considers an end-to-end view of a system, and is specifically designed to support the requirements analysis and design of open systems. The paper briefly discusses the conceptual shortcomings in this area, presents an analytical perspective for requirements engineering, and proposes a new framework called ``Abstraction-oriented Frames''. This framework is a hybrid model consisting of three major parts offering a specific operational approach based on a consistent end-to-end analytical view of the system.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Notkin:2007:FFb, author = "David Notkin", title = "{FAQs} and figures", journal = j-SIGSOFT, volume = "32", number = "2", pages = "6--7", month = mar, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1234741.1234743", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:28 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "As I await questions from the community about ACM TOSEM (see my last column), let me bring you up to date on a few things. Any of you that have been authors or reviewers for TOSEM in the past few years have had to tussle with the manuscript processing system that ACM uses --- Manuscript Central. ScholarOne, the company that developed Manuscript Central, was acquired relatively recently by Thompson Scientific. The software is used by several thousand journals worldwide, covering many different scholarly disciplines. Professional societies, government agencies and commercial publishers use Manuscript Central.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Wing:2007:CK, author = "Michael Wing", title = "Cocoa Krispies", journal = j-SIGSOFT, volume = "32", number = "2", pages = "7--7", month = mar, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1234741.1234744", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:28 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Doernhoefer:2007:SNSb, author = "Mark Doernhoefer", title = "Surfing the net for {{\booktitle{Software Engineering Notes}}}: solving the software quality problem", journal = j-SIGSOFT, volume = "32", number = "2", pages = "8--17", month = mar, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1234741.1234745", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:28 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The subtitle to this month's article is just meant to grab your attention. I assure you, this column will not be solving the software quality problem. What I do hope to do is point you at some interesting web sites that discuss potential solutions to the software quality problem and let you solve it on your own.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Neumann:2007:RPb, author = "Peter G. Neumann", title = "Risks to the public", journal = j-SIGSOFT, volume = "32", number = "2", pages = "18--23", month = mar, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1234741.1234746", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:28 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Edited by Peter G. Neumann (Risks Forum Moderator and Chairman of the ACM Committee on Computers and Public Policy), plus personal contributions by others, as indicated. Opinions expressed are individual rather than organizational, and all of the usual disclaimers apply. We address problems relating to software, hardware, people, and other circumstances relating to computer systems. To economize on space, we include pointers to items in the online Risks Forum: (R i j) denotes RISKS vol i number j. Cited RISKS items generally identify contributors and sources, together with URLs. Official RISKS archives are available at www.risks.org (which redirects to Newcastle and gets you nice html formatting and a search engine courtesy of Lindsay Marshall; http://catless.ncl.ac.uk/Risks/i.j.html gets you (R i j)) and at ftp://www.sri.com/risks.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Anonymous:2007:RMT, author = "Anonymous", title = "Review of {{\booktitle{Managing the Testing Process}} by Rex Black, Wiley 2002}", journal = j-SIGSOFT, volume = "32", number = "2", pages = "28--32", month = mar, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1234741.1234748", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:28 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Anonymous:2007:RPS, author = "Anonymous", title = "Review of {{\booktitle{Productive Software Test Management}} by Michael W. Evans, Wiley 1984}", journal = j-SIGSOFT, volume = "32", number = "2", pages = "32--32", month = mar, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1234741.1234749", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:28 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Anonymous:2007:RST, author = "Anonymous", title = "Review of {{\booktitle{Software Testing Management}} by Thomas C. Royer, P-H 1993}", journal = j-SIGSOFT, volume = "32", number = "2", pages = "32--33", month = mar, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1234741.1234750", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:28 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Anonymous:2007:RCB, author = "Anonymous", title = "Review of {{\booktitle{Change-based Test Management}} by Jon Sistowicz and Ray Arell, Intel Press 2001}", journal = j-SIGSOFT, volume = "32", number = "2", pages = "33--34", month = mar, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1234741.1234751", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:28 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Bhansali:2007:MP, author = "P. V. Bhansali", title = "The {MCDC} paradox", journal = j-SIGSOFT, volume = "32", number = "3", pages = "1--4", month = may, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1241572.1241581", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:30 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Modified Condition/Decision Coverage (MCDC) is a structural testing strategy required to verify Level A software used in commercial aviation. In DO-178B, Level A software is defined as software whose anomalous behavior would cause or contribute to a failure of system function resulting in a catastrophic failure condition for the aircraft. Paradoxically, this technique does not detect common errors, yet it consumes a large portion (approximately 25\%) of the verification budget because of the number of test cases required to satisfy this coverage. Furthermore, this approach is directly applicable to only high-level languages, making its applicability of limited value to assembly language programs and machine-level code which could have been generated by auto code tools. A simpler approach is suggested in this paper that would better detect these common errors and would be more cost-effective for all applications.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Misra:2007:VMC, author = "Sanjay Misra", title = "Validating modified cognitive complexity measure", journal = j-SIGSOFT, volume = "32", number = "3", pages = "1--5", month = may, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1241572.1241583", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:30 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "A newly proposed complexity measure is acceptable, only when its usefulness has been proved by a validation process. In our previous work, we proposed Modified Cognitive Complexity Measure (MCCM). In this paper, MCCM has been evaluated and validated through a practical framework and principle of measurement theory. It has been found to satisfy most of the parameters required by the practical framework and measurement theory. Additionally, empirical validation through case study and comparative study proved the robustness of the proposed measure.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Yu:2007:EER, author = "Ping Yu and Xiaoxing Ma and Jian Lu", title = "Expectation, experiment and reflection on {Internet} software evolution", journal = j-SIGSOFT, volume = "32", number = "3", pages = "1--5", month = may, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1241572.1241585", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:30 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Dynamic evolution is a challenging requirement of software application systems running in the open, dynamic and uncertain Internet. In this paper, we investigate expectations of Internet software evolution and propose a dynamic software architecture oriented approach. Notably, architecture information is reified as explicit and manipulable entities to support a runtime architecture meta-model, which is causally connected to the system implementation and specification. Moreover, mobile agent technology is exploited to implement the built-in architecture meta-model, supervising all evolutionary behaviors during runtime. A prototype supporting platform named Artemis-ARC is implemented as an attempt to facilitate the development of dynamically evolvable application systems. Based on existing practice, some reflection on Internet software evolution is also illustrated.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Pedreira:2007:SRS, author = "Oscar Pedreira and Mario Piattini and Miguel R. Luaces and Nieves R. Brisaboa", title = "A systematic review of software process tailoring", journal = j-SIGSOFT, volume = "32", number = "3", pages = "1--6", month = may, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1241572.1241584", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:30 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Although software process proposals appear continuously, it is difficult to fit any of them into a given company as they are. Thus, some kind of adaptation or tailoring is always necessary. The goal of software process tailoring is to adapt an ``off-the-shelf'' software process to meet the needs of a specific organization or project. Although process tailoring is a mandatory activity in most software process proposals, it is usually carried out by following an ad-hoc approach, and the amount of research done on this topic to date can be considered small. This paper presents a systematic review of software process tailoring, analyzing the existing approaches towards this activity, discussing the main issues related to the problem, and providing an up-to-date and complete framework in which to position new research activities.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Krishnan:2007:CTL, author = "R. Krishnan and S. Murali Krishna and P. Siva Nandhan", title = "Combinatorial testing: learnings from our experience", journal = j-SIGSOFT, volume = "32", number = "3", pages = "1--8", month = may, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1241572.1241582", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:30 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Combinatorial testing methods address generation of test cases for problems involving multiple parameters and combinations. The Orthogonal Array Based Testing Strategy (OATS) is one such combinatorial testing method, a systematic, statistical way of testing pair-wise interactions. It provides representative (uniformly distributed) coverage of all variable pair combinations. This makes the technique particularly useful for testing of software, wherever there is combinatorial explosion: a. In system testing for handling feature interactions b. In integration testing components c. It is also quite useful for testing products with a large number of configuration possibilities. One of the fundamental assumptions behind OATS approach is that a subset covering all pair-wise combinations will be more effective than a randomly selected subset. OATS provides a means to select a minimal test set that guarantees testing the pair-wise combinations of all the selected variables. Covering pair-wise combinations has been reported to be very effective in the literature. Successful use of this technique, with 50\% effort saving and improved testing with a factor of 2.6 is reported in the literature. In this paper, we report on the in-house web-based application that we designed and implemented to support customized version of OATS and our experience in piloting and getting this method used in projects. In the in-house tool we have introduced a number of additional features, that help in generation and post processing of test-cases. We have also designed a supporting process for using this method, and we discuss the steps in this process in the paper. We share details on application in feature testing of a mobile phone application. This method has also been successfully used in designing feature interaction test cases and for augmenting the regression suite to increase coverage.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Notkin:2007:ATFa, author = "David Notkin", title = "{ACM TOSEM}: {FAQs} and figures", journal = j-SIGSOFT, volume = "32", number = "3", pages = "6", month = may, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1241572.1241574", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:30 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Henderson:2007:SEEb, author = "Peter B. Henderson", title = "Software engineering education: {(SEEd)}", journal = j-SIGSOFT, volume = "32", number = "3", pages = "6--7", month = may, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1241572.1241575", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:30 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Hazzan:2007:ISI, author = "Orit Hazzan", title = "The influence of software intangibility on computer science and software engineering education", journal = j-SIGSOFT, volume = "32", number = "3", pages = "7--8", month = may, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1241572.1241576", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:30 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "In this short essay I will discuss how the fact that software is an intangible object influences Computer Science (CS) and Software Engineering (SE) education. Based on several observations that result from this analysis (Part A), I will then highlight the importance of teaching soft ideas in the framework of CS and SE education (Part B).", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Wing:2007:ST, author = "Michael Wing", title = "Software traumatica", journal = j-SIGSOFT, volume = "32", number = "3", pages = "8--9", month = may, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1241572.1241577", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:30 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Doernhoefer:2007:SNSc, author = "Mark Doernhoefer", title = "Surfing the net for {{\booktitle{Software Engineering Notes}}}", journal = j-SIGSOFT, volume = "32", number = "3", pages = "10--19", month = may, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1241572.1241578", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:30 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Neumann:2007:RPc, author = "Peter G. Neumann", title = "Risks to the public", journal = j-SIGSOFT, volume = "32", number = "3", pages = "20--24", month = may, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1241572.1241579", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:30 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Arell:2007:WJR, author = "Ray Arell", title = "Wonderful Jupiter?: (A Rebuttal)", journal = j-SIGSOFT, volume = "32", number = "3", pages = "26", month = may, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1241572.1241587", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:30 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Banerjee:2007:OET, author = "Jayasri Banerjee and Anup Kumar Bandyopadhyay and Ajit Kumar Mandal", title = "Ordering of events in two-process concurrent system", journal = j-SIGSOFT, volume = "32", number = "4", pages = "1:1--1:??", month = jul, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1281421.1281423", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:30 MDT 2018", bibsource = "http://www.math.utah.edu/pub/bibnet/authors/d/dijkstra-edsger-w.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Dijkstra's weakest precondition calculus is extended to capture temporal ordering in concurrent systems. This is done by defining temporal ordering predicates that is used to describe necessary conditions. A new logical connective, viz., ``implies in the past'' is also defined to describe the cause and effect relationships. Ordering mechanism used in Peterson's two process mutual exclusion algorithm is explained by proving a theorem.", acknowledgement = ack-nhfb, articleno = "1", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Banerjee:2007:ADW, author = "Jayasri Banerjee and Anup Kumar Bandyopadhyay and Ajit Kumar Mandal", title = "Application of {Dijkstra}'s weakest precondition calculus to {Dining Philosophers} problem", journal = j-SIGSOFT, volume = "32", number = "4", pages = "2:1--2:??", month = jul, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1281421.1281424", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:30 MDT 2018", bibsource = "http://www.math.utah.edu/pub/bibnet/authors/d/dijkstra-edsger-w.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Dijkstra's weakest precondition calculus is used to model the well known Dining Philosophers problem. Process and state definitions are done in such a manner that only the deadlock property of the system is highlighted. Care has been taken to choose the proper details such that it is not too elaborate to obscure the requirements also not be too abstract to mask the actual analytical needs. State transition rules specify the system behavior. Intuitive reasoning as well as formal technique has been applied to get the deadlock condition. Two well known solutions are specified and proved. The proof technique being analytical, its complexity does not depend on the size of the problem. The second solution requires an event ordering and therefore a temporal ordering predicate has been used to prove its correctness.", acknowledgement = ack-nhfb, articleno = "2", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Farooq:2007:RDV, author = "Ayaz Farooq and Reiner R. Dumke", title = "Research directions in verification and validation process improvement", journal = j-SIGSOFT, volume = "32", number = "4", pages = "3:1--3:??", month = jul, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1281421.1281425", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:30 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Software process establishment, evaluation and improvement are key research areas in the software engineering field today. Extensive research has been carried out and many different kinds of approaches exist to improve the software process and even more efforts are underway. Verification and validation process, which is part of the broader software process activities, plays a vital role in quality and profitability of the developed product but is believed to consume major portion of the development expenses and resources. Probably, research towards improving the verification and validation process has not been as actively directed as compared to software process improvement research. This paper identifies several potential future research directions towards improving verification and validation process.", acknowledgement = ack-nhfb, articleno = "3", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Khemakhem:2007:SES, author = "Sofien Khemakhem and Khalil Drira and Mohamed Jmaiel", title = "{SEC+}: an enhanced search engine for component-based software development", journal = j-SIGSOFT, volume = "32", number = "4", pages = "4:1--4:??", month = jul, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1281421.1281426", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:30 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper presents an ontology to describe functional and non-functional properties of software components, associated with a portable implementation for enhanced discovering. Without leaving the development environment, the developer loads SEC+, a persistent component that acts as an intelligent search engine. It generates a query from developer specification. It handles generated queries and automatically locates and presents a list of compliant components that could be used in the current development situation.", acknowledgement = ack-nhfb, articleno = "4", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Krishnan:2007:CQT, author = "R. Krishnan and S. Murali Krishna and Nishil Bharill", title = "Code quality tools: learning from our experience", journal = j-SIGSOFT, volume = "32", number = "4", pages = "5:1--5:??", month = jul, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1281421.1281427", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:30 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "In this paper we share some of our experiences relating to tools used in coding phase. We primarily focus our discussion on two topics, namely UT (Unit Testing) and Memory related errors. Unit Testing (UT) [1] is a critical early-phase verification activity that ensures the quality of the product soon after the code is ready. Newer paradigms of software development like Extreme Programming [7] have a strong focus on UT. However, UT is very effort-intensive as it involves test harness development and repetitive execution. In Motorola software Group, we evaluated a set of commercial tools and selected a tool for use in our projects. In this paper, we will share the evaluation criteria, which was identified for the tool selection and the various technical challenges encountered in adopting a UT tool solution in a heterogeneous environment along with the associated learning. One of the major challenges encountered, was arriving to a consensus on definition of term 'Unit'. The other issues included handling of complex data structures, event driven code, integration with development environment etc. One of the major categories of errors introduced and found in coding phase relates to memory. As these errors may have security implications, leaving them undetected might be a big risk. For trapping memory related errors, a framework to categorize these errors was created along with the associated code samples. In this paper, two types of memory related errors will be discussed, namely memory leak and buffer overflow. This memory related errors can be exploited to compromise the security of the system. This paper also discusses the causes, types and impact of buffer overflows, as well as the precautions to be taken to prevent buffer overflows.", acknowledgement = ack-nhfb, articleno = "5", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Lins:2007:AWS, author = "Fernando Ant{\^o}nio Aires Lins and Jos{\'e} Carlos dos Santos J{\'u}nior and Nelson Souto Rosa", title = "Adaptive web service composition", journal = j-SIGSOFT, volume = "32", number = "4", pages = "6:1--6:??", month = jul, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1281421.1281428", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:30 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Web services have played an important role in the development of distributed systems. In particular, the possibility of composing already implemented web services in order to provide a new functionality is an interesting approach for building distributed applications and business processes. The possibility of dynamically composing web services is also apparent. Current approaches address to this point, but they do not adopt established specifications, like WS-BPEL, as they usually propose modifications in the rules of business process specifications by imposing more difficulties to implement the system. This paper proposes a policy-driven approach for enabling web service adaptability through a semantic modification in the invocation primitive of WS-BPEL, whilst maintaining its syntax unaffected. Hence, programmers may define dynamic web service compositions without changing the source code. The approach has been applied to a loan approval system in order to illustrate it.", acknowledgement = ack-nhfb, articleno = "6", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Riehle:2007:DSC, author = "Richard Riehle", title = "Designing software components to tolerances", journal = j-SIGSOFT, volume = "32", number = "4", pages = "7:1--7:??", month = jul, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1281421.1281429", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:30 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Many traditional engineering designs, other than software, depend on the physical properties of components. Those properties enable the engineer to specify precise tolerances between those components. Software components are abstractions with no inherent physical properties. The absence of physical properties makes it more difficult, but not impossible, to design to tolerances. This paper describes some design metrics for designing software components to tolerances. It uses some already established design metrics, and expands on the role of other software practices already available. This paper also restricts the discussion to software components, rather than to the algorithms contained within those components.", acknowledgement = ack-nhfb, articleno = "7", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Notkin:2007:ATFb, author = "David Notkin", title = "{ACM TOSEM}: {FAQs} and figures", journal = j-SIGSOFT, volume = "32", number = "4", pages = "8--8", month = jul, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1281421.1281435", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:30 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "As the eagle-eyed among you may have noticed, ACM TOSEM has a new editorial charter. Approved by both the TOSEM editorial board and the ACM Publications Board, it is now posted to the TOSEM website.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Schaefer:2007:GTE, author = "Robert Schaefer", title = "The Grand Theory of Everything: what man-made systems are, and why they fail", journal = j-SIGSOFT, volume = "32", number = "4", pages = "8:1--8:??", month = jul, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1281421.1281430", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:30 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The Grand Theory of Everything (tGToE) is a powerful, elegant and unique Model which may be used towards the Understanding and Development of Man-Made Systems. This Model may be used to Identify, Explore, and Predict Faults of Systems-Making, and Faults in Systems and Faults in Systems-Use. Although the tGToE Model provides an Understanding of Systems and Choices, it may not necessarily identify Best Choices or Practical Solutions as that requires Judgment. As all Models are Abstractions, the Possibility of oversimplification that applies to Models applies equally to tGToE. Refinement of this Model has led the Author to several Curious Observations on Paradoxes in Systems and Observations on the Use of Power in Organizations. Depending on the Ethics of the Reader, the application of tGToE may be used to solve Great Problems or to cause Great Mischief and Harm.", acknowledgement = ack-nhfb, articleno = "8", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Senthil:2007:ICM, author = "R. Senthil and D. S. Kushwaha and A. K. Misra", title = "An improved component model for component based software engineering", journal = j-SIGSOFT, volume = "32", number = "4", pages = "9:1--9:??", month = jul, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1281421.1281431", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:30 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper focuses on Component Based Software Engineering (CBSE) and generic connectors for the software components. An attempt has been made to describe n-tier architecture; in particular, data access architecture in a component based application. It attempts to express how data access objects interact with business-tier and data-tier in achieving reusable, robust and scalable component based architecture by implementing Data Adapter interface. It has been able to establish that code efficiency increases when data access object implements the data adapter interface by performing unit test on the code. It has also been able to show that there exists a loose coupling in the component based architecture.", acknowledgement = ack-nhfb, articleno = "9", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Wing:2007:S, author = "Michael Wing", title = "Superhack", journal = j-SIGSOFT, volume = "32", number = "4", pages = "9--9", month = jul, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1281421.1281436", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:30 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Sunil has a photographic memory. He closes his eyes and imagines code in his mind, and he edits by moving, inserting, and deleting the text mentally, until it looks just right. Then he types it in from top to bottom and it usually runs right the first time. Sunil has read many books of algorithms and patterns over the years. He can flick to a page, conjure it in his mind, and type what he needs.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Singh:2007:STS, author = "Yogesh Singh and Bindu Goel", title = "A step towards software preventive maintenance", journal = j-SIGSOFT, volume = "32", number = "4", pages = "10:1--10:??", month = jul, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1281421.1281432", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:30 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "In a world interwoven economically, increasing dependence on critical software applications either in transaction processing (banking, Government services etc) or manufacturing automation (automobiles, pharmaceuticals, chemicals) has accentuated the economic impact aging software can have. Software with increased usage operating in unforeseen conditions at throughput much higher then initial expectations can degrade fast leading to higher altered form and dramatic drop in performance indicators. In the current paper we have tried to analyse the issues governing software maintenance and how preventive maintenance which is still considered a very evolving field in the context of software engineering can help the software product age usefully. We have also attempted to address the above in the essence of how it is done for hardware preventive maintenance which is a better understood and commercially accepted concept. Finally we suggest model for the preventive maintenance integrated within software life cycle.", acknowledgement = ack-nhfb, articleno = "10", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Doernhoefer:2007:SNSd, author = "Mark Doernhoefer", title = "Surfing the net for {{\booktitle{Software Engineering Notes}}}", journal = j-SIGSOFT, volume = "32", number = "4", pages = "10--19", month = jul, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1281421.1281437", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:30 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Database programming doesn't provide the excitement of game programming or the instant gratification of a flashy web application, but the ability to store and retrieve information in an organized manner is vital to the operation of many client-server or web-based applications. Construction of a solid application often depends upon a well built database to provide persistent storage of the data needed to power the application. So although database planning and design may be boring, it is a necessary step in the software engineering process.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Taibi:2007:CCO, author = "Fathi Taibi and Jacob K. Daniel and Fouad Mohammed Abbou", title = "On checking the consistency of {Object-Z} classes", journal = j-SIGSOFT, volume = "32", number = "4", pages = "11:1--11:??", month = jul, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1281421.1281433", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:30 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Requirements elicitation involves gathering requirements from different stakeholders. Different stakeholders often hold different views of how a system should behave, resulting in inconsistencies between their descriptions. Rigorous consistency checking methods can be effectively applied if the different views are formally specified. This is possible because of the unambiguous and precise nature of formal specification languages. However, ensuring that each formal view is self-consistent is critical before checking that the different views are inter-consistent. In this paper, an algorithm is proposed to check the self-consistency of the classes of an Object-Z specification. The proposed approach combines specification testing, model abstraction, and model checking to perform the verification.", acknowledgement = ack-nhfb, articleno = "11", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Neumann:2007:RPd, author = "Peter G. Neumann", title = "Risks to the public", journal = j-SIGSOFT, volume = "32", number = "4", pages = "20--29", month = jul, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1281421.1281438", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:30 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Clements:2007:AAD, author = "Paul Clements and David Emery and Rich Hilliard and Philippe Kruchten", title = "{Aspects in Architectural Description}: report on a first workshop at {AOSD 2007}", journal = j-SIGSOFT, volume = "32", number = "4", pages = "33--35", month = jul, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1281421.1281440", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:30 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The First Workshop on Aspects in Architectural Description was held in Vancouver, British Columbia as a part of Aspect-Oriented Software Development (AOSD) 2007. This workshop report presents a summary of the topics addressed, contributions and issues raised, and workshop conclusions.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Budgen:2007:REB, author = "David Budgen and Pearl Brereton", title = "{Realising Evidence-Based Software Engineering (REBSE-2)}: a report from the workshop held at {ICSE 2007}", journal = j-SIGSOFT, volume = "32", number = "4", pages = "36--39", month = jul, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1281421.1281441", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:30 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Context: The REBSE international workshops are concerned with exploring the adaptation and use of the evidence-based paradigm in software engineering research and practice, through a mix of presentations and discussion. Objectives: These were to explore both experience with, and potential for, evidence-based software engineering (EBSE); to consider how this might affect empirical practices in software engineering; and to work towards creating a community of researchers to practice and promote EBSE. Method: Three sessions were dedicated to a mix of presentations and interactive discussion, while the fourth was dedicated to summarising progress and identifying both issues of concern and actions to pursue. Conclusions: While we identified a number of issues, a key need is clearly to have a central repository to both provide information and to maintain a record of activity in this area.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Pretschner:2007:IIW, author = "Alexander Pretschner and Christian Salzmann and Bernhard Sch{\"a}tz and Thomas Stauner", title = "{4th Intl. ICSE Workshop on Software Engineering for Automotive Systems}", journal = j-SIGSOFT, volume = "32", number = "4", pages = "40--40", month = jul, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1281421.1281442", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:30 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper summarizes the fourth International Workshop on Software Engineering for Automotive Systems, held in conjunction with ICSE 2007.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Avgeriou:2007:AKR, author = "Paris Avgeriou and Philippe Kruchten and Patricia Lago and Paul Grisham and Dewayne Perry", title = "Architectural knowledge and rationale: issues, trends, challenges", journal = j-SIGSOFT, volume = "32", number = "4", pages = "41--46", month = jul, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1281421.1281443", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:30 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The second workshop on Sharing and Reusing Architectural Knowledge (SHARK) and Architecture rationale and Design intent (ADI) was held jointly with ICSE 2007 in Minneapolis. This report presents the themes of the workshop, summarizes the results of the discussions held, and suggests some topics for future research.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Sawyer:2007:WCR, author = "Pete Sawyer and Barbara Paech and Patrick Heymans", title = "Working conference on requirements engineering: foundation for software quality {(REFSQ'07)}", journal = j-SIGSOFT, volume = "32", number = "4", pages = "47--53", month = jul, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1281421.1281444", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:30 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "REFSQ'07 took place over the 11$^{th}$ and 12$^{th}$ June 2007 in the beautiful Norwegian city of Trondheim. It was attended by 47 people from 14 countries, who came to present and/or discuss 27 papers, the insights they offered and the issues they raised. During the course of the two days, a number of recurrent and important themes emerged. These were co-design of requirements and architecture, analyst-stakeholder-developer communication, requirements dependencies, the role of value in requirements engineering (RE) and the role and the progress made by research in RE.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Ben-Menachem:2007:RTC, author = "Mordechai Ben-Menachem", title = "Review of {{\booktitle{TSP: Coaching Development Teams}} by Watts S. Humphrey, Addison-Wesley, 2006}", journal = j-SIGSOFT, volume = "32", number = "4", pages = "53--53", month = jul, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1281421.1281446", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:30 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Marovac:2007:UBE, author = "Nenad Marovac", title = "{UML} based embedded documentation for semi-automatic software development", journal = j-SIGSOFT, volume = "32", number = "5", pages = "1--3", month = sep, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1290993.1290997", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:32 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "A few years ago we introduced a concept of ``Embedded Software Documentation''. This embedded documentation consists of special documenting structures referred to as Flagged Sentences. The purpose of Flagged Sentences is to assists us in reading and understanding software programs and their individual components during the maintenance of these programs and reuse of the components. This embedded documentation also helps us in functional decomposition of given problems and design of related computer programs and in ensuring the consistency of interfaces within these programs. After the introduction of Object Oriented Modeling and Design, we expanded the concept of Flagged Sentences to incorporate a specification and classification mechanism based on Object Oriented Modeling and Design. This paper presents new extensions to deal with both: UML language for modeling of problems and software components implementing solutions to these problems, and Unified Process for iterative development of software systems. The basic objective in the current expansion of Flagged Sentences is to accommodate Object Oriented Modeling using UML, and to communicate all the necessary information to tasks that are part of modern and efficient development environments for software production. The information is provided in a format that is easy to extract and automatically organize, classify and use. The information includes data about application domains, problems to be solved, the associated software systems being developed and the related documentations.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Riehle:2007:FDS, author = "Richard Riehle", title = "Failure-driven software safety", journal = j-SIGSOFT, volume = "32", number = "5", pages = "1--4", month = sep, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1290993.1290998", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:32 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Software safety and software risk management are two of the most important facets of modern software engineering. To understand safety requires that we understand first what is not safe. This paper examines the concept of failure in software engineering and describes an approach to failure-driven software design (FDSD).", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Grover:2007:FUC, author = "P. S. Grover and Rajesh Kumar and Arun Sharma", title = "Few useful considerations for maintaining software components and component-based systems", journal = j-SIGSOFT, volume = "32", number = "5", pages = "1--5", month = sep, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1290993.1290995", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:32 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Component-Based Systems (CBS) maintenance may require several activities different than normal applications, such as upgrading the functionality of black-box components (for which code may not be available), replacement of older version components with the new ones for better and improved functionality, tracing the problem of compatibility between the new components with system, and so on. The focus of this paper is on investigating several issues and concerns about maintainability of component-based systems. It also explores the acceptance of maintainability characteristics and sub-characteristics as defined in ISO9126 quality model for CBS. The paper proposes two new sub-characteristics, namely trackability and portability, to be included under the maintenance activity.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Huang:2007:PDS, author = "Gang Huang", title = "Post-development software architecture", journal = j-SIGSOFT, volume = "32", number = "5", pages = "1--9", month = sep, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1290993.1290996", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:32 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Software architecture (SA) plays an important role in software development. Since the lifecycle stages post development become more and more important and face with many challenges similar to the development, it is a natural idea to introduce or extend SA into the stages post development. In this paper, we present our practices and experiences on applying software architecture into the deployment and maintenance of J2EE (Java 2 Platform Enterprise Edition) applications, including the tool and principles of SA-based J2EE deployment and SA-based J2EE online maintenance. It demonstrates that (1) SA can help to achieve a holistic, fine-grained and automated deployment of large-scale distributed systems by visualizing the structure of the system to be deployed; (2) SA can provide an understandable, operational and global view for online maintenance by organizing the fragmented and trivial management mechanisms; (3) Extending SA into the stages post development makes it possible that the whole lifecycle of a software system can be governed by SA with many benefits, e.g. consistency, traceability, responsiveness, etc.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Notkin:2007:ATFc, author = "David Notkin", title = "{ACM TOSEM}: {FAQs} and figures", journal = j-SIGSOFT, volume = "32", number = "5", pages = "5--6", month = sep, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1290993.1291000", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:32 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Reviewers are an essential --- and voluntary --- cornerstone of ACM TOSEM, as for every peer-reviewed publication. Sitting in the EIC seat has provided me, not surprisingly, with a firsthand look at many reviewers, many reviews, and many reactions to reviews by authors and associate editors alike.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Henderson:2007:SEEc, author = "Peter B. Henderson", title = "Software engineering education: {(SEEd)}", journal = j-SIGSOFT, volume = "32", number = "5", pages = "6--6", month = sep, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1290993.1291001", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:32 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Doernhoefer:2007:SNSe, author = "Mark Doernhoefer", title = "Surfing the net for {{\booktitle{Software Engineering Notes}}}", journal = j-SIGSOFT, volume = "32", number = "5", pages = "7--16", month = sep, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1290993.1291002", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:32 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "A good user interface is key to most programs. Designing an intuitive Graphical User Interface (GUI) that makes it easy for users to get information in to and out of your application is a hallmark of a killer app. Most software engineers are not graphic designers and most graphic designers are not software engineers and therein lies the problem. In this month's article I hope to provide software engineers with advice on graphic design and introduce graphic designers to some software tools that will help them realize their design in code. If you happen to be a graphic designer and a software engineer, you may find some useful tools and tips at the sites listed below.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Neumann:2007:RPe, author = "Peter G. Neumann", title = "Risks to the public", journal = j-SIGSOFT, volume = "32", number = "5", pages = "17--25", month = sep, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1290993.1291003", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:32 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Garcia:2007:ACM, author = "Alessandro Garcia and Phil Greenwood and George Heineman and Robert Walker and Yuanfang Cai and Hong Yul Yang and Elisa Baniassad and Cristina Videira Lopes and Christa Schwanninger and Jianjun Zhao", title = "{Assessment of Contemporary Modularization Techniques --- ACoM'07}: workshop report", journal = j-SIGSOFT, volume = "32", number = "5", pages = "31--37", month = sep, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1290993.1291005", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:32 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The effective assessment of emerging modularization technologies plays a pivotal role on: (i) a better understanding of their real benefits and drawbacks when compared to conventional development techniques, and (ii) their effective transfer to mainstream software development. This report is intended to summarize the results of the 1st International Workshop on Assessment of Contemporary Modularization Techniques (ACoM'07) held in Minneapolis, USA, May 22, 2007, as part of the 29th International Conference on Software Engineering (ICSE'07). The main purpose of this workshop was to share and pool the collective experience of people interested in and actively working on assessment of innovative modularization techniques. The workshop consisted of an opening presentation, several paper presentations organized into three technical sessions, and four discussion groups. During the workshop presentations and discussions, the authors and participants directly and indirectly reviewed ongoing and previous work and debated a number of important issues on contemporary modularity assessment. The ACoM'07 website, including the electronic version of this report, can be found at www.comp.lancs.ac.uk/computing/ACoM.07/. We begin by presenting an overview of our goals and the workshop structure, and then focus on the workshop technical program and results.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Carver:2007:PWR, author = "Jeffrey Carver", title = "Post-workshop report for the {Third International Workshop on Software Engineering for High Performance Computing Applications (SE-HPC 07)}", journal = j-SIGSOFT, volume = "32", number = "5", pages = "38--43", month = sep, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1290993.1291006", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:32 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This is the report from a one-day workshop that took place on Saturday, May 26, 2007 as part of the International Conference on Software Engineering in Minneapolis, MN, USA.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Banerjee:2007:CIT, author = "Jayasri Banerjee and Anup Kumar Bandyopadhyay and Ajit Kumar Mandal", title = "On the correctness issues in two-process mutual exclusion algorithms", journal = j-SIGSOFT, volume = "32", number = "6", pages = "1:1--1:??", month = nov, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1317471.1317473", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:33 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Correctness issues in two process mutual exclusion algorithms are investigated. A new theorem is proposed and proved that describes the key concept involved in such algorithms. For the purpose of proving the techniques developed in [3] are used. Result of this theorem is applied to two different algorithms of which one could be proved incorrect. Technique developed in [3] is also used to prove the correct algorithm.", acknowledgement = ack-nhfb, articleno = "1", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Bandyopadhyay:2007:MFS, author = "Anup Kumar Bandyopadhyay", title = "Modeling fairness and starvation in concurrent systems", journal = j-SIGSOFT, volume = "32", number = "6", pages = "2:1--2:??", month = nov, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1317471.1317474", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:33 MDT 2018", bibsource = "http://www.math.utah.edu/pub/bibnet/authors/d/dijkstra-edsger-w.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Standard temporal logic is augmented and a new temporal quantifier viz., never is defined. This augmented logic is integrated in Dijkstra's weakest precondition calculus. Definitions for fairness and starvation for concurrent systems in terms of weakest precondition are presented. According to the existing concept fairness for a transition rule asserts that if a rule remains continuously enabled (weak fairness) or repeatedly enabled (strong fairness), then it must be executed., where in the proposed definition fairness is related to the permission for execution where starvation relies upon actual execution. This definition is used to prove fairness of a given concurrent system. Through different examples it is shown that fairness is not the only prerequisite for starvation freedom. Available techniques use 'leads to' operator that forecasts system behavior where the proposed proof technique moves backward in time.", acknowledgement = ack-nhfb, articleno = "2", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Bastani:2007:HLO, author = "Behzad Bastani and Hoda Bastani", title = "High-level open evolvable systems design by process-oriented modeling: application to {DNA} replication mechanism", journal = j-SIGSOFT, volume = "32", number = "6", pages = "3:1--3:??", month = nov, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1317471.1317475", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:33 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Open Evolvable Systems' design requires a methodological [1] and conceptual paradigm different from the conventional software design. Evolvable Systems' research [2, 6, 16, and 17] has established itself as a new research field, but the content is more domain-oriented than universal. Consequently, major contributions toward substantiation of that universal methodological and conceptual paradigm are yet to come. In this paper we present a new perspective and method for the general-purpose design of Evolvable Systems. The paper presents the attributes of the Evolvable Systems and discusses the distinction between Evolvable Systems' and conventional software design as well as the methodological ramifications. We pose and address the question of what is an efficient methodology for designing a system for which we do not know the boundaries? We present our version of Process-oriented Modeling as the key method in the high-level design of Evolvable Systems and show its utilization in implementation of one modeling case of a complex Evolvable System, the DNA replication process. We also present the dynamic aspects of the design process management and pre-code verifications in the framework of Quantified Controls and Simulations.", acknowledgement = ack-nhfb, articleno = "3", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Cordeiro:2007:TAH, author = "Lucas Cordeiro and Raimundo Barreto and Rafael Barcelos and Meuse Oliveira and Vicente Lucena and Paulo Maciel", title = "{TXM}: an agile {HW\slash SW} development methodology for building medical devices", journal = j-SIGSOFT, volume = "32", number = "6", pages = "4:1--4:??", month = nov, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1317471.1317476", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:33 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Arterial oxygen saturation and heart rate measured by pulse oximetry is widely used to monitor critical care patients. This kind of system is classified as embedded hard real-time system and requires rigorous development methodologies to guarantee the correctness and timeliness of the application. Therefore, the proposed development methodology combines agile principles with organizational patterns and adapts them to build medical devices focusing on the issues related to the system's constraints and safety. Strong unit testing is the foundation of the proposed methodology for ensuring timeliness and correctness. Moreover, platform-based design approach is used to balance costs and time-to-market in view of performance and functionality constraints. We conclude that the proposed methodology reduces significantly the design time and cost as well as leads to better software modularity and safety.", acknowledgement = ack-nhfb, articleno = "4", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Riehle:2007:IMR, author = "Richard Riehle", title = "Institutional memory and risk management", journal = j-SIGSOFT, volume = "32", number = "6", pages = "5:1--5:??", month = nov, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1317471.1317477", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:33 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Software risk management is a critical aspect of software engineering. Software risks based on metrics derived from a large number of similar projects, along with effective statistical methods, can improve risk prediction, assessment, and management.", acknowledgement = ack-nhfb, articleno = "5", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Ploski:2007:RIS, author = "Jan Ploski and Matthias Rohr and Peter Schwenkenberg and Wilhelm Hasselbring", title = "Research issues in software fault categorization", journal = j-SIGSOFT, volume = "32", number = "6", pages = "6:1--6:??", month = nov, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1317471.1317478", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:33 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Software faults are a major threat for the dependability of software systems. When we intend to study the impact of software faults on software behavior, examine the quality of fault tolerance mechanisms, or evaluate diagnostic techniques, the issue of distinguishing fault categories and their frequency distribution arises immediately. This article surveys the literature that provides quantitative data on categories of software faults and discusses the applicability of these software fault category distributions to fault injection case studies.", acknowledgement = ack-nhfb, articleno = "6", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Wang:2007:MEO, author = "Yi Wang and Defeng Guo and Huihui Shi", title = "Measuring the evolution of open source software systems with their communities", journal = j-SIGSOFT, volume = "32", number = "6", pages = "7:1--7:??", month = nov, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1317471.1317479", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:33 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/gnu.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Open Source Software (OSS) has become the subject of much commercial and academic interest in last few years. As traditional software, OSS also evolves to fulfill the need of stakeholders. Therefore, providing quantitative metrics for OSS evolution has also become an urgent issue. However, most existing studies of software evolution have been performed on systems developed within a single company using traditional management techniques. These metrics models are inadequate to measure OSS evolution. In this paper, we describe a preliminary evolution metrics set for evaluating OSS. The most significant novelty of this model is that it takes specific properties of Open Source Community (OSC) into consideration. In another word, we measure the evolution of OSS and OSC together. We also provide a lightweight case study on Ubuntu project using this metrics set. We find out that the Open Source Community and its members also play essential role in OSS evolution. We expect this metrics model can bring better understandings and explanations of phenomena in open source development and evolution.", acknowledgement = ack-nhfb, articleno = "7", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Zirkind:2007:ADC, author = "Givon Zirkind", title = "{AFIS} data compression: an example of how domain specific compression algorithms can produce very high compression ratios", journal = j-SIGSOFT, volume = "32", number = "6", pages = "8:1--8:??", month = nov, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1317471.1317480", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:33 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This article describes the development and implementation of a data compression algorithm designed specifically for fingerprints, referred to as GBP compression. The algorithm is herein discussed. Data Compression algorithms can be designed for general applications, meaning the input data is unknown. This is more commonly referred to as generic data. [LI01] Or, data compression algorithms can be designed for specific applications. e.g. AFIS [Automated Fingerprint Identification Systems] ``When the input is known, higher compression ratios can be achieved with the knowledge of the input data stream.'' To-date, the highest compression ratio for an unknown input data stream, for all data compression algorithms, is JPEG with an average compression ratio range of 1:17 --- 1:23. [PEN03] The algorithm herein discussed, has a compression ratio range of 1:68 --- 1:92. There is a value, time and place for each design method --- generic or specific --- depending upon a variety of factors. Due to the nature of the use of AFIS for law enforcement and incrimination as well as criminal conviction, there are social issues that make data integrity of paramount concern. This factor influences algorithm selection and design. A lossless algorithm is a must! Also, the nature of AFIS is such that it operates across borders and between states, municipalities and jurisdictions. In addition to the usual issues and resistance to accepting new technology, including software [e.g. resistance to change, fear of system failure, etc.], there are the issues of changing engineering standards [hardware and software] which are governmentally determined as well as governmental policy decisions. Likewise, the portability required in implementing a new algorithm, will have to deal with a variety of hardware and software; as well as be designed to integrate into existing systems. This integration must include the ability to incorporate existing JPEG data files, from existing police databases. This requires a handshaking of standards and conversion programs that maintain data integrity. In addition, there is an in depth discussion of the limits of compression with a novel perspective.", acknowledgement = ack-nhfb, articleno = "8", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Wing:2007:ES, author = "Michael Wing", title = "On the economics of software", journal = j-SIGSOFT, volume = "32", number = "6", pages = "8--9", month = nov, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1317471.1317482", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:33 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Source is not precious. One can go to code.google.com and download source by the gigabyte. That's a lot. It would take most people an entire career to read and appreciate a gigabyte of code. Reading one chapter of a book per hour or a 50,000 word novel in twelve hours corresponds to reading 1 billion characters in 20 years, at 40 hours per week. Wading through gigabytes of code to find the few lines that one cares about can take a long time. On the other hand, applications are valuable, because they do specific things for specific users. Working apps consist of specific bodies of source.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Doernhoefer:2007:SNSf, author = "Mark Doernhoefer", title = "Surfing the net for {{\booktitle{Software Engineering Notes}}}", journal = j-SIGSOFT, volume = "32", number = "6", pages = "10--19", month = nov, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1317471.1317483", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:33 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The web has a lot of sites devoted to testing and test tools. If you are in charge of designing a test program for your development, a few hours surfing the sites listed here could get you off to a pretty good start. We'll visit some of the sites that offer test tools, but for the most part, I'm going to focus on sites that talk about testing, test methods, and test plans. There will be plenty of sites that have links to the tools, so you can take off from there. But remember, a test tool is not a test plan.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Neumann:2007:RPf, author = "Peter G. Neumann", title = "Risks to the public", journal = j-SIGSOFT, volume = "32", number = "6", pages = "20--27", month = nov, year = "2007", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1317471.1317484", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:33 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Edited by Peter G. Neumann (Risks Forum Moderator and Chairman of the ACM Committee on Computers and Public Policy), plus personal contributions by others, as indicated. Opinions expressed are individual rather than organizational, and all of the usual disclaimers apply. We address problems relating to software, hardware, people, and other circumstances relevant to computer systems. To economize on space, we include pointers to items in the online Risks Forum: (R i j) denotes RISKS vol i number j. Cited RISKS items generally identify contributors and sources, together with URLs. Official RISKS archives are available at www.risks.org (which redirects to Newcastle and gets you nice html formatting and a search engine courtesy of Lindsay Marshall; http://catless.ncl.ac.uk/Risks/i.j.html gets you (R i j)) and at ftp://www.sri.com/risks.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Wing:2008:HE, author = "Michael Wing", title = "The human element", journal = j-SIGSOFT, volume = "33", number = "1", pages = "1:1--1:??", month = jan, year = "2008", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1344452.1344454", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:34 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, articleno = "1", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Henderson:2008:SEEa, author = "Peter B. Henderson", title = "Software Engineering Education: {SEEd}", journal = j-SIGSOFT, volume = "33", number = "1", pages = "2:1--2:??", month = jan, year = "2008", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1344452.1344455", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:34 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, articleno = "2", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Doernhoefer:2008:SNSa, author = "Mark Doernhoefer", title = "Surfing the net for {{\booktitle{Software Engineering Notes}}}", journal = j-SIGSOFT, volume = "33", number = "1", pages = "3:1--3:??", month = jan, year = "2008", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1344452.1344456", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:34 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, articleno = "3", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Neumann:2008:RPa, author = "Peter G. Neumann", title = "Risks to the public", journal = j-SIGSOFT, volume = "33", number = "1", pages = "4:1--4:??", month = jan, year = "2008", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1344452.1344457", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:34 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, articleno = "4", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Cordeiro:2008:ADM, author = "Lucas Cordeiro and Carlos Mar and Eduardo Valentin and Fabiano Cruz and Daniel Patrick and Raimundo Barreto and Vicente Lucena", title = "An agile development methodology applied to embedded control software under stringent hardware constraints", journal = j-SIGSOFT, volume = "33", number = "1", pages = "5:1--5:??", month = jan, year = "2008", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1344452.1344459", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:34 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "In recent years, discrete control systems play an important role in the development and advancement of modern civilization and technology. Practically every aspect of our life is affected by some type of control systems. This kind of system maybe classified as an embedded real-time system and requires rigorous methodologies to develop the software that is under stringent hardware constraints. Therefore, the proposed development methodology adapts agile principles and patterns in order to build embedded control systems focusing on the issues related to the system's constraints and safety. Strong unit testing is the foundation of the proposed methodology for ensuring timeliness and correctness. Moreover, platform-based design approach is used to balance costs and time-to-market in view of performance and functionality constraints. We conclude that the proposed methodology reduces significantly the design time and cost as well as leads to better software modularity and reliability.", acknowledgement = ack-nhfb, articleno = "5", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Fass:2008:ELL, author = "Leona F. Fass", title = "An ethnocentric look at the law and technology interface", journal = j-SIGSOFT, volume = "33", number = "1", pages = "6:1--6:??", month = jan, year = "2008", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1344452.1344460", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:34 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "We often conduct ethnocentric research, observing everyday citizen end-users in their own environments to assess their access, technological and policy concerns. Our recent research has revealed that many end-user concerns are on the interface of Law and Technology. Such interface issues also have become apparent throughout our own interactions with software and the Web, as well as within our specific research into eCommerce; Link Analysis and Data Mining; and the Semantic Web applied to eGovernment and Homeland Security. Among the relevant areas we now address are information security and integrity; barriers (intentional or otherwise) to access; security-privacy trade-offs; the need for user education; and importance of cooperation among stakeholders, policymakers and experts in Technology-related Law. We illustrate that in many policy areas of evolving Law related to Technology there may be no general decision procedure; many decisions can only be made case-by-case. We strongly support ethnocentric studies by practitioners of Software Engineering, experts in Technology Law and policymakers. This can identify specific critical deployment issues that might otherwise be overlooked within traditional research venues. We believe that many end-user concerns on the Law and Technology interface, once recognized, can be alleviated by Software Engineering professionals.", acknowledgement = ack-nhfb, articleno = "6", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Schaefer:2008:SAS, author = "Robert Schaefer", title = "A systems analysis of systems integration", journal = j-SIGSOFT, volume = "33", number = "1", pages = "7:1--7:??", month = jan, year = "2008", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1344452.1344461", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:34 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Most if not all complex issues stated as problems intended to result in new systems may be analyzed using systems decomposition and then constructed by synthesis. Systems decomposition starts with a complex problem that may or may not be obviously solvable and deconstructs that problem into smaller more tractable problems that can be solved. Construction by synthesis treats the smaller solutions as building blocks. The key practical advantage to synthesis is that it permits concurrency of construction. The subsystems may be developed and tested independently in isolation. Not until integration will subsystems need to be brought together. Decomposition and synthesis are the ideal in theory. In practice there can be any number of problems. Potentially the most fatal of flaws can occur during decomposition where errors in abstraction lead to over-idealization of subsystem independence. Over-idealization leads to under-specification, that what is presumed to be independent is not. Once errors in subsystem specification are made, independent development ensures that undetected dependencies will remain undetected. Subsystem dependencies are hidden time bombs, dormant until the subsystems are brought together for systems integration. In systems integration the latent dependencies interact and explode in a manner most combinatorial. The term often used to describe the excitation of dormant dependencies is ``emergent behavior''. Emergent behavior is but one factor that plagues the integration of large software intensive systems. There have been few published analyses or case studies dedicated to systems integration, in particular analyses deemed useful as ``lessons learned'' for others to follow. This paper takes a hesitant first step, not towards a ``lessons learned'' but towards the meta, an estimation of the boundaries of what it might take before one can provide a useful ``lessons learned''.", acknowledgement = ack-nhfb, articleno = "7", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Tuya:2008:CEW, author = "Javier Tuya and Javier Dolado and Ma Jose Suarez-Cabal and Claudio de la Riva", title = "A controlled experiment on white-box database testing", journal = j-SIGSOFT, volume = "33", number = "1", pages = "8:1--8:??", month = jan, year = "2008", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1344452.1344462", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:34 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Controlled experiments are a powerful way to assess and compare the effectiveness of different techniques. In this paper we present the experimental results of the evaluation of the effectiveness of a structural test coverage criterion developed for SQL queries when used by a tester to guide the selection of database test cases. We describe a controlled experiment designed for comparing this criterion with other conventional criteria such as equivalence partitioning and boundary value analysis. The results show that (1) the use of the structural coverage allows the tester to develop more effective test cases, (2) the effectiveness is higher when considering the kind of faults that are more specifically related to SQL than other kinds of faults, and (3) the results give us some insight into how to improve the coverage criterion.", acknowledgement = ack-nhfb, articleno = "8", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Tracz:2008:RGR, author = "Will Tracz", title = "Review of {{\booktitle{Geekonomics: The Real Cost of Insecure Software}} by David Rice, Addison-Wesley, 2008, 362 pp., 0-321-47789-8 (hardback), \$29.99}", journal = j-SIGSOFT, volume = "33", number = "1", pages = "9:1--9:??", month = jan, year = "2008", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1344452.1344464", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:34 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, articleno = "9", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Foos:2008:TXB, author = "R{\"u}diger Foos and Christian Bunse and Hagen H{\"o}pfner and Torsten Zimmermann", title = "{TML}: an {XML-based} test modeling language", journal = j-SIGSOFT, volume = "33", number = "2", pages = "1:1--1:??", month = mar, year = "2008", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1350802.1350809", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:35 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Quality is a key property of modern software systems. In addition, to quality improvement strategies such as CMM or CMMI and manual checking approaches such as reviews or inspections, software testing is the major quality assurance activity in most projects. Literally speaking, software testing is nearly as essential as writing code itself. Due to its prominent role there are quite a number of commercial and open-source test tools available. However, the question remains if an organisation should rely on a single tool or if it should follow a more general strategy using several tools? Practical experience has shown that the latter strategy is more promising by covering multiple quality aspects that cannot be covered by a single tool, although it requires a means of communication between tools (i.e., a tool independent test language). This paper introduces a XML-based and test tool independent test modeling language that support creating general test cases. The language separates test logic from test tool specific code. Thus, a test case only has to be specified once and can then be executed by several test tools.", acknowledgement = ack-nhfb, articleno = "1", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Bandyopadhyay:2008:WPB, author = "Anup Kumar Bandyopadhyay", title = "Weakest precondition based verification tool that models spatial ordering", journal = j-SIGSOFT, volume = "33", number = "2", pages = "2:1--2:??", month = mar, year = "2008", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1350802.1350808", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:35 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Weakest precondition based method for specification and verification of geographically distributed system is described. For this purpose spatial predicates have been defined. A distributed mutual exclusion algorithm is proposed and is used to illustrate this verification tool.", acknowledgement = ack-nhfb, articleno = "2", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Gill:2008:DIO, author = "Nasib S. Gill and Balkishan", title = "Dependency and interaction oriented complexity metrics of component-based systems", journal = j-SIGSOFT, volume = "33", number = "2", pages = "3:1--3:??", month = mar, year = "2008", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1350802.1350810", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:35 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Component-Based Development (CBD) practice is gaining popularity among software developers in the software industry. Researcher community is striving hard to identify the attributes characterizing component-based development and further proposing metrics that may help in controlling the complexity of the component-based systems. The present paper introduces a set of component-based metrics, namely, Component Dependency Metric (CDM) and Component Interaction Density Metric (CIDM), which measure the dependency and coupling aspects of the software components respectively. Graph theoretic notions have been used to illustrate the dependency and interaction among software components for all the four cases chosen for present study. Dependency and interaction-oriented complexity metrics for component-based systems have been computed. The results of the present study are quite encouraging and may further help the researchers in controlling the complexity of component-based systems so as to minimize the integration and maintenance costs.", acknowledgement = ack-nhfb, articleno = "3", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Kharb:2008:CMC, author = "Latika Kharb and Rajender Singh", title = "Complexity metrics for component-oriented software systems", journal = j-SIGSOFT, volume = "33", number = "2", pages = "4:1--4:??", month = mar, year = "2008", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1350802.1350811", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:35 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Component-based software development (CBSD) has become one of the preferred streams for developing large and complex systems by integrating prefabricated software components that not only facilitates the process of software development but is also changing the ways for software professionals to develop software applications. Till today, numerous attempts have been made by several organizations, software development teams, developers as well as researchers to improve component-oriented software systems (COSS) through improved measurement tools and techniques i.e. through an effective metrics. Our paper is a simple attempt to work for the demand of an appropriate and relevant integration metrics for the measurement of complexity of a software component that could be used as one of the approaches for further guidance in component complexity measurement and problem reduction. We represented a component metrics as an instantiation of the integration complexity measurement which can then be evaluated using appropriate metric tools. The work presented in this paper introduces a perception of component-oriented software systems complexity and also defines some new complexity metrics.", acknowledgement = ack-nhfb, articleno = "4", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Riehle:2008:JDU, author = "Dirk Riehle", title = "{JUnit} 3.8 documented using collaborations", journal = j-SIGSOFT, volume = "33", number = "2", pages = "5:1--5:??", month = mar, year = "2008", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1350802.1350812", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:35 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper describes the design of the unit testing framework JUnit v3.8. The documentation technique employed is an enhanced version of collaboration-based design, also known as role modeling. In collaboration-based design, objects are viewed as playing multiple roles in different contexts, and different contexts are viewed as task specific collaborations. The documentation accounts for every method in the JUnit 3.8 framework by assigning it to a role. It thereby investigates whether roles and collaborations can serve as basic units of functionality provided by a design like a framework. Such a measure of functionality can serve multiple purposes, for example estimating implementation efforts or measuring complexity.", acknowledgement = ack-nhfb, articleno = "5", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Notkin:2008:ATFa, author = "David Notkin", title = "{ACM TOSEM FAQs} and figures", journal = j-SIGSOFT, volume = "33", number = "2", pages = "5--6", month = mar, year = "2008", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1350802.1350803", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:35 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Henderson:2008:SEEb, author = "Peter B. Henderson", title = "Software Engineering Education: {SEEd}", journal = j-SIGSOFT, volume = "33", number = "2", pages = "6--6", month = mar, year = "2008", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1350802.1350804", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:35 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Srivastava:2008:NHP, author = "Praveen R. Srivastava and Deepak Pareek and Kailash Sati and Dinesh C. Pujari and G. Raghurama", title = "Non homogeneous {Poisson} process based cumulative priority model for determining optimal software testing period", journal = j-SIGSOFT, volume = "33", number = "2", pages = "6:1--6:??", month = mar, year = "2008", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1350802.1350813", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:35 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "A software organization can obtain benefits from testing only when testing time is optimized and components of greater priorities are tested much rigorously. Critical errors, if remain undetected during testing can result in loss of revenues and goodwill for the organization. In this paper, we present a cumulative priority based model for determining the optimal testing period. Here we provide a Non Homogeneous Poisson Process based model to help organizations achieve optimum software testing with minimal time and money loss.", acknowledgement = ack-nhfb, articleno = "6", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Wei:2008:CBR, author = "Wang Wei and Li Tong", title = "Component behavior relativity analysis", journal = j-SIGSOFT, volume = "33", number = "2", pages = "7:1--7:??", month = mar, year = "2008", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1350802.1350814", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:35 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Component-Based Development, CBD for short, is becoming a main stream software development paradigm which reuses the off-the-shelf components and assembles them together to form a component-based application. CBD paradigm obviously has aroused a great attention among the engineering and academic domain and many new concepts, tools, and development methodologies have been coming out. However, CBD paradigms are usually questioned by its feasibility and performance. The inherent reason of this dilemma is lacking a methodology to guide researchers or engineers to clarify the behavior relativity among components. In this paper we proposed a new formalism, named component network, which is an extension of Petri net and its powerful capability to modeling distributed system is the guarantee of successful modeling component-based system. Further more, a series operation and theorems are presented, which are concerned to be the footstone of component behavior relativity analysis and software evolution research.", acknowledgement = ack-nhfb, articleno = "7", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Wu:2008:ABM, author = "Jiankun Wu and Linpeng Huang and Dejun Wang", title = "{ASM}-based model of dynamic service update in {OSGi}", journal = j-SIGSOFT, volume = "33", number = "2", pages = "8:1--8:??", month = mar, year = "2008", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1350802.1350815", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:35 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "An ASM-based high level semantical model for service-oriented systems based on OSGi and supporting service dynamic updating is provided in this paper. The model not only provides the refinement methods but also gives the final model that specifies the constraint of OSGi. The resulting formal model can be applied in several ways. First, it enables checking or comparing existing systems based on OSGi to determine if they satisfy the dynamic updating demands and provide the necessary functionalities. Furthermore, it can serve as a basis for high level specification of a new system or components or updating constraint. Finally, the model is also useful in reasoning about the properties of service-oriented dynamic updating system based on OSGi.", acknowledgement = ack-nhfb, articleno = "8", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Doernhoefer:2008:SNSb, author = "Mark Doernhoefer", title = "Surfing the net for {{\booktitle{Software Engineering Notes}}}", journal = j-SIGSOFT, volume = "33", number = "2", pages = "8--17", month = mar, year = "2008", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1350802.1350805", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:35 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Yu:2008:IMR, author = "Liguo Yu and Srini Ramaswamy", title = "Improving modularity by refactoring code clones: a feasibility study on {Linux}", journal = j-SIGSOFT, volume = "33", number = "2", pages = "9:1--9:??", month = mar, year = "2008", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1350802.1350816", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:35 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Modularity is an important principle of software design. It is directly associated with software understandability, maintainability, and reusability. However, as software systems evolve, old code segments are modified / removed and new code segments are added, the original modular design of the program might be distorted. One of the factors that can affect the modularity of the system is the introduction of code clones --- a portion of source code that is identical or similar to another --- in the software evolution process. This paper applies clone detection techniques to study the modularity of Linux. The code clones are first identified using an automatic tool. Then each clone set is analyzed by a domain expert to classify it into one of the three clone concern categories: singular concern, crosscutting concern, and partial concern. Different approaches to dealing with these different categories of code clones are suggested in order to improve modularity.", acknowledgement = ack-nhfb, articleno = "9", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Neumann:2008:RPb, author = "Peter G. Neumann", title = "Risks to the public", journal = j-SIGSOFT, volume = "33", number = "2", pages = "18--28", month = mar, year = "2008", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1350802.1350806", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:35 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Gorschek:2008:IGR, author = "Tony Gorschek and Samuel Fricker and Robert Felt and Claes Wohlin and Michael Mattsson", title = "{1st International Global Requirements Engineering Workshop --- GREW'07}", journal = j-SIGSOFT, volume = "33", number = "2", pages = "29--32", month = mar, year = "2008", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1350802.1350807", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:35 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "GREW'07 was held in conjunction with the International Conference on Global Software Engineering in Munich Germany. The aim was to bring researchers and industry practitioners together to discuss the area of global product development from a requirements engineering and product management perspective. The workshop aimed to analyze selected challenges put forward by accepted papers from both industry and academia. The session discussions then focused on identifying future needs for research, the relevance of which was assured by good industry presence at the workshop. The workshop resulted in a number of findings that can play an important role to further develop the field of global product management and requirements engineering.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Bastani:2008:POA, author = "Behzad Bastani", title = "Process-oriented abstraction of the complex evolvable systems: problem model construction", journal = j-SIGSOFT, volume = "33", number = "3", pages = "1:1--1:??", month = may, year = "2008", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1360602.1360608", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:37 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Architectural design and lifecycle management of complex Evolvable Systems encounter contexts and environments in which ambiguity and volatility are of essence. Ambiguity relates to the content of the information the architect has available at the time of the design and maps to the aspects, dimensions and boundaries of the system. Volatility represents constant changes of vision, knowledge and information due to the advances in science or techniques of handling and demands the architect to redesign the system to match the new realities of the time. As a result, the nature of the complex Evolvable Systems introduces serious challenges to the conventional Software Architecture and Software Engineering. This paper presents a new method called Nuclear-Process Oriented Analysis and Modeling (NPOAM), for the design of complex Open Evolvable Systems [1], and focuses on its implementation within the scope of the Problem Model construction [2] for a Cardiac Arrhythmia Management model. Our Problem Model construction develops its conceptualization on the premises of the complexities and requirements of scientific domains. Yet its applicability is not exclusive to scientific domains but since it is designed for more complex scientific environments, it is perfectly applicable to business domains as well. One of the critical contributions of NPOAM is providing the capability of random process modeling and design. The paper concludes with addressing the model analysis and verification issues.", acknowledgement = ack-nhfb, articleno = "1", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Borsoi:2008:DMP, author = "Beatriz Terezinha Borsoi and Jorge Luis Risco Becerra", title = "Definition and modeling of process using object orientation", journal = j-SIGSOFT, volume = "33", number = "3", pages = "2:1--2:??", month = may, year = "2008", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1360602.1360609", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:37 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Software development processes can be represented as objects because they and the elements that compose them have attributes and operations, can be linked by relationships and have behavior and states. Therefore, this paper proposes a way to represent processes and their elements as objects. This proposal can be used to represent process models benefiting from the object orientation properties and to define tools to automate processes.", acknowledgement = ack-nhfb, articleno = "2", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Khemakhem:2008:EESa, author = "Sofien Khemakhem and Khalil Drira and Emna Khemakhem and Mohamed Jmaiel", title = "An experimental evaluation of {SEC+}, an enhanced search engine for component-based software development", journal = j-SIGSOFT, volume = "33", number = "3", pages = "3:1--3:??", month = may, year = "2008", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1360602.1360610", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:37 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Current approaches for service discovery are inherently restricted to the exact querying. This may provide incomplete answers since queries are often overspecified and may lead to low precision and recall. To alleviate these problems, we achieved an experimental evaluation that uses of the enhanced search engine, SEC+. This engine is based on the subsumption mechanism and a function that calculates the semantic distance. Both the used rate and the non-functional features are considered to filter the selection. We show that such a solution can improve the quality of the search and can enhance both the recall and the precision.", acknowledgement = ack-nhfb, articleno = "3", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Lallchandani:2008:SUA, author = "Jaiprakash T. Lallchandani and R. Mall", title = "Slicing {UML} architectural models", journal = j-SIGSOFT, volume = "33", number = "3", pages = "4:1--4:??", month = may, year = "2008", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1360602.1360611", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:37 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "We propose a technique for static and dynamic slicing of UML models. For a software architecture specified using UML, we first transform the systems' architectural model into an intermediate representation which we have named Model Dependency Graph(MDG). MDG combines information available in various sequence diagrams along with the relevant information available in class diagrams into an integrated UML model. For a given slicing criterion, our slicing algorithm traverses the constructed MDG to identify the relevant model elements. Our algorithm's novelty lies in its computing a slice based on an integrated UML model as against independently processing separate UML diagrams, and determining the implicit interdependencies among the different model elements distributed across various UML diagrams.", acknowledgement = ack-nhfb, articleno = "4", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Henderson:2008:SEEc, author = "Peter B. Henderson", title = "Software engineering education {(SEEd)}", journal = j-SIGSOFT, volume = "33", number = "3", pages = "5--5", month = may, year = "2008", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1360602.1360604", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:37 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Schaefer:2008:DDM, author = "Robert Schaefer", title = "Debugging debugged, a metaphysical manifesto of systems integration", journal = j-SIGSOFT, volume = "33", number = "3", pages = "5:1--5:??", month = may, year = "2008", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1360602.1361095", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:37 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Systems designers will most often design to the N-1 criterion whether the designers know they are doing so or not. Systems designed to the N-1 criterion detect, isolate and (possibly) recover from at most one fault at a time. In contrast to the N-1 criterion, systems integrators must fault isolate in the presence of multiple simultaneous faults and in the absence of user guides. The purpose of this paper is to debug the debugging process used by systems integrators. To that end this paper describes the systems integration environment, identifies factors that drive the efficiency of that effort and provides a critique of the historical roots of architectural firewalls. (If there were no firewalls everything could theoretically interfere with everything else as only the stricture of time would prevent everything from happening at once. Yet a perfect firewall would be an impossibility; a Maxwell's demon of information.) This paper penultimately provides philosophical musings, a self-reflection on meanings uncovered. As this paper has strong non-linear content an attempt has been made for textual constraint by theme: I. The Systems Integration Environment II. An Efficient Systems Integration Efficiency Metric III. Architectural Investigations IV. the Problem Behind the Problem (tPBtP)", acknowledgement = ack-nhfb, articleno = "5", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Kushwaha:2008:STE, author = "Dharmender Singh Kushwaha and A. K. Misra", title = "Software test effort estimation", journal = j-SIGSOFT, volume = "33", number = "3", pages = "6:1--6:??", month = may, year = "2008", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1360602.1361211", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:37 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Software Testing is an important process of software development that is performed to support and enhance reliability and quality of the software. It consist of estimating testing effort, selecting suitable test team, designing test cases, executing the software with those test cases and examining the results produced by those executions. Studies indicate that more than fifty percent of the cost of software development is devoted to testing, with the percentage for testing critical software being even higher. Unless we can predict the testing effort and find efficient ways to perform effective testing, the percentage of development costs devoted to testing will increase significantly coupled with mismatch in project costing and development schedule. In order to estimate the testing effort, this paper makes an attempt to establish Cognitive Information Complexity Measure (CICM) as an appropriate estimation tool.", acknowledgement = ack-nhfb, articleno = "6", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Wing:2008:HSN, author = "Michael Wing", title = "{Hell}'s software nightmares", journal = j-SIGSOFT, volume = "33", number = "3", pages = "6--6", month = may, year = "2008", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1360602.1360605", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:37 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Saur:2008:RSC, author = "Joe Saur", title = "Review of {{\booktitle{Secure Coding in C and C++}} by Robert C. Seacord, Addison Wesley, 2006, paperback, ISBN 0-321-33572-4, 341 pp., \$39.99}", journal = j-SIGSOFT, volume = "33", number = "3", pages = "7:1--7:??", month = may, year = "2008", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1360602.1373360", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:37 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, articleno = "7", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Doernhoefer:2008:SNSc, author = "Mark Doernhoefer", title = "Surfing the net for {{\booktitle{Software Engineering Notes}}}", journal = j-SIGSOFT, volume = "33", number = "3", pages = "7--16", month = may, year = "2008", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1360602.1360606", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:37 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Ben-Menachem:2008:RML, author = "Mordechai Ben-Menachem", title = "Review of {{\booktitle{Modal Logic for Philosophers}} by James W. Garson, Cambridge University Press, 2006, pp. 471}", journal = j-SIGSOFT, volume = "33", number = "3", pages = "8:1--8:??", month = may, year = "2008", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1360602.1373361", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:37 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, articleno = "8", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Ben-Menachem:2008:RPS, author = "Mordechai Ben-Menachem", title = "Review of {{\booktitle{Practical Support for ISO 9001 Software Project Documentation}} by Susan K. Land and John W. Walz, IEEE Computer Society and Wiley-Interscience, 2006 (by IEEE CS), ISBN-13 978-0-471-76867-8, pp. 432}", journal = j-SIGSOFT, volume = "33", number = "3", pages = "9:1--9:??", month = may, year = "2008", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1360602.1373362", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:37 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, articleno = "9", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Neumann:2008:RPc, author = "Peter G. Neumann", title = "Risks to the public", journal = j-SIGSOFT, volume = "33", number = "3", pages = "17--28", month = may, year = "2008", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1360602.1360607", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:37 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Serfass:2008:SSP, author = "Doug Serfass and Kalyan S. Thiparthi and Coskun Bayrak", title = "Search, sort, pagination, association and (other) {CRUD}: a comparison of {ActiveScaffold} and {MyFaces} tomahawk", journal = j-SIGSOFT, volume = "33", number = "4", pages = "1:1--1:??", month = jul, year = "2008", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1384139.1384140", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:38 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Web applications have many more model objects exposed on the backend, or admin side, than they do on the front, or public side. Coding interfaces for all those models is redundant and a waste of resources when all that is needed is Search, Sort, Pagination, (support for) Association and CRUD. Implementing these interfaces can often require more programming time than the public side of an application. We will analyze an application that was developed using Ruby on Rails (or Rails) [1] and ActiveScaffold [2]. We will compare a subset of the ActiveScaffold portion of this application with an example created using Java and MyFaces Tomahawk [3]. ActiveScaffold and MyFaces Tomahawk are open source software (OSS). Our results will show that ActiveScaffold has a greater number of features and is more reusable than MyFaces Tomahawk. This information is useful to web developers responsible for creating the admin interfaces of web applications.", acknowledgement = ack-nhfb, articleno = "1", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Henderson:2008:MSD, author = "Craig Henderson", title = "Managing software defects: defect analysis and traceability", journal = j-SIGSOFT, volume = "33", number = "4", pages = "2:1--2:??", month = jul, year = "2008", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1384139.1384141", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:38 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper describes a mechanism for presenting software defect metrics to aid analysis. A graphical representation of the history of software builds is presented, that records software build quality in a way that cannot be displayed in a single numerical table, and is visually more appealing and more easily digestible than a series of related tables. The radial analysis charts can be used to represent derivative information in a two-dimensional form and is demonstrated with practical examples of Defect Analysis and Root Cause Analysis.", acknowledgement = ack-nhfb, articleno = "2", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Khemakhem:2008:EESb, author = "Sofien Khemakhem and Khalil Drira and Emna Khemakhem and Mohamed Jmaiel", title = "An experimental evaluation of {SEC+}, an enhanced search engine for component-based software development", journal = j-SIGSOFT, volume = "33", number = "4", pages = "3:1--3:??", month = jul, year = "2008", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1384139.1384143", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:38 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Current approaches for service discovery are inherently restricted to the exact querying. This may provide incomplete answers since queries are often overspecified and may lead to low precision and recall. To alleviate these problems, we achieved an experimental evaluation that uses of the enhanced search engine, SEC+. This engine is based on the subsumption mechanism and a function that calculates the semantic distance. Both the used rate and the non-functional features are considered to filter the selection. We show that such a solution can improve the quality of the search and can enhance both the recall and the precision.", acknowledgement = ack-nhfb, articleno = "3", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Kaur:2008:CPS, author = "Parminder Kaur and Hardeep Singh", title = "Certification process of software components", journal = j-SIGSOFT, volume = "33", number = "4", pages = "4:1--4:??", month = jul, year = "2008", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1384139.1384142", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:38 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Component based systems are the result of structuring a system according to particular design pattern which involves components, component frameworks, component models, component composition, component interfaces, contracts and certification. The success of component-based software engineering depends on system integrator's ability to select the most suitable components for their intended application. This is only possible if component suppliers have clear and reliable information about their component's functional and nonfunctional properties. The component attributes allow system integrator to better classify the components. This paper makes an effort to define certain properties of a component, which are helpful during their classification process. This paper also tries to enlighten the component certification/accreditation process, which helps component suppliers to issue the guarantee of claimed functional properties and quality attributes.", acknowledgement = ack-nhfb, articleno = "4", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Basci:2008:EMX, author = "Dilek Basci and Sanjay Misra", title = "Entropy metric for {XML DTD} documents", journal = j-SIGSOFT, volume = "33", number = "4", pages = "5:1--5:??", month = jul, year = "2008", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1384139.1384144", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:38 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The eXtensible Markup Language (XML) has been gaining extraordinary acceptance from many diverse enterprise software companies for their object repositories, data interchange, and development tools. Further, many different domains, organizations and content providers have been publishing and exchanging information via internet by the usage of XML and standard schemas. Efficient implementation of XML in these domains requires well designed XML schemas. In this point of view, design of XML schemas plays an extremely important role in software development process and needs to be quantified for ease of maintainability. In this paper, we propose a new metric based on the entropy concept from information theory for the assessment of the structural complexity of XML schema documents written in W3C Document Type Definition (DTD), language. The new metric has been demonstrated with examples and supported by comparison with the other well known structure metrics applied on XML schema documents.", acknowledgement = ack-nhfb, articleno = "5", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Nami:2008:COO, author = "Mohammad Reza Nami", title = "A comparison of object-oriented languages in software engineering", journal = j-SIGSOFT, volume = "33", number = "4", pages = "6:1--6:??", month = jul, year = "2008", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1384139.1384145", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:38 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Object-oriented programming is still a relatively new technology in the world of web development. Object-oriented programming languages directly support the object notions of classes, inheritance, information hiding, and dynamic binding. In Object-Oriented Programming, a program is seen as comprising a collection of individual modules, or objects, that act on each other. Each of these objects could be seen as an independent program in itself, with a distinct role or responsibility. Object-Oriented Programming provides greater flexibility and easier maintenance across large systems and can sometimes make understanding and analyzing complex procedures a lot easier. This paper presents a comparison of object-oriented programming in software engineering including properties of Java, C++, Eiffel, and Smalltalk languages.", acknowledgement = ack-nhfb, articleno = "6", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Notkin:2008:ATFb, author = "David Notkin", title = "{ACM TOSEM}: {FAQs} and figures", journal = j-SIGSOFT, volume = "33", number = "4", pages = "6--6", month = jul, year = "2008", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1384139.1384148", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:38 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "It's been a while since I've written a column on TOSEM. One reason for this is, of course, that I simply haven't gotten to it. The other reason for this is because of you: I've had few, if any, questions or comments about TOSEM from the SEN readership. If this was because everything at TOSEM was perfect and we were so transparent that you knew everything we knew, I'd be thrilled. But that's just never the case. So, please send me email with your comments, questions, concerns, TOSEM-related jokes, or whatever.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Srivastva:2008:TCP, author = "Praveen Ranjan Srivastva and Krishan Kumar and G. Raghurama", title = "Test case prioritization based on requirements and risk factors", journal = j-SIGSOFT, volume = "33", number = "4", pages = "7:1--7:??", month = jul, year = "2008", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1384139.1384146", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:38 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "To test software products effectively, large number of test cases are designed. But it is nearly impossible to execute all the tests due to tight time constraints and some other reasons such as availability of experts etc. Due to these reasons, the necessity of reducing the number of test cases comes into existence. Test case prioritization helps to reduce the number of test cases. This paper presents an approach that focuses on prioritizing the test cases. Proposed approach prioritizes test cases on the basis of requirements identified and risk factors that can occur in a software project.", acknowledgement = ack-nhfb, articleno = "7", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Doernhoefer:2008:SNSd, author = "Mark Doernhoefer", title = "Surfing the net for {{\booktitle{Software Engineering Notes}}}", journal = j-SIGSOFT, volume = "33", number = "4", pages = "7--16", month = jul, year = "2008", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1384139.1384149", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:38 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This column usually focuses on web sites that explore various software engineering topics such as requirements engineering, development methodologies, test strategies, data and database engineering and so on. This month, however, I thought I'd talk about the people who have contributed to the state of the software engineering art by developing and refining the approaches and methodologies that we use every day. Sometimes we take the simple things for granted. For example, the notion of software modules seems second nature to most of us. That would not have been true had it not been for David Parnas. So for this month's column I thought I'd focus on web sites dedicated to the people and, by extension, their work.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Varnell-Sarjeant:2008:MMR, author = "Julia F. Varnell-Sarjeant", title = "Managing a man-rated software development program via risk mitigation", journal = j-SIGSOFT, volume = "33", number = "4", pages = "8:1--8:??", month = jul, year = "2008", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1384139.1384147", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:38 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper discusses a different approach to managing risk in a man-rated software system. This approach emphasizes identifying and targeting the right risks in order to apply effective mitigation activities. It addresses the risk of not understanding the customer wishes, of unreliable software product, and selection of inappropriate reuse. When the right risks are identified with sufficient granularity, resources can be focused on mitigating only those risks. Resources are not spent mitigating general risks or non-risks. The cost can be more correctly estimated and overruns controlled.", acknowledgement = ack-nhfb, articleno = "8", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Neumann:2008:RPd, author = "Peter G. Neumann", title = "Risks to the public", journal = j-SIGSOFT, volume = "33", number = "4", pages = "17--26", month = jul, year = "2008", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1384139.1384150", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:38 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Edited by Peter G. Neumann (Risks Forum Moderator and Chairman of the ACM Committee on Computers and Public Policy), plus personal contributions by others, as indicated. Opinions expressed are individual rather than organizational, and all of the usual disclaimers apply. We address problems relating to software, hardware, people, and other circumstances relevant to computer systems. To economize on space, we include pointers to items in the online Risks Forum: (R i j) denotes RISKS vol i number j. Cited RISKS items generally identify contributors and sources, together with URLs. Official RISKS archives are available at www.risks.org (which redirects to Newcastle and gets you nice html formatting and a search engine courtesy of Lindsay Marshall; http://catless.ncl.ac.uk/Risks/i.j.html gets you (R i j)) and at ftp://www.sri.com/risks.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Bass:2008:LMS, author = "Len Bass and Brian Berenbach", title = "{Leadership and Management in Software Architecture (LMSA'08)}: a report on an {ICSE} workshop", journal = j-SIGSOFT, volume = "33", number = "4", pages = "27--29", month = jul, year = "2008", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1384139.1384151", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:38 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This is a report of the Leadership and Management in Software Architecture workshop that took place at ICSE 2008. The workshop focused on the non-technical aspects of software architecture. In particular, it focused on the skills that a software architect should have as well as the type of support an organization should provide for the architect.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Chroust:2008:HCC, author = "Gerhard Chroust", title = "History of computers can raise student's interest", journal = j-SIGSOFT, volume = "33", number = "4", pages = "29--29", month = jul, year = "2008", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1384139.1384152", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:38 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "What was software development back in the 1960's and how did it evolve?", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Doernhoefer:2008:SNSe, author = "Mark Doernhoefer", title = "Surfing the net for {{\booktitle{Software Engineering Notes}}}", journal = j-SIGSOFT, volume = "33", number = "5", pages = "1:1--1:??", month = sep, year = "2008", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1402521.1402530", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:39 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, articleno = "1", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Neumann:2008:RPe, author = "Peter G. Neumann", title = "Risks to the public", journal = j-SIGSOFT, volume = "33", number = "5", pages = "2:1--2:??", month = sep, year = "2008", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1402521.1402532", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:39 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Edited by Peter G. Neumann (Risks Forum Moderator and Chairman of the ACM Committee on Computers and Public Policy), plus personal contributions by others, as indicated. Opinions expressed are individual rather than organizational, and all of the usual disclaimers apply. We address problems relating to software, hardware, people, and other circumstances relevant to computer systems. To economize on space, we include pointers to items in the online Risks Forum: (R i j) denotes RISKS vol i number j. Cited RISKS items generally identify contributors and sources, together with URLs. Official RISKS archives are available at www.risks.org (which redirects to Newcastle and gets you nice html formatting and a search engine courtesy of Lindsay Marshall; http://catless.ncl.ac.uk/Risks/i.j.html gets you (R i j)) and at ftp://www.sri.com/risks.", acknowledgement = ack-nhfb, articleno = "2", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Paech:2008:RWC, author = "Barbara Paech and Patrick Heymans and Anne Persson", title = "Report working conference on requirements engineering: foundation for software quality {(REFSQ'08)}", journal = j-SIGSOFT, volume = "33", number = "5", pages = "3:1--3:??", month = sep, year = "2008", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1402521.1402529", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:39 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "REFSQ'08 took place over the 16 th and 17 th June 2008 in the lively French city of Montpellier. 40 participants spent two days very intensively discussing the contributions of 17 papers, their implications and combinations. In these discussions some recurrent topics and new trends were emphasized: the importance of understanding the context and effectiveness of RE techniques, the multiplicity of requirements representations and their integration, the support for creativity, the necessity to make the body of knowledge better accessible e.g. through an open source RE tool community, and the challenges of RE for innovative or large-scale systems as well as of RE decision making in an uncertain environment.", acknowledgement = ack-nhfb, articleno = "3", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Babu:2008:MBD, author = "Chitra Babu and R. Vijayalakshmi", title = "Metrics-based design selection tool for aspect oriented software development", journal = j-SIGSOFT, volume = "33", number = "5", pages = "4:1--4:??", month = sep, year = "2008", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1402521.1402522", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:39 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Software metrics provide a means for software practitioners to assess the quality of their software. Ideally, this information should be available earlier in the software development lifecycle, since changes are much more expensive to incorporate in the later stages. Design level metrics offer an elegant way of capturing this information. Research in software design metrics has focused primarily on procedural and object oriented software. However, such metrics are currently not available for Aspect Oriented Software Development (AOSD), which is an emerging paradigm. Aspect Oriented Programming (AOP) is an approach that allows programmers to modularize crosscutting concerns that are scattered across multiple modules. Separation of concerns through aspects has the advantages of increased reliability, adaptability and better reuse. The objective of this paper is to propose suitable metrics for the Aspect Oriented Design (AOD) and to develop a tool that will automatically select a better design based on the proposed metrics. In this paper, class and sequence diagrams are used to represent an AOD. The proposed design level metrics are applied to two alternative designs of an illustrative case study. The tool selects the design that better suits stakeholder requirements, based on logical inferences obtained from these metrics regarding the quality of the Aspect Oriented software.", acknowledgement = ack-nhfb, articleno = "4", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Mishra:2008:SOS, author = "Deepti Mishra and Alok Mishra", title = "Some observations on staff estimation metrics for object: oriented software engineering", journal = j-SIGSOFT, volume = "33", number = "5", pages = "5:1--5:??", month = sep, year = "2008", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1402521.1402523", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:39 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Object-Oriented software projects are becoming more popular than structured (functional) technology based projects in the present scenario. Object Technology (OT) offers support to deliver products to market more quickly and to provide high quality products with lower maintenance costs. As expertise in managing Object-Oriented (OO) project grows, such a body of OO metric knowledge will become increasingly usable across the Industry. There is need for good OO metrics for both process and product management. Estimation is an important field of software engineering. In this work we have proposed model for staffing estimation by using available metrics in OO and taking affecting factors into consideration.", acknowledgement = ack-nhfb, articleno = "5", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Mishra:2008:DIC, author = "Deepti Mishra and Alok Mishra", title = "Design issues in client-server software maintenance", journal = j-SIGSOFT, volume = "33", number = "5", pages = "6:1--6:??", month = sep, year = "2008", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1402521.1402524", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:39 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Software requires maintenance because there are often some errors remaining in the system that must be removed as they are discovered. Even without errors, software frequently undergoes change. The main reason is that software must be enhanced to include more features. Client-server software maintenance is not as simple as centralized software maintenance because client-server software systems are more complex than software for centralized systems. Cost associated with software maintenance is top most cost in software development, so there is a need to develop software which has maintainability i.e. the ease with which a system can be maintained. Therefore, the design and development of client-server software systems should be done keeping in mind the maintainability of the resultant software systems. There are various design issues related with the maintainability of the software. If we take care of these issues at the time of design, then the resultant system will have better maintainability and thus maintenance efforts of such system will be reduced.", acknowledgement = ack-nhfb, articleno = "6", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Riehle:2008:PUC, author = "Richard Riehle", title = "Playscript for use cases", journal = j-SIGSOFT, volume = "33", number = "5", pages = "7:1--7:??", month = sep, year = "2008", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1402521.1402525", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:39 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The concept of use case has become popular in developing requirements for software systems. It is even recommended as an inherent part of the Unified Modeling Language (UML). An early predecessor of the use case for systems and procedures practice in the 1960's was the Playscript procedure. This article describes how Playscript can contribute to better use cases.", acknowledgement = ack-nhfb, articleno = "7", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Tavares:2008:GIO, author = "Andre L. C. Tavares and Marco Tulio Valente", title = "A gentle introduction to {OSGi}", journal = j-SIGSOFT, volume = "33", number = "5", pages = "8:1--8:??", month = sep, year = "2008", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1402521.1402526", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:39 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The Open Services Gateway Initiative (OSGi) is a framework that supports the implementation of component-based, service-oriented applications in Java. The framework manages the life-cycle of modules (called bundles in OSGi) and provides means to publish and search for services. Moreover, it supports the dynamic install and uninstall of bundles. Nowadays, OSGi is used in many application domains, including mobile phones, embedded devices, and application servers. In this paper, we provide a gentle introduction to the basic services provided by OSGi. The presentation is guided by a simple case study, involving the implementation of a Dictionary System.", acknowledgement = ack-nhfb, articleno = "8", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Vinita:2008:REO, author = "Vinita and Amita Jain and Devendra K. Tayal", title = "On reverse engineering an object-oriented code into {UML} class diagrams incorporating extensible mechanisms", journal = j-SIGSOFT, volume = "33", number = "5", pages = "9:1--9:??", month = sep, year = "2008", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1402521.1402527", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:39 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Reverse engineering is the key idea for reconstruction of any existing system. In this paper, we propose an algorithm to reverse engineer an object-oriented code into Unified Modeling Language (UML) class diagram. Our algorithm is very general in nature and can be applied to any object-oriented code irrespective of the object-oriented programming language. In our paper we consider an object-oriented pseudocode similar to C++ to implement our algorithm. Some of the researchers have dealt in the past the problem of reverse engineering an object-oriented code to UML class diagrams. However, none of these researchers have treated all the constructs available in UML class diagrams. Unlike the previously done work on reverse engineering into UML, our algorithm generates rules for a complete set of constructs available in UML class diagrams. It includes classes, relationships, objects, attributes, operations, inheritance, associations, interfaces and other extensible mechanisms also. This algorithm can be viewed as a solution to reverse engineer any available object-oriented software. An application for the implementation of above said rules using C++ code is also included in the paper. We thoroughly compare our work with the similar type of earlier work in this area and uncover the deficiencies in these previous available works. Moreover our motive in this paper is to prepare rules to reverse engineer C++ code into UML class diagrams and not to generate any tools.", acknowledgement = ack-nhfb, articleno = "9", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Xia:2008:PSA, author = "Feng Xia and Longhua Ma and Zhe Peng", title = "Programming {Scilab} in {ARM Linux}", journal = j-SIGSOFT, volume = "33", number = "5", pages = "10:1--10:??", month = sep, year = "2008", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1402521.1402528", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:39 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Scilab is a free and open source alternative to commercial scientific software packages for numerical computations. It provides an open programming environment along with a large number of powerful primitives. To realize the full potential of Scilab in embedded systems, this paper presents programming techniques essential for using Scilab in the ARM Linux environment. The Scilab package that usually runs on general-purpose computers is ported to the embedded Linux platform with an ARM9 processor. The programming of embedded software and hardware drivers using the ported Scilab package is addressed. Examples are given for illustrating the programming techniques. The cost of the embedded platform developed in this work is very low thanks to the free nature of the software packages used. The flexibility of embedded software built on this platform can be maximized since the source code is open.", acknowledgement = ack-nhfb, articleno = "10", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Booch:2008:OOA, author = "Grady Booch and Robert A. Maksimchuk and Michael W. Engle and Bobbi J. Young and Jim Connallen and Kelli A. Houston", title = "Object-oriented analysis and design with applications, third edition", journal = j-SIGSOFT, volume = "33", number = "5", pages = "11:1--11:??", month = sep, year = "2008", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1402521.1413138", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:39 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, articleno = "11", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Berkun:2008:APM, author = "Scott Berkun", title = "The art of project management", journal = j-SIGSOFT, volume = "33", number = "5", pages = "12:1--12:??", month = sep, year = "2008", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1402521.1413139", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:39 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, articleno = "12", fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Romanovsky:2008:DID, author = "Alexander Romanovsky", title = "{DEPLOY}: industrial deployment of advanced system engineering methods for high productivity and dependability", journal = j-SIGSOFT, volume = "33", number = "6", pages = "1--3", month = nov, year = "2008", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1449603.1449612", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:40 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The work of the new FP7 ICT DEPLOY Integrated Project (February 2008 --- January 2012) [1] is driven by the tasks of achieving and evaluating industrial take-up, initially by DEPLOY industrial partners, of DEPLOY methods and tools, together with the necessary further research on methods and tools.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Grover:2008:MCG, author = "P. S. Grover and Rajesh Kumar and Avadhesh Kumar", title = "Measuring changeability for generic aspect-oriented systems", journal = j-SIGSOFT, volume = "33", number = "6", pages = "1--5", month = nov, year = "2008", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1449603.1449610", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:40 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Maintenance of software systems has become a major concern for software developers and users. In environments, where software changes are frequently required to improve software quality, chan-geability is an important characteristic of maintainability in ISO/IEC 9126 quality standards. Many researchers and practition-ers have proposed changeability assessment techniques for Object-Oriented Programming (OOP) and Aspect-Oriented Programming (AOP). To the best of our knowledge, no one has proposed chan-geability assessment technique for generic Aspect-Oriented (AO) Systems. AOP is an emerging technique that provides a means to clearly encapsulate and implement aspects that crosscut other modules. In this paper, we have defined a generic changeability assessment technique that takes into account two well known fami-lies of available AOP languages viz, AspectJ and CaesarJ. A co-relation analysis between changeability and dependency has been performed. Result shows that highly dependent AO systems will absorb low changeability.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Singh:2008:DRM, author = "Paramvir Singh and Hardeep Singh", title = "{DynaMetrics}: a runtime metric-based analysis tool for object-oriented software systems", journal = j-SIGSOFT, volume = "33", number = "6", pages = "1--6", month = nov, year = "2008", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1449603.1449614", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:40 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Many Runtime/Dynamic metric suites for object-oriented software systems have been devised over the past decade. This paper introduces a new dynamic metric-based evaluation and analysis tool for Java and C++ software called DynaMetrics that is capable of evaluating and analyzing all the major dynamic metrics known till date. DynaMetrics also compares them with their static counterparts in order to find the usefulness of individual metric. The paper is part of our ongoing research on runtime/dynamic metrics for object-oriented software systems.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Kalaimagal:2008:RSC, author = "Sivamuni Kalaimagal and Rengaramanujam Srinivasan", title = "A retrospective on software component quality models", journal = j-SIGSOFT, volume = "33", number = "6", pages = "1--10", month = nov, year = "2008", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1449603.1449611", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:40 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The academic and commercial sectors have shown an interest in Component Based Software Development (CBSD) because developing and using various component forms as building blocks can significantly enhance software based system development and use. The perspective of reduced development costs and shorter life-cycles acts as a motivation for this interest. The idea is to create high quality parts and join them together to form a functioning system. One of the most critical processes in CBSD is the selection of appropriate COTS components that meet the user's requirements. An important step in the component selection process is the evaluation of components using quality models. Current component selection approaches try to propose appropriate quality models for the effective assessment of such components. These proposals attempt to define quality characteristics, attributes, and metrics which are specific to the particular nature of components and CBSD. This paper presents a retrospective on the current quality models proposed and are available for the evaluation of software components.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Sharma:2008:EQS, author = "Arun Sharma and Rajesh Kumar and P. S. Grover", title = "Estimation of quality for software components: an empirical approach", journal = j-SIGSOFT, volume = "33", number = "6", pages = "1--10", month = nov, year = "2008", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1449603.1449613", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:40 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Component-Based Development (CBD) approach now is widely accepted in software industry. This approach enables efficient application development through the integration of already developed software components. The success of these applications heavily depends upon the selection of appropriate components to fit customer requirements. Therefore it is very necessary to evaluate the quality of components before using them in the final system. Quality models proposed so far can not be fully implemented as-it-is on components and component-based systems (CBS) due to architectural differences in the development approach. Present paper surveys a number of quality models for traditional and component-based systems and proposes a new model for CBS by proposing some new characteristics, which may be very relevant in the context of components. All the quality characteristics may not be of prime importance for an application to be developed for a specific domain. Therefore, it is necessary to identify only those characteristics/sub-characteristics, which may have higher priorities over the others. The present work uses Analytical Hierarchy Process (AHP) to assign the weight values to the characteristics for the proposed model. These weight values are then used to evaluate the quality contribution of sub-characteristics, characteristics and then finally the overall quality of the component by using the appropriate metrics. This approach can be used to identify and select better quality component among several others which can be used in the final system.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Doernhoefer:2008:SNSf, author = "Mark Doernhoefer", title = "Surfing the net for {{\booktitle{Software Engineering Notes}}}", journal = j-SIGSOFT, volume = "33", number = "6", pages = "5--14", month = nov, year = "2008", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1449603.1449606", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:40 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Neumann:2008:RPf, author = "Peter G. Neumann", title = "Risks to the public", journal = j-SIGSOFT, volume = "33", number = "6", pages = "15--24", month = nov, year = "2008", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1449603.1449607", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:40 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Edited by Peter G. Neumann (Risks Forum Moderator and Chairman of the ACM Committee on Computers and Public Policy), plus personal contributions by others, as indicated. Opinions expressed are individual rather than organizational, and all of the usual disclaimers apply. We address problems relating to software, hardware, people, and other circumstances relevant to computer systems. To economize on space, we include pointers to items in the online Risks Forum: (R i j) denotes RISKS vol i number j. Cited RISKS items generally identify contributors and sources, together with URLs. Official RISKS archives are available at www.risks.org (which redirects to Newcastle and gets you nice html formatting and a search engine courtesy of Lindsay Marshall; http://catless.ncl.ac.uk/Risks/i.j.html gets you (R i j)) and at ftp://www.sri.com/risks.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Riehle:2008:GI, author = "Richard Riehle", title = "The {GSwERC} initiative", journal = j-SIGSOFT, volume = "33", number = "6", pages = "25--25", month = nov, year = "2008", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1449603.1449608", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:40 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Article 5 ID: 1449608 DOI: 10.1145/1449603.1449608 It has long been recognized that there is a need for a comprehensive model for graduate software engineering education in the U.S. and worldwide. This article describes such an initiative and invites interested parties to participate.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Rombach:2008:IRP, author = "Dieter Rombach and Marcus Ciolkowski and Ross Jeffery and Oliver Laitenberger and Frank McGarry and Forrest Shull", title = "Impact of research on practice in the field of inspections, reviews and walkthroughs: learning from successful industrial uses", journal = j-SIGSOFT, volume = "33", number = "6", pages = "26--35", month = nov, year = "2008", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1449603.1449609", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:40 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Software inspections, reviews, and walkthroughs have become a standard process component in many software development domains. Maturity level 3 of the CMM-I requires establishment of peer reviews [12] and substantial sustained improvements in quality and productivity have been reported as a result of using reviews ([16], [21], [22], [27]). The NSF Impact project identifies the degree to which these industrial success cases have been instigated and improved by research in software engineering. This research identifies that there is widespread adoption of inspections, reviews or walkthroughs but that companies do not generally exploit their full potential. However there exist sustained industrial success cases with respect to the wide-spread and measurably successful application of them. It also identifies research in software engineering that can be credibly documented as having influenced the industrial success cases. Credible documentation may exist in the form of publications or documented reports by witnesses. Due to the semi-formal nature of inspections, reviews, and walkthroughs, a specific focus is given to empirical research results as motivators for adoption. Through the examination of one detailed case study, it is shown that software engineering research has had a significant impact on practice and that the impact can be traced in this case from research to that practice. The case study chosen provides evidence of both success and failure regarding sustained application in practice. Thus the analysis of historic impact chains of research reveals a clear impact of software engineering research on sustained industrial success for inspections, reviews and walkthroughs. More importantly, in impact chains where the empirical results have not been established, we conclude that success has not been achieved or has not been sustained. The paper closes with (1) lessons learned for creating the sustained use and impact of semi-formal software engineering processes, (2) a request for researchers and practitioners to further consider how their work can improve the effectiveness of research and practice, and (3) a request to contribute additional success cases and impact factors to the authors database for future enhancements of this paper.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Lee:2009:PRA, author = "Tony Lee", title = "Peer review assessment standard for object oriented analysis and design", journal = j-SIGSOFT, volume = "34", number = "1", pages = "1--3", month = jan, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1457516.1457525", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:41 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "In this paper, the author discusses some peer review pitfalls, as well as, the key elements in an effective peer review session. The paper also provides the assessment standard checklist for object-oriented (OO) analysis and design professionals during a peer review inspection.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Chahal:2009:MSS, author = "Kuljit Kaur Chahal and Hardeep Singh", title = "Metrics to study symptoms of bad software designs", journal = j-SIGSOFT, volume = "34", number = "1", pages = "1--4", month = jan, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1457516.1457522", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:41 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Design of a software product largely influences its quality. Good design is one of the pre-requisites of a high quality product. Me-trics are usually used to assess the quality of software designs. The metrics for object oriented design focus on design characteristics, such as abstraction, coupling, cohesion, inheritance, polymorphism and encapsulation and are applied at attribute, method, class, pack-age, file and systems levels. Design metrics help the software de-signers to understand the problem areas in a design and to develop prediction models. A number of studies have modeled relation-ships between object oriented metrics and reusability, defects and faults, maintainability, and effort, and cost savings. So design me-trics can give an early indication of goodness of design and thus of the software product developed using that design. If designers know symptoms of bad design then it is helpful for them to avoid the bad design. In this paper, we have explored some of the symp-toms of bad design and studied metric relationships which high-light these symptoms.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Pandey:2009:MSD, author = "R. K. Pandey", title = "Managing software design complexity: facade vs role-based design", journal = j-SIGSOFT, volume = "34", number = "1", pages = "1--4", month = jan, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1457516.1457526", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:41 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Good software design practice calls for minimizing coupling and maximizing cohesiveness. The use of roles in CBSE has been shown to help in achieving the above-mentioned design goal. The idea of role-based component design is that the public interface is split into smaller interfaces that model the different roles a component can take in a system. In addition, we have the design pattern facade which is just opposite to what role-based design philosophy advocates. Yet both design approaches claim to reduce the overall complexity of the system. In this paper we make an investigation into these two design approaches in order to understand how these two contradictory design principles can help the designer in managing complexity.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Singh:2009:AMP, author = "Yogesh Singh and Pradeep Kumar Bhatia and Omprakash Sangwan", title = "{ANN} model for predicting software function point metric", journal = j-SIGSOFT, volume = "34", number = "1", pages = "1--4", month = jan, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1457516.1460352", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:41 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Software Engineering measurement and analysis specially, size estimation initiatives have been in the center of attention for many firms. Function Point (FP) metric is among the most commonly used techniques to estimate the size of software system projects or software systems for measuring the functionality delivered by a system. In this paper we explore an alternative, Artificial Neural Network (ANN) approach for predicting function Point. We proposed an ANN model to explore neural network as tool for function point metric. A multilayer feed forward network is trained using backpropagation algorithm and demonstrated to be suitable. The training and validation data is randomly selected from the data repository of 365 projects [7]. The experimental results of two validation sets each of 55 projects indicate that the Mean Absolute Relative Error (MARE) was 0.198 and 0.145 of ANN model and shows that ANN model is a competitive model as Function Point Metric.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Babu:2009:FMT, author = "Chitra Babu and Harshini Ramnath Krishnan", title = "Fault model and test-case generation for the composition of aspects", journal = j-SIGSOFT, volume = "34", number = "1", pages = "1--6", month = jan, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1457516.1457521", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:41 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Aspect-Oriented Programming (AOP) is an emerging paradigm that enhances the modularity of Object-Oriented Programming (OOP) by eliminating tangling and scattering in the code. The scattering code is encapsulated within a module called an Aspect. A join point is an execution point in a program. When there is more than one aspect sharing the same join point then it becomes necessary to identify the faults that occur during their composition. A Fault model is instrumental in identifying the faults that can occur in any software system. Research works so far have focused on the composition of Aspects only from the implementation standpoint. It is necessary to identify these faults during the design process, early in the software development lifecycle. This would help in adopting better coding strategies that result in modular, reusable and maintainable code. Towards this objective, this paper proposes a candidate fault model that identifies the faults which occur during Aspect Composition from the design. Use-case scenarios and sequence diagrams are used to reflect the design of the system. The proposed fault model identifies the faults from the sequence diagrams. Test cases are generated from the design using black-box testing strategy. The proposed fault model is also applied to an illustrative case study and has been validated using test case coverage analysis.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Singh:2009:ASV, author = "Yogesh Singh and Arvinder Kaur and Ruchika Malhotra", title = "Application of support vector machine to predict fault prone classes", journal = j-SIGSOFT, volume = "34", number = "1", pages = "1--6", month = jan, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1457516.1457529", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:41 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Empirical validation of software metrics to predict quality using machine learning methods is important to ensure their practical relevance in the software organizations. It would also be interesting to know the relationship between object-oriented metrics and fault proneness. In this paper, we build a Support Vector Machine (SVM) model to find the relation-ship between object-oriented metrics given by Chidamber and Kemerer and fault proneness. The proposed model is empirically evaluated using open source software. The performance of the SVM method was evaluated by Receiver Operating Characteristic (ROC) analysis. Based on these results, it is reasonable to claim that such models could help for planning and performing testing by focusing resources on fault-prone parts of the design and code. Thus, the study shows that SVM method may also be used in constructing software quality models. However, similar types of studies are required to be carried out in order to establish the acceptability of the model.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Diev:2009:QCR, author = "Sergey Diev", title = "Querying complex requirements", journal = j-SIGSOFT, volume = "34", number = "1", pages = "1--7", month = jan, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1457516.1457523", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:41 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "For large and complex projects the structure of requirements becomes a factor of utmost importance. This paper suggests a small set of primitive constructs that allow requirements to be expressed and structured in various views. Among ways to increase the quality of requirements this paper considers (i) the network metaphor and (ii) conceptual modeling, which includes requirements crystallization activity. Then query types that follow the suggested meta-model are introduced and discussed. These queries operate at several levels: text, element, diagram, and model. This paper has a methodological flavor at two levels: First, it suggests a specific way of developing requirements; second, it aims to demonstrate the relationship between the meta-model we choose and the set of query types we build for it. A visual editor VR (Visual Requirements) has been developed to support the approach and queries described here. Among other applications, VR has been used in the maintenance context to estimate, on the base of use cases models, the size of more than a hundred of software initiatives, including multi-million-dollar projects.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Suman:2009:SME, author = "Rajiv Ranjan Suman and Rajib Mall", title = "State model extraction of a software component by observing its behavior", journal = j-SIGSOFT, volume = "34", number = "1", pages = "1--7", month = jan, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1457516.1460353", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:41 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "We propose a novel black-box approach to reverse engineer the state model of a software component. We assume that in different states of a component, different subsets of its services are supported and state of a component may change due to invocation of its services. Therefore, we construct the state model of a component by tracking the changes (if any) to its supported services that occur after accessing its services. Case study carried out by us shows that our approach can generate the state model with sufficient accuracy and completeness for simple components.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Richter:2009:CBN, author = "Karsten Richter", title = "Causal-based networks supporting process improvement", journal = j-SIGSOFT, volume = "34", number = "1", pages = "1--9", month = jan, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1457516.1457527", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:41 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper includes a causal-based modelling of software measurement processes in order to clarify the real situations in the empirical software engineering field. A first overview about existing causal network approaches shows the problems and possible benefits using these formal techniques in the software engineering area. The definition and extension of the causal modelling using causal networks helps to understand the relationships between the different software process artefacts and their causalities. The causal network based process model (CNPM) concept is based on the causal network idea of Pearl. The description of first applications of the CNPM approach for CMMI demonstrates the empirical reasoning of the software improvement processes in an explicit manner.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Jiau:2009:TCD, author = "Hewijin Christine Jiau and Jinghong Cox Chen", title = "Test code differencing for test-driven refactoring automation", journal = j-SIGSOFT, volume = "34", number = "1", pages = "1--10", month = jan, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1457516.1457524", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:41 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Test-driven refactoring (TDR) requires the developer to finish test adaptation before applying refactoring. However, the current approaches of TDR usually compromise the principle of Test-First and make the refactoring intent implicit. The failed delivery of refactoring intent hinders the opportunity of test-driven refactoring automation (TDRA). In this paper, a test code differencing algorithm TestDiff is provided to extract refactoring intents from test adaptation. A tool, Refiner, is demonstrated and evaluated by real cases.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Schaefer:2009:SMD, author = "Robert Schaefer", title = "Software maturity: design as dark art", journal = j-SIGSOFT, volume = "34", number = "1", pages = "1--36", month = jan, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1457516.1457528", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:41 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "What does it mean for a profession to be considered mature? How valid is the claim that software faults may be excused due to the immaturity of the field? In giving that claim serious consideration, one might assume that there are stages to maturity, that maturity doesn't arrive in the world fully formed. If so, an understanding of maturity may be found from the viewing of the differences across various professions in terms of stages of maturity, perhaps signaled by how a profession detects and handles faults. The question thus becomes more refined, ``Are software professionals more or less mature than their counterparts in respective fields in regards to the detection and handling of faults?'' Which raises the previously begged but now follow-up question: ``To whom should software professionals be compared?'' The down-select for professions to choose for this comparison was straightforward. First, to disregard a comparison with the physical sciences as one could make a strong case that programming is nothing more than data and rules. Ones and zeros may represent any object, on, off, true, not true, apples, oranges, aelopiles and zeppelins, and that rules on objects are infinitely mutable, literally valid now and invalid one-half a tenth of a millisecond later. Software is distinctively arbitrary where the physical sciences are not (well, except perhaps for the quantum and the astro). In joining software with the soft sciences, the likeliest candidates for comparison were identified as the fields of economics and law. Economics at first glance appears to be a combination of mathematics and logic applied to finance, and law appears to be a combination of philosophy and logic applied to rules of conduct. There also appears a commonality with these particular soft sciences and software in the attributes of design. Professionals in the field of economics design models of the world in terms of money. Professionals in the field of law design models of the world in terms of behavioral control, and software professionals design models for any purpose in any terms that one may choose to take. Software may be used to model both economics and law, so why not compare software professionals to their counterparts in economics and law. On further investigation in development of this text, the rationale for this investigation hurt the premise, for if one considered that software is applied logic, then software has no reason to be considered an immature field. Logic and philosophy go back at least to the ancient Greeks, to Aristotle! If software is immature in the light of history, then what would that say about the maturity of logic and philosophy? (Hush, you cynics!) This author began to have severe doubts, that perhaps this whole line of investigation was naively misguided. Further investigation yielded additional insights, that although maturity may be an interesting topic in its own right, perhaps it wasn't key to understanding software faults, that perhaps instead, it was the art of design, design being a common feature across software, economics and law. With this new direction in mind, and then taking one step back for perspective, perhaps the common feature across the professions could be the design of design? And so this author meandered on, down paths less traveled and more shadowed (note the subtitle), observing and describing all of interest, and taking off yet again in directions oblique, the instinct of authorial self-restraint placed in competition with curiosity, all tugged and pulled and fretted at this author. The conflict of design choice reflected in an investigation of design choice! Oh, how self-similar! Deja vu all over again! The themes of this paper that continued beyond the initial investigation of maturity are as follows: A study of games versus competition in design. The limits of competition and the implications of these limits. A revisit of standing philosophical problems in computer science, in particular: Chess, Searle's Chinese Room and the Turing Test, studied as competitions. An exploration of the meta in design. Conclusions, which were in the first draft imagined to be most unlikely given the initial premise but in revision became necessary and unavoidable.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Doernhoefer:2009:SNSa, author = "Mark Doernhoefer", title = "Surfing the net for {{\booktitle{Software Engineering Notes}}}", journal = j-SIGSOFT, volume = "34", number = "1", pages = "7--16", month = jan, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1457516.1457519", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:41 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Neumann:2009:RPa, author = "Peter G. Neumann", title = "Risks to the public", journal = j-SIGSOFT, volume = "34", number = "1", pages = "17--26", month = jan, year = "2009", CODEN = "SFENDP", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:41 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Edited by Peter G. Neumann (Risks Forum Moderator and Chairman of the ACM Committee on Computers and Public Policy), plus personal contributions by others, as indicated. Opinions expressed are individual rather than organizational, and all of the usual disclaimers apply. We address problems relating to software, hardware, people, and other circumstances relevant to computer systems. To economize on space, we include pointers to items in the online Risks Forum: (R i j) denotes RISKS vol i number j. Cited RISKS items generally identify contributors and sources, together with URLs. Official RISKS archives are available at www.risks.org (which redirects to Newcastle and gets you nice html formatting and a search engine courtesy of Lindsay Marshall; http://catless.ncl.ac.uk/Risks/i.j.html gets you (R i j)) and at ftp://www.sri.com/risks.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Daughtry:2009:CRS, author = "John Daughtry and Janet Burge and John M. Carroll and Colin Potts", title = "Creativity and rationale in software design", journal = j-SIGSOFT, volume = "34", number = "1", pages = "27--29", month = jan, year = "2009", CODEN = "SFENDP", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:41 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "An NSF sponsored workshop on Creativity and Rationale in Software Design was held at University Park, PA in June, 2008. The participants represented the spectrum of software design, which was reflected in the discussions. This report summarizes the workshop with respect to the discipline of software engineering.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Pandey:2009:RSE, author = "R. K. Pandey", title = "Relativity in software engineering measurements", journal = j-SIGSOFT, volume = "34", number = "2", pages = "1--3", month = mar, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1507195.1507211", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:42 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Though the relevance of the term relativity in software engineering measurements may appear strange, as the term has been known to have been associated with the name of the famous physicist of the 20th century, Albert Einstein, for his landmark work on the theory of relativity. The basic idea behind the theory of relativity is that since space and time are relative concepts rather than absolute accordingly physical measurements are also relative not absolute, and that is how the principle of length contraction and time dilation were discovered. Somewhat similar phenomenon is observed in the software engineering measurements of various attributes of the software products, software processes and software projects. For example, the value of LOC metric because of no standard definition of line of source code differs from language to language. Similarly Halstead's software science metrics differs depending upon what implementation language is used. In this paper an investigation is made into such aspects of software engineering metrics and their overall impact on the software development activities.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Bagchi:2009:MSD, author = "Tapan P. Bagchi", title = "Models for software defects and testing strategies", journal = j-SIGSOFT, volume = "34", number = "2", pages = "1--4", month = mar, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1507195.1507202", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:42 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This note analytically assesses the risk of releasing defective software that cannot be exhaustively tested, and of needlessly testing defect-free software. Specifically, it quantifies the probability of committing Type I ($ \alpha $) and Type II errors ($ \beta $) in software development when one may release software that still is faulty or do needless testing since the test methods themselves may not be perfect. The study uses Truncated-Poisson and geometric distributed path lengths and Bernoulli-type inspection errors to link $ \alpha $ and $ \beta $ to software design features, the development philosophies employed, and certain aspects that include code quality, cyclomatic complexity and the average length of basis paths. For risk reduction this study finds quantitative justification for raising test coverage, perfecting the test methods, the adoption of recent innovations and programming methods such as component-based design, SOA and XP as ways to raise the likelihood that the product developed will be fault free. Results are relatively robust with respect to the probability distributions assumed.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Nelson:2009:CWQ, author = "Stephen Nelson and Co{\c{s}}kun Bayrak", title = "Categorizing web queries", journal = j-SIGSOFT, volume = "34", number = "2", pages = "1--4", month = mar, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1507195.1507210", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:42 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Over the past ten years, the user base for the World Wide Web (WWW) has grown over 400\% [1]. This increased user base has naturally led to an enormous amount of data available for users to search. Corporations, such as Google, often store user search records and there are many concerns, as well as positive aspects, for how search records may be used. One aspect in particular, categorizing web queries, presents several challenges. This paper will discuss the challenging aspects of categorizing web queries, review previous categorical research, and conclude with a method for tackling one of the challenging aspects.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Saxena:2009:PFP, author = "Vipin Saxena and Manish Shrivastava", title = "Performance of function point analysis through {UML} modeling", journal = j-SIGSOFT, volume = "34", number = "2", pages = "1--4", month = mar, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1507195.1507214", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:42 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "In software development, estimation of software size is one of the major activities. Various types of metrics are available for computation of software size. It is necessary to check the performance of each metric. Lines of code, objects and function point analysis are widely used for measurements of software size, cost and schedule of development. The Function Point (FP) Analysis is one of the most promising techniques for measuring the functionality delivered by a system. Mostly, this method is used with traditional software development practices but can also be applied for object-oriented software development. The present paper deals with judging of the performance of function point analysis for the object-oriented software systems by the use of well know Unified Modeling Language (UML). A case study of Web-based Document Management System is reported for FP analysis through UML class diagram.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Srivastava:2009:CEG, author = "Praveen Ranjan Srivastava and Parshad Patel and Siddharth Chatrola", title = "Cause effect graph to decision table generation", journal = j-SIGSOFT, volume = "34", number = "2", pages = "1--4", month = mar, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1507195.1507216", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:42 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Cause-Effect Graphing (CEG) is used to identify test cases from a given specification to validate its corresponding implementation. This paper gives detail about this technique of software testing. It also shows how the CEG technique can be used to test that software fulfill requirement specification or not. This paper surveys how CEG converted into decision table. The aim of this paper is to overcome existing algorithm's shortcomings and generate all possible test cases.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Srivastava:2009:UGA, author = "Praveen Ranjan Srivastava and Priyanka Gupta and Yogita Arrawatia and Suman Yadav", title = "Use of genetic algorithm in generation of feasible test data", journal = j-SIGSOFT, volume = "34", number = "2", pages = "1--4", month = mar, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1507195.1507217", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:42 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "In recent years researchers have applied the concept of Genetic Algorithm in generation of test data for effective software testing. Several attempts have been made to develop a system to generate test data automatically. The existing such systems do not guarantee to generate test data in only feasible paths. This paper proposes a method to generate feasible test data, using Genetic Algorithm.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Saini:2009:TPO, author = "Dinesh Kumar Saini", title = "Testing polymorphism in object oriented systems for improving software quality", journal = j-SIGSOFT, volume = "34", number = "2", pages = "1--5", month = mar, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1507195.1507212", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:42 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "With object-oriented approaches, testing should center on objects, classes, generic classes and super classes, inheritance and polymorphism, instead of subprograms. In object-oriented software test, the feature of inheritance and polymorphism produces the new obstacle during dynamic testing. Polymorphism becomes a problem in dealing with object-oriented software testing. In this paper various issues and problems that are associated with testing polymorphic behavior of objects in object oriented systems is discussed. I propose a testers perspective method to assess the polymorphism in design stage. This way it also provides useful information for developer to probe into the fault that is hidden from test in early stage. Thus it will help in improving the quality of object oriented software.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Saxena:2009:PEO, author = "Vipin Saxena and Deepak Arora", title = "Performance evaluation for object oriented software systems", journal = j-SIGSOFT, volume = "34", number = "2", pages = "1--5", month = mar, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1507195.1507213", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:42 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/csharp.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Distributed computing has become an integral part of large and complex computation used in large organizations. It not only hides the complexities of processing from its user but it also delivers high-level security, reliability and availability. In this regard, software and hardware competence must be considered as a performance parameter for any distributed computer system. For maximum throughput, the software running on any hardware architecture should be capable enough to utilize the available resources at its highest efficiency. The main objective of this paper is to measure the performance of processors for different object-oriented software system frameworks. The authors have chosen two types of object oriented software system frameworks: C\#, based on Microsoft {.NET} Framework and Visual C++, based on Microsoft Foundation Classes. For processing needs, two processors: Pentium D and Core 2 Duo are considered, each having multiple execution cores in it. Before evaluating the performance of these processors, a UML model is presented for the process execution in a distributed computing scenario. Along with UML class and sequence diagram, a comparative study between performances of aforesaid software system is also reported.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Khan:2009:MBT, author = "R. A. Khan and K. Mustafa", title = "Metric based testability model for object oriented design {(MTMOOD)}", journal = j-SIGSOFT, volume = "34", number = "2", pages = "1--6", month = mar, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1507195.1507204", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:42 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper does an extensive review on testability of object oriented software, and put forth some relevant information about class-level testability. Testability has been identified as a key factor to software quality, and emphasis is being drawn to predict class testability early in the software development life cycle. A Metrics Based Model for Object Oriented Design Testability (MTMOOD) has been proposed. The relationship from design properties to testability is weighted in accordance with its anticipated influence and importance. A suit of adequate object-oriented metrics useful in determining testability of a system has been proposed, which may be used to locate parts of design that could be error prone. Identification of changes in theses parts early could significantly improve the quality of the final product and hence decrease the testing effort. The proposed model has been further empirically validated and contextual interpretation has been drawn using industrial software projects.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Mao:2009:SFP, author = "Chengying Mao", title = "Software faults prediction based on grey system theory", journal = j-SIGSOFT, volume = "34", number = "2", pages = "1--6", month = mar, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1507195.1507206", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:42 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Whenever a new maintenance stage is started or a new software version is released, it is necessary to predict the possible number of failures. The data sequence recorded during software maintenance is characterized by small samples and uncertainty, so the modeling technology in grey system theory is very suitable for handling such data. The paper proposed the basic prediction framework based on grey model GM(1), (1) firstly, and then two prediction models and implementation steps are represented according to two special applications, respectively. One is used for interval prediction of software faults, and the other is used for predicting fault number with the direction of related factors recorded during software maintenance process. The results of two examples showed that using three different techniques for three different cases can achieved more accurate prediction.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Sharma:2009:RAS, author = "Arun Sharma and P. S. Grover and Rajesh Kumar", title = "Reusability assessment for software components", journal = j-SIGSOFT, volume = "34", number = "2", pages = "1--6", month = mar, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1507195.1507215", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:42 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Software reuse has been used as a tool to reduce the development cost and time of the software. Nowadays, in fact, majority of software systems are being developed from an assembly of existing reusable components. In order to assess the reuse of components effectively, it is necessary to measure the reusability of these components. Paper proposes Artificial Neural Network based approach to assess the reusability of software component. This work will help developers to select the best component in terms of its reusability, which will improve the maintainability of the overall system.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Aggarwal:2009:WHC, author = "Naveen Aggarwal and Nupur Prakash and Sanjeev Sofat", title = "{Web} hypermedia content management system effort estimation model", journal = j-SIGSOFT, volume = "34", number = "2", pages = "1--7", month = mar, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1507195.1507201", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:42 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This study aims at creation of a well defined estimation model which can be used to estimate the effort required for designing and developing the web hypermedia content management systems. The data from the different content management system projects are studied and the linear regression approach is used to finalize the model. This model also provides guidelines to calculate phase wise distribution of effort. The model is designed to help project manager to estimate effort at the very early stage of requirement analysis. A set of questionnaire is used to estimate the complexity of the project, which has to be filled after completing the initial requirement analysis. Final effort is estimated using the project size and the different adjustment factors. For better calculation of these adjustments factors, these are categorized into three categories based on their characteristics such as Production and General system characteristics. This model is proposed to be used differently for the different types of projects. These projects are categorized based on their size and total/build effort ratio. The size of the project is estimated by using the modified object point analysis approach. The estimated effort is further phase wise distributed for better scheduling of the project. Another questionnaire is used to refine the model and it has to be filled by the project managers after completing the project. The proposed model is validated by studying twelve completed projects taken from industry and seventy different projects completed by the students. The proposed model shows a great improvement as compared to the earlier models used in effort estimation of CMS projects.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Bandyopadhyay:2009:FCC, author = "Anup Kumar Bandyopadhyay", title = "Fairness and conspiracy concepts in concurrent systems", journal = j-SIGSOFT, volume = "34", number = "2", pages = "1--8", month = mar, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1507195.1507203", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:42 MDT 2018", bibsource = "http://www.math.utah.edu/pub/bibnet/authors/d/dijkstra-edsger-w.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Many different fairness notions are available in literature. One should choose the proper definition that match with the system under consideration. In this paper we consider two known fairness definitions, viz., weak fairness and strong fairness. It is argued that these concepts are suitable for determining the degree of fairness of a given system. For only starvation freedom we require a minimum degree of fairness which we call least fairness. This idea is illustrated using two practical examples. Conspiracy is another very important issue in concurrent system. We have defined conspiracy in connection with all the fairness notions. Conspiracy resistant implementation is illustrated using a starvation free solution to dining philosophers problem. Dijkstra's weakest precondition calculus is used as the analytical tool.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Najumudheen:2009:DGB, author = "ESF Najumudheen and Rajib Mall and Debasis Samanta", title = "A dependence graph-based representation for test coverage analysis of object-oriented programs", journal = j-SIGSOFT, volume = "34", number = "2", pages = "1--8", month = mar, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1507195.1507208", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:42 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Test coverage analysis is used to determine the extent to which different features of interest are exercised by a given test suite. For object-oriented programs, it involves determining the extent to which features such as inheritance, polymorphism, dynamic binding, etc. are exercised. As object-oriented coverage analysis using only source code or object code is difficult and inefficient, the source code is converted to a suitable intermediate representation for subsequent analysis. We propose a dependence graph-based representation for object-oriented programs, named Call-based Object-Oriented System Dependence Graph (COSDG). COSDG captures the important object-oriented features, provides details of method visibility in a derived class, and differentiates various calling contexts with different type of method call edges: simple, inherited, and polymorphic. We also propose an algorithm to construct COSDG incrementally. Though COSDG has been developed primarily to aid test coverage analysis, it can be used in a variety of other software engineering applications also.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Medikonda:2009:FSS, author = "Ben Swarup Medikonda and Seetha Ramaiah Panchumarthy", title = "A framework for software safety in safety-critical systems", journal = j-SIGSOFT, volume = "34", number = "2", pages = "1--9", month = mar, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1507195.1507207", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:42 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Software for safety-critical systems must deal with the hazards identified by safety analysis in order to make the system safe, risk-free, and fail-safe. Because human lives may be lost and tremendous economic costs may result if the software fails, the development of high-integrity software adopts practices that impose greater rigor on the software development processes. Software safety is a composite of many factors. Existing software quality models like McCall's and Boehm's and ISO 9126 are inadequate in addressing the software safety issues of real time safety-critical embedded systems. At present there does not exist any standard framework that comprehensively addresses the factors, criteria and metrics (FCM) approach of the quality models in respect of software safety. The safety of a software component must be considered within the context of both the overall system of which it is a component and the environment in which this system operates. It is not useful to investigate the safety of a software component in isolation. This paper proposes a new framework for software safety based on the McCall's software quality model that specifically identifies the criteria corresponding to software safety in safety critical applications. The criteria in the proposed software safety framework pertains to system hazard analysis, completeness of requirements, identification of software-related safety-critical requirements, safety-constraints based design, run-time issues management, and software safety-critical testing. This framework is then applied to a prototype safety-critical system viz. a software--based Railroad Crossing Control System (RCCS) to validate its utility.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Nayak:2009:MBT, author = "Ashalatha Nayak and Debasis Samanta", title = "Model-based test cases synthesis using {UML} interaction diagrams", journal = j-SIGSOFT, volume = "34", number = "2", pages = "1--10", month = mar, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1507195.1507209", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:42 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "UML 2.0 interaction diagrams model interactions in complex systems by means of operation fragments and a systematic testing approach is required for the identification and selection of test cases. The major problem for test cases synthesis from such an interaction diagram is to arrive at a comprehensive system behavior in the presence of multiple, nested fragments. In this regard, our approach is towards systematic interpretation of flow of controls as well as their subsequent usage in the test case synthesis. We also simplify the proposed flow of controls on the basis of control primitives resulting from UML 2.0 fragments and bring it to a testable form known as intermediate testable model (ITM), which is suitable for deriving system level test cases.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Levine:2009:DDE, author = "Gertrude Neuman Levine", title = "Defining defects, errors, and service degradations", journal = j-SIGSOFT, volume = "34", number = "2", pages = "1--14", month = mar, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1507195.1507205", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:42 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The study of defects is a principal topic of software systems, af-fecting all phases of a system's lifecycle. Defects are the cause of errors and service degradations. Unresolved errors cause failures. If defects cannot be prevented effectively, then error control mechanisms must be evaluated. We introduce a model to distinguish between defects, errors, and service degradations. A two-dimensional classification scheme is developed for defects, defined by the types of process interaction and software corruption that are involved. A third dimension is added to this taxonomy for defects that cause service degradation, based on the deviations in service quality that are tolerated. We investigate the role of service degradation in error prevention.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Henderson:2009:SEEa, author = "Peter B. Henderson", title = "Software engineering education {(SEEd)}", journal = j-SIGSOFT, volume = "34", number = "2", pages = "3--4", month = mar, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1507195.1507196", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:42 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Wing:2009:TCC, author = "Michael Wing", title = "On technology and cultural change", journal = j-SIGSOFT, volume = "34", number = "2", pages = "4--4", month = mar, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1507195.1507197", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:42 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Doernhoefer:2009:SNSb, author = "Mark Doernhoefer", title = "Surfing the net for {{\booktitle{Software Engineering Notes}}}", journal = j-SIGSOFT, volume = "34", number = "2", pages = "5--14", month = mar, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1507195.1507198", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:42 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Neumann:2009:RPb, author = "Peter G. Neumann", title = "Risks to the public", journal = j-SIGSOFT, volume = "34", number = "2", pages = "15--24", month = mar, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1507195.1517460", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:42 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Edited by Peter G. Neumann (Risks Forum Moderator and Chairman of the ACM Committee on Computers and Public Policy), plus personal contributions by others, as indicated. Opinions expressed are individual rather than organizational, and all of the usual disclaimers apply. We address problems relating to software, hardware, people, and other circumstances relevant to computer systems. To economize on space, we include pointers to items in the online Risks Forum: (R i j) denotes RISKS vol i number j. Cited RISKS items generally identify contributors and sources, together with URLs. Official RISKS archives are available at www.risks.org (which redirects to Newcastle and gets you nice html formatting and a search engine courtesy of Lindsay Marshall; http://catless.ncl.ac.uk/Risks/i.j.html gets you (R i j)) and at ftp://www.sri.com/risks.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Wermelinger:2009:RIE, author = "Michel Wermelinger and Paul Wernick and Ciar{\'a}n Bryce", title = "Report on the {4th International ERCIM Workshop on Software Evolution and Evolvability (Evol '08)}", journal = j-SIGSOFT, volume = "34", number = "2", pages = "25--27", month = mar, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1507195.1507218", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:42 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The 4th International ERCIM Workshop on Software Evolution and Evolvability (Evol '08) took place on 15-16 September 2008 in L'Aquila, co-located with the 23rd IEEE/ACM Conference on Automated Software Engineering (ASE). The workshop focused on research and practice related to the long-term evolution of software products. For the first time two separate events, devoted to practical and more abstract aspects of this area, combined into a single workshop which in its first iteration demonstrated the synergy hoped for from this combination.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Avgeriou:2009:TUA, author = "Paris Avgeriou and Patricia Lago and Philippe Kruchten", title = "Towards using architectural knowledge", journal = j-SIGSOFT, volume = "34", number = "2", pages = "27--30", month = mar, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1507195.1507219", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:42 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The third workshop on Sharing and Reusing Architectural Knowledge (SHARK) was held jointly with ICSE 2008 in Leipzig, Germany. It featured two keynote talks, thirteen research position statements and three working groups that discussed on focused topics. This report presents the themes of the workshop, summarizes the results of the discussions held, and suggests some topics for future research.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Torkar:2009:ECS, author = "Richard Torkar and Tony Gorschek and Robert Feldt", title = "{Eighth Conference on Software Engineering Research and Practice in Sweden (SERPS'08)}", journal = j-SIGSOFT, volume = "34", number = "2", pages = "31--33", month = mar, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1517459.1517461", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:42 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The eight conference on software engineering research and practice in Sweden (SERPS'08) was held in Karlskrona, Sweden, on the 4th-5th of Nov. 2008. The aim with SERPS'08 is to bring researchers and industry practitioners together to discuss software engineering issues, problems, solutions and experiences, not necessarily from a Swedish perspective. During the conference a number of research and industry papers were presented and questions in connection to the presentations were discussed. This paper is a report on the discussions that took place, pointing towards needs and challenges as well as areas of interest in both academia and industry.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Nami:2009:CEZ, author = "Mohammad Reza Nami and Fatemeh Hassani", title = "A comparative evaluation of the Z, {CSP}, {RSL}, and {VDM} languages", journal = j-SIGSOFT, volume = "34", number = "3", pages = "1--4", month = may, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1527202.1527211", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:44 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The software engineering process has been described in many ways. Today, few of these deal specifically with the use of formal methods in software engineering. New software engineering uses formal specification languages in system analysis, requirement analysis, and system design to develop software for critical-safety systems. Formal specification languages describe the system at a much higher level than a programming language. They are categorized into model-oriented, constructive, algebraic, process model, hybrid, and logical. This paper describes the properties and types of formal specification languages in software engineering. It then compares the Z, VDM, RSL, and CSP formal specification languages from different point of views.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Bhatti:2009:XBF, author = "Shahid Nazir Bhatti and Asif Muhammad Malik", title = "An {XML-based} framework for bidirectional transformation in model-driven architecture {(MDA)}", journal = j-SIGSOFT, volume = "34", number = "3", pages = "1--5", month = may, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1527202.1527206", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:44 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "A model transformation in Model-Driven Architecture is the generation of a target model from a source model, which is normally based on different processes. These processes are described by a transformation definition, consisting of a number of transformation rules, and executed with the help of a transformational tool. In Model-Driven Architecture approach, bidirectionality is one of the most desirable features of the transformational process. Here bi-directionality means that a transformation can be applied from source to target as well as back from target to source model. Different technologies are available which provide bidirectionality between platform specific models to Code Generation but hardly any tool is providing bidirectionality between platform independent models to platform specific models. Here we proposed an XML-Based Bidirectional Transformation Model (as a framework) for Model-Driven Architecture that provides bidirectionality between platform independent model and platform specific model.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Chhabra:2009:EOO, author = "Jitender Kumar Chhabra and Varun Gupta", title = "Evaluation of object-oriented spatial complexity measures", journal = j-SIGSOFT, volume = "34", number = "3", pages = "1--5", month = may, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1527202.1527208", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:44 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Spatial complexity measures help in the estimation of the effort re-quired in the process of program comprehension. These spatial com-plexity measures have been proposed for procedure-oriented software as well as object-oriented software. In this paper, an at-tempt has been made to evaluate object-oriented spatial complexity measures using formal evaluation frameworks proposed by Weyu-ker and Briand et al. A practical and useful complexity measure must satisfy most of the properties given in these frameworks. The results of this study show that object-oriented spatial metrics satisfy all properties and parameters required by these two evaluation frameworks and thus these spatial measures are robust and useful.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Mittal:2009:SMA, author = "Harish Mittal and Pradeep Bhatia", title = "Software maintainability assessment based on fuzzy logic technique", journal = j-SIGSOFT, volume = "34", number = "3", pages = "1--5", month = may, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1527202.1527210", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:44 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Software maintenance is a process of modifying existing operational software while leaving its primary functions intact. Easily maintainable software saves large costs in industries. Software maintainability assessment is a major issue these days. In order to assess maintainability we consider four major aspects of software i.e., average numbers of live variables, average life span of variables, average cyclomatic complexity and the comment ratio. This paper proposes a fuzzy logic based precise and easy approach to quantify maintainability of software.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Saini:2009:EIM, author = "Dinesh Kumar Saini and Jabar H. Yousif and Wail M. Omar", title = "Enhanced inquiry method for malicious object identification", journal = j-SIGSOFT, volume = "34", number = "3", pages = "1--5", month = may, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1527202.1527213", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:44 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper proposes a new technique for malicious object detection and identification. The technique is based on a concept of virus inquiry. The inquiry is an activity that is performed by the malicious object during its initiation. The malicious object uses this activity to ensure its uniqueness in memory. The inquiry can be regarded as a common behavior of malicious object such as viruses. The proposed system is designed using the concept of Object Oriented Programming (OOP) that treats the operating system, user program, and virus as objects. It is constructed of three elementary objects that perform their activities depending on two databases.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Tsui:2009:DST, author = "Frank Tsui and Andy Wang and Kai Qian", title = "A discussion on security typing and measurement for {SOA}", journal = j-SIGSOFT, volume = "34", number = "3", pages = "1--5", month = may, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1527202.1527214", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:44 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "In a service oriented environment, using SOA technologies, different business entities and services are combined together. Such an environment introduces various security vulnerabilities. This paper proposes an innovative approach to address SOA application security through security typing. We first define security typing concepts, its declaration and definition, with a simple security type, SST, as an example. We then explore various operations under this concept including type equivalence, type compatibility, and type inference. We show, through unary and binary operational examples, that measuring security characteristics requires a clear understanding of the metric scale level and that often times extending an ordinal scale metric to ratio level can be misleading. Our idea and approach to SST may be generalized in the future to more sophisticated security typing.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Yang:2009:DLF, author = "Qun Yang and Man-Wu Xu and De-Chang Pi", title = "{Delegation}: a language facility for dynamic software adaptation", journal = j-SIGSOFT, volume = "34", number = "3", pages = "1--5", month = may, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1527202.1527215", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:44 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Due to the growing complexity of computing systems, and the increasing demand for high availability and reliability of them, adapting software at runtime is becoming more and more important. However, there is not sufficient support for dynamic software adaptation at the level of programming languages. In this paper, we investigate a language feature, namely delegation, to argue that delegation is a favorite choice to deal with dynamic software adaptation. To do that, we present $ \phi $ calculus, which is an imperative object-based calculus with delegation, to model essential features of languages, with focusing on how to incorporate delegation into programming languages to support dynamic software adaptation. We give the operational semantics of $ \phi $ calculus. We also state how delegation is used in object extending and method sharing between objects. We conclude that delegation makes dynamic software adaptation simpler and more flexible.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Kumar:2009:GCM, author = "Avadhesh Kumar and Rajesh Kumar and P. S. Grover", title = "Generalized coupling measure for aspect-oriented systems", journal = j-SIGSOFT, volume = "34", number = "3", pages = "1--6", month = may, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1527202.1527209", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:44 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Coupling is an internal software attribute that can be used to indicate the degree of interdependence among the components of a software system. Coupling in software has been linked to predict external software quality attributes such as fault-proneness, ripple effects, changeability, impact analysis etc. Despite an interesting body of work for measuring coupling in Aspect-Oriented (AO) Systems, there is no complete generic coupling framework for AO systems. In this paper, we have proposed a generic coupling measurement framework that takes into account three, the most well known families of Aspect-Oriented Programming (AOP) languages, AspectJ, CaesarJ and Hyper/J. This paper contributes to an enhanced understanding of coupling in AO systems, which in turn helps to (i) define new coupling metrics which permit the analysis and comparison of Java, AspectJ, CaesarJ and Hyper/J implementations, and (ii) integrate different existing measures and examine same concepts from different perspectives.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Bhatti:2009:DCQ, author = "Shahid Nazir Bhatti", title = "Deducing the complexity to quality of a system using {UML}", journal = j-SIGSOFT, volume = "34", number = "3", pages = "1--7", month = may, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1527202.1527207", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:44 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The aspects of quality are that it is unquantifiable trait --- it can be discussed, felt and judged, but can not be weighted or measured. To validate software systems early in the development lifecycle is becoming crucial. Early validation of functional requirements is supported by well known approaches, while the validation of non-functional requirements, such as complexity or reliability, is not. Early assessment of non-functional requirements can be facilitated by automated transformation of software models into (mathematical) notations suitable for validation. These types of validation approaches are usually as transparent to the developers as possible. The widely acceptance of quality services will only be accepted by users if their quality is of the most acceptable level. UML is rapidly becoming a standard (both in development and in research environments) for software development. The work here in this paper is extension of Quality with UML (QWUML, IDIMT-2004, and SEN-2005), quality of the system measurements with modelling (UML). This paper discusses some important issues regarding system design modelling in association with quality, complexity, and design aspects using UML heuristics.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Prakash:2009:IEL, author = "Lakshmi Sunil Prakash and Dinesh Kumar Saini and N. S. Kutti", title = "Integrating {EduLearn} learning content management system {(LCMS)} with cooperating learning object repositories {(LORs)} in a peer to peer (P2P) architectural framework", journal = j-SIGSOFT, volume = "34", number = "3", pages = "1--7", month = may, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1527202.1527212", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:44 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "An attempt is made to integrate the EduLearn Learning Content Management System (LCMS) components with comparable Learning Objects Repository (LORs), specified in Peer to Peer (P2P) architecture to provide a better framework for sharing Learning Objects. Learning Content Designers need to be able to access a suitable learning object. For this the Learning Object needs to reside in an LOR which has the capacity to cater quickly to the needs of the Learning Content Designer. Reuse of a Learning Object is possible only if it is available easily and it is designed in a standard format. Such a reusable learning object (RLO) has the ability of being reused in different learning contexts and for various objectives. We have proposed a new framework for more efficient e-learning environment by using P2P architecture and Semantic Overlay Network. This will help in efficient management of LCMS components and improve the performance of LCMS through the RLO. Our framework authenticates Learning Object Repositories and provides a better load balance for the framework using P2P technology.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Henderson:2009:SEEb, author = "Peter B. Henderson", title = "Software engineering education {(SEEd)}", journal = j-SIGSOFT, volume = "34", number = "3", pages = "4--5", month = may, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1527202.1527203", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:44 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Tempero:2009:SEC, author = "Ewan Tempero", title = "Software engineering and computer sciences: two worlds", journal = j-SIGSOFT, volume = "34", number = "3", pages = "6--6", month = may, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1527202.1543818", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:44 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Doernhoefer:2009:SNSc, author = "Mark Doernhoefer", title = "Surfing the net for {{\booktitle{Software Engineering Notes}}}", journal = j-SIGSOFT, volume = "34", number = "3", pages = "6--15", month = may, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1527202.1527204", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:44 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Neumann:2009:RPc, author = "Peter G. Neumann", title = "Risks to the public", journal = j-SIGSOFT, volume = "34", number = "3", pages = "16--29", month = may, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1527202.1527205", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:44 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Edited by Peter G. Neumann (Risks Forum Moderator and Chairman of the ACM Committee on Computers and Public Policy), plus personal contributions by others, as indicated. Opinions expressed are individual rather than organizational, and all of the usual disclaimers apply. We address problems relating to software, hardware, people, and other circumstances relevant to computer systems. To economize on space, we include pointers to items in the online Risks Forum: (R i j) denotes RISKS vol i number j. Cited RISKS items generally identify contributors and sources, together with URLs. Official RISKS archives are available at www.risks.org (which redirects to Newcastle and gets you nice html formatting and a search engine courtesy of Lindsay Marshall; http://catless.ncl.ac.uk/Risks/i.j.html gets you (R i j)) and at ftp://www.sri.com/risks.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Kaur:2009:EES, author = "Kuljit Kaur and Hardeep Singh", title = "Evaluating an evolving software component: case of internal design", journal = j-SIGSOFT, volume = "34", number = "4", pages = "1--4", month = jul, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1543405.1543415", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:45 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Component based development is a reuse based approach in which already existing software components are used to assemble a new application. One of the commonly cited advantages of this approach is that application quality is high because mature components are used in the application. This indicates that as components mature their quality improves. In this paper, we have studied evolution of the design structure of a reusable component using package metrics proposed by Robert Martin. Metric values indicate that internal design of the component has improved over time.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Mishra:2009:SIS, author = "Alok Mishra and Deepti Mishra", title = "Some issues on scheduling estimation model for object-oriented software projects", journal = j-SIGSOFT, volume = "34", number = "4", pages = "1--4", month = jul, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1543405.1543419", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:45 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Object-Oriented (OO) software projects are becoming more popular than structured (functional) technology based projects. Object Technology (OT) offers support to deliver products to market more quickly and to provide high quality with lower maintenance costs. Estimation is an important field of software engineering and there is need for good OO metrics and models for both process and product management. To cut development cost and meet tight deadlines in short staffed software projects, it is essential that managers plan and schedule their projects in a best possible way. To address these issues, we have proposed a model for scheduling estimation by using available OO metrics and affecting factors.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Nami:2009:INF, author = "Mohammad Reza Nami and Hamid Razavi and Milad Saeedi and Navid Shahidi", title = "Investigating a new formal model for a library system using {B} method", journal = j-SIGSOFT, volume = "34", number = "4", pages = "1--4", month = jul, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1543405.1543420", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:45 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The use of formal methods for development of safety-critical systems has motivated researchers to serve them in distributed applications. B method has the precision to support animation and rigorous verification, but requires significant effort in training to overcome the mathematical barrier that many practitioners perceive. In this paper, an overview of B method is described including definition, properties, and tools. Then, a new formal model for a library system using B is presented. This formal model can be ex-tended in distributed environments and be integrated with UML as further work.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Agrawal:2009:IIV, author = "A. Agrawal and R. A. Khan", title = "Impact of inheritance on vulnerability propagation at design phase", journal = j-SIGSOFT, volume = "34", number = "4", pages = "1--5", month = jul, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1543405.1543411", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:45 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The design phase of software development provides the foundation for secure software. Reducing vulnerability at this phase minimizes rework in subsequent development phases. Currently, no efficient measure or method is available to reduce this vulnerability. In or-der to address this problem, we have proposed an algorithm to measure vulnerability propagation for an object-oriented design that calculates the Attribute Vulnerability Ratio (AVR).", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Ren:2009:GTB, author = "Sheng-bing Ren and Xi-e Wang and Zhi-gang Hu and Ge Hu and Guo-jun Wang", title = "Graph transformation based reduction analysis of {PID}", journal = j-SIGSOFT, volume = "34", number = "4", pages = "1--5", month = jul, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1543405.1543422", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:45 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The influence of safety risk assessment is being gradually recognized along with increasing importance of system safety. In view of the effectiveness of probabilistic influence diagram (PID) in probability reasoning, PID was introduced into system safety risk assessment. Combining the object-oriented method of PID with the traditional risk analysis method, a model of system safety risk probability was successfully constructed. To support the construction and reduction analysis of PID properly, an editor was designed. The syntax and semantics of the editor were detailed in the paper, and its technical feasibility in risk analysis was demonstrated in a case study. Based on graph transformation and reduction algorithms of PID, the visualization and describing ability of reduction analysis of PID has been further strengthened, and its semi-automation is achieved by the editor.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Yadav:2009:MDC, author = "A. Yadav and R. A. Khan", title = "Measuring design complexity: an inherited method perspective", journal = j-SIGSOFT, volume = "34", number = "4", pages = "1--5", month = jul, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1543405.1564532", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:45 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Complexity is one of the important attributes of reliability. Higher design complexity increases the probability of error occurrences and decreases reliability of software. Inheritance has been indentified as a key construct to control design complexity. This paper proposes a formula to calculate the overall complexity of design hierarchy caused by inherited methods.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Dahiya:2009:DMF, author = "Deepak Dahiya and Usha Batra", title = "Distributed middleware framework using aspects", journal = j-SIGSOFT, volume = "34", number = "4", pages = "1--6", month = jul, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1543405.1543414", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:45 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "In this paper we discuss the characteristics of Aspect Oriented Programming (AOP) and the need to introduce aspects for distributed computing. The evolution of a revolutionary programming paradigm that promises to have a profound effect on the way we interact with computers, people and places is now a days well known as Aspect Oriented Programming. Middleware platforms, such as RMI, CORBA, DCOM, J2EE and {.NET} platform, offer abstractions for the complex distributed environment. Distributed middleware [1,2,3,4] are difficult to build and implement because the distributed frameworks impose a large code overhead due to the specific distributed systems programming conventions. Further, this paper discusses the impact of AOP on the distributed computing environment and hence its contribution towards the design of a distributed middleware framework.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Kong:2009:UCM, author = "Leilei Kong and Tao Yuan", title = "Use case modeling approach for early aspect acquisition", journal = j-SIGSOFT, volume = "34", number = "4", pages = "1--6", month = jul, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1543405.1543417", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:45 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "In the recent years, use cases have been widely applied in software requirement engineering, and use cases have proven particularly valuable as part of the requirements activities of the software process. Use cases play more and more important roles in some modern software processes and methods. Early aspects are defined as crosscutting concerns in the early life cycle phases including the requirements analysis, domain analysis and architecture design phases. Use case modeling approach which supports the acquisition of early aspects is proposed. It accepted the increment and iteration development ideas of Unified Process. The process of use case modeling is divided by five iterative stages which are called initial use case, basic use case, detailed use case, advanced use case and extend use case. The approach supports the early aspects acquisition at requirements level, and early aspect will be captured by analysis the use case properties with aspect features. Modeling processes of this kind of approach is discussed and applying the approach to a case study and analysis are given. We argue that identification of early aspects supports effective determination of their mapping and influence of artifacts at later development stages.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Sanden:2009:ISD, author = "Bo Sand{\'e}n", title = "Inspired software design early {Jackson} methods to thread architectures", journal = j-SIGSOFT, volume = "34", number = "4", pages = "1--6", month = jul, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1543405.1543423", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:45 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This is a somewhat personal account of a journey starting with assembly coding based on Jackson Structured Programming (JSP) and ending with the design of thread architectures for reactive software systems using entity-life modeling (ELM). As the level of abstraction rises, the basic concepts remain the same: The software takes its shape from structures in the problem domain. JSP bases control structures on regular expressions describing data streams. Jackson System Development (JSD) introduces long-running processes patterned on the life histories of entities in the problem domain. Unfortunately, implementing long-running processes in sequential programs leads to awkward solutions. ELM lets us implement the processes as threads. This is a natural fit, which removes the awkwardness.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Sharma:2009:DAC, author = "Arun Sharma and P. S. Grover and Rajesh Kumar", title = "Dependency analysis for component-based software systems", journal = j-SIGSOFT, volume = "34", number = "4", pages = "1--6", month = jul, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1543405.1543424", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:45 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.math.utah.edu/pub/tex/bib/hash.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Interaction in component-based systems (CBS) happens when a component provides an interface and other components use it, and also when a component submits an event and other component receives it. Interactions promote dependencies. Higher dependency leads to a complex system, which results in poor understanding and a higher maintenance cost. Usually, dependency is represented by an adjacency matrix used in graph theory. However, this representation can check only for the presence of dependency between components and does not consider the type of interactions between these components. Interaction type can have a significant contribution to the complexity of the system. This paper proposes a link-list based dependency representation and implements it by using Hash Map in Java. This representation can store the dependency along with other information like, provided and required interfaces of components along with their types. This information can be used to analyze several interaction and dependency related issues. This paper also presents the results of an experiment of the proposed approach and measures the interaction densities and dependency level of an individual component and for the system The results show that the proposed metrics can also be used to identify the most critical and isolated components in the system, which can lead to better understanding and easy system maintenance.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Singh:2009:PSM, author = "Yogesh Singh and Pradeep Kumar Bhatia and Omprakash Sangwan", title = "Predicting software maintenance using fuzzy model", journal = j-SIGSOFT, volume = "34", number = "4", pages = "1--6", month = jul, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1543405.1543425", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:45 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Software maintenance is commonly used to refer to the modifications that are made to a software system after its initial release, installed and is operational. There is evidence that maintenance costs exceed 60 percent of the total costs of software. In this paper we have analyzed the major factors that can affect software maintenance and divide them into four categories: Readability of Source Code (RSC), Documentation Quality (DQ), Understandability of Software (UOS), and Average Cyclomatic Complexity (ACC). In our study we have proposed fuzzy model to predict software maintenance using these four factors. The proposed fuzzy model is validated and experimental results indicate that the proposed model is suitable for predicting software maintenance level of the software.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Reddy:2009:DOC, author = "K. Reddy Reddy and A. Ananda Rao", title = "Dependency oriented complexity metrics to detect rippling related design defects", journal = j-SIGSOFT, volume = "34", number = "4", pages = "1--7", month = jul, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1543405.1543421", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:45 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Even though object oriented software development has gained popularity due to its inherent features, it also throws challenges in early detection of defects during design phase. Detection of design defects helps in performing appropriate refactorings in improving the quality of design. Literature indicates that active research is going on in detecting design defects using metrics. The present paper introduces a set of metrics for detecting defects in object oriented designs caused by the presence of shotgun surgery and divergent change bad smells. These metrics are, dependency oriented complexity metric for structure (DOCMS(R)), dependency oriented complexity metric for an artifact causing ripples (DOCMA(CR)), and dependency oriented complexity metric for an artifact affected by ripples (DOCMA(AR)). The proposed metrics have been computed for four cases. These metrics are used successfully in detecting design defects and complexity. In the present study DOCMA(CR) metric value indicated the presence of shotgun surgery bad smell, whereas DOCMA(AR) metric value indicated the presence of divergent change bad smell. DOCMS(R) metric value indicated the increase in complexity of structure (architecture) when the design defects are present. Detecting bad smells helps in performing appropriate refactorings to make the software maintainable and to improve the quality of software.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Biswas:2009:MBR, author = "Swarnendu Biswas and Rajib Mall and Manoranjan Satpathy and Srihari Sukumaran", title = "A model-based regression test selection approach for embedded applications", journal = j-SIGSOFT, volume = "34", number = "4", pages = "1--9", month = jul, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1543405.1543413", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:45 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Regression test selection techniques for embedded programs have scarcely been reported in the literature. In this paper, we propose a model-based regression test selection technique for embedded programs. Our proposed model, in addition to capturing the data and control dependence aspects, also represents several additional program features that are important for regression test case selection of embedded programs. These features include control flow, exception handling, message paths, task priorities, state information and object relations. We select a regression test suite based on slicing our proposed graph model. We also propose a genetic algorithm-based technique to select an optimal subset of test cases from the set of regression test cases selected after slicing our proposed model.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Kaur:2009:VMC, author = "Parminder Kaur and Hardeep Singh", title = "Version management and composition of software components in different phases of software development life cycle", journal = j-SIGSOFT, volume = "34", number = "4", pages = "1--9", month = jul, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1543405.1543416", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:45 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The key factor of component-based software development is the composition of pre-fabricated components. Although research efforts have focused on this issue, yet the optimal performance of component-based systems has not been achieved. If the concept of version management is introduced along with composition technology then it will help in locating the component mismatch in the earlier stages of software development life cycle. This paper analyses the significance of version management and composition of software components in different phases like analysis phase, design phase and deployment phase of software development life cycle. A comparative analysis of different available component models like COM, {.NET}, Enterprise JavaBeans (EJB), CORBA, SOFA, UML 2.0 and Web Services with respect to these two issues is also discussed.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Mishra:2009:CAP, author = "Arun Mishra and A. K. Misra", title = "Component assessment and proactive model for support of dynamic integration in self adaptive system", journal = j-SIGSOFT, volume = "34", number = "4", pages = "1--9", month = jul, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1543405.1543418", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:45 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Component Based Software Engineering (CBSE) is a paradigm in use by most of the software developers. In a multi component system, each component is a probable point of malfunction. Typical work to make such system more vigorous and safe are both brittle and time intense. A model has been designed for self-adaptive system that automates the component integration process at runtime by accessing the equivalent component from diversified set of components that may be needed in future. The proposed general model is for proactive adaptation, which pre-fetch the component from the pre available repository. This model integrates the caching technique to reduce the amount of time that has been spent during search of best-fitted component to replace the required one, when a system fails to respond due to component failure. To pre-fetch the required component we perform the component assessment on the basis of numerical metadata for each component present in the repository. In the computation of numerical metadata we design an algorithm which uses the concept of Abstract Syntax Tree. To ensure the consistency in the system after the modification, we have used a technique which is used in GUI based component architecture model. To asses the component at run-time, we provide prototype in {.NET} technology using its attribute feature, which support run-time component evolution without its execution.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Calvo-ManzanoVillalon:2009:SAR, author = "Jose A. {Calvo-Manzano Villal{\'o}n} and Gonzalo {Cuevas Agust{\'\i}n} and Gloria Gasca Hurtado and Tom{\'a}s {San Feliu Gilabert}", title = "State of the art for risk management in software acquisition", journal = j-SIGSOFT, volume = "34", number = "4", pages = "1--10", month = jul, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1543405.1543426", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:45 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper presents the state of the art for risk management in software acquisition. To determine it, a systematic review protocol for Software Engineering is used. Furthermore, the systematic re-view focuses on identifying initiatives and reports of risk manage-ment proposals for software acquisition in small settings. Results show increasing research in risk management and the need for more in-depth studies.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Bastani:2009:COS, author = "Behzad Bastani and David Greaves", title = "Complex open-system design by quasi-agents: process-oriented modeling in agent-based systems", journal = j-SIGSOFT, volume = "34", number = "4", pages = "1--14", month = jul, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1543405.1543412", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:45 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Drastically increasing involvement of Computer Science in different aspects of human life and sciences and the reciprocal dependency these sciences have developed on Computer Science and technology have deployed extremely challenging grounds for software architecture and design as a discipline. The requirements related to the management of complexity which is in the essence of these new domains combined with sizes which are orders of magnitude larger than the conventional business applications necessitate development of new paradigms. Since we are in fact beyond the age of writing one program by one group which takes care of one type of issue for one class of users, the new paradigms should guarantee some type of technical pluralism which allows indefinite number of people addressing indefinite aspects of complex clusters of issues in an ongoing effort over indefinite amount of time. The technical basis should provide for easy and ideally automated integration of all such efforts. This means the capability of random program design and integration based on a supporting and unifying conceptual framework. In contributing to these principles, Nuclear-Process Oriented Analysis and Modeling (NPOAM) [3] presented the capability of random modeling and design while establishing itself on the supporting framework of Abstraction-oriented Frames [4]. In an ongoing research to further modularize and streamline this methodology, this paper presents the idea and method of application of NPOAM to agent-base systems. The accomplishment of this goal is substantiated through a double implementation effort, one in an agent simulation environment and the other through the use of industrial strength modeling and application development tools. This paper also extends the agent-oriented framework to propose a new concept named ``quasi-agents'' which is essentially related to mostly deterministic environments and offers examples of quasi-agents in implementation.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Notkin:2009:FF, author = "David Notkin", title = "{FAQs} and figures", journal = j-SIGSOFT, volume = "34", number = "4", pages = "6--6", month = jul, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1543405.1564530", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:45 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Wing:2009:Q, author = "Michael Wing", title = "On quality", journal = j-SIGSOFT, volume = "34", number = "4", pages = "7--8", month = jul, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1543405.1543407", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:45 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Ardis:2009:SEEa, author = "Mark A. Ardis and Peter B. Henderson", title = "Software engineering education {(SEEd)}", journal = j-SIGSOFT, volume = "34", number = "4", pages = "8--8", month = jul, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1543405.1543408", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:45 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Doernhoefer:2009:SNSd, author = "Mark Doernhoefer", title = "Surfing the net for {{\booktitle{Software Engineering Notes}}}", journal = j-SIGSOFT, volume = "34", number = "4", pages = "9--16", month = jul, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1543405.1543409", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:45 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Neumann:2009:RPd, author = "Peter G. Neumann", title = "Risks to the public", journal = j-SIGSOFT, volume = "34", number = "4", pages = "17--24", month = jul, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1543405.1543410", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:45 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Bass:2009:LMS, author = "Len Bass and Brian Berenbach", title = "{Leadership and Management in Software Architecture Workshop 2009} report", journal = j-SIGSOFT, volume = "34", number = "4", pages = "25--27", month = jul, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1543405.1543428", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:45 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This is a report of a workshop on Leadership and Management in Software Architecture held at ICSE on May 19, 2009.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Daughtry:2009:AUR, author = "John M. Daughtry and Umer Farooq and Brad A. Myers and Jeffrey Stylos", title = "{API} usability: report on special interest group at {CHI}", journal = j-SIGSOFT, volume = "34", number = "4", pages = "27--29", month = jul, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1543405.1543429", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:45 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The 27th annual International Conference on Human Factors in Computing (CHI) convened in Boston, MA (USA) from April 4-9, 2009. Included in this year's technical program was a special interest group (SIG) meeting on API usability. This report summarizes the SIG, emphasizing the primary takeaways, which include a greater understanding of the types of APIs, case studies, and a place to share our multi-disciplinary results.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Pankratius:2009:AMS, author = "Victor Pankratius and Adam Porter and Larry Votta", title = "Advances in multicore software engineering", journal = j-SIGSOFT, volume = "34", number = "4", pages = "30--31", month = jul, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1543405.1543430", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:45 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "In the beautiful city of Vancouver, ICSE2009 hosted several events devoted to advancing the state-of-the-art in multicore software engineering. Realizing that future performance increases will come form parallelism, the software engineering community is organizing to tackle the problems in this important field. Researchers and practitioners got together to present newest results and discuss future directions.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Dranidis:2009:CPI, author = "Dimitris Dranidis and Stephen P. Masticola and Paul Strooper", title = "Challenges in practice: {4th International Workshop on the Automation of Software Test} report", journal = j-SIGSOFT, volume = "34", number = "4", pages = "32--34", month = jul, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1543405.1543431", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:45 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The Fourth International Workshop on Automation of Software Test (AST 2008) ICSE 2009 expanded previous programs to two days, supported a special theme of Testing Web Services, added a Case Studies from Business and Industry session, and included a charette-style work session. At the workshop, 15 regular papers and 7 short case-study papers were presented in 7 sessions at the workshop. This report summarizes the organization of the workshop as well as the sessions and papers presented, the results of the charette session, attendee feedback, and lessons learned. (This is an updated and expanded version of the workshop summary that was included in the ICSE 2009 proceedings.)", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Baillargeon:2009:WMS, author = "Robert Baillargeon and Robert France and Steffen Zschaler and Bernhard Rumpe and Steven V{\"o}lkel and Geri Georg", title = "{Workshop on Modeling in Software Engineering} at {ICSE 2009}", journal = j-SIGSOFT, volume = "34", number = "4", pages = "34--37", month = jul, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1543405.1543432", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:45 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The Modeling in Software Engineering (MiSE) workshop series provides a forum for discussing the challenges associated with modeling software and with incorporating modeling practices into the software development process. The main goal of the series is to further promote cross-fertilization between the modeling communities (e.g., MODELS) and software-engineering communities. In particular, the workshop provides a medium to exchange innovative technical ideas and experiences related to modeling. The 2009 MiSE workshop provided a venue for presentation and discussion of eleven papers in the five areas of model evolution, domain specific languages, verification and validation, model transformation and state-of-the-art modeling usage in software development. These papers represent a 44\% acceptance rate to the workshop. Three posters were also accepted. This report summarizes the discussions and conclusions of the workshop.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Ebert:2009:BRC, author = "J{\"u}rgen Ebert", title = "Book review: {{\booktitle{Collaborative and Distributed Chemical Engineering From Understanding to Substantial Design Process Support}}, Edited by Manfred Nagl, Wolfgang Marquardt (Springer Verlag, Berlin, 2008), as Lecture Note in Computer Science 4970, ISBN 3-540-70551-1, 849 pp.}", journal = j-SIGSOFT, volume = "34", number = "4", pages = "42--43", month = jul, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1543405.1564534", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:45 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Diaz-Herrera:2009:ESD, author = "Jorge L. D{\'\i}az-Herrera", title = "The ``engineering'' of software, a different kind of engineering", journal = j-SIGSOFT, volume = "34", number = "5", pages = "1--3", month = sep, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1598732.1598734", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:47 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Saxena:2009:PEN, author = "Vipin Saxena and Deepak Arora and Manish Shrivastava", title = "Performance evaluation of network system through {UML}", journal = j-SIGSOFT, volume = "34", number = "5", pages = "1--3", month = sep, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1598732.1598740", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:47 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "In distributing computing environments, information processing is distributed among many computer systems rather than confined to a single computer. They are widely used for enhancing the performance of complex and bulky numerical calculations. Distributed computer systems heavily depend on efficacy of computer networks. The performance of computer network is a major factor in implementing software on any distributed system as these software need critical response time. Load balancing is an important method for improving system performance. In present paper, authors have estimated the performance of a local area network system, which is evaluated through a well known modeling language, the Unified Modeling Language. A UML model has been designed for real case study of Sanjay Gandhi Postgraduate Institute of Medical Sciences, Lucknow, India. Network performance in terms of load balancing and sharing, is evaluated after designing UML class and sequence diagrams.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Xavier:2009:PIS, author = "P. Eugene Xavier and E. R. Naganathan", title = "Productivity improvement in software projects using 2-dimensional probabilistic software stability model {(PSSM)}", journal = j-SIGSOFT, volume = "34", number = "5", pages = "1--3", month = sep, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1598732.1598741", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:47 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "A 2-dimensional probabilistic model has been developed utilizing the properties of the Random Processes to enhance the stability of enterprise computing applications and hence the productivity factor of software projects. This innovative model would prove to be better than other estimation methods including various heuristic as well parametric approaches. A mapping of the ``design domain'' to the ``development domain'' and arriving at the correlation between the parameters of the two domains form the subject of this research. The probabilistic model developed is applied to enterprise computing applications for enhancing the productivity of software developers by minimizing the production time of the software application. The basic criteria being made use of here is to make use of the inverse relationship that exists between complexity of a software application and stability of the software. The probabilistic random process model is used to derive and utilize the correlation that exists between function points (used in Estimation Techniques) to the prime components defined in the Software Stability Model (viz., EBTs, BOs and IOs).", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Kalaimagal:2009:NTC, author = "Sivamuni Kalaimagal and Rengaramanujam Srinivasan", title = "The need for transforming the {COTS} component quality evaluation standard mirage to reality", journal = j-SIGSOFT, volume = "34", number = "5", pages = "1--4", month = sep, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1598732.1598735", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:47 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Recently, there is a trend towards multi-tiered applications. In order to produce such systems effectively, software developers often use component based technologies to assemble software systems instead of developing the systems from scratch. This helps to reduce development costs and development time. However, this approach will work only if high quality components are selected for the system. Hence, it becomes necessary to evaluate the quality of COTs components and have a trusted COTS quality standard. However, it is not so easy to develop a quality standard for COTS components, thereby making it a mirage. This paper discusses why it is important to have a COTS quality standard, the difficulties involved in framing such a standard and how those issues can be resolved so that in the long run at least the foundation of such a standard can be laid. Finally, we also introduce our quality model Q'Facto 12 that has been proposed by us to evaluate COTS component quality and how this model overcomes some of the debated issues.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Kumar:2009:AOR, author = "Manoj Kumar and Anjana Gosain and Yogesh Singh", title = "Agent oriented requirements engineering for a data warehouse", journal = j-SIGSOFT, volume = "34", number = "5", pages = "1--4", month = sep, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1598732.1598737", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:47 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "In recent years, a number of requirements engineering (RE) proposals for a data warehouse (DW) systems have been made. In the traditional/operational systems, requirements engineering has been divided into two phases: early and late requirements engineering phase. Most of the data warehouse requirements engineering (DWRE) approaches have not distinguished early requirements engineering phase from late requirements engineering phase. A very few approaches are seen in the literature that explicitly model early and late requirements for a DW. In this paper, we propose an AGDI (Agent-Goal-Decision-Information) model to support early requirements engineering issues for a data warehouse. Here, early requirements have been modeled through organization modeling and goal modeling activities as an illustration of proposed AGDI model to support decisional goals of the organization for which DW is to be built.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Mittal:2009:SMP, author = "J. P. Mittal and Pradeep Bhatia and Harish Mittal", title = "Software maintenance productivity assessment using fuzzy logic", journal = j-SIGSOFT, volume = "34", number = "5", pages = "1--4", month = sep, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1598732.1598739", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:47 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper proposes a fuzzy logic based precise approach to quantify maintenance productivity of software. Cyclomatic complexity density i.e., cyclomatic complexity per lines of code is proposed as a metric for software maintenance productivity. Triangular fuzzy numbers are used to represent cyclomatic complexity density. Fuzzy logic offers significant advantages over other approaches due to its ability to naturally represent qualitative aspect of inspection data and apply flexible inference rules based on fuzziness. The model is evaluated on the basis of published data for a small pilot project on actual maintenance data. However, the technique is quite general and may be tested for medium and large projects in other languages. Results obtained using fuzzy logic is better than results obtained by existing technique without fuzzy logic [9].", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Mishra:2009:DDF, author = "Deepti Mishra and Alok Mishra", title = "A discussion on design factors of client-server software testability", journal = j-SIGSOFT, volume = "34", number = "5", pages = "1--5", month = sep, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1598732.1598738", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:47 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "We have well established methods for testing the software for centralized systems in which all the software components resides on a single computer. But client-server software systems are different from centralized software systems because in client-server systems, software components may be distributed among different machines. Therefore, testing client-server software cannot be planned from the perspective of traditional integrated testing activities. In this paper, we have presented some design factors that can affect the testing of client-server software systems. These factors should be taken into consideration during design as it can lead to better testability in client-server software systems.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Kumar:2009:QEA, author = "Avadhesh Kumar and P. S. Grover and Rajesh Kumar", title = "A quantitative evaluation of aspect-oriented software quality model {(AOSQUAMO)}", journal = j-SIGSOFT, volume = "34", number = "5", pages = "1--9", month = sep, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1598732.1598736", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:47 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Aspect-Oriented (AO) technology is a new paradigm and emerging field of software development. Aspect-Oriented Programming (AOP) cleanly encapsulates crosscutting concerns which cannot be encapsulated or modularized by traditional programming approaches like Module-Oriented (MO) and Object-Oriented (OO). In order to evaluate quality of software systems, researchers and practitioners have proposed their software quality characteristics and models. As AO is a new abstraction, there is no dedicated software quality model, which can describe and include new features of AO technology. In this paper, a new Aspect-Oriented Software Quality Model (AOSQUAMO) has been proposed. Analytic Hierarchy Process (AHP) is used to evaluate quality of AO software systems as a single parameter. This proposed quality model further may be used to compare AO software systems which will help consumer to choose better quality software.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Auguston:2009:SAB, author = "Mikhail Auguston", title = "Software architecture built from behavior models", journal = j-SIGSOFT, volume = "34", number = "5", pages = "1--15", month = sep, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1598732.1598733", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:47 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper suggests an approach to formal software system architecture specification based on behavior models. The behavior of the system is defined as a set of events (event trace) with two basic relations: precedence and inclusion. The structure of event trace is specified using event grammars and other constraints organized into schemas. The schema framework is amenable to stepwise architecture refinement, reuse, composition, visualization, and application of automated tools for consistency checks. The concept of event attribute supports a continuous architecture refinement up to executable design and implementation models.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Bernstein:2009:PSEa, author = "Larry Bernstein and H{\'a}kon {\'A}g{\'u}stsson", title = "Pithy software engineering quotes new ``{TBD}'' column", journal = j-SIGSOFT, volume = "34", number = "5", pages = "6--6", month = sep, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1598732.1598748", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:47 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Wing:2009:EGA, author = "Michael Wing", title = "Evolution and great apps", journal = j-SIGSOFT, volume = "34", number = "5", pages = "6--7", month = sep, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1598732.1598749", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:47 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Ardis:2009:SEEb, author = "Mark A. Ardis and Peter B. Henderson", title = "Software engineering education {(SEEd)}", journal = j-SIGSOFT, volume = "34", number = "5", pages = "7--7", month = sep, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1598732.1598750", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:47 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Doernhoefer:2009:SNSe, author = "Mark Doernhoefer", title = "Surfing the net for {{\booktitle{Software Engineering Notes}}}", journal = j-SIGSOFT, volume = "34", number = "5", pages = "8--17", month = sep, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1598732.1598752", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:47 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Neumann:2009:RPe, author = "Peter G. Neumann", title = "Risks to the public", journal = j-SIGSOFT, volume = "34", number = "5", pages = "18--24", month = sep, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1598732.159753", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:47 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Ghanam:2009:RXW, author = "Yaser Ghanam and Frank Maurer and Pekka Abrahamsson and Kendra Cooper", title = "A report on the {XP Workshop on Agile Product Line Engineering}", journal = j-SIGSOFT, volume = "34", number = "5", pages = "25--27", month = sep, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1598732.1598754", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:47 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Software Product Line Engineering (SPLE) promises to lower the costs of developing individual applications as they heavily reuse existing artifacts. Besides decreasing costs, software reuse achieves faster development and higher quality. Traditionally, SPLE favors big design upfront and employs traditional, heavy weight processes. On the other hand, agile methods have been proposed to rapidly develop high quality software by focusing on producing working code while reducing upfront analysis and design. Combining both paradigms, although is challenging, can yield significant improvements. In this workshop, we discussed the challenges, the research questions and the tradeoffs that need to be addressed for such an integration to enjoy success.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Wang:2009:WAR, author = "Xiaofeng Wang and Michael Lane and Kieran Conboy and Minna Pikkarainen", title = "Where agile research goes: starting from a 7-year retrospective (report on agile research workshop at {XP2009})", journal = j-SIGSOFT, volume = "34", number = "5", pages = "28--30", month = sep, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1598732.1598755", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:47 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This report summarizes the key findings from a workshop at the 10th International Conference on Agile Processes and eXtreme Programming in Software Engineering (XP2009) called ``Agile Research --- A 7-Year Retrospective'', held in Sardinia in May 2009. The workshop was based on an open discussion around past papers presented at the conference, identifying current gaps and areas for future research. A research topic map has been drawn and several future research directions have been highlighted as the results of running the workshop.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Chitchyan:2009:REA, author = "Ruzanna Chitchyan and Monica Pinto and Safoora Shakil Khan", title = "Report on early aspects at {ICSE 2009}: {Workshop on Aspect-Oriented Requirements Engineering and Architecture Design}", journal = j-SIGSOFT, volume = "34", number = "5", pages = "30--35", month = sep, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1598732.1598756", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:47 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Early aspects are the crosscutting concerns that appear at the early stages of software development, i.e., in requirements and architecture design. But do these early aspects span the whole development lifecycle? How can they be traced forwards and back to other software work products? Is AO worth the effort in the first place? These and a number of other questions were discussed during the [email protected] workshop in 2009. The present report contains summaries of these discussions as well as a brief overview of the papers accepted for the 16th.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Sillitti:2009:DES, author = "Alberto Sillitti", title = "Designing empirical studies: assessing the effectiveness of agile methods", journal = j-SIGSOFT, volume = "34", number = "5", pages = "35--37", month = sep, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1598732.1598757", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:47 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The 10th International Conference on Agile Processes and eXtreme Programming in Software Engineering (XP 2009) was held in Sardinia (Italy) in May 25-29, 2009. The 3rd International Workshop on Designing Empirical Studies (IWDES 2009) was organized and focused on the assessment of the effectiveness of agile methods.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Fernandes:2009:RAM, author = "Jo{\~a}o M. Fernandes and Luis C. Lamb and Ricardo J. Machado and Fl{\'a}vio R. Wagner", title = "Recent advances in model-based methodologies for pervasive and embedded software", journal = j-SIGSOFT, volume = "34", number = "5", pages = "37--39", month = sep, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1598732.1598758", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:47 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "We report on recent advances in Model-based Methodologies for Pervasive and Embedded Software. This paper describes the research presented at MOMPES 2009, the 6th edition of a workshop series. The MOMPES workshops focus on the theoretical and practical aspects related to the adoption of model-based development methodologies for supporting the construction of software for pervasive and embedded systems. The workshops usually gather researchers from both industry and academia. In 2009, the workshop included papers tackling both foundational and application research themes related to embedded systems. We describe the main contributions of these papers, and point out further results on recent advances in this area.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Glinz:2009:RWC, author = "Martin Glinz and Patrick Heymans and Anne Persson and Guttorm Sindre and Ayb{\"u}ke Aurum and Nazim Madhavji and Barbara Paech and Gil Regev and Roel Wieringa", title = "Report on the working conference on requirements engineering: foundation for software quality {(REFSQ'09)}", journal = j-SIGSOFT, volume = "34", number = "5", pages = "40--45", month = sep, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1598732.1598759", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:47 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This report summarizes the presentations and discussions at REFSQ'09, the 15th International Working Conference on Requirements Engineering: Foundation for Software Quality which was held on June 8-9, 2009 in Amsterdam, The Netherlands.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Dubinsky:2009:SDG, author = "Yael Dubinsky and Philippe Kruchten", title = "{Software development governance (SDG)}: report on 2nd workshop", journal = j-SIGSOFT, volume = "34", number = "5", pages = "46--47", month = sep, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1598732.", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:47 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This is a report on the 2nd roles and responsibilities workshop on governance software development (SDG), which took place as part of ICSE 2009. While the first workshop in 2008 focused on the definitions of the concepts involved in software development governance, the second workshop focused on case studies in which changes are introduced to software teamwork, e.g., distributed and agile environments, and on governance approaches that are used to better align software development with the business goals.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Carver:2009:RSI, author = "Jeffrey C. Carver", title = "Report from the {Second International Workshop on Software Engineering for Computational Science and Engineering (SE-CSE 09)}", journal = j-SIGSOFT, volume = "34", number = "5", pages = "48--51", month = sep, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1598732.1598761", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:47 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This is the report from a one-day workshop that took place on May 23, 2009 in as part of the International Conference on Software Engineering in Vancouver, Canada. The main focus of this workshop was to provide a venue for discussion of problems related to the application of software engineering principles to the development of Computational Science and Engineering software.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Lewis:2009:RWS, author = "Grace Lewis and Dennis Smith and Len Bass and Brad Myers", title = "Report of the {Workshop on Software Engineering Foundations for End-User Programming}", journal = j-SIGSOFT, volume = "34", number = "5", pages = "51--54", month = sep, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1598732.1598762", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:47 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The Workshop on Software Engineering Foundations for End-User Programming (SEEUP) was held at the 33rd International Conference on Software Engineering (ICSE) in Vancouver, British Columbia on May 23, 2009. This workshop discussed end-user programming with a specific focus on the software engineering that is required to make it a more disciplined process, while still hiding the complexities of greater discipline from the end user. Speakers covered how to understand the problems and needs of the real end users of end-user programming. The discussion focused on the software engineering and supporting technology that would have to be in place to address these problems and needs.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Saur:2009:BRC, author = "Joe Saur", title = "Book Review: {{\booktitle{C Programming: a Modern Approach}} (2nd Edit.) written by K. N. King, and published by W. W. Norton and Company, paperback, ISBN 978-0-393-97950-3, 832 pp.}", journal = j-SIGSOFT, volume = "34", number = "5", pages = "57--58", month = sep, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1598732.1598742", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:47 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Saur:2009:BRM, author = "Joe Saur", title = "Book review: {{\booktitle{Mathematical Modeling and Simulation: Introduction for Scientists and Engineers}} by Kai Velten, and published by Wiley-VCH, 2009, paperback, ISBN 978-3-527-40758-3, 348 pp.}", journal = j-SIGSOFT, volume = "34", number = "5", pages = "58--58", month = sep, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1598732.1598743", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:47 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Chodkowski:2009:BRR, author = "Steven Chodkowski", title = "Book Review: {{\booktitle{Research Methods for Human-Computer Interaction}} edited by Paul Cairns and Anna L. Cox, and published by Cambridge University Press, 2008, paperback (also available in Hard Cover), ISBN: 978-0-521-69031-7, 242 pp., (987-0-521-87012-2 hardcover)}", journal = j-SIGSOFT, volume = "34", number = "5", pages = "59--59", month = sep, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1598732.1598744", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:47 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Ben-Menachem:2009:BRS, author = "Mordechai Ben-Menachem", title = "Book review: {{\booktitle{Software Maintenance Management}} by Alain April and Alain Abran, and published by Wiley Interscience (John Wiley and Sons, Inc.), 2008, (paperback), ISBN 978-0470-14707-8, pp. 334}", journal = j-SIGSOFT, volume = "34", number = "5", pages = "59--60", month = sep, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1598732.1598745", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:47 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Farrell-Vinay:2009:BRM, author = "Peter Farrell-Vinay", title = "Book review: {{\booktitle{Model-based software testing and analysis in C\#}} by Jonathan Jacky, Margus Veanes, Colin Campbell, and Wolfram Schulte, and published by CUP, 2008, (paperback) ISB-10: 0-521-68761-6, 349 pp.}", journal = j-SIGSOFT, volume = "34", number = "5", pages = "60--60", month = sep, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1598732.1598746", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:47 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/csharp.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Farrell-Vinay:2009:BRI, author = "Peter Farrell-Vinay", title = "Book review: {{\booktitle{Introduction to Software Testing}}, by Paul Amman and Jeff Offutt, published by CUP, 2008, 978-0-521-88038 322 pp., 0-471-20282-7}", journal = j-SIGSOFT, volume = "34", number = "5", pages = "60--61", month = sep, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1598732.1598747", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:47 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Bernstein:2009:PSEb, author = "Larry Bernstein and H{\'a}kon {\'A}g{\'u}stsson", title = "Pithy Software Engineering Quotes New Column", journal = j-SIGSOFT, volume = "34", number = "6", pages = "1", month = nov, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1640162.1640182", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Feng:2009:FFS, author = "Yu Feng", title = "Finding flows in software development", journal = j-SIGSOFT, volume = "34", number = "6", pages = "1--3", month = nov, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1640162.1640166", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Nowadays, many developers lose their passions for software development. Flow is a theory to describe experience associated with optimal performance. In this article, I analyzed essential components of flow and their meanings for software developers. I also made recommendations on the fields of study where flow can be made.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Gill:2009:CAP, author = "Nasib S. Gill and Balkishan", title = "Component adaptation process and adaptability viewpoints", journal = j-SIGSOFT, volume = "34", number = "6", pages = "1--3", month = nov, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1640162.1640173", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Component adaptation is one of the most crucial issues in Component-Based Software Development (CBSD). The present paper addresses the component adaptation process consisting of three activities: Finding Mismatch, Evaluating Adaptability and Component Adaptation. Furthermore, this paper describes six viewpoints for component adaptability evaluation: Cost, Quality of Services (QoS), Fault Tolerance, Functional Requirement, Behavioral Requirement and Technical Requirement. Finally, this paper discusses the importance of measuring adaptability that helps in evaluating component adaptability.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Tee:2009:EMR, author = "Sim Hui Tee", title = "Eliminating method redundancy for the improvement of inner class design", journal = j-SIGSOFT, volume = "34", number = "6", pages = "1--3", month = nov, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1640162.1640174", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Inner class is a helper class that assists its outer class to perform a specific task. It is declared within the body of outer class. An outer class can contain multiple inner classes in term of breadth and depth. The design principle of inner classes is to have them defined cohesively related to the functionality of outer class. However, method redundancy always renders overheads in inner class design. Eliminating method redundancy is significant because it can reduce the class complexity and enhance the class cohesiveness. This research examines the method redundancy in the inner classes. The author proposes a methodology to rate the complexity of redundant methods in order to reduce class complexity and enhance the inner class design.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Catal:2009:BAS, author = "Cagatay Catal", title = "Barriers to the adoption of software product line engineering", journal = j-SIGSOFT, volume = "34", number = "6", pages = "1--4", month = nov, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1640162.1640164", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Software development costs and time to deploy a software-intensive system significantly decrease when Software Product Line Engineering (SPLE) approach is applied. Numerous case studies in industrial and military domains have shown that reliability, quality, productivity and user interface consistency improve drastically in addition to the decrease of cost and time-to-market. Also, this system engineering approach is very effective in three market strategies known as cost leadership, differentiation, and focusing. Despite these measurable benefits, product line engineering adoption is slower than the other technological trends such as Service Oriented Architecture (SOA), Model Driven Development (MDD), and Aspect Oriented Software Development (AOSD). In this paper, we investigate the barriers to the adoption of SPLE and explore the root causes of them from three points of views: Project sponsor, organization, and SPLE community. We provide suggestions for how the industry and SPLE community can solve these multi-dimensional issues in a short term.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Drori:2009:TSD, author = "Offer Drori", title = "Template for a system design file using {OODPM} version 2010", journal = j-SIGSOFT, volume = "34", number = "6", pages = "1--4", month = nov, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1640162.1640165", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Object Oriented Design by Prototype Methodology (OODPM) inte-grates two known technologies: the object approach and the prototype concept. Object oriented methodology is used for internal system de-sign, and prototype methodology is used for external system design. This document is a template for a system design file using OODPM version 2010 (titles of paragraphs only). For full explanations for each paragraph look at [1]. This version developed after tens of projects that developed and plan using 5.1 version in a very vast projects for national information systems. This version companion by ``User Guide OODPM Methodology for Planning Information Systems Version 2010'' --- meanwhile only in Hebrew.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Bhattacharyya:2009:VGN, author = "Indrajit Bhattacharyya and Anup Kumar Bandypopadhyay and Bhaskar Gupta and Aloknath Chattopadhyay and Rajeswari Chattopadhyay and Kiyotoshi Yasumoto", title = "Vector {GA}: a novel enhancement of genetic algorithms for efficient multi-variable or multi-dimensional search", journal = j-SIGSOFT, volume = "34", number = "6", pages = "1--5", month = nov, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1640162.1640163", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Many software engineering problems can be viewed as a large multidimensional searching problem. This paper presents an enhancement of conventional Genetic Algorithms (GA) for more efficient multi-variable or multi-dimensional searches. The concept relies upon expressing chromosomes as vectors in the required multidimensional frame of reference. Usual GA operators are also defined as vector operators. Comparison with conventional genetic algorithm is made to illustrate its superior performance.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Nami:2009:CIC, author = "Mohammad Reza Nami and Bahareh Sheikh-Abbasi and Marjaneh Khoshandam", title = "A comparative introduction to {CSP} and {ACT}-{ONE} formal languages", journal = j-SIGSOFT, volume = "34", number = "6", pages = "1--5", month = nov, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1640162.1640168", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Formal Methods have changed software engineering development process. They have been used in implementation of software for safety-critical environments. Formal specification languages have good properties for describing a system. ACT-ONE and Communicating Sequential Process (CSP) are two specification languages we have discussed on them in this paper. This paper compares them from different aspects such as their styles, special symbols, databases, and combination with other languages. As future work, we will present a new formal model for a distributed system in our next research.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Rehman:2009:RSD, author = "S. Rehman and K. Mustafa", title = "Research on software design level security vulnerabilities", journal = j-SIGSOFT, volume = "34", number = "6", pages = "1--5", month = nov, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1640162.1640171", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "One of the major problems in software security is the lack of knowledge about security among software developers. Even if a developer has good knowledge about current software vulnerabilities, they generally have little or no idea about the causes and measures that can avoid those vulnerabilities. Now it is established fact that most of the vulnerabilities arise in design phase of the software development lifecycle. Keeping in view the importance of software design level security, a study of current software design level vulnerabilities and their cause is conducted. In this paper, we discuss current practices in specific software design tasks, vulnerabilities and mitigation mechanism. On the basis of the critical review, areas of research are identified that warrant further investigation.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Kaur:2009:LSU, author = "Parminder Kaur and Hardeep Singh", title = "A layered structure for uniform version management in component based systems", journal = j-SIGSOFT, volume = "34", number = "6", pages = "1--7", month = nov, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1640162.1640167", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The prerequisite of component-based systems is to manage the life-cycle evolution of software components. As there are multiple versions of constituent components, a need exists to keep track of them. Various version control systems, either in the form of open-source or commercial, are available in the market to maintain the evolution history of multiple versions of constituent components with respect to component-based applications. This paper dis-cusses the requirements of a version control framework and then presents a generic framework that can handle multiple versions of different types of components. The prototype framework named as Visual Version Control Tool (VVCT), for the management of life-cycle evolution of heterogeneous component systems, is developed and tested using {.NET} environment. The developed tool satisfies all the conditions required for uniform version management and also becomes the basis for version model, which can be used to control the different revisions or variants of the same component in the evolving system.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Pandey:2009:EWR, author = "R. K. Pandey", title = "Exploiting web resources for teaching\slash learning best software design tips", journal = j-SIGSOFT, volume = "34", number = "6", pages = "1--7", month = nov, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1640162.1640169", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/java2000.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "Teaching software design principles using conventional class room methodologies has its own limitations and as such is less effective. Software design being the most crucial phase of the Software Development Life Cycle (SDLC) requires considerable practical experience on the part of the teacher. The approach presented in this paper may help the computer science/software engineering students learn the advanced level software design tips through Internet based resources. Such type of approaches to teaching/learning software engineering principles through Free/Open Source (F/OSS) resources have been quite successfully used and reported in the literature. The approach presented in this paper is somewhat similar and may be of great help to the persons having background in JAVA and {.NET} technologies and involved in the design/development of JAVA/.NET based components/applications. The approach has a number of advantages over the approaches used by others and is quite effective.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Singh:2009:EAM, author = "Ranjit Singh and Shakti Mishra and D. S. Kushwaha", title = "An efficient asynchronous mobile web service framework", journal = j-SIGSOFT, volume = "34", number = "6", pages = "1--7", month = nov, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1640162.1640170", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "The popularity of web services within the IT industry continuous to grow. Accessing web services from a small device is very common these days. There are number of challenges to access a web services on mobile device due to its limited resources and the lack of bandwidth in its communication network. In Mobile devices, Synchronous web services are not feasible. It makes the user wait while each Web service processes requests and returns results. Asynchronous Web services invocation solves this performance issue and enhances the end user experience by increasing server efficiency. The architecture of asynchronous web services is controllable and monitorable. In order to enhance the efficiency of a mobile web services, we have created a bridge between telephony application and web application. We integrate the telecommunication facility and asynchronous invocation of web services. It exposes telephony services as web services, so that web application can easily access telecommunication facilities through SMS messaging.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Samuel:2009:SBT, author = "Philip Samuel and Rajib Mall", title = "Slicing-based test case generation from {UML} activity diagrams", journal = j-SIGSOFT, volume = "34", number = "6", pages = "1--14", month = nov, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1640162.1666579", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "UML diagrams are important design and modeling artifacts. These diagrams can also be used to generate test cases. We present a novel test case generation method that is based on dynamic slicing of UML activity diagrams. We use flow dependence graph (FDG) of an activity diagram to generate dynamic slices. Dynamic slices are created using an edge marking method. Slices are constructed corresponding to each conditional predicate on activity edges and test cases are automatically generated with respect to each slice. Our generated test cases satisfy path coverage criterion. Our test data generation scheme is automatic and the test data is generated considering the slice condition. We have implemented our approach to realize a prototype tool.", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Ardis:2009:SEEc, author = "Mark A. Ardis and Peter B. Henderson", title = "Software engineering education {(SEEd)}", journal = j-SIGSOFT, volume = "34", number = "6", pages = "5--8", month = nov, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1640162.1655273", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Schaefer:2009:ECS, author = "Robert Schaefer", title = "The epistemology of computer security", journal = j-SIGSOFT, volume = "34", number = "6", pages = "8--10", month = nov, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1640162.1655274", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", abstract = "This paper studies computer security from first principles. The basic questions ``Why?'', ``How do we know what we know?'' and ``What are the implications of what we believe?''", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Doernhoefer:2009:SNSf, author = "Mark Doernhoefer", title = "Surfing the net for {{\booktitle{Software Engineering Notes}}}", journal = j-SIGSOFT, volume = "34", number = "6", pages = "11--20", month = nov, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1640162.1655275", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Neumann:2009:RPf, author = "Peter G. Neumann", title = "Risks to the public", journal = j-SIGSOFT, volume = "34", number = "6", pages = "21--24", month = nov, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1640162.1655276", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Heiman:2009:BRP, author = "Thomas Heiman", title = "Book Review: {{\booktitle{Pattern Recognition and Neural Networks}} by Brian D. Ripley, and published by Cambridge University Press, 2007, Paperback, ISBN 978-0521-71770-0, pp. 403}", journal = j-SIGSOFT, volume = "34", number = "6", pages = "28--28", month = nov, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1640162.1640175", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Heiman:2009:BRS, author = "Thomas Heiman", title = "Book Review: {{\booktitle{Simulation-Based Engineering of Complex Systems}}, Second Edition is written by John R. Clymer, and published by Wiley-Interscience, 2009, ISBN 978-00470-40129-3, pp. 503}", journal = j-SIGSOFT, volume = "34", number = "6", pages = "28--29", month = nov, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1640162.1640176", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Schaefer:2009:BRD, author = "Robert Schaefer", title = "Book Review: {{\booktitle{Design, Measurement and Management of Large-Scale IP Networks}} by Antonio Nucci and Konstantina Papagiannaki, and published by Cambridge University Press, 2009, 978-0-521-88069-5, 394 pp.}", journal = j-SIGSOFT, volume = "34", number = "6", pages = "29--29", month = nov, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1640162.1640177", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Schaefer:2009:BRS, author = "Robert Schaefer", title = "Book Review: {{\booktitle{Scientific Software: a Guide to Good Style}} by Suely Oliveira and David Stewart, and published by Cambridge University Press, 2006, (paperback), 0-521-67595-2, 303 pp.}", journal = j-SIGSOFT, volume = "34", number = "6", pages = "30--30", month = nov, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1640162.1640178", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Henderson:2009:BRC, author = "Craig Henderson", title = "Book Review: {{\booktitle{Computing for Numerical Methods using Visual C++}} by Shaharuddin Salleh, Albert Y. Zomaya, Sakhinah Abu Bakar, and published by Wiley-Interscience (December 14, 2007), 2007, 0-470-12795-3, 448 pp.}", journal = j-SIGSOFT, volume = "34", number = "6", pages = "30--31", month = nov, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1640162.1640179", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Gvero:2009:BRPa, author = "Igor Gvero", title = "Book Review: {{\booktitle{Practical Text Mining With Perl}}, by Roger Bilisoly, and published by Wiley, 2009, 978-0-470-1763-6, 295pp.}", journal = j-SIGSOFT, volume = "34", number = "6", pages = "31--31", month = nov, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1640162.1640180", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", } @Article{Gvero:2009:BRPb, author = "Igor Gvero", title = "Book Review: {{\booktitle{Python for Software Design}} by Allen B. Downey, and published by Cambridge University Press, 2009, 978-0-521-72596-5, 251pp.}", journal = j-SIGSOFT, volume = "34", number = "6", pages = "31--32", month = nov, year = "2009", CODEN = "SFENDP", DOI = "https://doi.org/10.1145/1640162.1640181", ISSN = "0163-5948 (print), 1943-5843 (electronic)", ISSN-L = "0163-5948", bibdate = "Wed Aug 1 17:15:50 MDT 2018", bibsource = "http://www.math.utah.edu/pub/tex/bib/python.bib; http://www.math.utah.edu/pub/tex/bib/sigsoft2000.bib", acknowledgement = ack-nhfb, fjournal = "ACM SIGSOFT Software Engineering Notes", journal-URL = "https://dl.acm.org/citation.cfm?id=J728", }