scispace - formally typeset
Search or ask a question
Topic

Software

About: Software is a research topic. Over the lifetime, 130577 publications have been published within this topic receiving 2028987 citations. The topic is also known as: computer software & computational tool.


Papers
More filters
Journal ArticleDOI
TL;DR: The developed OpenMEE: Open Meta‐analyst for Ecology and Evolution is a cross‐platform, easy‐to‐use graphical user interface that gives E&E researchers access to the diverse and advanced statistical functionalities offered in R, without requiring knowledge of R programming.
Abstract: Summary Meta-analysis and meta-regression are statistical methods for synthesizing and modelling the results of different studies, and are critical research synthesis tools in ecology and evolutionary biology (E&E). However, many E&E researchers carry out meta-analyses using software that is limited in its statistical functionality and is not easily updatable. It is likely that these software limitations have slowed the uptake of new methods in E&E and limited the scope and quality of inferences from research syntheses. We developed OpenMEE: Open Meta-analyst for Ecology and Evolution to address the need for advanced, easy-to-use software for meta-analysis and meta-regression. OpenMEE has a cross-platform, easy-to-use graphical user interface (GUI) that gives E&E researchers access to the diverse and advanced statistical functionalities offered in R, without requiring knowledge of R programming. OpenMEE offers a suite of advanced meta-analysis and meta-regression methods for synthesizing continuous and categorical data, including meta-regression with multiple covariates and their interactions, phylogenetic analyses, and simple missing data imputation. OpenMEE also supports data importing and exporting, exploratory data analysis, graphing of data, and summary table generation. As intuitive, open-source, free software for advanced methods in meta-analysis, OpenMEE meets the current and pressing needs of the E&E community for teaching meta-analysis and conducting high-quality syntheses. Because OpenMEE's statistical components are written in R, new methods and packages can be rapidly incorporated into the software. To fully realize the potential of OpenMEE, we encourage community development with an aim to advance the capabilities of meta-analyses in E&E.

239 citations

Journal ArticleDOI
TL;DR: This work describes a formal framework for studying online software version change, gives a general definition of validity of an online change, shows that it is in general undecidable and develops sufficient conditions for ensuring validity for a procedural language.
Abstract: The usual way of installing a new version of a software system is to shut down the running program and then install the new version. This necessitates a sometimes unacceptable delay during which service is denied to the users of the software. An online software replacement system replaces parts of the software while it is in execution, thus eliminating the shutdown. While a number of implementations of online version change systems have been described in the literature, little investigation has been done on its theoretical aspects. We describe a formal framework for studying online software version change. We give a general definition of validity of an online change, show that it is in general undecidable and then develop sufficient conditions for ensuring validity for a procedural language.

239 citations

Posted Content
TL;DR: A model of the implementation process for dedicated packages and a research project to test the model are presented, along with suggestions for package implementation for both the customer and package vendor are described.
Abstract: This paper presents a model of the implementationprocess for dedicated packages and describes a researchproject to test the model undertaken with the cooperation ofa major computer vendor. Data were collected from 78individuals in 18 firms using the package and from thepackage vendor. The results of the study offer some supportfor the model along with suggestions for packageimplementation for both the customer and package vendor.

239 citations

Journal ArticleDOI
01 Apr 1982
TL;DR: An architecture for improving computer performance which has a high degree of decoupling between operand access and execution, resulting in an implementation which has two separate instruction streams that communicate via queues.
Abstract: An architecture for improving computer performance is presented and discussed. The main feature of the architecture is a high degree of decoupling between operand access and execution. This results in an implementation which has two separate instruction streams that communicate via queues. A similar architecture has been previously proposed for array processors, but in that context the software is called on to do most of the coordination and synchronization between the instruction streams. This paper emphasizes implementation features that remove this burden from the programmer. Performance comparisons with a conventional scalar architecture are given, and these show that considerable performance gains are possible.Single instruction stream versions, both physical and conceptual, are discussed with the primary goal of minimizing the differences with conventional architectures. This would allow known compilation and programming techniques to be used. Finally, the problem of deadlock in such a system is discussed, and one possible solution is given.

239 citations

