|
| 1 | +--- |
| 2 | +title: "Research Software Story - OpenEBench" |
| 3 | +description: "OpenEBench is an open, community-driven platform for benchmarking and monitoring bioinformatics software, enabling transparent performance evaluation and improved research software quality." |
| 4 | +contributors: [Laura Portell-Silva] |
| 5 | +page_id: openebench_research_software_story |
| 6 | +type: research_software_story # leave this as is |
| 7 | +--- |
1 | 8 |
|
| 9 | +## The Problem |
| 10 | +### Researchers struggle to compare and evaluate bioinformatics tools reliably and improve their quality |
| 11 | + |
| 12 | +Life sciences research depends heavily on bioinformatics software: tools, workflows and web services that analyse complex biological data. As the number of available methods grows, researchers and developers face persistent challenges: |
| 13 | +- Lack of objective comparison between tools performing similar tasks |
| 14 | +- Difficulty assessing software quality beyond published claims |
| 15 | +- Limited reproducibility of performance evaluations |
| 16 | +- Fragmented benchmarking efforts, often confined to individual projects or short-lived challenges |
| 17 | + |
| 18 | +Without shared, transparent benchmarking events, users struggle to choose appropriate tools, developers lack systematic feedback, and communities miss opportunities for collective improvement. **[OpenEBench](https://openebench.bsc.es/dashboard/)** addresses these challenges by providing an open, community-driven benchmarking and monitoring platform for bioinformatics software. OpenEBench brings together scientific benchmarking and technical monitoring to help users compare and improve software. |
| 19 | + |
| 20 | +It enables scientific communities to: |
| 21 | +- Define reference datasets and evaluation metrics |
| 22 | +- Run standardised, reproducible benchmarking events |
| 23 | +- Compare tools fairly and transparently |
| 24 | +- Track software performance and quality over time |
| 25 | + |
| 26 | +Beyond performance benchmarking, OpenEBench also contributes to improving research software quality through its [Software Observatory](https://openebench.bsc.es/observatory/Trends). The observatory aggregates metadata from multiple sources and evaluates software against FAIR principles (Findable, Accessible, Interoperable, Reusable), providing: |
| 27 | +- FAIRness indicators and scores |
| 28 | +- Visibility into software maturity and maintenance practices |
| 29 | +- Actionable insights for developers to improve their software |
| 30 | + |
| 31 | +This dual focus on performance and quality distinguishes OpenEBench from traditional benchmarking efforts. |
| 32 | + |
| 33 | +## User Community |
| 34 | +### Developers and researchers collaborate to improve bioinfromatics tools |
| 35 | + |
| 36 | +OpenEBench serves a diverse and interconnected user base: |
| 37 | +- *Bioinformatic tools developers*, who want objective feedback on performance and visibility for their tools |
| 38 | +- *Scientific communities*, who define domain-specific benchmarking events aligned with real research needs |
| 39 | +- *Researchers and end-users*, who need trustworthy information to select appropriate tools |
| 40 | +- *Infrastructure providers and funders*, who seek insight into software quality, sustainability and impact |
| 41 | + |
| 42 | +The platform is designed to be community-led: benchmarking events are defined and governed by the communities that use them. |
| 43 | + |
| 44 | +## Technical Aspects |
| 45 | +OpenEBench is built as a modular, service-oriented platform designed to support reproducible benchmarking and software observaotry. |
| 46 | + |
| 47 | +### Languages and Codebase |
| 48 | + |
| 49 | +The OpenEBench codebase is primarily developed using: |
| 50 | +- Python for backend services, data processing, benchmarking workflows and APIs |
| 51 | +- Bash and Nextflow for orchestrating benchmarking pipelines |
| 52 | + |
| 53 | +The platform is organised into independent but interoperable components, enabling reuse across different benchmarking communities and facilitating long-term maintenance and extension. All core components are open source and developed following collaborative good practices. |
| 54 | + |
| 55 | +### Architecture and Deplopyment |
| 56 | +OpenEBench follows a cloud-ready, container-based architecture: |
| 57 | +- Services and tools are packaged using Docker containers to ensure reproducibility and portability |
| 58 | +- Benchmarking workflows are executed within a Virtual Research Environment (VRE) |
| 59 | +- MongoDB is deployed as a core backend service supporting scalable data storage and querying |
| 60 | +- OpenEBench provides RESTful APIs for data access and integration |
| 61 | + |
| 62 | +### Interoperabiltiy and Integration |
| 63 | +The platform integrates with external registries, repositories and monitoring services to harvest software metadata and usage signals. |
| 64 | + |
| 65 | +## Software Practices |
| 66 | +### OpenEBench follows open-source and FAIR-aligned practices |
| 67 | + |
| 68 | +OpenEBench is developed as an open‑source platform with code repositories hosted on GitHub. Contributors follow community standards for version control, code review, and integration. |
| 69 | +- *Version control*: Git/GitHub‑based repositories with clear topic tagging for discoverability. |
| 70 | +- *Code review*: Pull requests are used to ensure changes align with project objectives and maintain quality standards. |
| 71 | +- *Testing and validation*: Benchmarking workflows include validation and verification of results. |
| 72 | +- *Community feedback*: Issues and discussions capture user feedback, drive prioritisation, and support continuous improvement across releases. |
| 73 | + |
| 74 | +## Developer Community |
| 75 | +### Add a short one-two liner subtitle about how the software is being adopted for usage and how a community is being built around it |
| 76 | + |
| 77 | +OpenEBench is developed and maintained at the TechBioLab at the [Barcelona Supercomputing Center (BSC)](https://www.bsc.es/es) as part of the [ELIXIR Tools Platform](https://elixir-europe.org/platforms/tools). New contributors can get started by exploring the GitHub repositories, following tutorials, and participating in community discussions. The platform encourages collaborative development and feedback to continuously improve benchmarking events. |
| 78 | + |
| 79 | +## Tools |
| 80 | +### OpenEBench uses tools to be FAIR-compliant |
| 81 | + |
| 82 | +OpenEBench relies on a combination of development and deployment tools that streamline workflow creation, testing, and containerisation. These tools ensure the software remains stable and reproducible across environments. Key tools include: |
| 83 | +- *Git/GitHub*: version control and code collaboration |
| 84 | +- *Docker*: containerizing workflows for reproducibility |
| 85 | +- *Workflow languages*: Nextflow for standardised benchmarking pipelines |
| 86 | + |
| 87 | +## FAIR & Open |
| 88 | +### OpenEBench is fully aligned with FAIR and open science principles |
| 89 | + |
| 90 | +OpenEBench promotes openness and FAIR compliance across its code, workflows, and benchmarking results: |
| 91 | +- The code is publicly hosted on GitHub under an open-source license. |
| 92 | +- APIs and workflows use standard formats to support interoperability. |
| 93 | +- Users can access software, documentation, and benchmark data freely, and contribute via GitHub. |
| 94 | +- The development process is transparent, with community involvement in decisions and feature development. |
| 95 | + |
| 96 | +## Documentation |
| 97 | +### Comprehensive documentation ensures the community can effectively use of OpenEBench |
| 98 | + |
| 99 | +OpenEBench provides multiple documentation resources to help users navigate the platform and contribute to development: |
| 100 | +- Main entry point: [OpenEBench ReadTheDocs](https://openebench.readthedocs.io/en/latest/) |
| 101 | +- README files for each repository explaining setup and usage |
| 102 | +- Templates and examples for workflow examples and benchmarking pipelines |
| 103 | +- Step-by-step guides for developers and administrators |
| 104 | + |
| 105 | +## Sustainability |
| 106 | +### Add a short one-two liner subtitle about how is the research software being made sustainable |
| 107 | + |
| 108 | +As mentioned above, OpenEBench is maintained by the TechBioLab at BSC and supported by the ELIXIR Tools Platform. Governance combines core team oversight with community input. Funding from ELIXIR and institutional support ensures ongoing development, maintenance, and future-proofing. The project emphasises modular design, open standards, and containerization to reduce risks and facilitate long-term sustainability. |
| 109 | + |
| 110 | +## References |
| 111 | + |
| 112 | +- OpenEBench main entry point: https://openebench.bsc.es/ |
| 113 | +- OpenEBench technical monitoring: https://openebench.bsc.es/tool |
| 114 | +- OpenEBench scientific benchmarking: https://openebench.bsc.es/benchmarking |
| 115 | +- OpenEBench Software Observatory: https://openebench.bsc.es/observatory/Trends |
| 116 | +- OpenEBench ReadTheDocs: https://openebench.readthedocs.io/en/latest/ |
| 117 | + |
0 commit comments