221,692 research outputs found
Domain-specific functional software testing: A progress report
Software Engineering is a knowledge intensive activity that involves defining, designing, developing, and maintaining software systems. In order to build effective systems to support Software Engineering activities, Artificial Intelligence techniques are needed. The application of Artificial Intelligence technology to Software Engineering is called Knowledge-based Software Engineering (KBSE). The goal of KBSE is to change the software life cycle such that software maintenance and evolution occur by modifying the specifications and then rederiving the implementation rather than by directly modifying the implementation. The use of domain knowledge in developing KBSE systems is crucial. Our work is mainly related to one area of KBSE that is called automatic specification acquisition. One example is the WATSON prototype on which our current work is based. WATSON is an automatic programming system for formalizing specifications for telephone switching software mainly restricted to POTS, i.e., plain old telephone service. Our current approach differentiates itself from other approaches in two antagonistic ways. On the one hand, we address a large and complex real-world problem instead of a 'toy domain' as in many research prototypes. On the other hand, to allow such scaling, we had to relax the ambitious goal of complete automatic programming, to the easier task of automatic testing
Recommended from our members
Reusability in software engineering
This paper surveys recent work concerning reusability in software engineering. The current directions in software reusability are discussed, and the two major approaches of reusable building blocks and reusable patterns studied. An extensive bibliography, parts of which are annotated, is included
Grand Challenges of Traceability: The Next Ten Years
In 2007, the software and systems traceability community met at the first
Natural Bridge symposium on the Grand Challenges of Traceability to establish
and address research goals for achieving effective, trustworthy, and ubiquitous
traceability. Ten years later, in 2017, the community came together to evaluate
a decade of progress towards achieving these goals. These proceedings document
some of that progress. They include a series of short position papers,
representing current work in the community organized across four process axes
of traceability practice. The sessions covered topics from Trace Strategizing,
Trace Link Creation and Evolution, Trace Link Usage, real-world applications of
Traceability, and Traceability Datasets and benchmarks. Two breakout groups
focused on the importance of creating and sharing traceability datasets within
the research community, and discussed challenges related to the adoption of
tracing techniques in industrial practice. Members of the research community
are engaged in many active, ongoing, and impactful research projects. Our hope
is that ten years from now we will be able to look back at a productive decade
of research and claim that we have achieved the overarching Grand Challenge of
Traceability, which seeks for traceability to be always present, built into the
engineering process, and for it to have "effectively disappeared without a
trace". We hope that others will see the potential that traceability has for
empowering software and systems engineers to develop higher-quality products at
increasing levels of complexity and scale, and that they will join the active
community of Software and Systems traceability researchers as we move forward
into the next decade of research
Recommended from our members
OntoEng: A design method for ontology engineering in information systems
This paper addresses the design problem relating to ontology engineering in the discipline of information systems. Ontology engineering is a realm that covers issues related to ontology development and use throughout its life span. Nowadays, ontology as a new innovation promises to improve the design, semantic integration, and utilization of information systems. Ontologies are the backbone of knowledge-based systems. In addition, they establish sharable and reusable common understanding of specific domains amongst people, information systems, and software agents. Notwithstanding, the ontology engineering literature does not provide adequate guidance on how to build, evaluate, and maintain ontologies. On the basis of the
gathered experience during the development of V4 Telecoms Business Model Ontology as well as the conducted integration of the related literature from the design science paradigm, this paper introduces OntoEng and its application as a novel systematic design
method for ontology engineering
A document-like software visualization method for effective cognition of c-based software systems
It is clear that maintenance is a crucial and very costly process in a software life cycle. Nowadays there are a lot of software systems particularly legacy systems that are always maintained from time to time as new requirements arise. One important source to understand a software system before it is being maintained is through the documentation, particularly system documentation. Unfortunately, not all software systems developed or maintained are accompanied with their reliable and updated documents. In this case, source codes will be the only reliable source for programmers. A number of studies have been carried out in order to assist cognition based on source codes. One way is through tool automation via reverse engineering technique in which source codes will be parsed and the information extracted will be visualized using certain visualization methods. Most software visualization methods use graph as the main element to represent extracted software artifacts. Nevertheless, current methods tend to produce more complicated graphs and do not grant an explicit, document-like re-documentation environment. Hence, this thesis proposes a document-like software visualization method called DocLike Modularized Graph (DMG). The method is realized in a prototype tool named DocLike Viewer that targets on C-based software systems. The main contribution of the DMG method is to provide an explicit structural re-document mechanism in the software visualization tool. Besides, the DMG method provides more level of information abstractions via less complex graph that include inter-module dependencies, inter-program dependencies, procedural abstraction and also parameter passing. The DMG method was empirically evaluated based on the Goal/Question/Metric (GQM) paradigm and the findings depict that the method can improve productivity and quality in the aspect of cognition or program comprehension. A usability study was also conducted and DocLike Viewer had the most positive responses from the software practitioners
Grand Challenges of Traceability: The Next Ten Years
In 2007, the software and systems traceability community met at the first
Natural Bridge symposium on the Grand Challenges of Traceability to establish
and address research goals for achieving effective, trustworthy, and ubiquitous
traceability. Ten years later, in 2017, the community came together to evaluate
a decade of progress towards achieving these goals. These proceedings document
some of that progress. They include a series of short position papers,
representing current work in the community organized across four process axes
of traceability practice. The sessions covered topics from Trace Strategizing,
Trace Link Creation and Evolution, Trace Link Usage, real-world applications of
Traceability, and Traceability Datasets and benchmarks. Two breakout groups
focused on the importance of creating and sharing traceability datasets within
the research community, and discussed challenges related to the adoption of
tracing techniques in industrial practice. Members of the research community
are engaged in many active, ongoing, and impactful research projects. Our hope
is that ten years from now we will be able to look back at a productive decade
of research and claim that we have achieved the overarching Grand Challenge of
Traceability, which seeks for traceability to be always present, built into the
engineering process, and for it to have "effectively disappeared without a
trace". We hope that others will see the potential that traceability has for
empowering software and systems engineers to develop higher-quality products at
increasing levels of complexity and scale, and that they will join the active
community of Software and Systems traceability researchers as we move forward
into the next decade of research
A framework for developing engineering design ontologies within the aerospace industry
This paper presents a framework for developing engineering design ontologies within the aerospace industry. The aim of this approach is to strengthen the modularity and reuse of engineering design ontologies to support knowledge management initiatives within the aerospace industry. Successful development and effective utilisation of engineering ontologies strongly depends on the method/framework used to develop them. Ensuring modularity in ontology design is essential for engineering design activities due to the complexity of knowledge that is required to be brought together to support the product design decision-making process. The proposed approach adopts best practices from previous ontology development methods, but focuses on encouraging modular architectural ontology design. The framework is comprised of three phases namely: (1) Ontology design and development; (2) Ontology validation and (3) Implementation of ontology structure. A qualitative research methodology is employed which is composed of four phases. The first phase defines the capture of knowledge required for the framework development, followed by the ontology framework development, iterative refinement of engineering ontologies and ontology validation through case studies and experts’ opinion. The ontology-based framework is applied in the combustor and casing aerospace engineering domain. The modular ontologies developed as a result of applying the framework and are used in a case study to restructure and improve the accessibility of information on a product design information-sharing platform. Additionally, domain experts within the aerospace industry validated the strengths, benefits and limitations of the framework. Due to the modular nature of the developed ontologies, they were also employed to support other project initiatives within the case study company such as role-based computing (RBC), IT modernisation activity and knowledge management implementation across the sponsoring organisation. The major benefit of this approach is in the reduction of man-hours required for maintaining engineering design ontologies. Furthermore, this approach strengthens reuse of ontology knowledge and encourages modularity in the design and development of engineering ontologies
Towards an ontology-based platform-independent framework for developing KBE systems in the aerospace industry
Aerospace engineering is considered to be one of the most complex and advanced branches of engineering. The use of knowledge based engineering (KBE) technologies has played a major role in automating routine design activities in view of supporting the cost-effective and timely development of a product. However, technologies employed within KBE systems are usually platform-specific. The nature of these platform-specific models has significantly limited knowledge abstraction and reusability in KBE systems. This research paper presents a novel approach that illustrates the use of platform-independent knowledge models for the development of KBE systems in the aerospace industry. The use of semantic technologies through the definition of generic-purposed ontologies has been employed to support the notion of independent knowledge models that strengthens knowledge reusability in KBE systems. This approach has been validated qualitatively through experts’ opinion and its benefit realised in the abstraction, reusability and maintainability of KBE systems
- …