01 Jan 2001
TL;DR: This chapter discusses SPE in the Unified Software Process, a model for SPE for Object-Oriented Systems, and some of the techniques used to design and implement the model.
Abstract: Foreword by Grady Booch. Foreword by Paul Clements. Preface. I. INTRODUCTION AND OVERVIEW. 1. Introduction. Software and Performance. Responsiveness. Scalability. The Importance of Performance. Consequences of Performance Failures. Causes of Performance Failures. Getting It Right. How Should You Manage Performance? Reactive Performance Management. Proactive Performance Management. Software Performance Engineering. SPE Modeling Strategies. SPE Models. SPE for Object-Oriented Systems. What Does It Cost? What Do You Need? Summary. 2: SPE Quick View. SPE Process for Object-Oriented Systems. Case Study. Assess Performance Risk (Step 1). Identify Critical Use Cases (Step 2). Select Key Performance Scenarios (Step 3). Establish Performance Objectives (Step 4). Construct Performance Models (Step 5). Determine Software Resource Requirements (Step 6). Add Computer Resource Requirements (Step 7). Evaluate the Models (Step 8). Verify and Validate the Models (Step 9). SPE in the Unified Software Process. Performance Solutions. Performance Principles. Performance Patterns. Performance Antipatterns. Implementation Solutions. Summary. 3: SPE and the UML. Overview. Extending the UML. Stereotypes. Tagged Values. Constraints. Use Cases and Scenarios. Use Cases. Scenarios. Extensions to Sequence Diagram Notation. Instance Decomposition. Looping, Alternation, and References. Specifying Time. Timing Marks. Time Expressions. Timing Constraints. Time in Sequence Diagrams. Concurrency. Threads and Processes. Coregions. Parallel Composition. Synchronization. Summary. II. SPE MODELS. 4: Software Execution Models. Purpose. Representing Software Execution Models. Execution Graphs. Execution Graph Restrictions. Model Solutions. Basic Solution Algorithms. More Advanced Solution Techniques. Analysis Procedures. Execution Graphs from Sequence Diagrams. ICAD Case Study. Architecture 1. Architecture 2. Analysis of Results. Architecture 3. Modeling Hints. Summary. 5: Web Applications and Other Distributed Systems. Introduction. Web Applications. Distributed Object Technology. Middleware. Limitations of Distributed Object Technology. Effective Development with Distributed Object Technology. Modeling Distributed System Interactions. Types of System Interactions. Software Execution Model Representation. Representing Middleware Overhead. Software Model Solution Approximations. Example: Web e-Commerce Application. Database Scenario. Order Process Scenario. Example Summary. Modeling Hints. Summary. 6: System Execution Models. Introduction. System Model Basics. Performance Metrics. Solving the Queueing Model. Networks of Queues. Deriving System Model Parameters from Software Model Results. Using the System Model for SPE. Advanced System Models. Alternate Solution Methods. Schedulability. Distributed System Case Study. Synchronization Model. Modeling Hints. Summary. III. DATA COLLECTION. 7: SPE Data Collection. Introduction. SPE Data Requirements. Key Performance Scenarios. Performance Objectives. Execution Environment. Software Resource Requirements. Computer Resource Requirements. Data Gathering Issues. Performance Walkthrough. Topics. When to Conduct Performance Walkthroughs. Example. Tips for a Successful Performance Walkthrough. Resource Estimation Techniques. Use Measurements. Study Measurements. Use a Mentor. Best-Worst Case Estimates. What to Estimate. Estimating I/O Requirements. Estimating Network Messages Obtaining Computer Resource Requirements. Summary. 8: Software Measurement and Instrumentation. Introduction. What Should You Measure? Workload Data and Data Characteristics. Path Characteristics. Software Resources and Processing Overhead. Computer Resource Usage. Planning for Performance Measurement. Key Considerations. Performance Benchmarks. Designing and Conducting Measurement Studies. Performance Measurement Concepts. Terminology. Factors That May Affect Measurements. Data Collection Techniques and Tools. Data Collection Techniques. Measuring SPE Data. Instrumentation. Instrumentation Design Considerations. Implementation Alternatives. Data Reporting. Application Resource Measurement. Summary. IV. PERFORMANCE SOLUTIONS. 9: Performance-Oriented Design. Principles for Performance-Oriented Design. Performance Control Principles. Performance Objectives Principle. Instrumenting Principle. Independent Principles. Centering Principle. Fixing-Point Principle. Locality Principle. Processing Versus Frequency Principle. Synergistic Principles. Shared Resources Principle. Parallel Processing Principle. Spread-the-Load Principle. Using the Principles. Summary. 10: Performance Patterns. Overview. Fast Path. Problem. Solution. Benefits. Consequences. First Things First. Problem. Solution. Benefits. Consequences. Coupling. Problem. Solution. Benefits. Consequences. Batching. Problem. Solution. Benefits. Consequences. Alternate Routes. Problem. Solution. Benefits. Consequences. Flex Time. Problem. Solution. Benefits. Consequences. Slender Cyclic Functions. Problem. Solution. Benefits. Consequences. Summary. 11: Performance Antipatterns. Overview. The "god" Class. Problem. Solution. Excessive Dynamic Allocation. Problem. Solution. Circuitous Treasure Hunt. Problem. Solution. The One-Lane Bridge. Problem. Solution. Traffic Jam. Problem. Solution. Summary. 12: Implementation Solutions. Overview. Performance Tuning. General Performance Solutions. Fast Path Speed-Up. Improving Scalability. Algorithm and Data Structure Choices. Time Versus Space Trade-Offs. Hardware/Software Platform Dependencies. Performance Solutions for Object-Oriented Software. Language-Independent Solutions. C++ Solutions. Java Solutions. Summary. V. APPLICATIONS. 13: Web Applications. Introduction. Performance Issues. SPE Models for Web Applications. Case Study: Nachtfliegen.com. Plan Itinerary Scenario. Software Model. Hardware/Software Environment. Resource Requirements. Software Model Solution. Performance Improvements. System Execution Model. Sensitivity and Scalability Analysis. Typical Performance Problems. Summary. 14: Embedded Real-Time Systems. Introduction. Embedded Real-Time Systems Background. Timing Requirements. Hardware Constraints. Real-Time Operating Systems. Distributed Systems. Database. Performance Issues. Response Time and Throughput. Schedulability. SPE Models for Embedded Real-Time Systems. Case Study: Telephony Switching. Overview. Architecture and Design. Typical Performance Problems. Summary. VI. MAKING SPE HAPPEN. 15: The SPE Process. Introduction. The SPE Process. Assess Performance Risk. Identify Critical Use Cases. Select Key Performance Scenarios. Establish Performance Objectives. Construct Performance Models. Determine Software Resource Requirements. Add Computer Resource Requirements. Evaluate the Models. Verify and Validate Models. Late Life Cycle SPE Activities. More Detailed Models. More Precise Data. Performance Testing. Baseline Models. Post-Deployment Performance Management. Evolutionary Changes. Capacity Management. SPE Artifacts. Performance Management Plans. Performance V&V Plan. SPE Configuration Management Plan. Performance Drivers. Performance Scenarios. Performance Objectives. Execution Environment Specifications. Performance Models. Model Results. Performance Instrumentation. Performance V&V Reports. Performance Test Plans. Performance Test Results. Integrating SPE Into Your Software Process. The Waterfall Model. The Spiral Model. SPE in the Unified Process. Summary. 16: Implementing SPE. Introduction. Tools. Modeling Tools. Development Tools. SPE Adoption and Use. Experience. Key Considerations. Pilot Projects. Critical Success Factors for Adoption and Use. SPE Implementation Strategies. Organizational Issues. Who Pays for SPE? Costs. Risks. Critical Factors for Successful Projects. SPE Future. Summary. VII. APPENDIXES. Appendix A: UML Notation. Use Case Diagrams. Sequence Diagrams. Basic Sequence Diagrams. Augmented Sequence Diagrams. Deployment Diagrams. Stereotypes, Tagged Values, and Constraints. Stereotypes. Tagged Values. Constraints. Appendix B: SPE Modeling Notations. Execution Graph Notation. Basic Nodes. Synchronization Nodes. Information Processing Graph Notation. Bibliography. Index. 0201722291T09102001

238 citations


Network Information
Related Topics (5)
User interface
85.4K papers, 1.7M citations
87% related
Cluster analysis
146.5K papers, 2.9M citations
86% related
Support vector machine
73.6K papers, 1.7M citations
86% related
The Internet
213.2K papers, 3.8M citations
85% related
Information system
107.5K papers, 1.8M citations
85% related
Performance
Metrics
No. of papers in the topic in previous years
YearPapers
20246
20235,523
202213,625
20213,455
20205,268
20195,982