본문 바로가기

안녕하세요!

돼빠오의 일상다반사/돼빠오의 주절주절

Interview Preparation(JAVA / SAP)

[ JAVA란 무엇인가? ]

○ 장점

    - 객체지향 프로그래밍(OOP : Object Oriented Programming)

      1) 프로그램을 개발하는 기법

      2) 부품에 해당하는 객체들을 먼저 만들고

      3) 이것들을 하나씩 조립 및 연결하여 저체 프로그램 완성하는 것 

      4) 클래스 : 객체를 만들기 위한 설계도, 객체와 객체를 연결해 목적에 맞는 프로그램 생성

      5) 캡슐화, 상속성, 다형성 완벽 지원

        * 캡슐화 : 객체의 속성(data fields)과 행위(메서드)를 하나로 묶고, 실제 구현 내용 일부를 내부에 은닉

        * 상속성 : 상위/부모 클래스의 특성을 하위/자식이 상속받아 기존 정의된 특성(property, method) 재사용

        * 다형성 : 하나의 객체가 여러 가지 타입 가질 수 있는 것

    - 높은 이식성

      1) 서로 다른 실행환경을 가진 시스템 간에 프로그램을 옮겨 실행 가능토록 함

      2) 자바 실행환경(JRE)이 설치돼 있는 모든 운영체제에서 실행 가능

    - 인터프리터 언어

      1) 컴파일 언어인 동시에 인터프리터 언어

      2) 텍스트 소스를 컴파일해 2진 파일(클래스 파일)로 만든 다음 자바 런타임이 클래스 파일을 인터프리트 하며 실행

      3) 시스템에 무관한 2진 파일을 만듦으로써 자바는 컴파일 언어에 가까운 속도와 시스템 독립성 얻기 가능

        * 컴파일 언어 : 코드가 실행되기 전 컴파일러를 거쳐 기계어로 모두 변환돼 실행되는 프로그래밍 언어

    - 자동 메모리 관리

      1) 메모리는 자바가 직접 관리, 개발자가 직접 메모리에 접근 불가능

      2) 객체 생성 시, 자동으로 메모리 영역을 찾아 할당하고 사용이 완료되면 쓰레기 수집기 실행해 미사용 객체 제거

      3) 이에 따라 핵심 기능 코딩에 집중 가능

    - 멀티 스레드 구현 용이

      1) 스레드 생성 및 제어 관련 라이브러리 API 제공하므로

      2) 운영체제에 상관없이 멀티 스레드를 쉽게 구현 가능

        * 멀티 스레드 : 하나의 프로세스 내에서 둘 이상의 스레드가 동시에 작업 가능

    - 동적 로딩 지원

      1) 실행 시, 모든 클래스가 로딩되는 것이 아니라, 필요한 시점에 클래스를 로딩해 사용 가능

      2) 애플리케이션 변경사항이 발생해도 비교적 적은 작업만으로 처리 가능한 유연한 애플리케이션 작성 가능

    - 분산 환경 지원

      1) 자바에는 TCP/IP 라이브러리 기본적으로 포함됨

      2) https와 http 프로토컬 기본적으로 지원

    - 풍부한 오픈소스 라이브러리

      1) 자바는 오픈소스(Open Source) 언어, 자바 프로그램에서 사용하는 라이브러리 또한 오픈소스의 양이 방대함

      2) 고급 기능을 구현 코드 작성하는 대신 검증된 오픈소스 라이브러리를 사용 시, 애플리케이션 다시 컴파일 불필요

      3) 유지보수를 쉽고 빠르게 진행 가능

 

○ 단점

    - 자바 실행 위해 자바 가상 머신 거쳐야 하므로 다른 언어에 비해 실행 속도 느림

    - 자바는 예외 처리 잘 돼 있지만, 개발자가 일일이 처리를 지정해줘야 함

    - 다른 언어에 비해 작성해야 하는 코드의 길기가 긴 편임


[ SAP란 무엇인가? ]

