首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到20条相似文献,搜索用时 15 毫秒
1.
Knowledge engineering stems from E. A. Figenbaum's proposal in 1977, but it will enter a new decade with the new challenges. This paper first summarizes three knowledge engineering experiments we have undertaken to show possibility of separating knowledge development from intelligent software development. We call it the ICAX mode of intelligent application software generation. The key of this mode is to generate knowledge base, which is the source of intelligence of ICAX software, independently and parallel to intelligent software development. That gives birth to a new and more general concept "knowware". Knowware is a commercialized knowledge module with documentation and intellectual property, which is computer operable, but free of any built-in control mechanism, meeting some industrial standards and embeddable in software/hardware. The process of development, application and management of knowware is called knowware engineering. Two different knowware life cycle models are discussed: the furnace model and the crystallization model. Knowledge middleware is a class of software functioning in all aspects of knowware life cycle models. Finally, this paper also presents some examples of building knowware in the domain of information system engineering.  相似文献   

2.
3.
Software engineers of multi‐agent systems (MASs) are faced with different concerns such as autonomy, adaptation, interaction, collaboration, learning, and mobility, which are essentially different from classical concerns addressed in object‐oriented software engineering. MAS developers, however, have relied mostly on object‐oriented design techniques and programming languages, such as Java. This often leads to a poor separation of MAS concerns and in turn to the production of MASs that are difficult to maintain and reuse. This paper discusses software engineering approaches for MASs, and presents a new method for integrating agents into object‐oriented software engineering from an early stage of design. The proposed approach encourages the separate handling of MAS concerns, and provides a disciplined scheme for their composition. Our proposal explores the benefits of aspect‐oriented software development for the incorporation of agents into object‐oriented systems. We also illustrate our aspect‐oriented approach through the Portalware multi‐agent system, a Web‐based environment for the development of e‐commerce portals. Copyright © 2004 John Wiley & Sons, Ltd.  相似文献   

4.
Knowware is a natural development in IT after hardware and software. It is a knowledge module that is independent, commercialized, suitable for computer manipulation, and directly usable by a class of software. It is directly related to intelligence: if software is the condensation and crystallization of knowledge, then knowware is the condensation and crystallization of intelligence. Pseudo natural languages (PNLs) such as ZHIWEN make it possible to develop knowware in a fast and massive fashion. They also offer a way to separate software developers from knowware developers, so that software engineers need only develop software tools, leaving the task of knowware development to the domain-specific experts.  相似文献   

5.
Model checking is a formal verification technique. It takes an exhaustively strategy to check hardware circuits and network protocols against desired properties. Having been developed for more than three decades, model checking is now playing an important role in software engineering for verifying rather complicated software artifacts.This paper surveys the role of model checking in software engineering. In particular, we searched for the related literatures published at reputed conferences, symposiums, workshops, and journals, and took a survey of (1) various model checking techniques that can be adapted to software development and their implementations, and (2) the use of model checking at different stages of a software development life cycle. We observed that model checking is useful for software debugging, constraint solving, and malware detection, and it can help verify different types of software systems, such as object- and aspect-oriented systems, service-oriented applications, web-based applications, and GUI applications including safety- and mission-critical systems.The survey is expected to help human engineers understand the role of model checking in software engineering, and as well decide which model checking technique(s) and/or tool(s) are applicable for developing, analyzing and verifying a practical software system. For researchers, the survey also points out how model checking has been adapted to their research topics on software engineering and its challenges.  相似文献   

6.
One of the most evident characteristics of robotic applications is heterogeneity: large robotic projects involve many different researchers with very different programming needs and areas of research, using a variety of hardware and software that must be integrated efficiently (i.e.: with a low development cost) to construct applications that satisfy not only classic robotic requirements (fault-tolerance, real-time specifications, intensive access to hardware, etc.) but also software engineering aspects (reusability, maintainability, etc.). Most existing solutions to this problem either do not deal with such heterogeneity or do not cover specific robotic needs. In this paper we propose a framework for the integration of heterogeneous robotic software through a software engineering approach: the BABEL development system, which is aimed to cover the main phases of the application lifecycle (design, implementation, testing, and maintainance) when unavoidable heterogeneity conditions are present. The capabilities of our system are shown by its support for designing and implementing diverse real robotic applications that use several programming languages (C, C++, JAVA), execution platforms (RT-operating systems, MS-Windows, no operating system at all), communication middleware (CORBA, TCP/IP, USB), and also a variety of hardware components (Personal Computers, microcontrollers, and a wide diversity of sensor and actuator devices in mobile robots and manipulator arms).  相似文献   

7.
在借鉴现代工业的组织体系、管理规范、生产流程的基础上,针对基于软件产品线体系结构的软件工程方法和开发过程进行了系统研究,提出了基于产品线体系结构而实现软件工程化生产的N-生命周期模型.该模型的建立,对研究基于软件产品线体系结构的集成化软件工程环境,进而实现软件产品的工业化生产是非常有益且重要的.  相似文献   

