首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到20条相似文献,搜索用时 62 毫秒
1.
Over the last two years, we have demonstrated the feasibility of applying category-theoretic methods in specifying, synthesizing, and maintaining industrial strength software systems. We have been using a first-of-its-kind tool for this purpose, Kestrel's SpecwareTM software development system. In this paper, we describe our experiences and give an industrial perspective on what is needed to make this technology have broader appeal to industry. Our overall impression is that the technology does work for industrial strength applications, but that it needs additional work to make it more usable. We believe this work marks a turning point in the use of mathematically rigorous approaches to industrial strength software development and maintenance.It is interesting to note that when this technology is applied to software systems whose outputs are designs for airplane parts, the design rationale that is captured is not only software engineering design rationale, but also design rationale from other engineering disciplines (e.g., mechanical, material, manufacturing, electrical, human factors, etc.). This suggests the technology provides an approach to general systems engineering that enables one to structure and reuse engineering knowledge broadly.  相似文献   

2.
软件体系结构在软件重用中有着特殊的意义。缺乏显式的描述并使用支持体系结构重用过程的信息和缺乏有效的重用方法是软件体系结构难以重用最根本的原因。在软件设计阶段,将元信息、元建模、反射和软件体系结构结合起来,构造了一种支持软件体系结构重用的反射式软件体系结构。给出了基于反射式软件体系结构的软件体系结构重用过程。给出了反射式软件体系结构的具体化过程的基本原理和具体化操作的Object-Z形式化描述,即创建元组件、创建元连接器、创建元组合件操作的形式化描述。给出了基于反射式软件体系结构的软件体系结构重用的支撑工具的设计过程。  相似文献   

3.
Software reuse is widely believed to be a key to improving software productivity and quality in conventional software. In expert systems, much of the knowledge has been compiled (i.e., compressed and restricted into effective procedures) and this makes reusability difficult. One of the issues in modeling expert systems for enhanced reusability is capturing explicity the underlying problem solving designs. Principled knowledge representation schemes have been used to model components of complex software systems. However, the potential for applying these principled modeling techniques for explicitly capturing the problem solving designs of expert systems has not been fully explored. To overcome this omission, we use an Artificial Intelligence knowledge representation scheme for developing an ontology of the software components to facilitate their classification and retrieval. The application of our ontological approach is of both theoretical and practical significance. This method facilitates the reuse of high-level design. We illustrate the application of principled domain modeling using two real world applications of knowledge-based systems.  相似文献   

4.
Software architecture designers inevitably work with both architecture patterns and tactics. Architecture patterns describe the high-level structure and behavior of software systems as the solution to multiple system requirements, whereas tactics are design decisions that improve individual quality attribute concerns. Tactics that are implemented in existing architectures can have significant impact on the architecture patterns in the system. Similarly, tactics that are selected during initial architecture design significantly impact the architecture of the system to be designed: which patterns to use, and how they must be changed to accommodate the tactics. However, little is understood about how patterns and tactics interact. In this paper, we develop a model for the interaction of patterns and tactics that enables software architects to annotate architecture diagrams with information about the tactics used and their impact on the overall structure. This model is based on our in-depth analysis of the types of interactions involved, and we show several examples of how the model can be used to annotate different kinds of architecture diagrams. We illustrate the model and annotation by showing examples taken from real systems, and describe how the annotation was used in architecture reviews. Tactics and patterns are known architectural concepts; this work provides more specific and in-depth understanding of how they interact. Its other key contribution is that it explores the larger problem of understanding the relation between strategic decisions and how they need to be tailored in light of more tactical decisions.  相似文献   

5.
A dialogue plays an important role in learning how to solve a problem and form a concept. We are developing a problem solving and knowledge acquisition system based on co-reference between drill texts and dialogue with a teacher, focusing on first-grade mathematics. This paper presents a method of cooperative understanding of utterances and gestures within dialogue. We first describe our system design principles, which provide the basis for the integration of multimodal information during a dialogue. We define a principle of complementarity, explain its implementation, and describe the architecture of the problem solving system. We then show how to integrate our algorithms for utterance and gesture analysis within that software architecture. A feature-based approach is used for gesture recognition, derived from a sequence of images arising during the cooperative analysis of utterances. We conclude with an evaluation of the system against the design principles.  相似文献   

6.
We present a new Web services-based framework for building componentized digital libraries (DLs). We particularly demonstrate how traditional RDBMS technology can be easily deployed to support several common digital library services. Configuration and customization of the framework to build specialized systems is supported by a wizard-like tool which is based on a generic metamodel for DLs. Such a tool implements a workflow process that segments the DL design tasks into well-defined steps and drives the designer along these steps. Both the framework and the configuration tool are evaluated in terms of several performance and usability criteria. Our experimental evaluation demonstrates the feasibility and superior performance of our framework, as well as the effectiveness of the wizard tool for setting up DLs.  相似文献   

