We're sorry but this page doesn't work properly without JavaScript enabled. Please enable it to continue.
Feedback

Software Ecosystem for VIVO's Continuous Development: i18n Development Use Case

00:00

Formal Metadata

Title
Software Ecosystem for VIVO's Continuous Development: i18n Development Use Case
Title of Series
Number of Parts
22
Author
License
CC Attribution - NonCommercial 3.0 Germany:
You are free to use, adapt and copy, distribute and transmit the work or content in adapted or unchanged form for any legal and non-commercial purpose as long as the work is attributed to the author in the manner specified by the author or licensor.
Identifiers
Publisher
Release Date
Language

Content Metadata

Subject Area
Genre
Abstract
The internationalization (i18n) of a knowledge-based platform is a transdisciplinary team project requiring skills in computer science, language translation, project management and ontology modeling. Experience leads us to conclude that the i18n process of VIVO is divided into 5 generic steps: 1) compile/deploy and run VIVO; 2) test and research problems related to i18n; 3) Locate in the source code the problematic files related to the detected problems; 4) Apply patches to the concerned files; 5) Refurbish VIVO indexes and data tables and return to 1. The activity requires high-performance tools adapted to the i18n cycle with a level of user-friendliness that supports a rapid learning curve for each team member. In the context of the internationalization of VIVO for French Canada (fr_CA), the Université du Québec à Montréal (UQAM) has developed an ecosystem of integrated tools that are useful for the realization of the use cases that have been identified for the execution of the i18n cycle that is: ontology engineering, ontology editing, file editing (ftl, Java, properties), Java programming for the development of J2EE webApp, version control with Git, text search in VIVO source files, automation of the compiling process, configuration and installation of a local VIVO server and its dependencies (Tomcat, Solr, TDB, etc.). In this talk we will present the three main components of our Ecosystem: a) UQAM-DEV ("Environnement de Developpement de VIVO") which is based on the Eclipse integration with the ontological engineering tool TopBraid Composer Free Edition and customized by the aggregation of appropriate plug-ins; b) UQAM-VIVO-installer, an installer inspired from the original VIVO installer that is customized in UQAM-DEV for the installation of a VIVO i18n version; c) vivo-regression-test, a product integrated with vivo-community, which is a Selenium test bench used to validate the integrity of additions to VIVO i18n against VIVO which is currently in release. Although UQAM-DEV was developed as part of the i18n project, we believe that this tool will be appropriate for the future VIVO developments that we wish to achieve. The presentation will be completed by a few demonstrations ... "in-VIVO!".
Computer animation
Computer animation
Computer animation
Computer animation
Computer animationProgram flowchart
Computer animation
Computer animation
Computer animation
Computer animation
Computer animation
Computer animation
Computer animation
Computer animation
Computer animation
Computer animation
Computer animation
Computer animation
Computer animation
Computer animation
Computer animation
Computer animation
Computer animation
Computer animation
Computer animation
Transcript: English(auto-generated)
Okay, I would like to thank the entire UCAM team for participating in the development of this tool, particularly through their patience to accepting to work with an unstable environment and in the development process.
I have also a special thanks to Pierre Robert, who was in fact the first guinea pig to use this tool and that has a project manager, he accepted to take the risk to invest the time, need to implement and construct the tool. So the proposal of this presentation is introducing the UCAM development environment for Vivo,
calling UCAM Dev, outline the i18n development process, describe the component of the menus case of the UCAM Dev and making a demonstration of the UCAM Dev. We hope that at the end of the presentation, the listener of the conference will have
sufficient understanding to be able to be autonomous in the use of the tool. The development of the UCAM Dev was in response to a need to develop the internationalization of the Vivo for Canadian French. The tool was intended to enable non-computer scientists such as linguists and librarians
to perform operations normally performed by a computer specialist such as code modification, recompilation and execution in a user friendly and intuitive manner. We have empirically established that Vivo internationalization process is in fact
in five steps. At the beginning of the cycle, the first step is to compile, deploy and run Vivo instance in the local computer. The second step is to test and identify problems related to the internationalization. In every work properly, this ends the development cycle.
When the problem is identified, it is necessary to search in the code and find the problem. This involves going a lot of pattern matching search activities. In fourth place comes the stage to correcting the problem. Once the problem has been identified, the professional must edit a concern file and
make the correction. In step five, certain database needs to be initialized depending of the type of the corrections made. Then back to step one and recompile the running Vivo. As illustrated here, UcamDev was designed to follow ontologists, project managers, translators
and software engineers to take over a development of Vivo. This development is ensured by an ecosystem in which UcamDev is the center. This ecosystem also consists of a Vivo installer and a Selenium regression testing utility
that will not be covered on this talk. UcamDev must allow users to edit ontologies, to do ontology engineering, to edit FTL files, to do Java programming, to manage the Vivo environment such as property files, to do source code management via Git and do a text search in a file of a different format.
The necessary software to perform these tasks are all encapsulated and pre-configured in the UcamDev. Whatever it is, a TonCAD server, a Solr server, a TopBread Composer free edition for ontology editing and the regression testing tool.
Let us recall here that the purpose of integrating this tool is to standardize, preconfigure and pre-install the necessary framework for Vivo deployment in order to simplify its development. Before beginning the demo itself, let us present here a few pages of documentation
we provide with the basic support necessary for the UcamDev use. So the first page here, you have the home page of the UcamDev, you have an installation page where all the cycle of installation is described to install and use UcamDev.
The configuration page is an installation of a package called UcamDev config and this package contains a lot of useful configuration file or sample ontology file where you can
use when you do your internationalization task. This page contains an installation from scratch to execution. So the first time you are using the UcamDev, you can go on this page and just follow
step by step what you have done and at the end you will have an execution of Vivo and the last one is a page that describes the regression test,
how the regression test is working. It's a complicated stage and this page will increase in documentation but they are accessible at this point.
So the demonstration starts from the UcamDev already install and start. So I can change, so the first, so what we're doing in this demo, we will do the cycle
of doing internationalization of some things in Vivo. So the first step is starting the compilation of Vivo.
To do that you just have to go to this button and just click the button install Vivo. So this step will compile all the Vivo. It takes around two minutes to do that.
So at this time I will explain the different aspect of the environment in the same time that the system compiled the Vivo. So the first important, UcamDev is an Eclipse application. So the first important concept of Eclipse is the notion of perspective.
Perspective is associated with the work we want to do in the environment. For example, the perspective are represented here with the icon. So you have here five perspective and when you click on a perspective, all the view in the Eclipse environment is changing.
And depending what you want to do, you have to change the environment, the perspective. So right now I am in the perspective Java. Here is a perspective to edit anthology. This one is a perspective to manage Git repository.
And this perspective is to debug a Java code. So in the Java perspective, there is other object in the window is calling a view. So at the moment you have a view here who's representing different package available to the project.
And each of directory here is calling a project. You have another view here. It's a console where is the message the system giving when they do some task. You have other view, like view of search, for example.
You have other view, for example, for task of list and everything. And in the middle here, you have a special view. It's an editing view. So if you go, as an example, selecting one file in a project, you will see an editing view. And you have two approach to the data in that type of view.
One is in a form and the other one is by an editor. So as you see there here, the compilation is complete and the build is success. You see here all the package that that compilation is made.
And you see all the package for the internationalization. So when you do the compilation, you have to run the Vivo that we have just compiled. To do that, at the first time, you need to start the Solr server.
You just have to start it one time and it will continue to work even if you leave the Ucam Dev. The only way you have to stop the Solr is also rebooting the machine or just click the stop Solr just right here.
So once Solr starts, you can start your Vivo. It's a Tomcat application where it's directly built inside the environment. You have nothing to install. You just have to install the Ucam Dev and all the Solr and Tomcat and every stuff like that is installed.
So you can go in a browser and just say localhost Vivo and you have access to the Vivo platform on your localhost. So we are now ready to go in a third step,
searching for a problematic file in the Vivo source code. So when I'm looking at this execution, I have access to the I18n menu. And if I'm going in French-Canadian, I see here some problem.
This text is in English, so I would like to change this text to French. So I just have to copy this text and go into another option in the environment is a flashlight just right here.
It's a search tool where you can search in all the environment, the text you want to see. So welcome to the French-Canadian Vivo. So they're going and inside this search bar, you can do a regular expression,
you can consider capitalization of the text. Everything you can make with a grip command in the command line. So I know where is the problem. So I will go directly to the file because it's going more fast. So the problem is in this file here.
So I see here the text that I search. So welcome to the French-Canadian Vivo and I will put the text in French.
So I save that. And after that, if I'm going in the cycle again. So I just finished this one, I edit in the file that is problematic.
The next step is, if necessary, reset the various vivos and decks and database. In some case, when you're changing ontologies or a specific file in Vivo, you have to purge all the database and all the ontologies
that they are in the home directory of Vivo. So we have a link to this home directory of Vivo just right here. And you can see here the file of the database. And you can see here the RDF files that Vivo is using.
And in this directory, you see the application of Vivo. So we have a menu here where we can flush this directory directly before starting a new compilation. So I can erase the Vivo. OK, here I have a message because I didn't stop the Tomcat server.
So I just have to click the X bar on this Tomcat server. And I can delete the vivodirectory, delete the RDF directory and delete the database directory. So at the end of this command, everything is clean for a new compilation.
So I can start and install. I can clean the last compilation I made, but it's not that much for now. I just can't reinstall. So it recompiles everything. So each time it takes around two minutes to recompile everything you make a change,
every time you make a change. So another interesting thing we implement inside the Ucam Dev is the Vivo installer.
The Vivo installer, it's a specific repository inside the Ucam repository Git whose contains the important file for the installation. In fact, it's an extraction of the installation inside the Vivo project.
But the problem is we have to make many, many changes inside the installer because we want to make some adaptation of what is the language we want to compile and everything like that. So every time we're making changes in the directory in the Vivo project,
we have to push that on the main repository of the RSS. And it's not a good way to do the job. So we build a hone installer who we can, inside choosing specific language, we want to compile for the task we made.
And this installer is a project that is over the other project, like the language project or the Vivo project or the Vitro project. So his development is parallel to the development of the other project.
Another important tool we include inside this Ucam Dev is the TopBread Composer free edition. So TopBread Composer is a commercial tool for ontology engineering,
and it is useful to edit ontology. And they made a free version of TopBread that we are included inside the Ucam Dev. So as an example, here I have an ontology.
I can edit one from my dev config directory. So it's a sample of Vivo, OK, of Vivo sample.
We're running a little bit short on time, Michel. Do you have a sense of landing it? OK, so I was just showing the result. OK, time is going really fast.
First, I have to start. Sorry. I have to start.
And then and then you will see in French the Vivo. So I will go directly to the conclusion because we are losing some times. Just to say that in conclusion, the Ucam Dev is a tool that integrates the framework required to compile Vivo and is intended to allow non-computer users to make linguistic and ontological modification in a simplified manner in Vivo.
So thank you very much for your attention.