Mota, Bruna, Ana Carvalho, Maria Isabel Gomes, and Ana Paula Barbosa-povoa. "
Design and planning of sustainable supply chains."
Sustainability of Products, Processes and Supply Chains: Theory and Applications. Ed. Fengqi You. Amsterdam: Elsevier, 2015. 333-353.
Moreira, C., S. Lopes, and H. Rocha Dos jogos à aprendizagem. Atas do ProfMat 2015. Évora, Portugal: APM, 2015.
AbstractNeste texto apresentamos os jogos no ensino da matemática como uma forma de aprendizagem de conteúdos e não apenas como um recurso que cada professor pode usar nas suas aulas para tornar a aula diferente. Analisamos dois jogos desenvolvidos por nós e que utilizámos com alunos dos 7.º e 10.º anos de escolaridade, procurando não só apresentar os jogos, mas também aspetos da sua implementação em sala de aula, ponderando o contributo que trouxeram à aprendizagem dos alunos.
Aprender matemática depende de um grande número de variáveis, o que torna o ensino um processo complexo, pois é necessário que se desenvolva o raciocínio lógico, além de estimular o desenvolvimento das mais variadas capacidades transversais, tais como o pensamento autónomo, a criatividade, o sentido de estratégia e a capacidade de resolver problemas.
Duas das dificuldades frequentemente encontradas pelos professores passam pela falta de motivação para a aprendizagem e pelo desinteresse pela Matemática. A solução para estes problemas pode passar pela utilização de jogos para complementar o estudo, mas também para a aquisição de novos conteúdos. No entanto, apenas a implementação dos jogos não basta. O papel do professor é de extrema importância e a planificação e orientação da aula são fundamentais para que se alcancem os objetivos pretendidos.
Fiedor, Jan, Zdenek Letko, João M. Lourenço, and Tomas Vojnar. "
Dynamic Validation of Contracts in Concurrent Code."
Proceedings of the Fifteenth International Conference on Computer Aided Systems Theory (EUROCAST'15). Eds. Alexis Quesada-Arencibia, José Carlos Rodríguez, Roberto Moreno-Díaz jr., and Roberto Moreno-Díaz. Las Palmas de Gran Canaria, Spain: Universidad de Las Palmas de Gran Canaria, 2015.
AbstractMulti-threaded programs allow one to achieve better performance by doing a lot of work in parallel using multiple threads. Such parallel programs often contain code blocks that a thread must execute atomically, i.e., with no interference from the other threads of the program. Failing to execute these code blocks atomically leads to errors known as atomicity violations. However, frequently it not obvious to tell when a piece of code should be executed atomically, especially when that piece of code contains calls to some third-party library functions, about which the programmer has little or no knowledge at all. One solution to this problem is to associate a contract with such a library, telling the programmer how the library functions should be used, and then check whether the contract is indeed respected. For contract validation, static approaches have been proposed, with known limitations on precision and scalability. In this paper, we propose a dynamic method for contract validation, which is more precise and scalable than static approaches.
Vale, Tiago, Ricardo J. Dias, João A. Silva, and João M. Lourenço. "
Execução concorrente e determinista de transações."
Proceedings of INForum Simpósio de Informática. INForum 2015. Covilhã, Portugal 2015.
AbstractNeste artigo apresentamos um protocolo de controlo de concorrência que garante que a execução concorrente de transações é equivalente à sua execução sequencial por uma ordem predefinida. Isto permite executar programas que usam transações de forma determinista. O protocolo (1) permite, pela primeira vez, a execução determinista de programas que usam memória transacional por hardware; e (2) garante a execução determinista de programas que usam memória transacional por software com um desempenho claramente superior ao estado da arte.
Dias, Ricardo J., Tiago M. Vale, and João M. Lourenço. "
Framework Support for the Efficient Implementation of Multi-version Algorithms."
Transactional Memory. Foundations, Algorithms, Tools, and Applications. Eds. Rachid Guerraoui, and Paolo Romano. Vol. 8913. Lecture Notes in Computer Science, 8913. Springer International Publishing, 2015. 166-191.
AbstractSoftware Transactional Memory algorithms associate metadata with the memory locations accessed during a transactions lifetime. This metadata may be stored in an external table and accessed by way of a function that maps the address of each memory location with the table entry that keeps its metadata (this is the out-place or external scheme); or alternatively may be stored adjacent to the associated memory cell by wrapping them together (the in-place scheme). In transactional memory multi-version algorithms, several versions of the same memory location may exist. The efficient implementation of these algorithms requires a one-to-one correspondence between each memory location and its list of past versions, which is stored as metadata. In this chapter we address the matter of the efficient implementation of multi-version algorithms in Java by proposing and evaluating a novel in-place metadata scheme for the Deuce framework. This new scheme is based in Java Bytecode transformation techniques and its use requires no changes to the application code. Experimentation indicates that multi-versioning STM algorithms implemented using our new in-place scheme are in average 6 × faster than when implemented with the out-place scheme.