5 bexis extensibility

Post on 12-Apr-2017

33 Views

Category:

Software

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

BEXIS Tech Talk Series

#5: BExIS Extensibility

Javad ChamanaraPresented at BExIS Developers Conference

June 2016Germany

BEXIS Tech Talk #5: BExIS Extensibility 2

Reminder: What is BExIS

• Requirements– Data Lifecycle Management– Generic– Extensible– Portable– Scalable

More details on the BExIS Requirements

BEXIS Tech Talk #5: BExIS Extensibility 3

Reminder: Core Concepts

DataMetadata

Data StructureMetadata Structure Semantics Geo

Administration Security

«use»

«use»

«use» «use»

«use»

More details on the Conceptual Model

BEXIS Tech Talk #5: BExIS Extensibility 4

Reminder: Architecture

DB2 PgS

Data Access

Security

Core Functions

UI

UI Framework

...M

odularity

Integration

Synthesis Work

Semantic Search

Analytics

User Defined

Spatial Querying

External Tools

Web Services

Archiving

Import/ Export

Publishing

More details on the Architecture

BEXIS Tech Talk #5: BExIS Extensibility 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 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 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 8

Shell

• Layouts– Arrangement– Content

• Themes• Menus

BEXIS Tech Talk #5: BExIS Extensibility 9

Shell: Layout

BEXIS Tech Talk #5: BExIS Extensibility 10

Shell: Themes

BEXIS Tech Talk #5: BExIS Extensibility 11

Shell: Menus

• Registered by Modules• Integrated into Shell• Some are fixed

BEXIS Tech Talk #5: BExIS Extensibility 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 13

Components of a Module

• UI• Services• Data Access

BEXIS Tech Talk #5: BExIS Extensibility 14

Module: UI

BEXIS Tech Talk #5: BExIS Extensibility 15

Module: UI: Area Registration

BEXIS Tech Talk #5: BExIS Extensibility 16

Module: UI: Layout selection

• <Module>/Views/_ViewStart.cshtml

BEXIS Tech Talk #5: BExIS Extensibility 17

Module: UI: Menu

• Fixed areas• Limited # of Levels• Registration in _Menus.chhtml– Areas/site/views/Nav

BEXIS Tech Talk #5: BExIS Extensibility 18

Module: Configuration

• Each module has it own– Web.config– Workspace• Config folder

BEXIS Tech Talk #5: BExIS Extensibility 19

Module: Configuration

• Each module has it own– Data folder

BEXIS Tech Talk #5: BExIS Extensibility 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 21

Module: Libraries

BEXIS Tech Talk #5: BExIS Extensibility 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 23

Sample Tenants: BExIS

BEXIS Tech Talk #5: BExIS Extensibility 24

Sample Tenants: iDiv

BEXIS Tech Talk #5: BExIS Extensibility 25

Branding: Functionalities

BEXIS Tech Talk #5: BExIS Extensibility 26

Mechanics of Branding

• The Branding package

BEXIS Tech Talk #5: BExIS Extensibility 27

Inside the Package

BEXIS Tech Talk #5: BExIS Extensibility 28

Package’s Manifest file

BEXIS Tech Talk #5: BExIS Extensibility 29

Resolution Mechanism

• Tenant Resolution– Single tenant: in web.config– Multi tenants: by matching rules

• Name Resolution– Resolved tenant– Fallback tenant, otherwise

• Resource Resolution– Resolved tenant– Fallback tenant– Application predefined resources

BEXIS Tech Talk #5: BExIS Extensibility 30

Branding: Management

BEXIS Tech Talk #5: BExIS Extensibility 31

Integration (Interoperability)

• Data/Service– Offering– Consumption

• Interaction Method– Push– Pull

• Current: Offering pull based services

BEXIS Tech Talk #5: BExIS Extensibility 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 33

APIs

• Access Method– Web based– HTTP– REST

• Output format– CSV– JSON– XML

• Example– rBExIS package for R

BEXIS Tech Talk #5: BExIS Extensibility 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 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 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?ConvertTo=EML

BEXIS Tech Talk #5: BExIS Extensibility 37

Outlook

Whats next in the talk series?

UI Structure and Web APIDetailed developer view

BEXIS Tech Talk #5: BExIS Extensibility 3838

Thanks!Questions?

Contact:javad.chamanara@uni-jena.dehttp://bexis2.uni-jena.de

Acknowledgment

top related