940 resultados para Object Oriented Programming (Computing)


Relevância:

100.00% 100.00%

Publicador:

Resumo:

While object-oriented programming offers great solutions for today's software developers, this success has created difficult problems in class documentation and testing. In Java, two tools provide assistance: Javadoc allows class interface documentation to be embedded as code comments and JUnit supports unit testing by providing assert constructs and a test framework. This paper describes JUnitDoc, an integration of Javadoc and JUnit, which provides better support for class documentation and testing. With JUnitDoc, test cases are embedded in Javadoc comments and used as both examples for documentation and test cases for quality assurance. JUnitDoc extracts the test cases for use in HTML files serving as class documentation and in JUnit drivers for class testing. To address the difficult problem of testing inheritance hierarchies, JUnitDoc provides a novel solution in the form of a parallel test hierarchy. A small controlled experiment compares the readability of JUnitDoc documentation to formal documentation written in Object-Z. Copyright (c) 2005 John Wiley & Sons, Ltd.

Relevância:

100.00% 100.00%

Publicador:

Resumo:

Current Physiologically based pharmacokinetic (PBPK) models are inductive. We present an additional, different approach that is based on the synthetic rather than the inductive approach to modeling and simulation. It relies on object-oriented programming A model of the referent system in its experimental context is synthesized by assembling objects that represent components such as molecules, cells, aspects of tissue architecture, catheters, etc. The single pass perfused rat liver has been well described in evaluating hepatic drug pharmacokinetics (PK) and is the system on which we focus. In silico experiments begin with administration of objects representing actual compounds. Data are collected in a manner analogous to that in the referent PK experiments. The synthetic modeling method allows for recognition and representation of discrete event and discrete time processes, as well as heterogeneity in organization, function, and spatial effects. An application is developed for sucrose and antipyrine, administered separately and together PBPK modeling has made extensive progress in characterizing abstracted PK properties but this has also been its limitation. Now, other important questions and possible extensions emerge. How are these PK properties and the observed behaviors generated? The inherent heuristic limitations of traditional models have hindered getting meaningful, detailed answers to such questions. Synthetic models of the type described here are specifically intended to help answer such questions. Analogous to wet-lab experimental models, they retain their applicability even when broken apart into sub-components. Having and applying this new class of models along with traditional PK modeling methods is expected to increase the productivity of pharmaceutical research at all levels that make use of modeling and simulation.

Relevância:

100.00% 100.00%

Publicador:

Resumo:

The testing of concurrent software components can be difficult due to the inherent non-determinism present in these components. For example, if the same test case is run multiple times, it may produce different results. This non-determinism may lead to problems with determining expected outputs. In this paper, we present and discuss several possible solutions to this problem in the context of testing concurrent Java components using the ConAn testing tool. We then present a recent extension to the tool that provides a general solution to this problem that is sufficient to deal with the level of non-determinism that we have encountered in testing over 20 components with ConAn. © 2005 IEEE

Relevância:

100.00% 100.00%

Publicador:

Resumo:

The Java programming language supports concurrency. Concurrent programs are hard to test due to their inherent non-determinism. This paper presents a classification of concurrency failures that is based on a model of Java concurrency. The model and failure classification is used to justify coverage of synchronization primitives of concurrent components. This is achieved by constructing concurrency flow graphs for each method call. A producer-consumer monitor is used to demonstrate how the approach can be used to measure coverage of concurrency primitives and thereby assist in determining test sequences for deterministic execution.

Relevância:

100.00% 100.00%

Publicador:

Resumo:

The inclusion of high-level scripting functionality in state-of-the-art rendering APIs indicates a movement toward data-driven methodologies for structuring next generation rendering pipelines. A similar theme can be seen in the use of composition languages to deploy component software using selection and configuration of collaborating component implementations. In this paper we introduce the Fluid framework, which places particular emphasis on the use of high-level data manipulations in order to develop component based software that is flexible, extensible, and expressive. We introduce a data-driven, object oriented programming methodology to component based software development, and demonstrate how a rendering system with a similar focus on abstract manipulations can be incorporated, in order to develop a visualization application for geospatial data. In particular we describe a novel SAS script integration layer that provides access to vertex and fragment programs, producing a very controllable, responsive rendering system. The proposed system is very similar to developments speculatively planned for DirectX 10, but uses open standards and has cross platform applicability. © The Eurographics Association 2007.

Relevância:

100.00% 100.00%

Publicador:

Resumo:

Metrics estimate the quality of different aspects of software. In particular, cohesion indicates how well the parts of a system hold together. A metric to evaluate class cohesion is important in object-oriented programming because it gives an indication of a good design of classes. There are several proposals of metrics for class cohesion but they have several problems (for instance, low discrimination). In this paper, a new metric to evaluate class cohesion is proposed, called SCOM, which has several relevant features. It has an intuitive and analytical formulation, what is necessary to apply it to large-size software systems. It is normalized to produce values in the range [0..1], thus yielding meaningful values. It is also more sensitive than those previously reported in the literature. The attributes and methods used to evaluate SCOM are unambiguously stated. SCOM has an analytical threshold, which is a very useful but rare feature in software metrics. We assess the metric with several sample cases, showing that it gives more sensitive values than other well know cohesion metrics.

