You are on page 1of 30

c c 


 
with    
and   

Agus Suhartono
agus@openbiz.web.id
OpenBiz Contributor,
on    and    
Agenda
‡ Openbiz Overview
‡ Openbiz Architecture
‡ Openbiz Metadata
‡ Openbiz Data Object
‡ Openbiz Form and View
‡ Openbiz Service
‡ Demo
‡ Questions
Agenda
‡   
± What¶s Openbiz
± What¶s Cubi
± Tools
± Sample Application and ISV
‡ Openbiz Architecture
‡ Openbiz Metadata
‡ Openbiz Data Object
‡ Openbiz Form and View
‡ Openbiz Service
‡ Demo
‡ Questions
   
‡ Openbiz is     that
provides an       
platform for application developers to build web
application with      
!"#$metadata%&#$programming code'.

‡ A little 
± Project was started in &##( with the goal to minimize
the coding efforts in business application
development. Has been    improved by
   and user feedback.
   

‡ A PHP business application framework


   with
± )    design principal.
Developers     as
  
± )odel-*iew-ontroller
± bject +elational )apping
±
,
- browser client
± Stateless and Statefull
   

‡ . / 
± Professional software developers
± IT consultants
± Software Houses (ISV)
‡ .   
± Management/Administration System (i.e. CRM, HRM)
± Company home-grown internal management systems
± Migration from desktop application to rich client web
application
± Will satisfy the need for most of the database driven
web applications
  

‡ Openbiz Cubi is a php  


 0
± From  to      application
platform
‡ 1 
± provide    and a 
 in a platform level
±    of Openbiz-based
application development
.
‡ Metadata   (CLI)
‡ From db to CRUD application
‡ App Design Center aka metadata editor
± Edit metadata from application
‡ Application Installation Wizard
± End user fully enjoy
Agenda
‡ Openbiz Overview
‡   
   
‡ Openbiz Metadata
‡ Openbiz Data Object
‡ Openbiz Form and View
‡ Openbiz Service
‡ Demo
‡ Questions
  
   
‡ Metadata-driven    
± Openbiz    are defined with XML metadata
± Metadata describes the properties and behaviors of
an object
± Metadata describes the relationship between objects
± Object factory creates objects on the fly
± Openbiz core objects are the base of the framework
± All objects are extensible with customer classes
  
   
‡     
  
   
‡   )*
  
   
‡   )*
Agenda
‡ Openbiz Overview
‡ Openbiz Architecture
‡   )  
‡ Openbiz Data Object
‡ Openbiz Form and View
‡ Openbiz Service
‡ Extending Openbiz
‡ Demo
‡ Questions
  )  
‡ )      
  )  
‡ 2 c   
 
Openbiz is a metadata centric framework, so the
application development process is some different with
the traditional one.
± Step 1: gather requirements
± Step 2: design data models, e.g. database schema
± Step 3: write business objects with DO and their metadata
± Step 4: write user interface with Form and View
± Step 5: write custom DO, Form and Service classes if necessary
± Step 6: refine the metadata and custom code
± Step 7: test and debug
  )  
‡      3
± Describe the properties of objects
± Describe relationship of objects
± Describe rendering behavior of objects
± Describe validation of the data
± Describe user interaction on a page

‡   4   3
± Logic of function - this is implemented in real program
classes. The "Class" attribute of a metadata can bind
any custom class with the metadata.
Agenda
‡ Openbiz Overview
‡ Openbiz Architecture
‡ Openbiz Metadata
‡   5    
‡ Openbiz Form and View
‡ Openbiz Service
‡ Extending Openbiz
‡ Demo
‡ Questions
  )  
‡         
  !5'
  )  
‡ Object Relational Mapping (ORM)
Agenda
‡ Openbiz Overview
‡ Openbiz Architecture
‡ Openbiz Metadata
‡ Openbiz Data Object
‡   6 *
‡ Openbiz Service
‡ Extending Openbiz
‡ Demo
‡ Questions
  6 *
‡ Openbiz 5    !5' plays a   
, and Openbiz 6 plays as
corresponding   .
± Each Form declares a DO name and mapping
between DO Fields to Form Elements.
‡ Openbiz * plays as a  
 6.
± In web technology, View is same as a web
page and Form is a logic block within a page.
* 67  
‡ In a data-driven web applications, data is
presented in    .
± 8 : screen for multi-record list or table
± 5  : screen for single-record detail
± 9 : screen for single-record editing.
± 7 : screen for single-record creation.
* 67  
* 67  
‡ In a data-driven web applications, data is
presented in    .
± 8 : screen for multi-record list or table
± 5  : screen for single-record detail
± 9 : screen for single-record editing.
± 7 : screen for single-record creation.
Agenda
‡ Openbiz Overview
‡ Openbiz Architecture
‡ Openbiz Metadata
‡ Openbiz Data Object
‡ Openbiz Form and View
‡   2 
‡ Demo
‡ Questions
  !  '2 
‡ implementing special logic by Plug-in
Service.
‡ metadata-driven objects.
‡ Service metadata doesn¶t have fixed
schema (different services can have very
different configuration)
  !  '2 
‡ 82 
‡ 9 2 
‡ 5.2 
‡ :51 2 
‡  2 
‡ 2 2 
‡ ; 2 
‡ *  2 
‡ 9< 2 
‡
2 
Agenda
‡ Openbiz Overview
‡ Openbiz Architecture
‡ Openbiz Metadata
‡ Openbiz Data Object
‡ Openbiz Form and View
‡   2 
‡ Demo
‡ Questions
Agenda
‡ Openbiz Overview
‡ Openbiz Architecture
‡ Openbiz Metadata
‡ Openbiz Data Object
‡ Openbiz Form and View
‡   2 
‡ Demo
‡ Questions