首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到20条相似文献,搜索用时 46 毫秒
1.
Knowledge management in software engineering and software process improvement activities pose challenges as initiatives are deployed. Most existing approaches are either too expensive to deploy or do not take an organization’s specific needs into consideration. There is thus a need for scalable improvement approaches that leverage knowledge already residing in the organizations. This paper presents tool support for an Experience Factory approach for disseminating and improving practices used in an organization. Experiences from using practices in development projects are captured in postmortems and provide iteratively improved decision support for identifying what practices work well and what needs improvement. An initial evaluation of using the tool for organizational improvement has been performed utilizing both academia and industry. The results from the evaluation indicate that organizational characteristics influence how practices and experiences can be used. Experiences collected in postmortems are estimated to have little effect on improvements to practices used throughout the organization. However, in organizations where different practices are used in different parts of the organization, making practices available together with experiences from use, as well as having context information, can influence decisions on what practices to use in projects.  相似文献   

2.
Abstract: This paper describes the development of a prototype expert system for the selection of design patterns that are used in object-oriented software. Design patterns provide one method of software reuse, which supports the goal of improved software development productivity. The prototype system represents an initial step towards providing an automated solution regarding the design pattern application problem, i.e. leading a designer to a suitable design pattern which is applicable to the problem at hand. The feasibility of using expert system technology to aid in the selection problem is demonstrated.  相似文献   

3.
Experience from a dozen years of analyzing software engineering processes and products is summarized as a set of software engineering and measurement principles that argue for software engineering process models that integrate sound planning and analysis into the construction process. In the TAME (Tailoring A Measurement Environment) project at the University of Maryland, such an improvement-oriented software engineering process model was developed that uses the goal/question/metric paradigm to integrate the constructive and analytic aspects of software development. The model provides a mechanism for formalizing the characterization and planning tasks, controlling and improving projects based on quantitative analysis, learning in a deeper and more systematic way about the software process and product, and feeding the appropriate experience back into the current and future projects. The TAME system is an instantiation of the TAME software engineering process model as an ISEE (integrated software engineering environment). The first in a series of TAME system prototypes has been developed. An assessment of experience with this first limited prototype is presented including a reassessment of its initial architecture  相似文献   

4.
Organizations have lost billions of dollars due to poor software project implementations. In an effort to enable software project managers to repeat prior successes and avoid previous mistakes, this research seeks to improve the reuse of a specific type of knowledge among software project managers, experiences in the form of narratives. To meet this goal, we identify a set of design principles for facilitating experience reuse based on the knowledge management literature. Guided by these principles we develop a model called Experience Exchange for facilitating the reuse of experiences in the form of narratives. We also provide a proof-of-concept instantiation of a critical component of the Experience Exchange model, the Experience Exchange Library. We evaluate the Experience Exchange model theoretically and empirically. We conduct a theoretical evaluation by ensuring that our model complies with the design principles identified from the literature. We also perform an experiment, using the developed instantiation of the Experience Exchange Library, to evaluate if technology can serve as a medium for transferring experiences across software projects.  相似文献   

5.
User interface and requirements prototyping is a requirements elicitation technique. A user interface and requirements prototype is built during the requirements engineering phase of a software system development. Along with the user interface prototype are produced various documents such as the system requirement specification. When a prototype and other documents exist, they may not describe the same functionality, particularly because there may be behaviour of the prototype, artefacts of prototyping, that may not be intended. The problem is that in later development stages, when there is a prototype and other documents, it is often difficult to reconcile the difference between the prototype and the other documents. This paper presents an approach for avoiding this difficulty. It demonstrates the approach by showing its application to parts of a real software development.  相似文献   

6.
The competencies of employees are a critical success factor for any organization. Competency Management Systems help to develop competencies by supporting processes such as needs identification, intervention planning and implementation, and evaluation. However, the design of Competency Management Systems comes with a broad range of technical and organizational challenges. This study addresses these challenges and discusses the development of Competency Management Systems from a design theory perspective. The prototype evaluation, conducted as part of an action research initiative, involved fifteen companies and identified design recommendations in the areas of organization, user, resources, and competency management software.  相似文献   

7.
Component Specifications for Robotics Integration   总被引:1,自引:1,他引:0  
Robotics researchers have been unable to capitalize easily on existing software components to speed up their development efforts and maximize their system's capabilities. A component-based approach for building the software for robotics systems can provide reuse and sharing abilities to the research community. The software engineering community has been studying reuse techniques for three decades. We present several results from those efforts that are applicable to the robotics software integration problem. We describe how to specify a software component so that a potential user may understand its capabilities and facilitate its application to his or her system. At the National Institute of Standards and Technology, we have developed a three-stage, component-specification approach. We illustrate this approach for a component that is relevant to robotics.  相似文献   