SAP ERP

    - ERP(Enterprise Resource Planning)

      1) 전사적 자원관리

      2) 영업부서, 재무부서, 생산부서, 인사부서, 물류부서, 구매부서 등의 프로세스 통합해 관리

    - 모듈

      1) FI(Financial, 일반회계)

      2) CO(Controlling, 관리회계)

      3) MM(Material Management, 자재관리)

      4) SD(Sales and Distribution, 영업관리)

      5) PP(Production Planning, 생산관리)

      6) BC(Basic Component)

    - 관련 용어

      1) EP(Enterprise Portal) : ERP 사용자 연계 웹 포털

      2) PI(Process Integration) : XI(Exchange Infrastructure)라고 부르던 제품의 업그레이드 제품,

                                                  non SAP 시스템과의 데이터 연계 담당

      3) SAP HANA : SAP ERP 모듈 개발에 사용되는 언어

      4) SAP GUI : ABAP으로 만든 사용자 인터페이스 화면

      5) CTS(Change and Transport System) : 개발 시스템에서 작성한 커스터마이징과

                                                                        ABAP 프로그램으로 만든 프로그램 등을 운영 서버로 이관하는 작업

      6) sap hana studio : HANA 서버에서 아티팩트를 개발할 수 있는 Eclipse 기반의 통합 개발 환경(IDE)

                                       사용자는 HANA Studio를 이용해 SAP HANA 데이터베이스를 관리,

                                       사용자 권한을 생성/관리,

                                       기존 데이터 모델 수정하거나 새로운 모델 생성 등

○ SAP HANA

    - SAP ERP 애플리케이션 위한 빅데이터 체계화 및 분석을 돕는 인메모리 데이터베이스

    - RAM(Random Access Memory)을 사용해 실시간 데이터를 제공

    - HANA

      1) 인메모리 기술과

      2) COLUMN STORE 기술을 결합해 Business transactions(OLTP : Online Transaction Processing)과

      3) Reporting(OLAP : Online Analytical Processing) 모두 가능한 인메모리 데이터 플랫폼

    - HANA DATABASE

      1) 정보계 시스템에 분석용 DATABASE로 사용

      2) 공공기관, 병원, 제조업 등에서 사용 중

      3) 기존 데이터베이스에 대비해 수십 배에서 수천 배까지 성능이 향상됨

    - BW ON HANA

      1) 쿼리 조회 속도를 빠르게 하기 위해 BWA 사용하지만,

      2) HANA가 조회 속도도 빠르고 좀 더 안정적임

      3) BW의 경우 DSO를 활성화하는 데에 배치시간이 오래 걸리지만,

      4) HANA의 경우 빠른 속도, 인덱스와 AGGREGATION이 불필요해지면서 전체 배치시간이 절반 이하로 감소

 

 

SAP ABAP Program

    - SAP Application 내에 ERP 업무모듈별 비즈니스 생산성 향상을 위해

    - SAP 사용 고객사에만 적용이 필요한 신규 프로세스 적용 목적으로 개발된 프로그램

    - SAP Application

      1) Standard라는 모듈별 표준 프로세스 제공, 대부분 고객사 표준 기능 사용

      2) CBO(Customer Bulk On) : SAP 컨설턴트의 특화된 프로세스 적용, ABAP Programming 언어 통해 개발

    - Type-1

      1) 단순 조회용 Program, Reaport

      2) 고객입장에서의 높은 만족도

      3) 삽입, 수정, 삭제, 저장 기능이 적용된 유연한 프로그램 제공

    - Type-M

      1) SAP 비즈니스 프로세스 용도로 개발되는 프로그램

      2) 모듈풀 : 마스터 데이터를 기준으로 특정 비즈니스 프로세스를 신규로 추가/개선할 때 적용 시 추가 多

    - T-CODE : CO13 생산 오더 확정 취소

    - Type-F

      1) Function Group이라는 기능 모듈, 인터페이스 RFC의 전신

      2) RFC : SAP 외부의 Legacy 시스템, 데이터 송/수신 할 수 있는 프로그램 개발

      3) 재무의 경우 : 법인카드, 법인세 신고 인터페이스, 구매 포털 시스템, QMS 품질 관리 등

      4) 생산의 경우 : 공급 계획(SCM) 등

      5) 다양한 외부 플랫폼과 SAP 데이터를 주고받는 용도의 프로그램

 

728x90
반응형

loading