Results 1 - 10
of
26
Pre/Post Conditioned Slicing
, 2001
"... This paper shows how analysis of programs in terms of pre- and post- conditions can be improved using a generalisation of conditioned program slicing called pre/post conditioned slicing. Such conditions play an important role in program comprehension, reuse, verification and reengineering. Fully aut ..."
Abstract
-
Cited by 20 (12 self)
- Add to MetaCart
This paper shows how analysis of programs in terms of pre- and post- conditions can be improved using a generalisation of conditioned program slicing called pre/post conditioned slicing. Such conditions play an important role in program comprehension, reuse, verification and reengineering. Fully automated analysis is impossible because of the inherent undecidability of pre- and post- conditions. The method presented here reformulates the problem to circumvent this. The reformulation is constructed so that programs which respect the pre- and post-conditions applied to them have empty slices. For those which do not respect the conditions, the slice contains statements which could potentially break the conditions. This separates the automatable part of the analysis from the human analysis.
Fostering Social Creativity by Increasing Social Capital
- In M. Huysman & V. Wulf (Eds.), Social Capital and Information
, 2004
"... Complex design problems require more knowledge than any single person can possess, and the knowledge relevant to a problem is often distributed among all stakeholders who have different perspectives and background knowledge, thus providing the foundation for social creativity. Bringing together diff ..."
Abstract
-
Cited by 19 (10 self)
- Add to MetaCart
Complex design problems require more knowledge than any single person can possess, and the knowledge relevant to a problem is often distributed among all stakeholders who have different perspectives and background knowledge, thus providing the foundation for social creativity. Bringing together different points of view and trying to create a shared understanding among all stakeholders can lead to new insights, new ideas, and new artifacts. Social creativity can be supported by innovative computer systems that allow all stakeholders to contribute to framing and solving these problems collaboratively. Technology alone, however, is not the complete answer to social creativity. Social capital that characterizes the features of a social group—such as networks, norms, and trust, which all facilitate coordination and cooperation for mutual benefit—is of critical importance to foster social creativity. In this paper, we discuss (1) the roles that social capital plays in facilitating social creativity and (2) approaches to increase social capital. We start by analyzing existing success models (Open Source and Experts Exchange) that support collaborative knowledge construction in order to create a conceptual framework to understand the social-technical aspects of promoting social capital. We further illustrate this conceptual framework with our own efforts in creating social capital-sensitive computer systems (e.g., Evolutionary Reuse Repositories, Envisionment and Discovery Collaboratory, and Courses-as-Seeds) that
Assieme: finding and leveraging implicit references in a web search interface for programmers
- In: 20th annual ACM Symposium on User Interface Software and Technology
, 2007
"... Programmers regularly use search as part of the development process, attempting to identify an appropriate API for a problem, seeking more information about an API, and seeking samples that show how to use an API. However, neither general-purpose search engines nor existing code search engines curre ..."
Abstract
-
Cited by 18 (3 self)
- Add to MetaCart
Programmers regularly use search as part of the development process, attempting to identify an appropriate API for a problem, seeking more information about an API, and seeking samples that show how to use an API. However, neither general-purpose search engines nor existing code search engines currently fit their needs, in large part because the information programmers need is distributed across many pages. We present Assieme, a Web search interface that effectively supports common programming search tasks by combining information from Web-accessible Java Archive (JAR) files, API documentation, and pages that include explanatory text and sample code. Assieme uses a novel approach to finding and resolving implicit references to Java packages, types, and members within sample code on the Web. In a study of programmers performing searches related to common programming tasks, we show that programmers obtain better solutions, using fewer queries, in the same amount of time spent using a general Web search interface. ACM Classification
Ontological evaluation of reference models using the Bunge-Wand-Weber model
- In Proceedings of the 2003 Americas Conference on Information Systems
, 2003
"... Within the information systems field, reference models have been known for many years. A reference model is a conceptual framework and may be used as a blueprint for information systems development. Despite the relevance of reference model quality, little research has been undertaken on their system ..."
Abstract
-
Cited by 16 (0 self)
- Add to MetaCart
Within the information systems field, reference models have been known for many years. A reference model is a conceptual framework and may be used as a blueprint for information systems development. Despite the relevance of reference model quality, little research has been undertaken on their systematical evaluation. In this paper, we propose an approach to evaluate reference models based on the Bunge-Wand-Weber ontology. We demonstrate that this application is possible and useful for model evaluation and several other areas. The main idea of our approach is the ontological normalization of a reference model. An ontological normalization is comparable with the normalization of a database schema but considers the structure of reality and not technical aspects. The ontological normalization of a reference model consists of four steps: (1) Developing a transformation mapping, (2) Identifying ontological modeling deficiencies, (3) Transforming the reference model, and (4) Assessing the results. Although our approach is based on sound theory, we argue that this approach is not inherently superior to other approaches of reference model evaluation.
Efficient Specification-Based Component Retrieval
- Automated Software Engineering
, 1996
"... . In this paper we present a mechanism for making specification-based component retrieval more efficient by limiting the amount of theorem proving required at query time. This is done by using a classification scheme to reduce the number of specification matching proofs that are required to process ..."
Abstract
-
Cited by 16 (2 self)
- Add to MetaCart
. In this paper we present a mechanism for making specification-based component retrieval more efficient by limiting the amount of theorem proving required at query time. This is done by using a classification scheme to reduce the number of specification matching proofs that are required to process a query. Components are classified by assigning features that correspond to necessary conditions implied by the component specifications. We show how this method of feature assignment can be used to approximate reusability relationships between queries and library components. The set of possible classification features are formally defined, permitting automation of the classification process. The classification process itself is made efficient by using a specialized theorem proving tactic to prove feature implication. The retrieval mechanism was implemented and evaluated experimentally using a library of list manipulation components. The results indicate a better response time than existing ...
Personalizing Delivered Information in a Software Reuse Environment
- IN PROCEEDINGS OF 8TH INTERNATIONAL CONFERENCE ON USER MODELING
, 2001
"... Browsing- and querying-oriented schemes have long served as the principal techniques for software developers to locate software components from a component repository for reuse. Unfortunately, the problem remains that software developers simply will not actively search for components when they ar ..."
Abstract
-
Cited by 13 (6 self)
- Add to MetaCart
Browsing- and querying-oriented schemes have long served as the principal techniques for software developers to locate software components from a component repository for reuse. Unfortunately, the problem remains that software developers simply will not actively search for components when they are unaware that they need components or that relevant components even exist. Thus, to assist software developers in making full use of large component repositories, information access need to be complemented by information delivery. Effective delivery of components calls for the personalization of the components to the task being performed and the knowledge of the user performing it. We have designed, implemented, and evaluated the CodeBroker system to support personalized component delivery to increase the usefulness of a Java software reuse environment.
Applications of Ontologies in Software Engineering
- In 2nd International Workshop on Semantic Web Enabled Software Engineering (SWESE 2006), held at the 5th International Semantic Web Conference (ISWC 2006
, 2006
"... Abstract. The emerging field of semantic web technologies promises new stimulus for Software Engineering research. However, since the underlying concepts of the semantic web have a long tradition in the knowledge engineering field, it is sometimes hard for software engineers to overlook the variety ..."
Abstract
-
Cited by 12 (0 self)
- Add to MetaCart
Abstract. The emerging field of semantic web technologies promises new stimulus for Software Engineering research. However, since the underlying concepts of the semantic web have a long tradition in the knowledge engineering field, it is sometimes hard for software engineers to overlook the variety of ontology-enabled approaches to Software Engineering. In this paper we therefore present some examples of ontology applications throughout the Software Engineering lifecycle. We discuss the advantages of ontologies in each case and provide a framework for classifying the usage of ontologies in Software Engineering.
Towards Improving Web Service Repositories through Semantic Web Techniques
- In Workshop on Semantic Web Enabled Software Engineering (SWESE
, 2005
"... Abstract. The success of the Web services technology has brought topics as software reuse and discovery once again on the agenda of software engineers. While there are several efforts towards automating Web service discovery and composition, many developers still search for services via online Web s ..."
Abstract
-
Cited by 6 (1 self)
- Add to MetaCart
Abstract. The success of the Web services technology has brought topics as software reuse and discovery once again on the agenda of software engineers. While there are several efforts towards automating Web service discovery and composition, many developers still search for services via online Web service repositories and then combine them manually. However, from our analysis of these repositories, it yields that, unlike traditional software libraries, they rely on little metadata to support service discovery. We believe that the major cause is the difficulty of automatically deriving metadata that would describe rapidly changing Web service collections. In this paper, we discuss the major shortcomings of state of the art Web service repositories and, as a solution, we report on ongoing work and ideas on how to use techniques developed in the context of the Semantic Web (ontology learning, mapping, metadata based presentation) to improve the current situation. 1
Uncertainty Aspects in Component Retrieval
- In Proc. IPMU'98
, 1998
"... Successful software reuse depends on many factors, adequate description of reusable software is one of them. This paper focuses on some of the inherent problems in adequately describing software for later focussed retrieval. Out of these considerations, a hybrid approach, combining well known ..."
Abstract
-
Cited by 4 (4 self)
- Add to MetaCart
Successful software reuse depends on many factors, adequate description of reusable software is one of them. This paper focuses on some of the inherent problems in adequately describing software for later focussed retrieval. Out of these considerations, a hybrid approach, combining well known techniques from library science with techniques based on the inherent property of software, its executability, is presented. 1

