さいごに
「S/4HANAアドオン移行のコツ」シリーズとして今まで、以下の4つの記事を投稿しました。
S/4HANAアドオン移行のコツ(概要編)
S/4HANAアドオン移行のコツ(CCLMで定常運用)
S/4HANAアドオン移行のコツ(計画・準備編)
S/4HANAアドオン移行のコツ(S/4HANA Extensibilityとアドオン改修)
経験談:何とか担保したアドオン品質
品質管理として、まずは最低限のルールとなるコーディング規約をきっちり作り、この時点で一定レベル以上の品質を担保したと思っていました。しかし、コードレビュー時には、プログラムが動かないことはもちらん規約すら守っていないものが続出。1メソッドが千ステップを超える、命名規約違反の変数名など、想像を超えて品質が悪く、結合テストに行くまでに多大な時間をかけてしまいました。
アルゴリズムなどはある程度、能力に依存する部分があるのでともかく、コーディング規約のような規則くらいは守って欲しかったものです。この時には単体テスト前にコードレビューを開発プロセスに組み込んでおいていたことに大きく助けられました。何人かには、「何でそんなにレビューをしてリソース費やすんだ?」、「設計書に書いてあることをコードにするだけだろう」と詰問されもしましたが、頑として譲らなかった自分を褒めてやりたいぐらいです。
「コーディング規約」のようなものは、いろいろなプロジェクトで使い回しがある程度できるものです。しかし、仕組のひとつとして作成・納品して終わりではなく、その仕組をまわさないと意味がありません。予算や期間がないなら、何らかの基準(経験の浅い開発者作成プログラム、重要プログラム等)で一定数だけでもチェックをすることで品質管理が大きく変わるとはずです。また、人間でなくATC(ABAP Test Cockpit)やCode Profilingなどを使って機械的に品質を一定レベル担保をすることも効率化の鍵となります。
[RELATED_POSTS]
Q&A
Q1. 既に開発済アドオンが数千本動いている中で、運用段階で個別に修正していくモチベーションがありません。 すべてのアドオンを改修するにしても費用に対して効果が見合わないです。どうしていけばいいか?
A1: 正直、抜本的な解決策があるとしたらば「アドオンを捨てて標準機能で業務をまわす仕組を作る」しかありません。 しかし、非常にハードルが高く現実的には難しいです。
現実的には下図のプロセスをできる範囲で継続的に進めていくことかと考えています。第1ステップの「アドオン整理」はCCLMで自動化しておくのが便利かと思います。
また、HANA LiveやBOなどを使って、アドオン機能を代替していくことも可能です。具体的アドオン削減方法は公表されていませんが、最近ではカルビー様のような事例も出ています。
Q2. HANAやハードウェアの性能向上によって、低品質に起因する処理速度が遅いアドオンの存在が隠蔽されてしまう。アドオン品質が低下するだけではなく、高処理コストのアドオンが増加した結果、インフラコストが上がってしまう状況を懸念しているが、どのように対処すればいいですか?
A2: 地道な方法ですが、下記のように人とシステムで品質担保をします。そして、それらを承認フローなどとともに運用としていきます。システムによる静的チェックは、警告が残った状態でプログラムの本番機適用(移送)を禁止することもできます。
チェック主体 | 静的チェック | 動的チェック |
---|---|---|
人 | 設計・コード・テストレビュー | パフォーマンステスト |
システム(自動) | ATC、Code Profiling | SQL Monitor、 Workload統計 |
Q3. システム移行時に総じて課題が多発しコストが高くなってしまう。 原因がよくわからない。
例えば、本来移行先システムの特性にあわせて変えておくべき設定を変えなかったため、本稼働後に設定・実装・テストをし直したなどです。
特にHANAなど新しい分野があるときには、起こりやすいです。そのような場合は、特に有識者を何らかの形で参加させ、品質管理を十分に行うことが重要です。
強力な武器に
こちらの「SAPのアドオン開発はなぜなくならないのか?」もぜひご覧ください。
- カテゴリ: S/4HANA
この記事に関するサービスのご紹介
導入/移行(プロフェッショナル)サービス
プロフェッショナルサービスでは主にSAPシステムの導入や移行、それに伴うテクニカルな支援を行います。ERPやS/4 HANA、SolManといった様々なSAP製品の新規導入、クラウドを含む様々なプラットフォームへのSAPシステムの最適な移行、保守切れに伴うバージョンアップ・パッチ適用等の作業だけでなく、パラメータ設計、パフォーマンスチューニング、導入・移行計画支援等についても対応いたします。
詳細はこちら