4,951 papers · page 176 of 248
Functional Paleontology: System Evolution as the User Sees It
It has long been accepted that requirements analysis should precede architectural design and implementation, but in software evolution and reverse engineering this concern with black-box analysis of function has necessarily been de-emphasized in favor of code-based analysis and d…
A Case Study of the Evolution of Jun: An Object-Oriented Open-Source 3D Multimedia Library
Jun is a large open-source graphics and multimedia library. It is object-oriented and supports 3D geometry, topography and multimedia. This paper reviews the development of the Jun library from five perspectives: open-source, software evolution processes, development styles, tech…
Introduction to the Attribute Driven Design Method
"Tolerating Inconsistency" Revisited
Summary form only given, as follows. We're surrounded by inconsistency: in our requirements, in the data that our software processes, and in those software systems themselves. Yet our formal systems can’t handle such inconsistency. Most of them lose the ability to form any valid …
Process-Centered Software Engineering Environments: Academic and Industrial Perspectives
Using Transformation Systems for Software Maintenance and Reengineering
A Scalable Formal Method for Design and Automatic Checking of User Interfaces
The paper addresses the formal specification, design and implementation of the behavioral component of graphical user interfaces. Dialogs are specified by means of modular, communicating grammars called VEG (Visual Event Grammars), which extend traditional BNF grammars to make th…
An Explorative Journey from Architectural Tests Definition downto Code Tests Execution
Investigating the Cost-Effectiveness of Reinspections in Software Development
Software inspection is one of the most effective methods to detect defects. Reinspection repeats the inspection process for software products that are suspected to contain a significant number of undetected defects after an initial inspection. As a reinspection is often believed …
Evaluating the Accuracy of Defect Estimation Models Based on Inspection Data from Two Inspection Cycles
Defect content estimation techniques (DCETs), based on defect data from inspection, estimate the total number of defects in a document to evaluate the development process. For inspections that yield few data points DCETs reportedly underestimate the number of defects. If there is…
EasyWinWin: A Groupware-Supported Nethodology for Requirements Negotiation
Educating Software Engineering Students to Manage Risk
In 1996, the University of Southern California (USC) switched its core two-semester software engineering course from a hypothetical-project, homework-and-exam course based on the Bloom taxonomy of educational objectives (knowledge, comprehension, application, analysis, synthesis …
Software Product Lines: Organizational Alternatives
Software product lines are enjoying increasingly wide adoption in the software industry. Most authors focus on the technical and process aspects, and assume an organizational model consisting of a domain engineering unit and several application engineering units. In our cooperati…
Software Product Lines and Software Architecture Design
Specification and Modeling: An Academic Perspective
Static Checking of Interrupt-Driven Software
Resource-constrained devices are becoming ubiquitous. Examples include cell phones, Palm Pilots and digital thermostats. It can be difficult to fit the required functionality into such a device without sacrificing the simplicity and clarity of the software. Increasingly complex e…
Generative Techniques for Product Lines
Engineering Mobile-Agent Applications via Context-Dependent Coordination
Mobility introduces peculiar coordination problems in agent-based Internet applications. First, it suggests the exploitation of an infrastructure based on a multiplicity of local interaction spaces. Second, it may require coordination activities to be adapted both to the characte…
Efficient Filtering in Publish-Subscribe Systems Using Binary Decision
Implicit invocation or publish-subscribe has become an important architectural style for large-scale system design and evolution. The publish-subscribe style facilitates developing large-scale systems by composing separately developed components because the style permits loose co…