首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到20条相似文献,搜索用时 218 毫秒
1.
The once-sharp distinction between software users and developers is fading away, and richer ecologies of participation are emerging. In particular, software engineering R&D faces new challenges from the quickly increasing population of software developers who are domain experts but don't have the time or desire to be professional software engineers. The metadesign framework reformulates software development activities as a continuum of different degrees of design and use. It's supported by the "seeding, evolutionary growth, reseeding" model and supports the coevolution of individuals, communities, and systems. Guidelines derived from these models can help software developers produce tools for end-user development. This article is part of a special issue on end-user software engineering.  相似文献   

2.
3.
Spreadsheet programs are probably the most successful example of end-user software development tools and are used for a variety of purposes. Like any type of software, they are prone to error, in particular as they are usually developed by non-programmers. While various techniques exist to support the developer in finding errors in procedural programs, the tool support for spreadsheet debugging is still limited. In this paper, we show how techniques from model-based diagnosis can be applied and extended for spreadsheet debugging by translating the relevant parts of a spreadsheet to a constraint satisfaction problem. We additionally propose both problem-specific and generalizable extensions to the classical diagnosis algorithms which help to detect potential problems in a spreadsheet based on user-provided test cases more efficiently. The proposed techniques were integrated into a modular framework for spreadsheet debugging and evaluated with respect to scalability based on a number of real-world and artificially created spreadsheets. An additional error detection exercise involving 24 subjects was performed to assess the general applicability of such advanced spreadsheet debugging techniques for end users.  相似文献   

4.
This paper is about the development of systems whose end users are professional people working in a specific domain (e.g., medicine, geology, mechanical engineering); they are expert in that domain, but not necessarily expert in nor even conversant with computer science. In several work organizations, end users need to tailor their software systems to better adapt them to their requirements and even to create or modify software artifacts. These are end-user development activities and are the focus of this paper. A model of the interaction between users and systems, which also takes into account their reciprocal coevolution during system usage, is discussed. This model is used to define a methodology aimed at designing software environments that allow end users to become designers of their own tools. The methodology is illustrated by discussing two experimental cases.  相似文献   

5.
Spreadsheets are widely used, and studies have shown that most end-user spreadsheets contain non-trivial errors. Most of the currently available tools that try to mitigate this problem require varying levels of user intervention. This paper presents a system, called UCheck, that detects errors in spreadsheets automatically. UCheck carries out automatic header and unit inference, and reports unit errors to the users. UCheck is based on two static analyses phases that infer header and unit information for all cells in a spreadsheet.We have tested UCheck on a wide variety of spreadsheets and found that it works accurately and reliably. The system was also used in a continuing education course for high school teachers, conducted through Oregon State University, aimed at making the participants aware of the need for quality control in the creation of spreadsheets.  相似文献   

6.
In contrast to the common view of spreadsheets as “single-user” programs, we have found that spreadsheets offer surprisingly strong support for cooperative development of a wide variety of applications. Ethnographic interviews with spreadsheet users showed that nearly all of the spreadsheets used in the work environments studied were the result of collaborative work by people with different levels of programming and domain expertise. We describe how spreadsheet users cooperate in developing, debugging and using spreadsheets. We examine the properties of spreadsheet software that enable cooperation, arguing that: (1) the division of the spreadsheet into two distinct programming layers permits effective distribution of computational tasks across users with different levels of programming skill; and (2) the spreadsheet's strong visual format for structuring and presenting data supports sharing of domain knowledge among co-workers.  相似文献   

7.
Computer-aided software engineering (CASE) tools are currently being used by IS professionals rather than by users. No matter how effective these tools may be, however, they will not be able to assist in the reduction of application backlogs without supporting user-driven applications. This article examines characteristics of a CASE environment from the various perspectives of decision support, identifies the advantages and limitations of end-user computing in this environment, and suggests how IS managers can realize the potentials of CASE for user applications.  相似文献   

8.
Spreadsheet programs can be found everywhere in organizations and they are used for a variety of purposes, including financial calculations, planning, data aggregation and decision making tasks. A number of research surveys have however shown that such programs are particularly prone to errors. Some reasons for the error-proneness of spreadsheets are that spreadsheets are developed by end users and that standard software quality assurance processes are mostly not applied. Correspondingly, during the last two decades, researchers have proposed a number of techniques and automated tools aimed at supporting the end user in the development of error-free spreadsheets. In this paper, we provide a review of the research literature and develop a classification of automated spreadsheet quality assurance (QA) approaches, which range from spreadsheet visualization, static analysis and quality reports, over testing and support to model-based spreadsheet development. Based on this review, we outline possible opportunities for future work in the area of automated spreadsheet QA.  相似文献   