8.
当前社会已进入信息化时代,计算机技术在人们生活中的应用十分的广泛,计算机信息技术在很大的程度上推动了我国的经济社会的发展,促进了我国的国家建设,并且加快了我国实现工业化以及现代化的进度。而软件工程则是计算机信息技术中的重要组成,软件工程是整个信息系统中的最为重要的部分。本文对软件工程的标准化现状进行了相关分析,并提出了加强我国软件工程标准化体系的制定的步骤。  相似文献   

9.
Software engineering faculty face the challenge of educating future researchers and industry practitioners regarding the generation of empirical software engineering studies and their use in evidence-based software engineering. In order to engage the Net generation with this topic, we propose development and population of a community-driven Web database containing summaries of empirical software engineering studies. We also present our experience with integrating these activities into a graduate software engineering course. These efforts resulted in the creation of “SEEDS: Software Engineering Evidence Database System”. Graduate students initially populated SEEDS with 216 summaries of empirical software engineering studies. The summaries were randomly sampled and reviewed by industry professionals who found the student-written summaries to be at least as useful as professional-written summaries. In fact, 30% more of the respondents found the student-written summaries to be “very useful”. Motivations, student and instructor-developed prototypes, and assessments of the resulting artifacts will be discussed.  相似文献   

10.
Software product line engineering is a paradigm that advocates the reusability of software engineering assets and the rapid development of new applications for a target domain. These objectives are achieved by capturing the commonalities and variabilities between the applications of the target domain and through the development of comprehensive and variability-covering feature models. The feature models developed within the software product line development process need to cover the relevant features and aspects of the target domain. In other words, the feature models should be elaborate representations of the feature space of that domain. Given that feature models, i.e., software product line feature models, are developed mostly by domain analysts by sifting through domain documentation, corporate records and transcribed interviews, the process is a cumbersome and error-prone one. In this paper, we propose a decision support platform that assists domain analysts throughout the domain engineering lifecycle by: (1) automatically performing natural language processing tasks over domain documents and identifying important information for the domain analysts such as the features and integrity constraints that exist in the domain documents; (2) providing a collaboration platform around the domain documents such that multiple domain analysts can collaborate with each other during the process using a Wiki; (3) formulating semantic links between domain terminology with external widely used ontologies such as WordNet in order to disambiguate the terms used in domain documents; and (4) developing traceability links between the unstructured information available in the domain documents and their formal counterparts within the formal feature model representations. Results obtained from our controlled experimentations show that the decision support platform is effective in increasing the performance of the domain analysts during the domain engineering lifecycle in terms of both the coverage and accuracy measures.  相似文献   

11.

Context

Comparing and contrasting evidence from multiple studies is necessary to build knowledge and reach conclusions about the empirical support for a phenomenon. Therefore, research synthesis is at the center of the scientific enterprise in the software engineering discipline.

Objective

The objective of this article is to contribute to a better understanding of the challenges in synthesizing software engineering research and their implications for the progress of research and practice.

Method

A tertiary study of journal articles and full proceedings papers from the inception of evidence-based software engineering was performed to assess the types and methods of research synthesis in systematic reviews in software engineering.

Results

As many as half of the 49 reviews included in the study did not contain any synthesis. Of the studies that did contain synthesis, two thirds performed a narrative or a thematic synthesis. Only a few studies adequately demonstrated a robust, academic approach to research synthesis.

Conclusion

We concluded that, despite the focus on systematic reviews, there is limited attention paid to research synthesis in software engineering. This trend needs to change and a repertoire of synthesis methods needs to be an integral part of systematic reviews to increase their significance and utility for research and practice.  相似文献   

12.
针对目前在分布异构的大规模软件开发中难以高效地知晓信息和发现知识的问题,将语义网引入软件工程领域,对多源异构数据进行细粒度语义关联,提出本体构建、关联抽取和发现的方法,实现基于本体的软件工程关联数据的自动构建。该方法对软件工程本体进行概念抽取、合并、实例消解和属性消歧,从软件仓库结构化数据集中抽取出完整无冗余的关联数据;并采用同义词、动宾短语和结构关系三个特征利用自然语言处理(NLP)技术和信息检索(IR)技术从软件仓库中发现潜在的关联数据。实验结果表明,所提出的方法能从分布式软件工程数据集中自动构建和融合生成软件工程本体,并有效地发现潜在的关联数据将其扩充到软件工程本体中;与Baseline、Phraing和O-CSTI三种方法相比,关联数据发现的召回率、精准率和F值都有显著提高。  相似文献   

13.
Runtime software architecture based on reflective middleware   总被引:8,自引:0,他引:8  
Copyright by Science in China Press 2004 Since its first literate identification and discussion[1], software architecture (SA) has become an important subfield of software engineering, receiving increasing attention from both academic and industrial communities. SA describes the gross structure of a software system with a collection of components, connectors and constraints[2]. In gen-eral, SA acts as a bridge between requirements and implementation and provides a blue-print for system cons…  相似文献   

