나는 Full-Stack 웹 개발자다. 22년에 참여한 프로젝트를 통해 SAP 전반 생태계를 체험했다.
관련 모듈 개발자들과 일을 하며, 웹 포탈 서비스를 구축하여 운영을 맡아 진행하고 있다.
그런데 웹 개발을 하면서 아쉬움이 많이 남는다.
첫번째, 단가. (Cost)
두번째, 업무. (Task)
세번재, 대우. (Treatment)
웹 개발자로 일을 하면서 위 3가지가 항상 아쉽다.
다행히 현재 있는 곳은 2, 3번에 대한 조건은 좋으나 인간의 욕심은 끝이 없지 않는가?
1번에 대한 요소는 어딜가나 나의 욕망을 다 채워줄 순 없을 것이다.
서론은 여기까지 이야기하며, 본격적으로 SAP UI5, Fiori를 공부하는 이유는...
희소성, 단가, 업무, 대우 모두 좋다는 것을 알기 때문이다. (여기만 그런가?)
그렇게 생각하지 않는다면, 제발 댓글좀 달아줘라. 나도 현실은 제대로 알아야 하지 않겠는가?
부탁한다.
SAP UI5 란?
SAP UI5는 SAP의 엔터프라이즈 애플리케이션을 위한 프론트엔드 개발 툴킷이다.
UI5는 "User Interface 5"의 약자로, HTML5를 기반으로 하는 JavaScript 프레임워크다.
이를 통해 사용자 친화적이고 반응형 웹 애플리케이션을 개발할 수 있다.
배경 및 역사
개발 목적
SAP UI5는 SAP 시스템의 사용자 인터페이스를 현대화하기 위해 개발되었다.
기존의 SAP 애플리케이션은 종종 복잡하고 사용하기 어려웠는데, UI5는 이러한 문제를 해결하고자 하는 목적으로 탄생했다.
역사
SAP UI5는 2010년대 초반에 처음 소개되었습니다. SAP의 전략은 기존 SAP 시스템을 보다 접근하기 쉽고, 모바일 및 다양한 디바이스에서 사용할 수 있도록 만드는 것이었습니다.
기본 원리 및 개념
HTML5 기반
SAP UI5는 HTML5, CSS3, JavaScript를 사용하여 개발할 수 있다.
이는 웹 표준을 따르며, 다양한 브라우저와 장치에서 호환된다.
MVC 패턴
UI5는 Model-View-Controller(MVC) 패턴을 기반으로 한다.
이느 애플리케이션의 데이터(Model), 사용자 인터페이스(View), 그리고 데이터와 인터페이스 사이의 상호작용을 제어하는 로직(Controller)을 분리하여 개발한다.
데이터 바인딩
UI5는 데이터와 UI 요소 간의 결합을 용이하게 하는 강력한 데이터 바인딩 기능을 제공한다.
이를 통해 데이터 모델의 변경이 자동으로 View에 반영된다.
-> 여기까지 들어봤을 때, 확실히 Java 및 웹 개발자들이 SAP UI5 로 넘어오는 경우가 많다.
장단점
장점
통합성: SAP 시스템과의 뛰어난 통합성을 제공한다.
표준 준수: HTML5, CSS3, JavaScript 같은 웹 표준을 사용한다.
반응형 디자인: 다양한 디바이스와 화면 크기에 맞춰서 유연하게 대응한다.
국제화 지원: 다양한 언어와 지역 설정을 지원한다.
단점
학습 곡선: SAP UI5의 특정 개념과 SAP 시스템에 익숙해지는 데 시간이 필요하다.
성능 문제: 때때로 복잡한 애플리케이션에서 성능 저하가 발생할 수 있다.
SAP 중심성: 주로 SAP 생태계 내에서 사용되므로, SAP 이외의 환경에서는 제한적일 수 있다.
-> SAP 생태계 내에서 사용된다고 해서 데이터를 외부로 보내기 위해서 Portal을 구축할 수도 있다.
다만 SAP UI5, Fiori를 사용한 프로젝트 비용 vs Portal 구축 프로젝트 비용을 비교해봐서 진행하겠지만.
사용 이력 및 현재 상태
기업 환경에서의 적용: SAP UI5는 주로 SAP를 사용하는 기업 환경에서 활용된다.
ERP, CRM, SCM 같은 시스템의 사용자 인터페이스를 개선하는 데 주로 사용된다.
계속되는 발전: SAP는 UI5를 지속적으로 발전시키고 있으며, 새로운 기능과 개선 사항을 주기적으로 추가하고 있습니다. 이는 클라우드 기반 애플리케이션과 모바일 애플리케이션에 특히 중점을 두고 있으며, 최신 웹 기술과의 호환성을 지속적으로 향상시키고 있다.
한계 및 도전
한계
특정 기술 스택에 한정:
SAP UI5는 주로 SAP 기술 스택에 한정되어 사용됩니다. 다른 기술 스택과의 통합이나 독립적인 사용에는 제한적일 수 있습니다.
자원 요구량: UI5 애플리케이션은 때때로 크고 복잡해질 수 있으며, 이는 브라우저 성능에 영향을 줄 수 있습니다.
도전
웹 기술의 빠른 발전:
웹 기술은 매우 빠르게 발전하고 있으며, SAP UI5도 이러한 변화에 계속 적응해야 합니다.
다양한 사용자 기대 충족: 사용자들은 점점 더 높은 수준의 사용성과 인터페이스 디자인을 기대합니다. SAP UI5는 이러한 기대에 부응하기 위해 지속적으로 발전해야 합니다.
개발 도구 및 리소스
SAP Web IDE:
SAP UI5 개발을 위한 주요 도구 중 하나입니다. 클라우드 기반 통합 개발 환경으로, UI5 애플리케이션 개발을 위한 강력한 도구와 템플릿을 제공한다.
Intellij :
만능 Intellij 에서도 제공하며, 손쉽게 개발이 가능하도록 Plugin도 모두 제공하고 있다.
오픈소스 버전 - OpenUI5: SAP UI5의 핵심 기능을 기반으로 하는 오픈소스 버전인 OpenUI5도 있습니다. 이를 통해 누구나 UI5 기술을 사용하여 애플리케이션을 개발할 수 있습니다.
커뮤니티와 문서
SAP UI5에는 활발한 개발자 커뮤니티와 방대한 문서 자료가 있습니다. 이를 통해 학습 자료와 지원을 받을 수 있습니다.
SAP UI5는 SAP 기반 애플리케이션의 사용자 경험을 혁신적으로 개선할 수 있는 강력한 도구입니다. 그러나 그 사용은 주로 SAP 생태계 내에 한정되며, 웹 기술의 빠른 변화와 사용자 기대의 변화에 지속적으로 적응해야 하는 도전이 있습니다.
SAP Fiori 란?
SAP Fiori는 SAP의 현대적인 사용자 경험(User Experience, UX) 디자인의 핵심이다.
SAP Fiori는 기존 SAP 소프트웨어의 복잡한 사용자 인터페이스를 단순화하고, 사용자 친화적인 디자인을 제공하기 위해 개발되었다.
이것은 모바일 장치, 태블릿, 데스크탑 등 다양한 플랫폼에서 일관된 사용자 경험을 제공하는 것을 목표로 한다. 즉, 반응형 웹개발이 가능하다.
배경 및 역사
개발 목적
SAP Fiori는 전통적인 SAP GUI의 복잡성을 줄이고,
더 간결하고 직관적인 사용자 인터페이스를 제공하기 위해 개발되었다.
역사
SAP Fiori는 2013년에 처음 소개되었다.
SAP의 사용자 경험을 혁신하기 위한 이니셔티브의 일환으로, 모바일 우선 접근 방식을 채택했다.
기본 원리 및 개념
사용자 중심 디자인
Fiori는 사용자 중심의 디자인 철학을 따른다.
이는 사용자의 일상 업무와 작업 흐름을 이해하고 이를 기반으로 사용자 인터페이스를 디자인하는 것을 의미한다.
롤 기반
Fiori 애플리케이션은 특정 사용자 역할에 맞춰져 있다.
각 사용자는 자신의 역할과 관련된 정보와 기능에만 접근할 수 있다.
반응형 디자인
Fiori는 다양한 디바이스와 화면 크기에 맞게 조정되는 반응형 웹 디자인을 채택한다.
장단점
장점
사용자 친화적
간결하고 명확한 사용자 인터페이스를 제공한다.
접근성
다양한 장치에서 일관된 사용자 경험을 제공한다.
개선된 생산성
사용자의 작업 흐름과 효율성을 향상시킨다.
단점
구현 비용
Fiori를 통합하는 데 시간과 비용이 들 수 있다.
-> 희소성의 원리를 생각하자.
학습 곡선
기존 SAP 사용자에게는 새로운 인터페이스에 익숙해지는 데 시간이 필요할 수 있다.
한계된 기능성 초기 버전의 Fiori는 제한된 기능을 제공했으나, 시간이 지남에 따라 기능이 확장되고 있습니다.
사용 이력 및 현재 상태
폭넓은 적용
SAP Fiori는 SAP의 다양한 솔루션에 적용되어 사용자 경험을 개선하고 있다.
지속적인 개발:
SAP는 Fiori를 지속적으로 발전시키고 있으며, 새로운 기능과 개선 사항을 지속적으로 추가하고 있습니다.
한계 및 도전
통합과 호환성 문제
기존 SAP 시스템과의 통합과 호환성 문제가 발생할 수 있다.
지속적인 유지 보수 및 업데이트 필요성
SAP Fiori는 계속해서 발전하고 있으며, 이에 따라 기업은 이를 유지 보수하고 업데이트해야 하는 필요성이 있다.
이는 추가적인 자원과 노력을 요구할 수 있다. 즉, 지속적인 SM이 상주해야할 필요가 있다.
도전과제
사용자 접근성과 호환성
다양한 사용자 및 디바이스에 걸쳐 일관된 사용 경험을 유지하는 것이 도전적일 수 있다.
특히, 기존의 SAP 시스템 사용자들에게 새로운 인터페이스에 대한 적응을 요구하는 것은 시간과 교육이 필요할 수 있다.
기술적 도전
Fiori는 최신 웹 기술을 기반으로 하고 있으며, 이러한 기술들은 빠르게 발전하고 있다.
이에 따라 SAP Fiori도 지속적으로 기술적 발전을 추구해야 한다.
SAP Fiori의 특징적 요소
Fiori Launchpad
Fiori 애플리케이션을 중앙에서 접근하고 관리할 수 있는 플랫폼이다.
사용자는 이 Launchpad를 통해 필요한 애플리케이션에 빠르게 접근할 수 있다.
디자인 원칙
SAP Fiori는 "Role-Based", "Simple", "Coherent", "Delightful"과 같은 핵심 디자인 원칙을 따른다.
이는 사용자의 업무 효율성과 만족도를 높이는 데 중점을 두고 있다.
결론
실제 SAP를 사용하는 기업은 대기업들이다. SAP는 전통적으로 오래된 솔루션이지만 절대 다른 솔루션을 못쓴다.
왜냐? 이미 대기업은 편리하다는 것을 느끼니깐. 또한 대거 SAP를 통해서 WEB으로 올리는 프로젝트들은 앞으로 더 많아질 것이다. SAP KOREA 및 GLOBAL에서 밀고 있는게 현실이니깐.
JAVA 웹 개발자로서 너무 범용적으로 쓰는 스킬은 결국 대체되기 쉽다. 그래서 대체불가한 인력으로 거듭나기 위해서는 희소성의 기술을 배우는게 최상의 이득이라고 판단했다.
앞으로의 정리된 기술 정보를 얻고 싶다면, 주시해줬으면 좋겠습니다.
난 이미 SAP Fiori 시장으로 갈 준비를 하고 있으니깐.
감사합니다.
댓글