9.
The more productive use of computing and human resources can increase the usefulness of spreadsheets to the whole organization. One approach is to apply software engineering techniques from the IS programming world to spreadsheet development. The result is spreadsheets that are easy to modify and general enough to be more valuable to the organization.  相似文献   

10.
Generic software such as spreadsheet and data base programs provide utilities that can be used to construct routines for various applications. The specific used is determined by the user. Generic software allows interactive programming and data manipulation. These programs have dramatically changed the everyday use of microcomputers by creating an easy and flexible interace ofr inexperienced computer users to create their own user defined routines without requiring any formal programming skills. Data entry and retrieval are extremely easy, as well as transfer of data between different software packages. This paper review some of the commonly used generic software packages, focusing on spreadsheets, data base programs, and integrated software packages for IBM PC compatible microcomputers.Several commercial programs, varying in price and capability, are evaluated to determine their applicability in environmental engineering calculations Evaluations were made in terms of the potential use in engineering calculations and other applications, the mathematical capacity, speed of calculations, versatility, and user friendliness. Data transfer between different programare extremely crucial for engineering applications. It is achieved by using “standard” file formats, such as SIF and DIF files.  相似文献   

11.
UML class and sequence diagrams are helpful for understanding the static structure and dynamic behavior of a software system. Algorithms and tools have been developed to generate these UML diagrams automatically for program understanding purposes. Many tools, however, often ignore perceptual factors in the layout of these diagrams. Therefore, users still have to spend much time and effort rearranging boxes and lines to make the diagram understandable. This article presents key criteria and guidelines for the effective layout of UML class and sequence diagrams from the perspective of perceptual theories. Two UML tools are evaluated to illustrate how the criteria can be applied to assess the readability of their generated diagrams. Kenny Wong is an Associate Professor in the Department of Computing Science at the University of Alberta. His main areas of research include software comprehension, evolution, and visualization. This research includes building, using, and evaluating integrated environments for reverse engineering, and devising strategies to understand and evolve diverse software systems. He is General Chair of the 2007 International Conference on Program Comprehension in Banff, and Program Chair of the 2008 International Conference on Software Maintenance in Beijing. Dabo Sun is an M.Sc. student in the Department of Computing Science at the University of Alberta. His research interests include program comprehension, software visualization, and end-user software engineering. He has assisted the teaching of courses in software engineering and web information systems. He also has been working as a software engineer on developing and maintaining industrial software systems.  相似文献   

12.
To help users with automatically reformatting and validating spreadsheets and other datasets, prior work introduced a user-extensible data model called “topes” and a supporting visual programming language. However, no support has existed to date for users to exchange and reuse topes. This functional gap results in wasteful duplication of work as users implement topes that other people have already created.In this paper, a design for a new repository system is presented that supports sharing and finding of topes for reuse. This repository tightly integrates traditional keyword-based search with two additional search methods whose usefulness in repositories of end-user code has gone unexplored to date. The first method is “search-by-match”, where a user specifies examples of data, and the repository retrieves topes that can reformat and validate that data. The second method is collaborative filtering, which has played a vital role in repositories of non-code artifacts.The repository’s search functionality was empirically tested on a prototype repository implementation by simulating queries generated from real user spreadsheets. This experiment reveals that search-by-match and collaborative filtering greatly improve the accuracy of search over the traditional keyword-based approach, to a recall as high as 95%. These results show that search-by-match and collaborative filtering are useful approaches for helping users to publish, find, and reuse visual programs similar to topes.  相似文献   

13.
自适应对象模型体系结构研究*   总被引:3,自引:1,他引:2  
创建动态的、可配置和具有自适应能力的应用系统一直是软件开发人员追求的目标,自适应对象模型开发是一种有效的解决方法。自适应对象模型具有描述驱动、最终用户编程和运行时解释执行等特点,其体系结构由元模型、模型引擎和支撑工具组成。首先详细分析了元模型的六个模式,并讨论了模型引擎的原理和支撑工具,分析对开发带来的影响和阐述实现中的问题,最后提出了应用自适应对象模型方法开发的新的应用软件平台——应用件。  相似文献   

