z2soo's Blog

BOPF(1) - Business Object Process Framework 본문

SAP/TM Module

BOPF(1) - Business Object Process Framework

z2soo 2022. 2. 1. 23:10
반응형

BOPF란?

Business object processing frame work, 즉 ABAP OO 기반의 프레임워크로 개발의 속도 향상, 표준화, 모듈화가 가능한 서비스와 기능을 제공한다. 이를 통해 개발자는 인프라 개발보다 로직 구현에 더 집중할 수 있게 된다.

BOPF 장점?

  • rapid prototyping
  • reusability
  • less implementation
  • more stable

다양한 비즈니스 어플리케이션 구성요소를 원할하게 통합할 수 있는 프레임워크로 쉽게 구축할 수 있는 장점을 지닌다. 아래 이미지처럼 BOPF는 다양한 구성요소 사이에서의 징검다리 역할을 한다. 

Business object

sales order, purchase order와 같은 하나의 비즈니스 단위를 의미한다. 이는 BOPF에 생성될 것이며, 각 BO의 entity는 node형태로 정의된다. 정의된 노드는 트리구조(계층구조)로 이루어진다.

Business object components

  • Node
    business object의 data modeling을 위해 사용되며 데이터 타입 등을 정의하는 속성을 가짐
  • Action
    business object의 서비스 또는 행위를 정의하며 각 노드에 assign됨
  • Association
    business object 간의 관계 혹 통합을 의미
  • Determination
    business object node의 element로서 특적 조건 충족시 실행하는 internal changing logic
  • Validation
    business object node의 element로서 internal checking 즉 유효성 체크를 할 뿐 데이터 변경x
  • Query
    특정 조건에 맞는 business node를 조회

Basic architecture of BOPF

  • Consumer layer / UI layer
    클라이언트는 BOPF의 객체지향 API를 활용해 business object에 접근 가능함
  • Transaction layer
    business object node의 변경 사항에 대한 commit, rollback... 등 DB에 반영하는 transaction 처리를 함
  • Runtime layer
    business object를 인스턴스화하고, life cycle 이벤트 처리를 하고, 클라이언트 수준의 상호작용에 응답하는데 필요한 작업을 수행함
  • Persistence layer
    business object 인스턴스를 DB에 유지하는데 필요한 기능을 제공함
    (persistence <> transient: runtime 시에만 데이터를 유지하고 DB에 반영하지는 않음)

https://mysapblogs.com/2017/03/28/business-object-processing-framework-bopf-introductionarchitecture/

Service & Transaction manager API

Business object는 service API를 통해서만 접근이 가능하고, business ibject에 대한 행위는 transaction manager API를 통해서만 접근이 가능하다. 두 개를 통하지 않으면 business object에 어떤 작업도 불가하다.

  • Service manager
    business object 생성, 업데이트 등 business object node 값에 영향을 미치는 작업 수행
  • Transaction layer
    commit, rollback 등 변경된 business object node 값을 DB에 반영하는 작업 수행

https://www.youtube.com/watch?v=Exk_JZGasWE

 

 

반응형

'SAP > TM Module' 카테고리의 다른 글

BOPF(6) - Core component & Transaction  (0) 2022.02.17
BOPF(5) - BOPF Configuration Tool  (0) 2022.02.17
BOPF(4) - Transaction Code BOPF  (0) 2022.02.17
BOPF(3) - BOPF와 Transportation Management Module  (0) 2022.02.17
BOPF(2) - 구성요소  (0) 2022.02.17
Comments