27 research outputs found
The JBoss Integration Plug-in for IntelliJ IDEA, Part 3
This column builds upon our project by describing how to add a servlet for accessing the EJB methods implemented previously
JxAppDev framework for hybrid applications
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
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
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
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
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
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
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