Relevância:

100.00% 100.00%

Publicador:

Resumo:

* Упомянуто данное направление, так как курс читается студентам факультета Бизнес-Информатика Государственного Университета – Высшая Школа Экономики (г. Москва)

Relevância:

100.00% 100.00%

Publicador:

Resumo:

Христина Костадинова, Красимир Йорджев - В статията се обсъжда представянето на произволна бинарна матрица с помощта на последователност от цели неотрицателни числа. Разгледани са някои предимства и недостатъци на това представяне като алтернатива на стандартното, общоприето представяне чрез двумерен масив. Показано е, че представянето на бинарните матрици с помощта на наредени n-торки от естествени числа води до по-бързи алгоритми и до съществена икономия на оперативна памет. Използуван е апарата на обектно-ориентираното програмиране със синтаксиса и семантиката на езика C++.

Relevância:

100.00% 100.00%

Publicador:

Resumo:

Kiril Ivanov - Four criteria for estimating the degree of fundamental programming knowledge acquisition are formulated. The specificity of the proof-oriented thinking in object- oriented programming and its role in the learning of fundamentals are pointed. Two ways of reasoning are distinguished: with an only possible conclusion and with a multiple choice by search of balance between contradictory requirements. Examples of arguments that help considerably the students to understand the basic ideas related to the use of objects and classes in different stages of the software system development are given. Particular attention is paid to the influence of the proof-oriented thinking on the learners’ motivation and hence – on their fundamental knowledge acquisition.

Relevância:

100.00% 100.00%

Publicador:

Resumo:

Part of the challenge of fostering learning is to open up learner minds to new possibilities or ways of thinking but is what we are encouraging learners to think really that different from the current practitioner conceptions? Having been uncomfortable with the focus of textbooks for the teaching of the core concept, the nature of a program, in the teaching of objectoriented programming, we sought to discover how practitioner’s conceived the concept. Our findings provide a framework for understanding the different ways of conceiving the concept and the features that distinguish these conceptions. How could these conceptions and their critical features influence the focus in teaching especially in relation to computational thinking?

Relevância:

100.00% 100.00%

Publicador:

Resumo:

Software Engineering is one of the most widely researched areas of Computer Science. The ability to reuse software, much like reuse of hardware components is one of the key issues in software development. The object-oriented programming methodology is revolutionary in that it promotes software reusability. This thesis describes the development of a tool that helps programmers to design and implement software from within the Smalltalk Environment (an Object- Oriented programming environment). The ASDN tool is part of the PEREAM (Programming Environment for the Reuse and Evolution of Abstract Models) system, which advocates incremental development of software. The Asdn tool along with the PEREAM system seeks to enhance the Smalltalk programming environment by providing facilities for structured development of abstractions (concepts). It produces a document that describes the abstractions that are developed using this tool. The features of the ASDN tool are illustrated by an example.

Relevância:

100.00% 100.00%

Publicador:

Resumo:

The purpose of this thesis is to present the concept of simulation for automatic machines and how it might be used to test and debug software implemented for an automatic machine. The simulation is used to detect errors and allow corrections of the code before the machine has been built. Simulation permits testing different solutions and improving the software to get an optimized one. Additionally, simulation can be used to keep track of a machine after the installation in order to improve the production process during the machine’s life cycle. The central argument of this project is discussing the advantage of using virtual commissioning to test the implemented software in a virtual environment. Such an environment is getting benefit in avoiding potential damages as well as reduction of time to have the machine ready to work. Also, the use of virtual commissioning allows testing different solutions without high losses of time and money. Subsequently, an optimized solution could be found after testing different proposed solutions. The software implemented is based on the Object-Oriented Programming paradigm which implies different features such as encapsulation, modularity, and reusability of the code. Therefore, this way of programming helps to get simplified code that is easier to be understood and debugged as well as its high efficiency. Finally, different communication protocols are implemented in order to allow communication between the real plant and the simulation model. By the outcome that this communication provides, we might be able to gather all the necessary data for the simulation and the analysis, in real-time, of the production process in a way to improve it during the machine life cycle.

Relevância:

100.00% 100.00%

Publicador:

Resumo:

Almost a decade has passed since the objectives and benefits of autonomic computing were stated, yet even the latest system designs and deployments exhibit only limited and isolated elements of autonomic functionality. In previous work, we identified several of the key challenges behind this delay in the adoption of autonomic solutions, and proposed a generic framework for the development of autonomic computing systems that overcomes these challenges. In this article, we describe how existing technologies and standards can be used to realise our autonomic computing framework, and present its implementation as a service-oriented architecture. We show how this implementation employs a combination of automated code generation, model-based and object-oriented development techniques to ensure that the framework can be used to add autonomic capabilities to systems whose characteristics are unknown until runtime. We then use our framework to develop two autonomic solutions for the allocation of server capacity to services of different priorities and variable workloads, thus illustrating its application in the context of a typical data-centre resource management problem.