7.
面向大规模定制的软件开发模式   总被引:18,自引:0,他引:18  
在领域工程、基于构件的软件工程和并行工程的基础上,提出了面向大规模定制的软件开发模式。该模式以大规模开发标准软件的效益满足用户的个性化需求。介绍了面向大规模定制的软件开发过程,面向大规模定制的软件产品族体系结构,以及面向大模型定制软件开发的产品集成过程模型。最后介绍了一种面向大规模定制的敏捷软件开发组织。  相似文献   

8.
针对传统三维虚拟展示软件中存在的编程过程复杂、开发周期长等缺陷,提出一个具有可定制性和扩展性面向虚拟展示的定制方法。该方法基于虚拟现实技术和软件大规模定制技术,设计面向虚拟展示的定制化系统架构;基于软件功能树对系统功能解耦,抽取可复用的公共模块实现参数定制化,封装为功能接口供系统调用;同时定义了系统的定制模板,以描述和配置应用系统的基本信息和个性化定制,从而满足不同企业产品虚拟展示功能定制需求。最后通过具体实例展示验证了该系统的有效性和实用性。  相似文献   

9.
Designing a complex software system is a cognitively challenging task; thus, designers need cognitive support to create good designs. Domain-oriented design environments are cooperative problem-solving systems that support designers in complex design tasks. In this paper we present the architecture and facilities of Argo, a domain-oriented design environment for software architecture. Argo's own architecture is motivated by the desire to achieve reuse and extensibility of the design environment. It separates domain-neutral code from domain-oriented code, which is distributed among active design materials as opposed to being centralized in the design environment. Argo's facilities are motivated by the observed cognitive needs of designers. These facilities extend previous work in design environments by enhancing support for reflection-in-action, and adding new support for opportunistic design and comprehension and problem solving.  相似文献   

10.
In this paper, we describe a technique to design UML-based software models for MPSoC architecture, which focuses on the development of the platform specific model of embedded software. To develop the platform specific model, we define a process for the design of UML-based software model and suggest an algorithm with precise actions to map the model to MPSoC architecture. In order to support our design process, we implemented our approach in an integrated tool. Using the tool, we applied our design technique to a target system. We believe that our technique provides several benefits such as improving parallelism of tasks and fast-and-valid mapping of software models to hardware architecture.  相似文献   

11.
Design recovery for maintenance and reuse   总被引:2,自引:0,他引:2  
Biggerstaff  T.J. 《Computer》1989,22(7):36-49
Software maintenance and harvesting reusable components from software both require that an analyst reconstruct the software's design. Design recovery recreates design abstractions from a combination of code, existing design documentation (if available), personal experience and general knowledge about problem and application domains. The author shows how to extend the automated assistance available to the software engineer for this process. He explains the concept of design recovery, proposes an architecture to implement the concept, illustrates how the architecture operates, describes progress toward implementing it, and compares this work with other similar work such as reverse engineering and program understanding. Much of the discussion is based on a model-based design recovery system called Desire  相似文献   

12.
To what extent can software ‘travel’ to organizations and countries for which it was not designed for, and how important are local contexts for a successful design and implementation of generic software? Information systems researchers have differing views on this, some emphasizing the strengths of the generic and others the importance of contextual aspects. Contributing to this debate, Pollock and Williams have coined the term generification in order to describe how large vendors succeed in globalizing software packages through management by community, content and social authority. In this paper, we explore an approach that we call open generification, which extends Pollock and Williams' work in the sense that we acknowledge the need for and the feasibility of generic software, but propose an alternative model for the governance of it. Open generification is not about managing the community of users attached to a software package by homogenization or segmentation but aims at addressing the diverse needs of the community the software is expected to serve. Our empirical basis is a longitudinal study of the development of an open‐source health information system software (District Health Information software version 2), which is being used in more than 47 countries. Its success is attributed to a continuous interplay between generic and specific software and continuous cycles of embedding (implementing the global in the local context) and disembedding (taking local innovations into the global). We identify and discuss the contingent mechanisms of this interplay.  相似文献   

13.
Domain analysis for software reuse   总被引:3,自引:0,他引:3  
A theory of domain knowledge is proposed that consists of ‘grounded domains' that model a set of cooperating objects that achieve a purpose. Grounded domains have spatial presence in the real world and contain agents that act on objects within a context of structures. More complex meta-domains use grounded domains as their subject matter and describe education, management, etc. The third component of the theory, generic tasks, describes problem solving activity such as diagnosis, searching, planning and scheduling. Generic tasks describe the behavioural components in both grounded and meta-domains. The reusable library of generic models is applied to the design of interactive systems by reusing the models as templates, and to reuse design knowledge in the form of associated design rationale. A process for recognising generic models is described with recognition heuristics structured in a walkthrough type of analysis for identifying key abstractions in new applications. The design process is illustrated with an information retrieval case study developed as a decision support system for emergency management, reusing information searching services. The discussion reviews the prospects for reusable patterns in interactive systems design, and similar approaches in software and knowledge engineering.  相似文献   

