リソース不足の開発チームが「成功を託した手法」はこれだ:セキュアコーディングの極意【第4回】
フェロー諸島のデジタル化推進チームは、少ない人手や予算の中で、アプリケーション開発プロジェクトを円滑に進めるための解決策を探していた。そうして採用した開発ツールと手法を、プロジェクトの責任者が解説する。
企業の間で、サイバーセキュリティへの懸念が強まっている。アプリケーションセキュリティを向上させる開発手法として、開発の早期段階からセキュリティを意識する「セキュアコーディング」がある。セキュアコーディングを積極的に実施しているのがフェロー諸島だ。どのような開発手法を取り入れたのか。
開発チームの悩みを一掃したツールと手法は?
併せて読みたいお薦め記事
連載:セキュアコーディングの極意
- 第1回:セキュリティの“いたちごっこ”が終わらない現実
- 第2回:AIは「開発のテスト」をどう変える? “単純作業の終わり”は基本の「き」
- 第3回:「シフトレフト」でセキュアコーディング まずやるべき基本は?
事例から開発手法を学ぶ
ヤヌス・ラーション氏は、フェロー諸島で市民向けデジタルサービスを推進するプログラム「National Digitalisation Programme of the Faroe Islands」(以下、同プログラム)のチーフアーキテクトを務める。フェロー諸島はデジタル化戦略として、行政サービスを近代化し、優れたサービスを迅速に市民に提供するためのデジタルインフラ構築に取り組んでいる。同プログラムは人材不足であり、時間や予算の制約を抱えている。そのため開発チームは、外部の開発者が開発プロジェクトを導き、サポートしてくれる体制を必要としていた。
フェロー諸島は、デンマークとエストニア、アイスランドに倣ったデジタル化に取り組んでいる。つまりフェロー諸島政府が手掛けるアプリケーションは、欧州連合(EU)のセキュリティ標準に準拠することが前提になる。こうしたセキュリティを確保でき、かつ開発チームが複雑なアプリケーションを開発できるようにする必要があった。
そこでラーション氏のチームが選んだのが、OutSystemsの同名ローコード開発ツールだ。同氏にとってローコード開発ツールのメリットは、ツールがアプリケーション開発時に使用するライブラリ(プログラム部品群)を定期的に更新することだった。
同プログラムの品質保証プロセスは、条件定義からコーディング、リリースまで、自動テストと手動テストの両方を実施する。これらのテストについてラーション氏は、「アプリケーションおよびアップデートの水準が、機能的にも構造的にも品質標準を満たすかどうかを確かめるために重要だ」と説明する。テストでは、アプリケーションが核となる設計仕様をどの程度順守しているのかに加え、セキュリティやアクセシビリティー、スケーラビリティ、信頼性といった基準を満たしているかどうかを確認する。
ソースコードの技術的およびロジック的な品質を確かめるためのコードレビューとして、同プログラムはピアレビュー(開発者同士のレビュー)を実施している。開発体制としては、開発チームのメンバーに役割やタスクを割り振り、メンバー同士の連携を取りながら開発を進める「スクラム」を採用。複数のチームに対して、スプリント(短期間の開発周期)ごとにユーザーストーリー(各スプリントで取り組むべき機能や要件を明確にしたもの)とタスクを作成し、その両方に具体的な基準を定義した。
ユーザーストーリーは、開発チームのメンバーがアプリケーションの機能の役割を理解するのに役立つ。ユーザーストーリーが完成すると、そのユーザーストーリーの仕様を決めたアナリストがテストを実施。プロジェクトの進展状況を確認する際のデモにおいて、ステークホルダーは発言権を持つ。デモを通じてステークホルダーはアプリケーションを評価し、最終的に仕様を承認または拒否する。「市民ポータルや事業登録ポータルのような主要コンポーネントのリリース計画が決まると、アナリストが仕様を決めたテストケースをステークホルダーが実行する」とラーション氏は説明する。
次回は、アプリケーション開発プロジェクトの進め方のこつを解説する。
Computer Weekly発 世界に学ぶIT導入・活用術
米国TechTargetが運営する英国Computer Weeklyの豊富な記事の中から、海外企業のIT製品導入事例や業種別のIT活用トレンドを厳選してお届けします。
Copyright © ITmedia, Inc. All Rights Reserved.