34 research outputs found
The JBoss Integration Plug-in for IntelliJ IDEA, Part 1
The IntelliJ IDEA is an Integrated Development Environment (IDE) used for Java development. It is known for its strong refactoring capabilities. It is a closed-source, proprietary product, which is used in both educational and industrial settings. IntelliJ functionality is extended by a set of open APIs that third-party developers can use to integrate their solutions by the development of plug-ins
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
The JBoss Integration Plug-in for IntelliJ IDEA, Part 4
Without an automated environment, deployment is often a painful process resulting in developers spending a great deal of time performing application deployment tasks. Most organizations strive for better management of this critical phase in the development cycle
The JBoss Integration Plug-in for IntelliJ IDEA, Part 2
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)
Visually localizing design problems with disharmony maps
Assessing the quality of software design is difficult, as “design” is expressed through guidelines and heuristics, not rigorous rules. One successful approach to assess design quality is based on de-tection strategies, which are metrics-based composed logical condi-tions, by which design fragments with specific properties are de-tected in the source code. Such detection strategies, when exe-cuted on large software systems usually return large sets of arti-facts, which potentially exhibit one or more “design disharmonies”, which are then inspected manually, a cumbersome activity. In this article we present disharmony maps, a visualization-based approach to locate such flawed software artifacts in large systems. We display the whole system using a 3D visualization technique based on a city metaphor. We enrich such visualizations with the results returned by a number of detection strategies, and thus render both the static structure and the design problems that affect a subject system. We evaluate our approach on a number of open-source Java systems and report on our findings
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