共查询到20条相似文献,搜索用时 15 毫秒
1.
An empirical investigation of an object-oriented software system 总被引:2,自引:0,他引:2
《IEEE transactions on pattern analysis and machine intelligence》2000,26(8):786-796
The paper describes an empirical investigation into an industrial object oriented (OO) system comprised of 133000 lines of C++. The system was a subsystem of a telecommunications product and was developed using the Shlaer-Mellor method (S. Shlaer and S.J. Mellor, 1988; 1992). From this study, we found that there was little use of OO constructs such as inheritance, and therefore polymorphism. It was also found that there was a significant difference in the defect densities between those classes that participated in inheritance structures and those that did not, with the former being approximately three times more defect-prone. We were able to construct useful prediction systems for size and number of defects based upon simple counts such as the number of states and events per class. Although these prediction systems are only likely to have local significance, there is a more general principle that software developers can consider building their own local prediction systems. Moreover, we believe this is possible, even in the absence of the suites of metrics that have been advocated by researchers into OO technology. As a consequence, measurement technology may be accessible to a wider group of potential users 相似文献
2.
Object-oriented databases (OODBs) provide an effective means for capturing complex data and semantic relationships underlying many real-world database applications. Because users' interactions with databases have increased significantly in today's era of client–server computing, it is important to examine users' ability to interact with such databases. We investigated a number of factors that potentially affect performance in writing queries on an OODB. First, we evaluated the utility of graphical and textual schemas associated with emerging OODBs from the perspective of database querying. Second, we examined the use of two different strategies (navigation and join) that could be used in writing OODB queries. Third, we examined a number of factors that potentially contribute to the complexity of an OODB query.Our exploratory study examined the performance of 20 graduate students in an experiment in which each participant wrote queries for two problems, one using a graphical OODB schema and the other a textual OODB schema. The participants had no prior exposure to the object-oriented data model. We found that there was no difference in query writing performance (either accuracy or time) using the graphical and textual schemas. Examination of query strategy revealed that a significant number of participants used a join strategy, rather than the navigation strategy that matches the database structure. Use of the join strategy resulted in significantly less accurate and slower query writing than did the navigation strategy. From the viewpoint of complexity, the number of objects referenced in a query, the number of starting points in the from clause, and the presence of special operators influenced both the accuracy and time of query writing. 相似文献
3.
This paper presents the development of an event-driven control architecture and its implementation in a physical simulator of a computerized manufacturing system using object-oriented techniques. The architecture was developed to improve the efficiency of handling concurrent control events in the DOS environment. In the implementation, the control system of the physical simulator consists of four distinct layers of control devices: a PC/386 computer, a microcontroller, I/O modules and the system's control devices such as motors, solenoids and sensors. A control program residing in the PC/386 coordinates system-level tasks such as event scheduling, while a BASIC program running on the microcontroller handles all low-level control tasks such as sensor monitoring and motion control. The concepts and developments presented in this paper should help in implementing an efficient control system for both CIM systems and their physical simulators. 相似文献
4.
An object-oriented approach to the construction, manipulation, and display of complex geometric models of oil reservoirs is described. The authors have extended the traditional constructive solid geometry modeling techniques to accommodate the requirements for reservoir models. Both the user interface and the model building are implemented in Strobe, an object-oriented extension to Interlisp. The geometric model is specified through a CSG-graph editor built using an object-oriented toolkit for graphical interfaces. This editor proves to be an invaluable tool with which to build, maintain and manipulate large, complicated geometric models 相似文献
5.
Motivated by the recent success of diverse approaches based on differential evolution (DE) to solve constrained numerical optimization problems, in this paper, the performance of this novel evolutionary algorithm is evaluated. Three experiments are designed to study the behavior of different DE variants on a set of benchmark problems by using different performance measures proposed in the specialized literature. The first experiment analyzes the behavior of four DE variants in 24 test functions considering dimensionality and the type of constraints of the problem. The second experiment presents a more in-depth analysis on two DE variants by varying two parameters (the scale factor F and the population size NP), which control the convergence of the algorithm. From the results obtained, a simple but competitive combination of two DE variants is proposed and compared against state-of-the-art DE-based algorithms for constrained optimization in the third experiment. The study in this paper shows (1) important information about the behavior of DE in constrained search spaces and (2) the role of this knowledge in the correct combination of variants, based on their capabilities, to generate simple but competitive approaches. 相似文献
6.
This paper describes the design, implementation, and performance of ES-Kit, a distributed object-oriented system being developed by the Experimental Systems Project at the Microelectronics and Computer Technology Corporation. The operating system consists of a kernel and a set of Public Service Objects which dynamically extend the functionality of the kernel by providing several traditional operating system services when required by application objects. Applications for the ES-Kit environment are written in GNU C++ and do not require additional language primitives for distributed execution. Initial performance results from a representative set of applications indicate that the object-oriented paradigm provides a powerful solution to distributed programming. 相似文献
7.
This paper presents a scheme to automate the entire process of tolerance charting. An object-oriented database called TOLCHAIN is developed to support this scheme. TOLCHAIN stores all the necessary information for tolerance charts to determine the intermediate machining tolerance values automatically. It is assumed that the part is stored as a boundary model. Feature volumes are then constructed from the boundary model to perform the tool accessibility analysis and to determine the process sequence. The intermediate machining tolerances are derived automatically from the boundary model. 相似文献
8.
An empirical validation of object-oriented metrics in two different iterative software processes 总被引:1,自引:0,他引:1
Alshayeb M. Wei Li 《IEEE transactions on pattern analysis and machine intelligence》2003,29(11):1043-1049
Object-oriented (OO) metrics are used mainly to predict software engineering activities/efforts such as maintenance effort, error proneness, and error rate. There have been discussions about the effectiveness of metrics in different contexts. In this paper, we present an empirical study of OO metrics in two iterative processes: the short-cycled agile process and the long-cycled framework evolution process. We find that OO metrics are effective in predicting design efforts and source lines of code added, changed, and deleted in the short-cycled agile process and ineffective in predicting the same aspects in the long-cycled framework process. This leads us to believe that OO metrics' predictive capability is limited to the design and implementation changes during the development iterations, not the long-term evolution of an established system in different releases. 相似文献
9.
E. Nasseri Author Vitae Author Vitae M. Shepperd Author Vitae 《Journal of Systems and Software》2010,83(2):303-315
Inheritance is a fundamental feature of the Object-Oriented (OO) paradigm. It is used to promote extensibility and reuse in OO systems. Understanding how systems evolve, and specifically, trends in the movement and re-location of classes in OO hierarchies can help us understand and predict future maintenance effort. In this paper, we explore how and where new classes were added as well as where existing classes were deleted or moved across inheritance hierarchies from multiple versions of four Java systems. We observed first, that in one of the studied systems the same set of classes was continuously moved across the inheritance hierarchy. Second, in the same system, the most frequent changes were restricted to just one sub-part of the overall system. Third, that a maximum of three levels may be a threshold when using inheritance in a system; beyond this level very little activity was observed, supporting earlier theories that, beyond three levels, complexity becomes overwhelming. We also found evidence of ‘collapsing’ hierarchies to bring classes up to shallower levels. Finally, we found that larger classes and highly coupled classes were more frequently moved than smaller and less coupled classes. Statistical evidence supported the view that larger classes and highly coupled classes were less cohesive than smaller classes and lowly coupled classes and were thus more suitable candidates for being moved (within an hierarchy). 相似文献
10.
Abstract: During the last decade, cumulative trauma disorders have become a major concern both to occupational health and safety professionals and manufacturing industries. This paper will present the development of a knowledge-based system for predicting the potential of developing strain injuries among employees exposed to repetitive and forceful activities. This potential is identified through the use of an expert system incorporating a fuzzy set algorithm. Recommendations for the prevention of the resulting CTDs are then provided by the system. The system executes on a microcomputer platform, and was constructed utilising a commercial object-oriented expert system shell. 相似文献
11.
12.
Kemerer C.F. Slaughter S. 《IEEE transactions on pattern analysis and machine intelligence》1999,25(4):493-509
With the approach of the new millennium, a primary focus in software engineering involves issues relating to upgrading, migrating, and evolving existing software systems. In this environment, the role of careful empirical studies as the basis for improving software maintenance processes, methods, and tools is highlighted. One of the most important processes that merits empirical evaluation is software evolution. Software evolution refers to the dynamic behaviour of software systems as they are maintained and enhanced over their lifetimes. Software evolution is particularly important as systems in organizations become longer-lived. However, evolution is challenging to study due to the longitudinal nature of the phenomenon in addition to the usual difficulties in collecting empirical data. We describe a set of methods and techniques that we have developed and adapted to empirically study software evolution. Our longitudinal empirical study involves collecting, coding, and analyzing more than 25000 change events to 23 commercial software systems over a 20-year period. Using data from two of the systems, we illustrate the efficacy of flexible phase mapping and gamma sequence analytic methods, originally developed in social psychology to examine group problem solving processes. We have adapted these techniques in the context of our study to identify and understand the phases through which a software system travels as it evolves over time. We contrast this approach with time series analysis. Our work demonstrates the advantages of applying methods and techniques from other domains to software engineering and illustrates how, despite difficulties, software evolution can be empirically studied 相似文献
13.
This paper describes the architecture, capabilities and implementation of The Clockworks, an object-oriented computer animation system encompassing a wide variety of modeling, image synthesis, animation, programming and simulation capabilities in a single integrated environment. The object-oriented features of The Clockworks are implemented in portable C under UNIX using a programming discipline. These features include objects with methods and instance variables, class hierarchies, inheritance, instantiation and message passing. 相似文献
14.
This research work aims to develop an intelligent constraint-based system that enables designers to consider at the early stages of the design process all activities associated with product’s life cycle. One of the most important aspects of these activities is the evaluation and optimisation of manufacturing processes that require various type of information from the different aspects of product’s life cycle. This research article discusses the development of a prototype system for manufacturing process optimisation using a combination of both mathematical methods and constraint-programming techniques. This approach enables designers to evaluate and optimise feasible manufacturing processes in a consistent manner as early as possible during the design process. This helps in avoiding unexpected design iterations that wastage a great amount of time and effort, leading to longer lead-time. The development process has passed through the five major stages: Firstly, an intelligent constraint-based design system for concurrent product and process design has been developed. Secondly, a manufacturing process optimisation module has been constructed. Thirdly, the product features, processes, cost, time and constraints to be used for carrying out various design tasks has been represented in the format of constraints, frames, objects, and rules. Fourthly, the process optimisation and evaluation rules for the selection of feasible processes for complex features, and finally, the information management system that ensures consistency in information exchange and decision making activities have been developed. 相似文献
15.
Walter C. Dietrich Lee R. Nackman Christine J. Sundaresan Franklin Gracer 《Software》1989,19(10):979-1013
TGMS (tiered geometric modelling system) is an experimental system intended to reduce the difficulty and cost of developing new solid modelling applications while preserving investment in an existing, time-tested, solid modeller. The application developer writes programs in the TGMS language, which consists of a base language augmented by data types (classes) for geometry. The base programming language is AML/X, an object-oriented language intended for use in design and manufacturing applications. Solid modelling is done using an interface to GDP (geometric design processor), an existing, production-quality solid modelling system. TGMS shows how a system written in a non-object-oriented language can be used as a base for an object-oriented application programming environment. This paper presents the design of TGMS and discusses important aspects of its implementation. The TGMS language defines classes and methods that provide an interface to functions and data represented in a non-object-oriented language. To implement TGMS, issues related to communication, storage management and consistency were addressed. These, and other, implementation issues are discussed. The paper includes sample programs and a summary of feedback from TGMS users. It concludes that the use of object-oriented programming for geometry has many benefits, and that an object-oriented system can be built on top of a non-object-oriented system at less cost than building the equivalent object-oriented system from scratch. 相似文献
16.
Adaptive strategy selection in differential evolution for numerical optimization: An empirical study 总被引:1,自引:0,他引:1
Differential evolution (DE) is a versatile and efficient evolutionary algorithm for global numerical optimization, which has been widely used in different application fields. However, different strategies have been proposed for the generation of new solutions, and the selection of which of them should be applied is critical for the DE performance, besides being problem-dependent. In this paper, we present two DE variants with adaptive strategy selection: two different techniques, namely Probability Matching and Adaptive Pursuit, are employed in DE to autonomously select the most suitable strategy while solving the problem, according to their recent impact on the optimization process. For the measurement of this impact, four credit assignment methods are assessed, which update the known performance of each strategy in different ways, based on the relative fitness improvement achieved by its recent applications. The performance of the analyzed approaches is evaluated on 22 benchmark functions. Experimental results confirm that they are able to adaptively choose the most suitable strategy for a specific problem in an efficient way. Compared with other state-of-the-art DE variants, better results are obtained on most of the functions in terms of quality of the final solutions and convergence speed. 相似文献
17.
As knowledge becomes an increasingly valuable and important organizational asset, many firms anticipate that implementing the knowledge management systems (KMS) will effectively support and enhance organizational knowledge management activities. Even some firms regard KMS as an emerging and powerful source of competitive advantages.However, the implementation of KMS differs from that of traditional enterprise information systems. The implementation of KMS is difficult and risky since these systems are unstructured and so technologically innovative. Thus, effort is required to identify determinants affecting KMS implementation in businesses.Based on innovation diffusion theory and technology-organization-environment framework, this study develops and tests an integrated model of knowledge management systems implementation for businesses. Survey data were collected from 291 businesses in Taiwan. Confirmatory factor analysis and logistic regression technique were used test the hypothesized relationships. The results show that technological innovation factors (perceived benefits, complexity, and compatibility), organizational factors (top management support, organizational culture), and environmental factors (competitive pressure) are significant influences on KMS implementation in firms. Finally, the implications and future research on KMS implementation are discussed. 相似文献
18.
《Information and Software Technology》2013,55(4):755-775
ContextDevelopers often need to find answers to questions regarding the evolution of a system when working on its code base. While their information needs require data analysis pertaining to different repository types, the source code repository has a pivotal role for program comprehension tasks. However, the coarse-grained nature of the data stored by commit-based software configuration management systems often makes it challenging for a developer to search for an answer.ObjectiveWe present Replay, an Eclipse plug-in that allows developers to explore the change history of a system by capturing the changes at a finer granularity level than commits, and by replaying the past changes chronologically inside the integrated development environment, with the source code at hand.MethodWe conducted a controlled experiment to empirically assess whether Replay outperforms a baseline (SVN client in Eclipse) on helping developers to answer common questions related to software evolution.ResultsThe experiment shows that Replay leads to a decrease in completion time with respect to a set of software evolution comprehension tasks.ConclusionWe conclude that there are benefits in using Replay over the state of the practice tools for answering questions that require fine-grained change information and those related to recent changes. 相似文献
19.
M. Tamer Özsu Duane Szafron Ghada El-Medani Chiradeep Vittal 《Multimedia Systems》1995,3(5-6):182-203
We describe the design of a multimedia database management system for a distributed news-on-demand multimedia information
system. News-on-demand is an application that uses broadband network services to deliver news articles to subscribers in the
form of multimedia documents. Different news providers insert articles into the database, which are then accessed by users
remotely, over a broadband, asynchronous transfer-mode (ATM) network. The particulars of our design are an object-oriented
approach and strict adherence to international standards, in particular the Standard Generalized Mark-up Language (SGML) and
Hy-Time. The multimedia database system has a visual query facility, which is also described in this paper. The visual query
interface provides three major facilities for end users: presentation, navigation, and querying of multimedia news documents.
The main focus, however, is the querying of multimedia objects stored in the database. 相似文献
20.
《Decision Support Systems》1988,4(3):345-354
This paper reports on a survey carried out on 67 ES to investigate whether they employ DSS concepts. The author examines several DSS frameworks and proposes a questionnaire model to conduct the survey. The survey data are analysed and the paper concludes that the three fundamental DSS issues: semi-structured task, support, and effectiveness are explicitly applied in ES. It shows also that although both DSS and ES have similar aims, they accomplish them in completely different ways. The differences are in the boundary of problem space and the way to tackle problems. 相似文献