How to Communicate the iDempiere Architecture · 2019. 11. 10. · 26 01.11.19 Partially Weighted...

Preview:

Citation preview

www.dhbw-mannheim.de

How to Communicate the iDempiere Architecture

Presentation at iDempiere World Conference Lyon, Oct. 31st. 2019

Frank Wolff (DHBW Mannheim) & Jürgen Jung (University of Applied Science Frankfurt)

1212

01.11.19

Initial observation: iDempiere is based on many components and elements

Various people interested

• diverse interconnected business functionality

• various options for adaptation to specific companies needs

► Architectural overviews may ease orientation – but must take care of

• different stakeholders and their

• respective viewpoints

! Big challenge to learn and acquire knowledge about the complex system

1313

01.11.19

A General

Overview

on iDempiere

ServerDatabase

Java

vi

rtua

l mas

chin

e

Model-based administration

OS

GI

com

pone

ntfr

amew

ork

opt. Swing-client

Web-client

Accountingengine

Jetty-http-Server

Webservice- & File- interface

Workflow

ERP-Functions Extensions

Database-level

Client-level

Application-level

Web-shopclient

Interfaces

Reports

1414

01.11.19

Overview on talk:

Introduction

Questions

Interested stakeholders

Some architectural drafts

Comparison APQC process framework to iDempiere

Next steps

1515

01.11.19

Questions:

Which stakeholders are interested in knowledge of iDempiere on:

• functionality,

• technical infrastructure and

• development environment?

Which information is required by them?

Which good practice for architecture models is adequate?

How should iDempiere architecture models be designed?

ServerDatabase

Java

vi

rtua

l mas

chin

e

Model-based administration

OS

GI

com

pone

ntfr

am

ew

ork

opt. Swing-client

Web-client

Accountingengine

Jetty-http-Server

Webservice- & File- interface

Workflow

ERP-Functions Extensions

Database-level

Client-level

Application-level

Web-shopclient

Interfaces

Reports

1616

01.11.19

Potential models for an iDempiere architecture documentation:

Current models

• from diverse sources in varying formats

• mostly with focus on business processes

Other ERP-system architectures

• different designs

• often focussed on functional or technical components

Typical options for capturing architecture information

• individual design of symbols and relationships

• using a standard, e.g.

• UML

• Archimate

1717

01.11.19

First prototype models revealed an intricate set of notions:

Business objects

• master data

• documents

Configuration data

• iDempiere technical base configuration

• ERP-company configuration

iDempiere components

• installation requirements

• OSGI-components

• development environment (single and project)

iDempiere patterns

• application dictionary

• model concepts

18

01.11.19

Typical

stakeholders

interested in

an iDempiere-

system

Business components

System components

Technicalbase components

OSGI-component groups

Physical basic installed components

Developer

ERP-System - Administrator

ERP-domain - Administrator

ERP - User

Architectural developmentpatterns

Master-data

Confi-guration-

data

Operations-data

Configurationfunctions

Support processfunctions

Technical configuration data

Development components

Manager

1919

01.11.19

Some models designed in preparation of the workshop:

Standard components and application communication overview

Master data of iDempiere

Documents flow

Components of domain functions

• comparison with the APQC process model

Development environment

Customizing layers of iDempiere

2020

01.11.19

Further model candidates for helping to understand iDempiere:

Structure of Classes for business objects (PO, X_, M_, I_)

OSGI – modules in relation to general components and functionalities

...

2121

01.11.19

Standard components and application communication overview:

2222

01.11.19

Overview on Domain Master Data of iDempiere:

2323

01.11.19

Overview on Operational Data of iDempiere:

2424

01.11.19

Componentsof Domain functionsand dataexchange:

2525

01.11.19

Obervations from comparison of APQC with iDempiere processes:

Different wording in both lists

• APQC standard more common terms

Focus of processes

• APQC - all company processes, encompassing operational and including numerous management processes

• iDempiere – operational and financial processes

Valuation quite subjective – depending on base, e.g.

• usage in practice

• including reports and other elements

• incorporating customization(this overview follows the first two viewpoints listed above - customization was excluded)

2626

01.11.19

Partially Weighted Comparison of Standard APQC Processes with iDempiere functions:

APQC-No

APQC-Chategory iDempiere functions Coverage

Comment

1-2 Strategic and product management

3 Market and Sell Products and Services Quote to invoice

4 Deliver Physical Products Material management,Requisition to invoice

5 Deliver Services Project management

6 Manage Customer Service Returns

7 Develop and Manage Human Capital Plugin-available

8 Manage Information Technology (IT) System admin for ERP-itself

9 Manage Financial Resources Performance analysis

10 Acquire, Construct, and Manage Assets Assets

11-13 Risk, external Partner and Capabilities management

2727

01.11.19

Overview on iDempiere Development environment:

Cloud based development components

Communication and information for community

Development client (typical)

Eclipse«application»

Browser«component»

Postgres or Oracle«database»

Google groups ofiDempiere :communication

«component»

iDempiere Javasources

«source code»

Bitbucket«library»

Maven«subsystem»

iDempiere system«executable»

Java development kit«component»

Mercurial«subsystem» Tycho

«subsystem»

Jira iDempiere :bugtracking

«component»

iDempiere Wiki :documentation

«component»

iDempiere Jenkins :continous integration

«component»

iDempiere TestSite«application»

iDempiere TestSite «application»

iDempiere individual instance

«installedin»

Display and enter data

Data access and change

«Runs on»

buildsuses

imports

imports

2828

01.11.19

Customizing layers of individual iDempiere Development environment:

iDempiere system

Application dictionary

<...>

<window>

<tab - Layout>

<field>

<button>

<table>

<column>

<validation

diverse>

<documentprocess>

<workflowprocess>

Java Sources Model Classes

<callout withCalloutFactory>

<JSR223

Script>

<Java code>

<document>

<report>

<alert>

<printformat>

<rule>

<SQL>

Table based, often inseveral levels.Some scripts for validationpurposes in the AD, linked

or attached to indivudualfields

2929

01.11.19

Experiences with usefulness of architecture overviews

• refining stakeholder groups and their requirements

• design of modeltypes

Verification and collection of further information for models

• necessary content

Further steps

• 1st version of architecture models for iDempiere wiki

• continuing updates and improvements

...

Feedback and ideas for further development required

3030

01.11.19

Questions and comments?

frank.wolff@dhbw-mannheim.de

or on posters!!

Recommended