8.
《Software, IEEE》1996,13(6):23-31
Despite rapid changes in computing and software development, some fundamental ideas have remained constant. This article describes eight such concepts that together constitute a viable foundation for a software engineering discipline: abstraction, analysis and design methods and notations, user interface prototyping, modularity and architecture, software life cycle and process, reuse, metrics, and automated support  相似文献   

9.
基于软件复用的信息系统开发模型   总被引:2,自引:0,他引:2  
在简要地介绍软件复用的概念和关键技术的基础上,结合领域工程、应用工程、组件化开发、原型开发方法以及面向对象开发方法等技术的优势,提出了一种基于软件复用的信息系统开发模型。  相似文献   

10.
Increasingly, software organisations are looking towards large-;scale reuse as a way of improving productivity, raising quality and reducing delivery timescales. Many in the reuse community have suggested notions of product-;line development and domain engineering life-;cycles. Achieving these in practice, however, requires a systematic process for “early” reuse (requirements reuse) as well as late reuse (code reuse). This paper discusses pratical experience of early reuse. We describe FORE (Family Of REquirements), an approach that we have developed in our work in the domain of aircraft engine control systems. The FORE approach concentrates on the definition of a generic product concept and the formalisation of its requirements. We describe the FORE approach in general terms, and then show how it has been applied in an industrial case-;study. We make an initial evaluation of the FORE approach (and early reuse in general) in terms of how it has changed an existing requirements engineering process. We compare the FORE approach to related work in early reuse, and draw some conclusions about how the approach may scale to other problems.  相似文献   

11.
Frakes  W.B. Isoda  S. 《Software, IEEE》1994,11(5):14-19
Systematic software reuse is a paradigm shift in software engineering from building single systems to building families of related systems. The goal of software reuse research is to discover systematic procedures for engineering new systems from existing assets. Implementing systematic reuse is risky. Not doing it is also risky. Trying systematic reuse unsuccessfully can cost precious time and resources and may make management sceptical of trying it again. But if your competitors do it successfully and you do not, you may lose market share and possibly an entire market. There is no cookbook solution-each organization must analyze its own needs, implement reuse measurements, define the key benefits it expects, identify and remove impediments, and manage risk. Reliable data on how much this costs and the benefits an organization will derive are insufficient. The article addresses issues from management, measurement, law, economics, libraries, and the design of reusable software  相似文献   

12.
基于体系结构的应用系统族开发方法的研究   总被引:2,自引:0,他引:2  
对于建筑领域管理系统这样具有共同特性的一组应用系统的开发,如果没有系统性重用的方法,不仅会造成软件资产的大量浪费,而且也使系统的成本和开发周期大大增加。为解决上述问题,该文提出了一套以体系结构为中心的工程化软件开发方法,该方法利用软件产品线开发的思想,将软件产品线工程和应用工程两种开发活动集成到一起,通过族体系结构的重用实现系统性重用。  相似文献   

13.
14.
何正海  李智 《计算机科学》2015,42(12):181-183, 194
软件需求工程在软件开发项目中起着至关重要的作用,而需求分析活动的主角是人,因此计算机辅助需求分析工具的设计要做到以用户为中心,即以人为本。本原型作品在已有的面向问题的计算机辅助软件需求工程(Computer-Aided Requirements Engineering,CARE)工具的基础上,进一步在支持的平台及易用性等方面进行了扩展。选择安卓平台来开发此工具,理由是移动端应用软件相较于PC端具有一些优势(功能多样性、便捷性等)以及安卓的开源性质,它能够为提高软件质量以及用户体验带来新的技术支持。此外,还具体展示并介绍了该工具是如何基于人机交互的理论模型及设计原则设计的。  相似文献   

15.
There are several SDL methodologies that offer full system life-cycle support. Only few of them consider software reuse, not to mention high-level reuse of architecture and design. However, software reuse is a proven software engineering paradigm leading to high quality and reduced development effort. Experience made it apparent that – beyond the more traditional reuse of code – especially high-level reuse of architecture and design (as in the case of design patterns or frameworks) has the potential of achieving more systematic and widespread reuse. This paper presents the SDL pattern approach, a design methodology for distributed systems which integrates SDL-based system development with the pattern paradigm. It supports reuse of design knowledge modeled as SDL patterns and concentrates on the design phase of SDL-based system development. In order to get full life-cycle support, the pattern-based design process can be integrated within existing SDL methodologies.  相似文献   

