918 resultados para Software testing. Problem-oriented programming. Teachingmethodology
Resumo:
Os limites entre os domínios do software e do hardware são cada vez mais ténues, pelo que técnicas inicialmente experimentadas no software têm vindo a ser gradualmente aplicadas no hardware. Este artigo pretende descrever o estado actual da utilização da tecnologia de programação orientada por objectos no projecto de hardware digital. São analisadas as vantagens e implicações quando se introduzem conceitos ligados à tecnologia orientada por objectos em projectos de hardware e é apresentado um exemplo utilizando uma das extensões orientadas por objectos da linguagem VHDL.
Resumo:
La programación concurrente es una tarea difícil aún para los más experimentados programadores. Las investigaciones en concurrencia han dado como resultado una gran cantidad de mecanismos y herramientas para resolver problemas de condiciones de carrera de datos y deadlocks, problemas que surgen por el mal uso de los mecanismos de sincronización. La verificación de propiedades interesantes de programas concurrentes presenta dificultades extras a los programas secuenciales debido al no-determinismo de su ejecución, lo cual resulta en una explosión en el número de posibles estados de programa, haciendo casi imposible un tratamiento manual o aún con la ayuda de computadoras. Algunos enfoques se basan en la creación de lenguajes de programación con construcciones con un alto nivel de abstración para expresar concurrencia y sincronización. Otros enfoques tratan de desarrollar técnicas y métodos de razonamiento para demostrar propiedades, algunos usan demostradores de teoremas generales, model-checking o algortimos específicos sobre un determinado sistema de tipos. Los enfoques basados en análisis estático liviano utilizan técnicas como interpretación abstracta para detectar ciertos tipos de errores, de una manera conservativa. Estas técnicas generalmente escalan lo suficiente para aplicarse en grandes proyectos de software pero los tipos de errores que pueden detectar es limitada. Algunas propiedades interesantes están relacionadas a condiciones de carrera y deadlocks, mientras que otros están interesados en problemas relacionados con la seguridad de los sistemas, como confidencialidad e integridad de datos. Los principales objetivos de esta propuesta es identificar algunas propiedades de interés a verificar en sistemas concurrentes y desarrollar técnicas y herramientas para realizar la verificación en forma automática. Para lograr estos objetivos, se pondrá énfasis en el estudio y desarrollo de sistemas de tipos como tipos dependientes, sistema de tipos y efectos, y tipos de efectos sensibles al flujo de datos y control. Estos sistemas de tipos se aplicarán a algunos modelos de programación concurrente como por ejemplo, en Simple Concurrent Object-Oriented Programming (SCOOP) y Java. Además se abordarán propiedades de seguridad usando sistemas de tipos específicos. Concurrent programming has remained a dificult task even for very experienced programmers. Concurrency research has provided a rich set of tools and mechanisms for dealing with data races and deadlocks that arise of incorrect use of synchronization. Verification of most interesting properties of concurrent programs is a very dificult task due to intrinsic non-deterministic nature of concurrency, resulting in a state explosion which make it almost imposible to be manually treat and it is a serious challenge to do that even with help of computers. Some approaches attempts create programming languages with higher levels of abstraction for expressing concurrency and synchronization. Other approaches try to develop reasoning methods to prove properties, either using general theorem provers, model-checking or specific algorithms on some type systems. The light-weight static analysis approach apply techniques like abstract interpretation to find certain kind of bugs in a conservative way. This techniques scale well to be applied in large software projects but the kind of bugs they may find are limited. Some interesting properties are related to data races and deadlocks, while others are interested in some security problems like confidentiality and integrity of data. The main goals of this proposal is to identify some interesting properties to verify in concurrent systems and develop techniques and tools to do full automatic verification. The main approach will be the application of type systems, as dependent types, type and effect systems, and flow-efect types. Those type systems will be applied to some models for concurrent programming as Simple Concurrent Object-Oriented Programming (SCOOP) and Java. Other goals include the analysis of security properties also using specific type systems.
Resumo:
This is a study of a state of the art implementation of a new computer integrated testing (CIT) facility within a company that designs and manufactures transport refrigeration systems. The aim was to use state of the art hardware, software and planning procedures in the design and implementation of three CIT systems. Typical CIT system components include data acquisition (DAQ) equipment, application and analysis software, communication devices, computer-based instrumentation and computer technology. It is shown that the introduction of computer technology into the area of testing can have a major effect on such issues as efficiency, flexibility, data accuracy, test quality, data integrity and much more. Findings reaffirm how the overall area of computer integration continues to benefit any organisation, but with more recent advances in computer technology, communication methods and software capabilities, less expensive more sophisticated test solutions are now possible. This allows more organisations to benefit from the many advantages associated with CIT. Examples of computer integration test set-ups and the benefits associated with computer integration have been discussed.
Resumo:
En el projecte s’ha dut a terme un estudi sobre la tecnologia que aporten les targetes gràfiques (GPU) dins l’àmbit de programació d’aplicacions que tradicionalment eren executades en la CPU o altrament conegut com a GPGPU. S’ha fet una anàlisi profunda del marc tecnològic actual explicant part del maquinari de les targetes gràfiques i de què tracta el GPGPU. També s’han estudiat les diferents opcions que existeixen per poder realitzar els tests de rendiment que permetran avaluar el programari, quin programari està dissenyat per ser executat amb aquesta tecnologia i quin és el procediment a seguir per poder utilitzar-los. S’han efectuat diverses proves per avaluar el rendiment de programari dissenyat o compatible d’executar en la GPU, realitzant taules comparatives amb els temps de còmput. Un cop finalitzades les diferents proves del programari, es pot concloure que no tota aplicació processada en la GPU aporta un benefici. Per poder veure millores és necessari que l’aplicació reuneixi una sèrie de requisits com que disposi d’un elevat nombre d’operacions que es puguin realitzar en paral lel, que no existeixin condicionants per a l’execució de les operacions i que sigui un procés amb càlcul aritmètic intensiu.
Resumo:
L'objectiu és una aplicació que permeti realitzar el càlcul del volum de terres disponibles en el subsòl d'un àrea seleccionada. L'objectiu final del projecte serà crear un Sistema d'Informació Geogràfica SIG que ajudi a valorar quines parcel¿les de l'àrea seleccionada són les que disposen de més volum de terres per iniciar la seva explotació. Per a això, es disposa del programari gvSIG i les seves extensions (SEXTANTE) i de tota la informació que es pugui obtenir sobre els SIG, Cartografia, Geodèsia... Per dur a terme aquest projecte es necessita tenir experiència en Bases de dades, Programació Orientada a Objectes i seria recomanable tenir coneixements sobre Enginyeria del Programador. El projecte se centrarà en la utilització de gvSIG, com un exemple concret de programari SIG de lliure accés, solució desenvolupada per la ¿Conselleria d%o2019Obris Publiquis de la Generalitat Valenciana¿. Una part d'aquest projecte consistirà a avaluar aquest programari. El resultat final serà l'obtenció dels coneixements necessaris per poder treballar amb dades espacials a més d'una aplicació SIG per al càlcul del volum de terres d'un àrea seleccionada.
Resumo:
Aquest treball consisteix en l'anàlisi i disseny d'una aplicació per la gestió de reserves d'un complex de 39 apartaments, anomenat AIDA
Resumo:
Aquest treball de final de carrera pretén cobrir una necessitat divulgativa del món de l'espeleologia, proporcionant al col·lectiu espeleològic una aplicació basada en web que permeti publicar, de forma cooperativa, ressenyes de cavitats incorporant dades textuals, fotografies, topografies i mapes d'ubicació.El projecte s'ha desenvolupat com a Treball de Final de Carrera de l'àrea J2EE de l'Enginyeria Tècnica en Informàtica de Gestió. La seva implementació, per tant, està basada en Programació Orientada a Objectes amb llenguatge Java i tecnologies J2EE.
Resumo:
Trabajo Fin de Carrera de J2EE. El proyecto Naoru está pensado para dar de alta, a usuarios en el sistema con diferentes roles y poder tener un historial de compras y reparaciones.
Resumo:
En la Universitat de Guadalajara es desenvolupa un projecte d'investigació que contempla la creació d'un model de programació que s'ha denominat Context Object Oriented Programming (COOP). En ell s'integren els enfocaments Orientats a Objectes, Orientats a Rols i Programació Dirigida per Esdeveniments. El present projecte consisteix desenvolupar el llenguatge de programació Mophoua que soporta aquest modelo.
Resumo:
El projecte que es presenta permet analitzar els avantatges i inconvenients d’una programació orientada a hardware i d’una programació orientada a software a partir del desenvolupament de dos dissenys, un cronòmetre i un freqüencímetre en cadascun dels modes de programació. Donat que en les dues aplicacions es requereix alta precisió de temps (μs) i flexibilitat en el control, la solució final que es proposa és un disseny “mixt” amb dos mòduls hardware específics (cronòmetre i freqüencímetre) integrats en un NIOS/CPU sobre una FPGA. Els dos mòduls es controlen per software sobre un sistema Linux empotrat (μCLinux).
Resumo:
En este proyecto se incluyen las etapas de análisis previo, análisis de requerimientos y diseño técnico de un sistema de apoyo a la diversificación en un IES, siguiendo los métodos y técnicas descritos en el ciclo de vida en cascada o ciclo de vida clásico del software. Puesto que se llegará hasta la especificación del diseño de la aplicación, esta documentación servirá de base al programador del software para implementar la aplicación, según las indicaciones y necesidades especificadas.
Resumo:
En aquest projecte es vol implementar una llibreria en Java, que proporcioni leseines necessàries per a crear diagrames i esquemes. Es vol proporcionar a la llibreria unconjunt d’objectes bàsics, també mètodes i funcionalitats suficients per a gestionaraquests objectes. Per altra part, es vol implementar una aplicació per a dissenyar diagrames Entitat-Relació que utilitzi aquesta llibreria
Resumo:
Statistical computing when input/output is driven by a Graphical User Interface is considered. A proposal is made for automatic control ofcomputational flow to ensure that only strictly required computationsare actually carried on. The computational flow is modeled by a directed graph for implementation in any object-oriented programming language with symbolic manipulation capabilities. A complete implementation example is presented to compute and display frequency based piecewise linear density estimators such as histograms or frequency polygons.
Resumo:
Creació d'un sistema per al control d'una línia de producció des del punt de vista de l'enginyeria del programari.
Resumo:
Tämän diplomityön tavoitteena oli kehittää menetelmiä ja ohjeitataajuusmuuttajan sulautetun ohjelmiston kehityksen aikaiseen testaukseen. Soveltuvia menetelmiä etsittiin tutkimalla laajasti kirjallisuutta sekä selvittämälläyrityksen testauskäytäntöä. Tutkittuja kirjallisuudesta löytyneitä menetelmä olivat testauskehykset, simulointi ja staattinen sekä automaattinen testaus. Kirjallisuudesta etsittiin myös menetelmiä, joiden avulla testausprosessia voidaan helpottaa tai muuten parantaa. Tällaisista menetelmistä tutkittiin muun muassa testidatan valintaa, testauslähtöistä kehitystä sekä testattavuuden parantamista. Lisäksi selvitettiin uudelleenkäytettävien testien ohjelmointiin soveltuvia ohjelmointikieliä. Haastatteluiden ja dokumentaation avulla saatiin hyvä käsitys yrityksessä vallitsevasta testauskäytännöstä sekä sen ongelmakohdista. Testauksen ongelmiksi havaittiin testausprosessin järjestelmällisyyden puute sekä tarve suunnittelijoiden testauskoulutukseen. Testausprosessin parantamiseksi esitetään moduulitestauskehyksen käyttöönottoa. Lisäksi suunnittelijoiden testauskoulutuksella arvioidaan olevan suuri vaikutus koko testausprosessiin. Testitapausten suunnitteluun esitetään menetelmiä, joiden avulla voidaan suunnitella kattavampia testejä.