SAP S/4HANAの導入やUXモダナイゼーションにおいて、「この要件、どの技術で開発すべきか?」と悩むことは少なくありません。
開発コスト、デリバリースピード、そして将来的な保守性(Clean Core)のバランスを取るために、私は以下の3つのレイヤー(Level)で開発アプローチを評価・選定することを推奨しています。
🔹 Level 1:No-Code / Low-Code ファースト(SAP Build Apps)
まずは「コードを書かずに、あるいは最小限のロジックで実現できないか」を検討します。
- アプローチ: SAP Build Appsを活用したビジュアル開発
- 適用領域: 現場での簡易入力、承認ワークフロー、マスタ参照などのシンプルなユースケース
- メリット: 開発工数を劇的に削減でき、開発者や業務部門との迅速なプロトタイピングが可能
🔹 Level 2:メタデータ駆動開発(SAP Fiori elements)
Build Appsでは標準ERP連携や複雑な画面パターンに対応しきれない場合、次に検討すべきはFiori elementsです。
- アプローチ: RAPやCAPをベースに、CDS ViewとUI AnnotationsでUIを自動生成。フロントエンドはPage Mapによる設定や、必要に応じたFlexible Programming Model(FPM)の最小限の拡張に留める
- 適用領域: 一覧検索・詳細画面(List Report / Object Page)など、エンタープライズ標準に準拠した業務画面
- メリット: UI/UXの統一感を担保しつつ、保守コストとアップグレード時の影響を最小化
🔹 Level 3:プロコードによる完全自由設計(SAPUI5 Freestyle)
Level 1およびLevel 2の標準テンプレート枠組みではどうしても満たせない、特殊かつ高度な要件にのみ適用します。
- アプローチ: SAPUI5を用いたフルスクラッチ(Freestyle)開発
- 適用領域: 独自の動的グリッド、複雑な対話型UI、サードパーティ製ライブラリ(D3.jsなど)との高度な統合が必要な業務
- メリット: 自由度・柔軟性は最大化される一方、開発期間や将来のメンテナンス負荷は増大するため、適用箇所の見極め(ガバナンス)が重要
💡 まとめ
「何でもUI5 Freestyleで書く」時代から、「要件の複雑度に応じて適材適所でレイヤーを選択する」時代へシフトしています。
- まずは Build Apps(低コスト・迅速デリバリー)
- 次に Fiori elements(標準準拠・高保守性)
- 最後の手段として UI5 Freestyle(高度なカスタム要件)
この優先順位を開発標準として定義しておくことで、プロジェクト全体のTCO(総保有コスト)削減と開発スピード向上の両立が可能になります。
皆様のプロジェクトでは、フロントエンド技術の選定基準をどのように定義されていますでしょうか?ぜひご意見をお聞かせください。
# # #SAPBuild #SAPUI5 #BTP #S4HANA #CleanCore #AppDevelopment