14.
In software engineering, leading trends can be detected that will affect the characteristic features of a product and its development process. On a product level, the growth of size and complexity is apparent—but on the one hand only. On the other hand, there is also a growing demand for simple and reasonable small software products executed by handheld terminals and smartphones; these applications are in many cases expected to collaborate with databases over the Internet. In addition, different kinds of service concepts (ASP, SaaS) are becoming recognized alternatives to the traditional way of buying software. Increasingly, software products are also distributed in a wide geographical scope to users with different cultural backgrounds and expectations. In software engineering work, as a consequence of this growth in size and complexity, the development work is more and more often distributed. The software business itself is becoming global because of acquisitions, offshoring, and international subcontracting. The globalization of work sets new requirements to the engineering processes: in international teams the organisational and cultural differences of the development subteams have to be recognized. In this paper, the focus is on the software development and its global dimension—especially the roles of multi-cultural and cross-organizational issues in software engineering. Our paper presents the results of the first phase of our three phases research project related to “Culture-Aware Software Engineering.” The main result of the first phase is the multi-cultural software engineering working model introduced in our paper. Culture is seen as one example of the context, i.e. the situation at hand. The concept of culture has also different meanings, which have to be understood in well-organized software engineering. Software engineering work is analyzed as a knowledge creation process, in which both explicit and tacit knowledge are recognized and the transformation between these establishes baselines along the development life cycle.  相似文献   

15.
形式化软件工程是软件工程的重要组成部分。Event-B方法是一种软件形式化开发方法,Rodin是支持Event-B方法的开放工具集。基于Event-B方法和Rodin开展形式化软件工程教学,有益于学生正确理解精化等重要的软件工程概念,理解并掌握开发可信软件的方法,是软件工程教学的重要补充。  相似文献   

16.
With the advent of intelligent computer aided design systems, companies such as Boeing are embarking on an era in which core competitive engineering knowledge and design rationale is being encoded in software systems. The promise of this technology is that this knowledge can be leveraged across many different designs, product families, and even different uses (e.g., generative process planning for manufacturing). The current state of the practice attempts to achieve this goal through the reuse of software components. A fundamental problem with this approach to knowledge sharing and reuse is that what we are trying to reuse is software—the end artifact in a long and complicated process that goes from requirement specifications, through a process of design, to implementations. Knowledge sharing and reuse can not easily and uniformly occur at the software level. So what can be done as an alternative? This paper describes a theory, methodology, language, and tool for the semi-automatic development and maintenance of engineering software from requirement specifications. In essence, this paradigm for software development and maintenance is one that explicitly captures requirement specifications, designs, implementations, and the refinement processes that lead from requirements all the way down to software. By recording this entire refinement history, we stand a better chance of leveraging knowledge for different uses.  相似文献   

17.
A medium‐sized domain‐engineering process can contain thousands of features that all have constraint dependency rules between them. Therefore, the validation of the content of domain‐engineering process is vital to produce high‐quality software products. However, it is not feasible to do this manually. This paper aims to improve the quality of the software products generated by the domain‐engineering process by ensuring the validity of the results of that process. We propose rules for two operations: inconsistency detection and inconsistency prevention. We introduce first‐order logic (FOL) rules to detect three types of inconsistency and prevent the direct inconsistency in the domain‐engineering process. Developing FOL rules to detect and prevent inconsistency in the domain‐engineering process directly without the need to the configuration process is our main contribution. We performed some experiments to test the scalability and applicability of our approach on domain‐engineered software product lines containing 1000 assets to 20000 assets. The results show that our approach is scalable and could be utilized to improve the domain‐engineering process.  相似文献   

18.
随着大数据时代的来临,大数据技术深入贯穿社会生产、生活的方方面面,尤其是随着5G通信技术的广泛应用,软件工程技术的应用迎来了前所未有的发展机遇和挑战。文章将大数据视域下软件工程技术应用的实现路径作为研究对象,从大数据及软件工程技术概述入手,充分分析了软件工程的核心技术,进而提出大数据视域下软件工程技术应用的实现路径,希望以此来不断提高软件工程技术的应用水平。  相似文献   

19.
Reuse-based software production technology   总被引:4,自引:0,他引:4  
Software reuse is viewed as a key technology to improve software product quality and productivity. This paper discusses a series of technologies related with software reuse and software component technology: component model, which describes component's essential characteristics; component acquisition technology, of which domain engineering is the main approach; component management technology, of which component library is the kernel; application integration and composition technology, of which application engineering is the main approach; software evolution technology, of which software reengineering is the main approach, etc. This paper introduces the software development environment: JadeBird Software Production Line System, which effectively integrates the above-mentioned technologies.  相似文献   

20.
The number, variety and complexity of projects involving data mining or knowledge discovery in databases activities have increased just lately at such a pace that aspects related to their development process need to be standardized for results to be integrated, reused and interchanged in the future. Data mining projects are quickly becoming engineering projects, and current standard processes, like CRISP-DM, need to be revisited to incorporate this engineering viewpoint. This is the central motivation of this paper that makes the point that experience gained about the software development process over almost 40 years could be reused and integrated to improve data mining processes. Consequently, this paper proposes to reuse ideas and concepts underlying the IEEE Std 1074 and ISO 12207 software engineering model processes to redefine and add to the CRISP-DM process and make it a data mining engineering standard.  相似文献   

设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号