|
AIBench is a lightweight, non-intrusive, MVC-based Java application framework that eases the connection, execution and integration of operations with well defined input/output. This basic idea provides a powerful programming model to fast develop applications given that: - The logic can be decoupled from the user interface.
- The interconnection of operations can also be decoupled based in the idea of “experiments”.
- The programmer is forced to “think-before-program”, easing the code reuse.
Citing AIBench Please, cite our framework in your research software developed with AIBench:
- D. Glez-Peña, M. Reboiro-Jato, P. Maia, F. Díaz, F. Fdez-Riverola (2010) AIBench: a rapid application development framework for translational research in biomedicine. Computer Methods and Programs in Biomedicine. doi:10.1016/j.cmpb.2009.12.003
The new Operations can be plugged by only copying their .jar files in a specific directory and they will be available with just restarting the program. AiBench was created focused in the easiness of building new operations. To achieve this objective, the design was made following these principles: - Default-driven. The programmer of Operations should see them running with the minimum amount of code. The framework should provide smart defaults for each option that can be fine-tuned in the future.
- Design independent of the problem. AiBench was made inside a research group focused in the data-mining/AI field, but there is not any concept related with that field in the classes, interfaces or annotations of this framework. AiBench is, in fact, data-type agnostic, the programmer provides his data-types through his own classes.
The applications of AiBench are not limited, but it specially fits well in the data-mining/AI field, because every day there are new operations and data-types that need to be tested and integrated with the existing ones. In the next sections, you will find how to create operations for this simple, but powerful framework. You can get more information in the overview or in the Documentation section.
|