28 research outputs found

    The JBoss Integration Plug-in for IntelliJ IDEA, Part 2

    Get PDF
    This paper describes how to add a stateless session bean. It is stateless because we are not concerned with remembering values of attributes between successive calls from the client. This paper also demonstrates that our session bean can be either remote (i.e., a bean with a remote interface) or it can be local (a bean with a local interface)

    The JBoss Integration Plug-in for IntelliJ IDEA, Part 3

    Get PDF
    This column builds upon our project by describing how to add a servlet for accessing the EJB methods implemented previously

    Metadata invariants: Checking and inferring metadata coding conventions

    Full text link

    JxAppDev framework for hybrid applications

    Get PDF
    Dissertação de mestrado em Computer ScienceIn modern days, it becomes more and more common for software solutions to focus on mobile and web technologies, therefore the current desktop market has been shrinking. Due to the big impact that web technologies are having on the market and user’s daily basis it has become impossible for developers to neglect this evolution. Nevertheless, in some cases it is difficult to justify the development of some web applications since the benefits are to small and the costs to high. Due to this problem and some other small inconveniences, there are some emerging technologies that try to close the gap between desktop and web applications by trying to combine the best of both worlds. There are some well-known technologies such as Java Applets, which are mainly Java applications that can be executed on the browser. Even though these technologies are very interesting and in some specific cases very useful, companies avoid taking this path since this kind of software applications raise some problems, which are making sure that these new technologies are abandoned and forgotten (e.g. some security problems with regard to plugin installation). With this project, we intend to create a Framework, which main goal is to ease the hybrid application development. This framework allows users to develop native Java SE applications, that can be accessed as normal Desktop applications, but at the same time it is possible to access the same content through a regular Web Browser, using common well-known technologies such as HTML, JavaScript and CSS. With this solution, it is possible to avoid high costs on Web application development, and avoid other small problems such as security problems when installing plugins that can be found in the current existing solutions. This way it is possible to develop a single Desktop application that is reusable on the Browser if needed. The idea is not to allow the user to create a new application that can be accessed on both platforms, but on the contrary it aims Java applications that have already been developed or that will be developed with no intention of making them accessible on the Web, but at some point the urge to port the application appears and the user won’t need to rebuild everything from scratch, but he will simply need to invest some time developing the new User Interface for the Web version that he wants to provide.Nos dias de hoje é cada vez mais comum as soluções de software que se encontram no mercado serem feitas à volta de tecnologias mobile ou web, o que tem criado uma diminuição no mercado de aplicações nativas desktop. Devido ao grande impacto que as tecnologias web têm tido no mercado e nos utilizadores, tem sido impossível para os desenvolvedores de aplicações, negligenciar esta evolução. Mesmo assim, em alguns casos específicos torna-se muito difícil justificar o desenvolvimento de aplicações web, sendo que os benefícios obtidos são muito baixos e os gastos de produção muito altos. Devido a este tipo de problemas entre outros pequenos detalhes, tem surgido novas tecnologias que tentam encurtar a diferença entre aplicações desktop e web, tentando combinar o melhor dos dois mundos. Existem algumas tecnologias muito conhecias tais como Java Applets, que são no fundo aplicações Java que podem ser executadas dentro de um browser. Mesmo estas tecnologias sendo muito interessantes e até mesmo muito úteis em certos casos, grandes companhias tendem a evitar o uso destas devido a alguns problemas que têm aparecido ao longo do tempo e que podem por em jogo a segurança e duração de vida dessas aplicações. Um grande problema encontrado neste ramo, são falhas de segurança na instalação de plugins, que esta a fazer com que este tipo de tecnologias esteja a ser abandonada. Com este projeto criamos uma Framework que permite e facilita o desenvolvimento de aplicações híbridas. Esta Framework permite que os utilizadores desenvolvam aplicações em Java SE, que podem ser acedidas como aplicações normais, desktop, mas ao mesmo tempo é possível aceder a algum do conteúdo dessas aplicações através de um simples Navegador de Internet. Isto tudo criando uma nova camada composta de tecnologias Web tais como HTML5, CSS e JavaScript sem ter de recriar a aplicação. Com esta solução é possível evitar grandes custos no desenvolvimento de novas aplicações Web, e ao mesmo tempo evitar pequenos problemas de segurança como os que já foram mencionados antes em soluções já existentes. Desta forma é possível criar aplicações nativas que podem ser reutilizadas como aplicações Web caso necessário. A ideia por trás deste projeto não se concentra em permitir criar novas aplicações híbridas, sendo que já se encontram soluções para este tipo de problemas. Pelo contrário o principal problema que tentamos resolver com esta solução é permitir a aplicações Java que já existem ou que estão a ser desenvolvidas como simples aplicações nativas, possam no futuro ser portadas para o domínio Web sem que seja necessário a recriação de uma versão completa Web, e ao mesmo tempo limitar o custo desse processo a um mínimo, requerendo apenas que uma nova UI para a versão Web seja desenvolvida

    PEMBUATAN GAME ‘MATH TASK’ DENGAN METODE FUZZY TSUKAMOTO

    Get PDF
    Game edukasi merupakan jenis game yang memuat unsur-unsur edukasi dengan tujuan untuk meningkatkan pengetahuan pemain. Kebutuhan akan game edukasi menjadi semakin besar mengingat game yang beredar dan dinikmati publik mayoritas masih sebatas game biasa yang tidak memuat unsur pendidikan, sehingga hal ini yang melatar belakangi pembangunan game ‘Math Task’. Game ini adalah game edukasi yang berhubungan dengan operasi-operasi dasar yang ada pada matematika. Penelitian ini mencoba untuk menerapkan metode fuzzy Tsukamoto untuk menentukan skor yang didapat pemain saat menjawab sebuah soal yang diberikan. Pemain akan mendapatkan skor dengan rentang tertentu berdasarkan jenis subgame yang dimainkan dan menggunakan dua variable untuk menentukan nilai fuzzy yaitu variable kombo dan variable waktu. Pengembangan sistem ini menggunakan bahasa pemerograman Java dan menggunakan framewok Libgdx sebagai framework pengembangan sistem

    An Introduction to Software Ecosystems

    Full text link
    This chapter defines and presents different kinds of software ecosystems. The focus is on the development, tooling and analytics aspects of software ecosystems, i.e., communities of software developers and the interconnected software components (e.g., projects, libraries, packages, repositories, plug-ins, apps) they are developing and maintaining. The technical and social dependencies between these developers and software components form a socio-technical dependency network, and the dynamics of this network change over time. We classify and provide several examples of such ecosystems. The chapter also introduces and clarifies the relevant terms needed to understand and analyse these ecosystems, as well as the techniques and research methods that can be used to analyse different aspects of these ecosystems.Comment: Preprint of chapter "An Introduction to Software Ecosystems" by Tom Mens and Coen De Roover, published in the book "Software Ecosystems: Tooling and Analytics" (eds. T. Mens, C. De Roover, A. Cleve), 2023, ISBN 978-3-031-36059-6, reproduced with permission of Springer. The final authenticated version of the book and this chapter is available online at: https://doi.org/10.1007/978-3-031-36060-

    Olimpiada FDI: una suite de juegos educativos con ranking y medallero de la FDI

    Get PDF
    El proyecto OlimpiadaFDI ha consistido en el desarrollo de una plataforma gamificada de juegos educativos,centrada en el ámbito de la Ingeniería Informática. La visión del proyecto es la creación de una plataforma inspirada en Steam o Xbox Live en la que distintos desarrolladores pueden contribuir distintos juegos, pero las puntuaciones, insignias y logros conseguidos dentro de cada juego se asocian al perfil de cada usuario. Además, la plataforma está concebida para soportar juegos de distintas plataformas (e.g. HTML5, Android, C++, Java) que podrían ser implementadas por distintos equipos de desarrollo. De cara a conseguir estos objetivos, el desarrollado ha consistido en la realización de la infraestructura de una plataforma de distribución de juegos educativos y servicios, tanto para los juegos como para los usuarios. Esta plataforma se basa en una página web que nos permite realizar la gestión de los usuarios, además de gestionar las puntuaciones y logros de cada usuario, la creación de grupos de usuario y la consulta de rankings de puntuación. Para completar se ha desarrollado un amplio conjunto de juegos a modo de implementaciones de referencia, mostrando como distintos juegos de distintas plataformas podrían coexistir dentro del ecosistema de juegos propuesto por OlimpiadaFDI. Tanto los juegos como el portal web se comunican con un backend de servicios REST que lleva la gestión de usuarios, insignias, grupos y puntuaciones, dando lugar a un sistema modular y extensible. Esto supone además que la plataforma quedará abierta para que otros desarrolladores puedan aprovecharse de ella e incluir sus propios juegos

    Virtual learning process environment (VLPE): a BPM-based learning process management architecture

    Get PDF
    E-learning systems have significantly impacted the way that learning takes place within universities, particularly in providing self-learning support and flexibility of course delivery. Virtual Learning Environments help facilitate the management of educational courses for students, in particular by assisting course designers and thriving in the management of the learning itself. Current literature has shown that pedagogical modelling and learning process management facilitation are inadequate. In particular, quantitative information on the process of learning that is needed to perform real time or reflective monitoring and statistical analysis of students’ learning processes performance is deficient. Therefore, for a course designer, pedagogical evaluation and reform decisions can be difficult. This thesis presents an alternative e-learning systems architecture - Virtual Learning Process Environment (VLPE) - that uses the Business Process Management (BPM) conceptual framework to design an architecture that addresses the critical quantitative learning process information gaps associated with the conventional VLE frameworks. Within VLPE, course designers can model desired education pedagogies in the form of learning process workflows using an intuitive graphical flow diagram user-interface. Automated agents associated with BPM frameworks are employed to capture quantitative learning information from the learning process workflow. Consequently, course designers are able to monitor, analyse and re-evaluate in real time the effectiveness of their chosen pedagogy using live interactive learning process dashboards. Once a course delivery is complete the collated quantitative information can also be used to make major revisions to pedagogy design for the next iteration of the course. An additional contribution of this work is that this new architecture facilitates individual students in monitoring and analysing their own learning performances in comparison to their peers in a real time anonymous manner through a personal analytics learning process dashboard. A case scenario of the quantitative statistical analysis of a cohort of learners (10 participants in size) is presented. The analytical results of their learning processes, performances and progressions on a short Mathematics course over a five-week period are also presented in order to demonstrate that the proposed framework can significantly help to advance learning analytics and the visualisation of real time learning data

    Web collaboration for software engineering

    Get PDF
    Tese de mestrado integrado. Engenharia Informática e Computação. Faculdade de Engenharia. Universidade do Porto. 200

    Development of a static analysis tool to find securty vulnerabilities in java applications

    Get PDF
    Thesis (Master)--Izmir Institute of Technology, Computer Engineering, Izmir, 2010Includes bibliographical references (leaves: 57-60)Text in English Abstract: Turkish and Englishix, 77 leavesThe scope of this thesis is to enhance a static analysis tool in order to find security limitations in java applications. This will contribute to the removal of some of the existing limitations related with the lack of java source codes. The generally used tools for a static analysis are FindBugs, Jlint, PMD, ESC/Java2, Checkstyle. In this study, it is aimed to utilize PMD static analysis tool which already has been developed to find defects Possible bugs (empty try/catch/finally/switch statements), Dead code (unused local variables, parameters and private methods), Suboptimal code (wasteful String/StringBuffer usage), Overcomplicated expressions (unnecessary if statements for loops that could be while loops), Duplicate code (copied/pasted code means copied/pasted bugs). On the other hand, faults possible unexpected exception, length may be less than zero, division by zero, stream not closed on all paths and should be a static inner class cases were not implemented by PMD static analysis tool. PMD performs syntactic checks and dataflow analysis on program source code.In addition to some detection of clearly erroneous code, many of the .bugs. PMD looks for are stylistic conventions whose violation might be suspicious under some circumstances. For example, having a try statement with an empty catch block might indicate that the caught error is incorrectly discarded. Because PMD includes many detectors for bugs that depend on programming style, PMD includes support for selecting which detectors or groups of detectors should be run. While PMD.s main structure was conserved, boundary overflow vulnerability rules have been implemented to PMD
    corecore