14.
软件工程支撑环境的集成化问题是构造环境的中心环节,它涉及到概念、方法、技术和工具等方面,有其内在的逻辑含义和物理表征。本文介绍了一个在UNIX系统上构造的集成化的软件工程支撑环境。该环境以环境库和用户界面为其主要的集成机制,支持面向对象的程序设计方法。它提供了一个基本语言序列,可以支持不同层次的用户从事软件开发活动和项目管理活动。在实现上,采用分层虚机器的构造方法,从而保证了系统的坚固性、开放性和可剪裁性。  相似文献   

15.
16.
Exception handling is widely regarded as a necessity in programming languages today and almost every programming language currently used for professional software development supports some form of it. However, spreadsheet systems, which may be the most widely used type of “programming language” today in terms of number of users using it to create “programs” (spreadsheets), have traditionally had only extremely limited support for exception handling. Spreadsheet system users range from end users to professional programmers and this wide range suggests that an approach to exception handling for spreadsheet systems needs to be compatible with the equational reasoning model of spreadsheet formulas, yet feature expressive power comparable to that found in other programming languages. We present an approach to exception handling for spreadsheet system users that is aimed at this goal. Some of the features of the approach are new; others are not new, but their effects on the programming language properties of spreadsheet systems have not been discussed before in the literature. We explore these properties, offer our solutions to problems that arise with these properties, and compare the functionality of the approach with that of exception handling approaches in other languages  相似文献   

17.
The "bazaar" metaphor has developed a lasting popularity in software engineering, especially as software architectures have evolved from monoliths to service orientation. Nevertheless, the metaphor is limited because it doesn't consider end users, those who develop software for themselves. Introducing such an end user, the "prosumer," to the bazaar not only suggests a changing division of work in software development but also calls for different functionality and architectural choices. The authors evaluated changing software architectures from an end-user development (EUD) perspective, taking the case of enterprise resource planning (ERP) systems as traditionally monolithically designed systems moving toward service orientation. On the basis of the study's findings, which indicated problems with the systems' technical flexibility, the authors developed a tool set for fostering EUD activities. Their new architecture for ERP systems enables end users to create their own solutions.  相似文献   

18.
This research enables computer literate engineers to model problems in software by minimising code they need to write. Software development is difficult for many engineers as they may have no time, experience, or access to software development tools necessary to model their problems. Using a combination of modelling via use of formulae (equations) and visualisation of the way these formulae interact, it is possible to construct modelling software without requiring code. This technique of user-driven modelling/programming (UDM/P) could be applied to any problem that requires linked equations to be represented and tracked, and results from these calculated. End-user programming could be tackled by many researchers co-operating to create specific solutions to different kinds of end-user programming problems. A stepped ontology based translation process assists with progress towards a generic solution, this is first applied to engineering modelling.  相似文献   

19.
Word processing is still one of the most frequently used office computing applications. Increasingly, it also serves as the entry point for nontechnical users into so phisticated office automation (OA) environments. Users branch out of word processing (WP) to use electronic mail or merge extracts from data bases and spreadsheets into their text. This evolution is shifting the focus of systems selection from hardware and software to connectivity issues the integration of diverse systems, the achievement of editable document exchange, and the balancing of corporate strategic objectives with end-user needs and preferences. This column explores current word processing options in light of users' new priorities.  相似文献   

20.
Adler  R.M. 《Computer》1995,28(3):68-77
Component software benefits include reusability and interoperability, among others. What are the similarities and differences between the competing standards for this new technology, and how will they interoperate? Object-oriented technology is steadily gaining acceptance for commercial and custom application development through programming languages such as C++ and Smalltalk, object oriented CASE tools, databases, and operating systems such as Next Computer's NextStep. Two emerging technologies, called compound documents and component software, will likely accelerate the spread of objectoriented concepts across system-level services, development tools, and application-level behaviours. Tied closely to the popular client/server architecture for distributed computing, compound documents and component software define object-based models that facilitate interactions between independent programs. These new approaches promise to simplify the design and implementation of complex software applications and, equally important, simplify human-computer interactive work models for application end users. Following unfortunate tradition, major software vendors have developed competing standards to support and drive compound document and component software technologies. These incompatible standards specify distinct object models, data storage models, and application interaction protocols. The incompatibilities have generated confusion in the market, as independent software vendors, system integrators, in-house developers, and end users struggle to sort out the standards' relative merits, weaknesses, and chances for commercial success. Let's take a look now at the general technical concepts underlying compound documents and component software. Then we examine the OpenDoc, OLE 2, COM, and CORBA standards being proposed for these two technologies. Finally, we'll review the work being done to extend the standards and to achieve interoperability across them  相似文献   

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

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