16.
Experience-based continuous learning is essential for improving products, processes, and technologies in emerging as well as established areas of business and engineering science. This can be facilitated by case-based organizational learning through capturing relevant experience in the form of cases for reuse in a corporate experience repository. For obvious reasons, learning from experience needs to be a permanent endeavor. Thus an organization has to handle a "continuous stream of experience." Consequently, such an experience repository requires maintenance. This should not simply happen ad hoc but in a systematic manner. To make competent decisions about maintenance, the experience base and its usage have to be analyzed (i.e., evaluated). To improve maintenance itself, it is necessary to learn about it. For this purpose, we identify the relevant tasks for maintaining an experience repository and the responsibilities of the roles involved. Maintenance addresses not only the actual experience in the form of cases but also the conceptual model and the methods, techniques, and tools that are used for filling and updating the experience repository. To support the roles involved in the maintenance tasks, we provide a flexible, practical maintenance and evaluation framework. This framework provides guidance for the roles. The framework can be combined with other approaches from artificial intelligence, knowledge engineering, and software engineering at different levels of detail. For the practical application of the framework, we describe an integrated technical solution for a corporate experience repository that is maintained using our framework. Furthermore, we discuss the empirical validation of the framework and its implementation.  相似文献   

17.
软件重用与移植的比较研究   总被引:3,自引:1,他引:3  
回顾了软件重用和移植方面的研究,并对其进行比较。其目的是对两个领域的共性进行分析,以期对以后的研究工作有所裨益。通过比较,发现软件重用和软件移植在几个方面具有共同的研究领域,包括分类、规格说明和测试、软件确认、软件程序的发行、工程管理等。可移植软件需要按其移植属性进行分类,其目的与软件重用分类不同,但它们可具有相同或类似的机制。同时指出,在软件开发过程中同时对软件移植进行综合考虑并不难,然而困难的是对其进行管理。  相似文献   

18.
Fafchamps  D. 《Software, IEEE》1994,11(5):31-41
Reuse is not just a technical issue. Hewlett-Packard studied why people sometimes resist reuse and which organizational models appear to encourage reuse more than others. The study found that successful reuse programs must be integrated within the culture of a company's existing organizational structure. One crucial organizational factor is the relationship between producers and consumers of reuse components and services. What are these relationships and how well do they work? To answer this question, I conducted an empirical study of 10 engineering sites at Hewlett-Packard engaged in systematic reuse. From this reuse experience, I identified four models of producer-consumer relationships; evaluated the models in terms of their organizational structures, advantages, and disadvantages; and identified goals for management to enable a successful implementation. The four models are: lone producer, nested producer, pool producer and team producer. Two or more models may occur within a given reuse program. Recommendations to management are based on both current successful practices and interviewees' suggestions. I also include some tentative guidelines on which environments are best suited to each model  相似文献   

19.
An organizational maturity model of software product line engineering   总被引:1,自引:0,他引:1  
Software product line engineering is an inter-disciplinary concept. It spans the dimensions of business, architecture, process, and the organization. Some of the potential benefits of this approach include cost reduction, improvements in product quality and a decrease in product development time. The increasing popularity of software product line engineering in the software industry necessitates a process maturity evaluation methodology. Accordingly, this paper presents an organizational maturity model of software product line engineering for evaluating the maturity of organizational dimension. The model assumes that organizational theories, behavior, and management play a critical role in the institutionalization of software product line engineering within an organization. Assessment questionnaires and a rating methodology comprise the framework of this model. The objective and design of the questionnaires are to collect information about the software product line engineering process from the dual perspectives of organizational behavior and management. Furthermore, we conducted two case studies and reported the assessment results using the organizational maturity model presented in this paper.  相似文献   

20.
This paper describes a prototype Knowledge-Based Software Engineering Environment used to demonstrate the concepts of reuse of software requirements and software architectures. The prototype environment, which is application-domain independent, is used to support the development of domain models and to generate target system specifications from them. The prototype environment consists of an integrated set of commercial-off-the-shelf software tools and custom developed software tools.The concept of reuse is prevalent at several levels of the domain modeling method and prototype environment. The environment itself is domain-independent thereby supporting the specification of diverse application domain models. The domain modeling method specifies a family of systems rather than a single system; features characterize the variations in functional requirements supported by the family and individual family members are specified by the features they are to support. The knowledge-based approach to target system generation provides the rules for generating target system specifications from the domain model; target system specifications, themselves, may be stored in an object repository for subsequent retrieval and reuse.  相似文献   

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

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