14.
15.
当前自组织系统软件工程面临的一个重要挑战,就是如何设计适宜的个体交互行为来满足自组织系统的宏观涌现需求。针对此问题,提出了一种基于政策的自组织多agent系统的开发方法,此方法通过政策调节引导agent的行为,以期在系统层面得到用户所需求的宏观涌现结果。开发这类系统的核心问题是如何构造系统中的软件agent,使得agent能够感知、理解系统政策,并在遵循政策的前提下实现行为的自主决策。提出了一种基于政策自组织多agent系统的软件agent体系结构,并基于该体系结构设计了运行机制及行为决策算法。通过软件方式实现了一个基于政策的自组织多agent系统开发平台原型,并通过案例实现说明了体系结构、运行机制的有效性。  相似文献   

16.
Iterative design and testing within the software development life cycle   总被引:1,自引:0,他引:1  
The activity of testing begins during system development and spans all subsequent phases. Some system development lifecycles describe testing which is performed after the coding phase, but this may cause the software to be delivered without sufficient testing. In this paper, we present a software system development lifecycle model, called the Test design Stages Processed model (TSP model), in which we emphasize that iterative test design stages should be incorporated at each phase of the software development lifecycle. When a phase is completed, testing of the phase should also be completed at that time. Within this paper we have added unit, integration and system testing processes into BoochÕs micro–design process to generate a new designs and test model. This shows the process of iterative and incremental software development. Comparing this with our model, we explain how the TSP model can be used for developing and testing an object-oriented software system.  相似文献   

17.
Since the mid-1980s, expert systems have been developed for a variety of problems in accounting and finance. The most commonly cited problems in developing these systems are the unavailability of the experts and knowledge engineers and difficulties with the rule extraction process. Within the field of artificial intelligence, this has been called the ‘knowledge acquisition’ (KA) problem and has been identified as a major bottleneck in the expert system development process. Recent empirical research reveals that certain KA techniques are significantly more efficient than others in helping to extract certain types of knowledge within specific problem domains. This paper presents a mapping between these empirical studies and a generic taxonomy of expert system problem domains. To accomplish this, we first examine the range of problem domains and suggest a mapping of accounting and finance tasks to a generic problem domain taxonomy. We then identify and describe the most prominent KA techniques employed in developing expert systems in accounting and finance. After examining and summarizing the existing empirical KA work, we conclude by showing how the empirical KA research in the various problem domains can be used to provide guidance to developers of expert systems in the fields of accounting and finance.  相似文献   

18.
本文基于.NET框架及其组件技术,首先提出了一个可定制应用软件编程模型,然后完整设计了一个以复用为目的,支持插件架构的应用框架,最后通过为用户定制插件,以及应用框架对插件的即插即用,实现了应用软件的敏捷定制。  相似文献   

19.
一个基于属性文法的分布式软件构架描述语言   总被引:1,自引:1,他引:1  
  相似文献   

20.
The application of expert systems to various problem domains in business has grown steadily since their introduction. Regardless of the chosen method of development, the most commonly cited problems in developing these systems are the unavailability of both the experts and knowledge engineers and difficulties with the process of acquiring knowledge from domain experts. Within the field of artificial intelligence, this has been called the 'knowledge acquisition' problem and has been identified as the greatest bottleneck in the expert system development process. Simply stated, the problem is how to acquire the specific knowledge for a well-defined problem domain efficiently from one or more experts and represent it in the appropriate computer format. Given the 'paradox of expertise', the experts have often proceduralized their knowledge to the point that they have difficulty in explaining exactly what they know and how they know it. However, empirical research in the field of expert systems reveals that certain knowledge acquisition techniques are significantly more efficient than others in helping to extract certain types of knowledge within specific problem domains. In this paper we present a mapping between these empirical studies and a generic taxonomy of expert system problem domains. In so doing, certain knowledge acquisition techniques can be prescribed based on the problem domain characteristics. With the production and operations management (P/OM) field as the pilot area for the current study, we first examine the range of problem domains and suggest a mapping of P/OM tasks to a generic taxonomy of problem domains. We then describe the most prominent knowledge acquisition techniques. Based on the examination of the existing empirical knowledge acquisition research, we present how the empirical work can be used to provide guidance to developers of expert systems in the field of P/OM.  相似文献   

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

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