Spelling suggestions: "subject:"[een] OBJECT ORIENTED PROGRAMMING"" "subject:"[enn] OBJECT ORIENTED PROGRAMMING""
161 |
An investigation of students' knowledge, skills and strategies during problem solving in objectoriented programmingHavenga, Hester Maria 30 June 2008 (has links)
The object-oriented paradigm is widely advocated and has been used in South African
universities since the late 1990s. Object-oriented computer programming is based on the
object-oriented paradigm where objects are the building blocks that combine data and
methods in the same entity.
Students' performance in object-oriented programming (OOP) is a matter of concern. In
many cases they lack the ability to apply various supportive techniques in the process of
programming. Efficient knowledge, skills and strategies are required during problem solving
to enhance the programming process. It is often assumed that students implicitly and
independently master these high-level knowledge, skills and strategies, and that teaching
should focus on programming content and coding structures only. However, to be successful
in the complex domain of OOP, explicit learning of both programming and supportive
cognitive techniques is required.
The objective of this study was to identify cognitive, metacognitive and problem-solving
knowledge, skills and strategies used by successful and unsuccessful programmers in OOP.
These activities were identified and evaluated in an empirical research study. A mixed
research design was used, where both qualitative and quantitative methods were applied to
analyse participants' data. As a qualitative research practice, grounded theory was applied
to guide the systematic collection of data and to generate theory.
The findings suggest that successful programmers applied significantly more cognitive-,
metacognitive- and problem-solving knowledge, skills and strategies, also using a greater
variety, than the unsuccessful programmers. Since programming is complex, we propose a
learning repertoire based on the approaches of successful programmers, to serve as an
integrated framework to support novices in learning OOP. Various techniques should be
used during problem solving and programming to meaningfully construct, explicitly reflect on,
and critically select appropriate knowledge, skills and strategies so as to better understand,
design, code and test programs. Some examples of teaching practices are also outlined as
application of the findings of the study. / Mathematical Sciences / PhD. (Nathematics, Science and Tecnical Education)
|
162 |
OOPS - Object-Oriented Parallel System. Um framework de classes para a programação científica paralela / OOPS - Object-Oriented Parallel System. A class framework to support parallel scientific programming.Sonoda, Eloiza Helena 23 March 2006 (has links)
Neste trabalho foi realizado o projeto e o desenvolvimento do framework de classes OOPS - Object-Oriented Parallel System. Esta é uma ferramenta que utiliza orientação a objetos para apoiar a implementação de programas científicos concorrentes para execução paralela. O OOPS fornece abstrações de alto nível para que o programador da aplicação não se envolva diretamente com detalhes de implementação paralela, sem contudo ocultar completamente aspectos paralelos de projeto, como particionamento e distribuição dos dados, por questões de eficiência e de desempenho da aplicação. Para isso, o OOPS apresenta um conjunto de classes que permitem o encapsulamento de técnicas comumente encontradas em programação de sistemas paralelos. Utiliza o conceito de processadores virtuais organizados em grupos, aos quais podem ser aplicadas topologias que fornecem modos de comunicação entre os processadores virtuais, e contêineres podem ter seus elementos distribuídos por essas topologias, com componentes paralelos atuando sobre eles. A utilização das classes fornecidas pelo OOPS facilita a implementação do código sem adicionar sobrecarga significativa à aplicação paralela, representando uma camada fina sobre a biblioteca de passagem de mensagens usada. / This work describes the design and development of the OOPS (Object Oriented Parallel System) class framework, which is a tool that uses object orientation to support programming of concurrent scientific applications for parallel execution. OOPS provides high level abstractions to avoid application programmer\'s involvement with many parallel implementation details. For performance considerations, some parallel aspects such as decomposition and data distribution are not completely hidden from the application programmer. To achieve its intents, OOPS encapsulates some programming techniques frequently used for parallel systems. Virtual processors are organized in groups, over which topologies that provide communication between the processors can be constructed; distributed containers have their elements distributed across the processors of a topology, and parallel components use these containers for their work. The use of the classes supplied by OOPS simplifies the implementation of parallel applications, without incurring in pronounced overhead. OOPS is thus a thin layer over the message passing interface used for its implementation.
|
163 |
Modelagem e simulação distribuída de sistemas produtivos. / Distributed modeling and simulation of productive systems.Junqueira, Fabrício 22 June 2006 (has links)
As tecnologias da informação, telecomunicações e mobilidade aliadas às mudanças econômicas e sociais acarretaram uma grande reestruturação da indústria. Entre estas mudanças, verifica-se um maior nível de descentralização e especialização das unidades produtivas, o aumento da automação dos processos e, em conseqüência, uma maior quantidade e complexidade nas interações de seus sub-sistemas. De forma a lidar com esta complexidade e facilitar o estudo e projeto de novos sistemas, faz-se necessário o uso de modelos, que são analisados por exemplo, através de simulação. Entre elas destaca-se a simulação distribuída, a qual trata da evolução de situações/cenários do sistema em computadores fisicamente dispersos, conectados através de uma rede de comunicação, visando, por exemplo, a redução do tempo de simulação, a simulação de grandes modelos(composto por muitos elementos), maior tolerânica a falhas e mesmo a distribuição geográfica. Visando contribuir para uma maior aplicabilidade das técnicas de modelagem e simulação, em especial a distribuída, propõe-se nesta tese (1) um novo método para a modelagem hierárquica de sistemas produtivos; e (2) um novo algoritmo para a sincronização da evolução do tempo de simulação de diferentes simuladores interagindo através de redes de comunicação (LAN, WAN). No método de modelagem proposto, utiliza-se uma abordagem top-down para a decomposição do sistema, partindo-se de um nível de abstração para um de maior detalhamento, permitindo, assim, um maior nível de conhecimento quanto ao comportamento dos elementos e suas interações. No nível de detalhamento desejado, utiliza-se a Rede de Petri na modelagem dos elementos básicos do sistema, que são, assim como na orientação a objetos, denominados classes. Em seguida, através de uma abordagem bottom-up, estes modelos são agrupados, formando modelos mais complexos: componentes e aplicativos. A fim de garantir a interação entre estes elementos, foram definidos um conjunto de interfaces, bem como suas regras de relacionamento. Este método foi aplicado a um estudo de caso para comprovar sua eficácia. No que diz respeito ao algoritmo proposto para sincronizar os tempos de simulação, utiliza-se como subsidio o mecanismo de gerenciamento da transmissão de dados em redes conhecido como Token Ring. Um simulador de eventos, distribuído, foi implementado com a finalidade de validar o algoritmo proposto. / Evolution on the information technology, telecommunications and transport systems, associated to social and economic changes around the world have caused a significative reorganization of the industry. In this context, a high level of decentralization and specialization of the productive units, as well as an increment of the automation level used in productive processes have been verified. It results on the increase of the amount and the complexity of the enterprise subsystems interactions. Modeling techniques are used with simulation to deal with the complexity, to analysis, and to design new productive systems. Among the simulation approaches, distributed simulation is distinguished. It deals with the execution of simulation in physically dispersed computers connected through a LAN (Local Area Network), providing, for example, the reduction of the simulation time, huge simulation models (models with many elements), fault tolerance, as well as geographic dispersion. To contribute for the evolution of modeling and simulation techniques, in special the distributed one, it is proposed on this work: (1) a new method for the hierarchical modeling of productive systems; and (2) a new time synchronization algorithm used to manage the time evolution of a set of distributed simulation software. On the proposed modeling method it is used a top-down approach to decompose the system in basic elements, starting in a high-level abstraction model, and ending with a set of basic models with high level of detail. Then, these models are modeled using Petri net. As well as on object-oriented languages, each model is called class. After that, using a bottom-up approach, these basic models are grouped to generate more complex models: component and application. A set of interfaces, as well as its relationship rules had been defined to guarantee the interaction among these elements. This method was applied to a case study to confirm its effectiveness. About the time synchronization algorithm, the token ring protocol is used as subsidy. An event based distributed simulator was implemented with the purpose to validate the proposed algorithm.
|
164 |
Analyzing software repository data to synthesize and visualize relationships between development artifactsUnknown Date (has links)
As computing technology continues to advance, it has become increasingly difficult to find businesses that do not rely, at least in part, upon the collection and analysis of data for the purpose of project management and process improvement. The cost of software tends to increase over time due to its complexity and the cost of employing humans to develop, maintain, and evolve it. To help control the costs, organizations often seek to improve the process by which software systems are developed and evolved. Improvements can be realized by discovering previously unknown or hidden relationships between the artifacts generated as a result of developing a software system. The objective of the work described in this thesis is to provide a visualization tool that helps managers and engineers better plan for future projects by discovering new knowledge gained by synthesizing and visualizing data mined from software repository records from previous projects. / by James J. Mulcahy. / Thesis (M.S.C.S.)--Florida Atlantic University, 2011. / Includes bibliography. / Electronic reproduction. Boca Raton, Fla., 2011. Mode of access: World Wide Web.
|
165 |
Implementation of an improved embedded SQL for JavaUnknown Date (has links)
The Java Devlopment Environment defines SQLJ as a standard way of embedding the relational database language SQL in the object-oriented programming language Java. Oracle Corporation provides an extension of SQLJ that supports dynamic SQL constructs for the processing of SQL commands that are not completely known at compile time. Unfortunately, these constructs are not sufficient to handle all dynamic situations, so that the programmer has to depend on other SQL embeddings, such as JDBC, in addition to Oracle's SQLJ. In this thesis we implement several extensions to Oracle's SQLJ so that all dynamic situations can be programmed in SQLJ, without resorting to other SQL embeddings. We also add a sub-query based for loop facility, similar to the one provided in Oracle's database programming language PL/SQL, as an improvement over the iterator constructs that SQLJ provides. This thesis discusses the design, development and implementation of these SQLJ extensions, and provided applications that show the utility of these extensions in terms of clarity and power. / by Louis M. Bradley. / Thesis (M.S.C.S.)--Florida Atlantic University, 2012. / Includes bibliography. / Mode of access: World Wide Web. / System requirements: Adobe Reader.
|
166 |
Um modelo de objetos e arquitetura para aplicações distribuídas de realidade virtual. / An object model and architecture for distributed virtual reality applications.Ferraz, Rodrigo Barroca Dias 15 January 2018 (has links)
Técnicas e ferramentas (middlewares para desenvolvimento de aplicações distribuídas são utilizadas no caso dos recursos de um único computador não serem suficientes, ou para atender requisitos de qualidade de serviço, ou mesmo para abranger uma maior quantidade de usuários. A Realidade Virtual é uma das áreas da computação a sua complexidade, se beneficia de tais técnicas e middlewares, seja para proporcionar ambientes mais imersivos e/ou possibilitar a interação de múltiplos usuários. A Realidade Virtual engloba uma ampla diversidade de aplicações, incluindo infraestruturas de alta imersão, jogos multi-jogadores, e simuladores de voo, e cada classe de aplicação têm demandas específicas de distribuição, como escalabilidade, ou requisitos de tempo-real, entre outros. Devido à complexidade e a essa diversidade de aplicações de realidade virtual, as alternativas de middlewares disponíveis atendem requisitos específicos de uma única classe, ou, as genéricas, não fornecem modelos de objetos, comunicação ou execução favoráveis às aplicações de realidade virtual. Esse trabalho tem o objetivo de propor um novo modelo de objetos e arquitetura de um middleware para desenvolvimento de aplicações distribuídas de realidade virtual suficientemente flexível para atender diversas classes de aplicações. O modelo de objetos proposto une os modelos publicador/assinante e requisição/ resposta em uma única entidade similar aos objetos do paradigma de programação orientada a objetos, que, além de empregar conceitos intuitivos para desenvolvedores, possibilita o desacoplamento lógico entre os processos, simplificando o projeto e a implementação das aplicações distribuídas. O principal diferencial desta abordagem é a possibilidade de distribuir a implementação de cada membro dos objetos em diferentes processos. / Techniques and middlewares for distributed application development are used in cases the resources available in a single computer are not enough for the demanded complexity, to meet the required quality of services, or even to cover a greater number of users. The Virtual Reality is one of the computer fields that, because of its complexity, benefits from such techniques and tools, either to provide more immersive virtual environments, or to enable multi-user interaction. The Virtual Reality covers a wide range of applications, including high immersion infrastructures, multiplayer games, and full mission flight simulators. Each application class has specifics distribution demands, such as high scalability, or real-time requirements. Because of complexity and the diversity of virtual reality applications, the distribution solutions available meet the specific requirements of a single class, or the generic ones do not provide object, communication, or execution favorable for virtual reality applications. This work proposes a new model of objects and architecture of a middleware for distributed virtual reality applications that is flexible enough to suit several classes of applications. The proposed object model joins the publisher/subscriber and request/response models to a single logic entity similar to the objects of the object-oriented programming paradigm. Besides being an intuitive concept for developers, this entity enable logical decoupling between processes, simplifying the design and implementation of distributed applications. The main feature of this approach is the possibility to distribute the implementation of each member of the objects in different processes.
|
167 |
Modelagem e simulação distribuída de sistemas produtivos. / Distributed modeling and simulation of productive systems.Fabrício Junqueira 22 June 2006 (has links)
As tecnologias da informação, telecomunicações e mobilidade aliadas às mudanças econômicas e sociais acarretaram uma grande reestruturação da indústria. Entre estas mudanças, verifica-se um maior nível de descentralização e especialização das unidades produtivas, o aumento da automação dos processos e, em conseqüência, uma maior quantidade e complexidade nas interações de seus sub-sistemas. De forma a lidar com esta complexidade e facilitar o estudo e projeto de novos sistemas, faz-se necessário o uso de modelos, que são analisados por exemplo, através de simulação. Entre elas destaca-se a simulação distribuída, a qual trata da evolução de situações/cenários do sistema em computadores fisicamente dispersos, conectados através de uma rede de comunicação, visando, por exemplo, a redução do tempo de simulação, a simulação de grandes modelos(composto por muitos elementos), maior tolerânica a falhas e mesmo a distribuição geográfica. Visando contribuir para uma maior aplicabilidade das técnicas de modelagem e simulação, em especial a distribuída, propõe-se nesta tese (1) um novo método para a modelagem hierárquica de sistemas produtivos; e (2) um novo algoritmo para a sincronização da evolução do tempo de simulação de diferentes simuladores interagindo através de redes de comunicação (LAN, WAN). No método de modelagem proposto, utiliza-se uma abordagem top-down para a decomposição do sistema, partindo-se de um nível de abstração para um de maior detalhamento, permitindo, assim, um maior nível de conhecimento quanto ao comportamento dos elementos e suas interações. No nível de detalhamento desejado, utiliza-se a Rede de Petri na modelagem dos elementos básicos do sistema, que são, assim como na orientação a objetos, denominados classes. Em seguida, através de uma abordagem bottom-up, estes modelos são agrupados, formando modelos mais complexos: componentes e aplicativos. A fim de garantir a interação entre estes elementos, foram definidos um conjunto de interfaces, bem como suas regras de relacionamento. Este método foi aplicado a um estudo de caso para comprovar sua eficácia. No que diz respeito ao algoritmo proposto para sincronizar os tempos de simulação, utiliza-se como subsidio o mecanismo de gerenciamento da transmissão de dados em redes conhecido como Token Ring. Um simulador de eventos, distribuído, foi implementado com a finalidade de validar o algoritmo proposto. / Evolution on the information technology, telecommunications and transport systems, associated to social and economic changes around the world have caused a significative reorganization of the industry. In this context, a high level of decentralization and specialization of the productive units, as well as an increment of the automation level used in productive processes have been verified. It results on the increase of the amount and the complexity of the enterprise subsystems interactions. Modeling techniques are used with simulation to deal with the complexity, to analysis, and to design new productive systems. Among the simulation approaches, distributed simulation is distinguished. It deals with the execution of simulation in physically dispersed computers connected through a LAN (Local Area Network), providing, for example, the reduction of the simulation time, huge simulation models (models with many elements), fault tolerance, as well as geographic dispersion. To contribute for the evolution of modeling and simulation techniques, in special the distributed one, it is proposed on this work: (1) a new method for the hierarchical modeling of productive systems; and (2) a new time synchronization algorithm used to manage the time evolution of a set of distributed simulation software. On the proposed modeling method it is used a top-down approach to decompose the system in basic elements, starting in a high-level abstraction model, and ending with a set of basic models with high level of detail. Then, these models are modeled using Petri net. As well as on object-oriented languages, each model is called class. After that, using a bottom-up approach, these basic models are grouped to generate more complex models: component and application. A set of interfaces, as well as its relationship rules had been defined to guarantee the interaction among these elements. This method was applied to a case study to confirm its effectiveness. About the time synchronization algorithm, the token ring protocol is used as subsidy. An event based distributed simulator was implemented with the purpose to validate the proposed algorithm.
|
168 |
Um modelo de objetos e arquitetura para aplicações distribuídas de realidade virtual. / An object model and architecture for distributed virtual reality applications.Rodrigo Barroca Dias Ferraz 15 January 2018 (has links)
Técnicas e ferramentas (middlewares para desenvolvimento de aplicações distribuídas são utilizadas no caso dos recursos de um único computador não serem suficientes, ou para atender requisitos de qualidade de serviço, ou mesmo para abranger uma maior quantidade de usuários. A Realidade Virtual é uma das áreas da computação a sua complexidade, se beneficia de tais técnicas e middlewares, seja para proporcionar ambientes mais imersivos e/ou possibilitar a interação de múltiplos usuários. A Realidade Virtual engloba uma ampla diversidade de aplicações, incluindo infraestruturas de alta imersão, jogos multi-jogadores, e simuladores de voo, e cada classe de aplicação têm demandas específicas de distribuição, como escalabilidade, ou requisitos de tempo-real, entre outros. Devido à complexidade e a essa diversidade de aplicações de realidade virtual, as alternativas de middlewares disponíveis atendem requisitos específicos de uma única classe, ou, as genéricas, não fornecem modelos de objetos, comunicação ou execução favoráveis às aplicações de realidade virtual. Esse trabalho tem o objetivo de propor um novo modelo de objetos e arquitetura de um middleware para desenvolvimento de aplicações distribuídas de realidade virtual suficientemente flexível para atender diversas classes de aplicações. O modelo de objetos proposto une os modelos publicador/assinante e requisição/ resposta em uma única entidade similar aos objetos do paradigma de programação orientada a objetos, que, além de empregar conceitos intuitivos para desenvolvedores, possibilita o desacoplamento lógico entre os processos, simplificando o projeto e a implementação das aplicações distribuídas. O principal diferencial desta abordagem é a possibilidade de distribuir a implementação de cada membro dos objetos em diferentes processos. / Techniques and middlewares for distributed application development are used in cases the resources available in a single computer are not enough for the demanded complexity, to meet the required quality of services, or even to cover a greater number of users. The Virtual Reality is one of the computer fields that, because of its complexity, benefits from such techniques and tools, either to provide more immersive virtual environments, or to enable multi-user interaction. The Virtual Reality covers a wide range of applications, including high immersion infrastructures, multiplayer games, and full mission flight simulators. Each application class has specifics distribution demands, such as high scalability, or real-time requirements. Because of complexity and the diversity of virtual reality applications, the distribution solutions available meet the specific requirements of a single class, or the generic ones do not provide object, communication, or execution favorable for virtual reality applications. This work proposes a new model of objects and architecture of a middleware for distributed virtual reality applications that is flexible enough to suit several classes of applications. The proposed object model joins the publisher/subscriber and request/response models to a single logic entity similar to the objects of the object-oriented programming paradigm. Besides being an intuitive concept for developers, this entity enable logical decoupling between processes, simplifying the design and implementation of distributed applications. The main feature of this approach is the possibility to distribute the implementation of each member of the objects in different processes.
|
169 |
An investigation of the use of object-oriented models in requirements engineering practiceDawson, Linda Louise, 1954- January 2001 (has links)
Abstract not available
|
170 |
Translation of on object role model schema into the formal language ZRavalli, Gilbert, gravalli@swin.edu.au January 2005 (has links)
In the development of information systems for business, structured approaches are widely used in practice. Structured approaches provide a prescription and guidelines for how to go about the process of developing an information system, are relatively easy to learn and provide tools which are well suited to their task. However, the products of structured approaches are sometimes seen to be vague and imprecise since requirements are written using natural language or represented in the form of models which do not have a formal foundation. This vagueness or ambiguity can be the source of problems later in development of the information system. A possible solution to this is to represent requirements using formal methods since these are seen as precise and unambiguous. However, formal methods are typically only a mathematical language for representing requirements. They are often regarded as difficult to learn and use. Even though formal methods of one sort or another have been in existence for many years they are not popular and appear unlikely to become popular in the future.
One possible approach to providing the advantages of structured approaches and formal methods is to provide translation procedures from the products of structured approaches to a formal description in a suitable formal language. The work in this thesis follows this theme and is aimed at the creation of a translation procedure from an Object Role Model (ORM) schema to a Z specification. An object role model schema is the end product of a process called the Natural Language Information Analysis Method (NIAM) which is used to produce an information model for an information system. NIAM is a method which has been used successfully in industry since the mid 1970s and continues to be used today.
This thesis provides a translation procedure from ORM to Z which is less arbitrary and more comprehensive than previous conversion procedures in the literature. It establishes a systematic method for
(i) choosing suitable types and variables for a Z specification and
(ii) predicates that express all the standard constraints available in ORM modelling.
The style of representation in Z preserves ORM�s concepts in a way that aids traceability and validation. The natural language basis of ORM, namely the use of elementary facts, is preserved. Furthermore, an ORM schema differentiates between abstract concepts and the means by which these concepts are represented symbolically and this thesis provides a representation in Z that maintains the distinction between conceptual objects and their symbolic representation. Identification schemes of entity types are also translated into the Z specification but it is left as an option in the translation procedure.
Guiding and evaluating the work conducted here are a published set of criteria for the evaluation of a conceptual schema. These have helped in making decisions regarding the translation procedure and for assessing my work and that of others.
|
Page generated in 0.2513 seconds