This document summarizes a presentation on extending the functionality of the BExIS data management system. It discusses several aspects of extensibility including developing new modules, integrating BExIS with other systems through APIs, and customizing the user interface through branding. New modules can provide additional functions, data formats, and tools. Integration is achieved by exposing data and services through web APIs. Branding allows customizing the user experience for different customers. The talk provided examples of these extensibility features and outlined future topics like improved UI structures and API documentation.
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
5 BExIS Extensibility
1. BEXIS Tech Talk Series
#5: BExIS Extensibility
Javad Chamanara
Presented at BExIS Developers Conference
June 2016
Germany
2. Reminder: What is BExIS
• Requirements
– Data Lifecycle Management
– Generic
– Extensible
– Portable
– Scalable
BEXIS Tech Talk #5: BExIS Extensibility 2
More details on the BExIS Requirements
3. Reminder: Core Concepts
BEXIS Tech Talk #5: BExIS Extensibility 3
DataMetadata
Data StructureMetadata Structure Semantics Geo
Administration Security
«use»
«use»
«use» «use»
«use»
More details on the Conceptual Model
4. Reminder: Architecture
BEXIS Tech Talk #5: BExIS Extensibility 4
DB2 PgS
Data Access
Security
Core Functions
UI
UI Framework
...
Modularity
Integration
Synthesis Work
Semantic Search
Analytics
User Defined
Spatial Querying
External Tools
Web Services
Archiving
Import/ Export
Publishing
More details on the Architecture
5. Extensibility Aspects
• Module Development: Is the mechanism to
add functionality to BExIS
– Support for specific data formats
– Data Analysis and Visualization
– Geographical Search
– Resource Booking
– Semantic Search
BEXIS Tech Talk #5: BExIS Extensibility 5
6. Extensibility Aspects
• Integration: Data/service exchange between
BExIS and other systems.
– Publishing datasets in external repositories
– Allowing access to datasets for analysis
– Acquiring PIDs
– …
BEXIS Tech Talk #5: BExIS Extensibility 6
7. Extensibility Aspects
• Branding: Is a way to position BExIS in a user
community on behalf of a customer
– Logo, Icons
– Themes, colors,
– Text, graphics,
– …
BEXIS Tech Talk #5: BExIS Extensibility 7
11. Shell: Menus
• Registered by Modules
• Integrated into Shell
• Some are fixed
BEXIS Tech Talk #5: BExIS Extensibility 11
12. Module Development
• A module is a set of related user facing
functions, operating from inside the BExIS
Shell
BEXIS Tech Talk #5: BExIS Extensibility 12
13. Components of a Module
• UI
• Services
• Data Access
BEXIS Tech Talk #5: BExIS Extensibility 13
20. Module: Data
• Seed Data:
– The data needed by module to start working.
– It can be immutable or modifiable
BEXIS Tech Talk #5: BExIS Extensibility 20
22. Branding
• Who needs to re-brand BExIS
– Tenants: The customers who install and own BExIS
• What can be re-branded
– Appearance
– Documents
– Functionalities
BEXIS Tech Talk #5: BExIS Extensibility 22
32. Integration: Services
• Authentication/Authorization
• Dataset
• Schema of a dataset
• Metadata of a Dataset
• Selected Variables of a Datasets
• Selected Tuples of a Dataset
BEXIS Tech Talk #5: BExIS Extensibility 32
33. APIs
• Access Method
– Web based
– HTTP
– REST
• Output format
– CSV
– JSON
– XML
• Example
– rBExIS package for R
BEXIS Tech Talk #5: BExIS Extensibility 33
34. Sample Web API calls: Data
• http://www.name.com/api/data
• http://www.name.com/api/data/6
– /api/data/6?header=id,name
– /api/data/6?filter=(Grade>50 AND Grade <90)
– /api/data/6?header=id,name&filter=(Grade>50)
BEXIS Tech Talk #5: BExIS Extensibility 34
35. Sample Web API calls: Data
Structure
• http://www.name.com/api/structures/6
• http://www.name.com/api/metadata/6
BEXIS Tech Talk #5: BExIS Extensibility 35
36. Sample Web API calls: Metadata
• http://www.name.com/api/metadata
• http://www.name.com/api/metadata/6
• http://www.name.com/api/metadata/6?Conv
ertTo=EML
BEXIS Tech Talk #5: BExIS Extensibility 36
37. Outlook
Whats next in the talk series?
UI Structure and Web API
Detailed developer view
BEXIS Tech Talk #5: BExIS Extensibility 37