＜スクエアfreeセミナー＞
３０分でわかるユーザビリティ設計の基本〜ITシステムにおいて重要性を増す非機能要件への取り組み方〜
ブライテクノ株式会社 中⻄ 良明
2023年9⽉28⽇© 2023 Brightechno, Inc.

発表者略歴中⻄ 良明 NAKANISHI Yoshiaki
ブライテクノ株式会社 代表取締役• 経歴• ⼤阪⼤学 情報⼯学分野修⼠課程卒業• 松下電器産業(株)に⼊社し、インターネット・情報セキュリティ・携帯電話関連技術の研究開発に従事• マカフィー(株)では携帯電話・スマートフォン向けのセキュリティソフトの研究開発を担当• ソニー・エリクソン・モバイルコミュニケーションズ(株)でAndroidデバイス開発プロジェクトに参画• 2010年ブライテクノ(株)を創業• 趣味• 謎解きゲーム
nakanisi@brightechno.com
X(旧Twitter) @chun_ryo© 2023 Brightechno, Inc.

2

著書・講演・教育実績
システム設計のセオリーII (リックテレコム) New!
クラウドベース開発のシステム設計おける理論と⼿順
https://www.amazon.co.jp/dp/4865943633

Android開発者のためのSwift⼊⾨ (リックテレコム)
SwiftによるiOSアプリ開発の⼊⾨書
https://www.amazon.co.jp/dp/4897979838

Effective Android (インプレスジャパン)
Androidエキスパートによる⾼レベルなアプリ開発技術の指南書
https://www.amazon.co.jp/dp/4844335340

Product Manager Bootcamp(Google Japan)

ワイヤレス技術セミナー(リックテレコム)

Droid Kaigi 2016
(⼀般社団法⼈Droid Kaigi)

Tech Institute(早稲⽥⼤学・⾓川アスキー総研）© 2023 Brightechno, Inc.

セキュリティとAndroidアプリ品質ガイドラインのセッション
Android・iOS・ウェアラブルに関してのセッション
Android 6.0の省電⼒機能に関するセッション
Androidのセキュリティに関する授業を担当

3

会社概要
ブライテクノ株式会社 / Brightechno, Inc.
代表取締役

中⻄ 良明

創⽴年⽉2010年10⽉
東京都千代⽥区岩本町2-13-6 ミツボシ第3ビル 703

所在地・都営新宿線「岩本町」駅 徒歩3分・JR線「秋葉原」駅 徒歩5分
・東京メトロ⽇⽐⾕線「⼩伝⾺町」駅 徒歩6分

電話番号

03-5809-1814

URL

https://brightechno.com/

業務内容

ソフトウェア開発およびコンサルティング
・ Android/iOS アプリケーション開発
・ IoTソフトウェア開発
・ Webアプリケーション開発
情報セキュリティコンサルティング© 2023 Brightechno, Inc.

4

今⽇お話しすること} 機能要件・⾮機能要件について} 標準準拠とUX向上の関係について} 実践するための壁と対策について© 2023 Brightechno, Inc.

5

機能要件と⾮機能要件（ざっくり）} 機能要件◦ システムによって実現したい⽬的を満たすために必要なもの
 使いにくくても⽬的を達成できるだけの機能があれば充⾜できる} ⾮機能要件◦ システムの使いやすさ、性能、保守のしやすさなど
 業務システムなら、利⽤者の⽣産性向上を達成するための能⼒ コンシューマ向けシステムなら、利⽤者がファンになってくれるための能⼒© 2023 Brightechno, Inc.

6

⾮機能要件は軽視してよいのか？
} 性能要件が⽰されていなかったら？

◦ タスク実⾏(例: 1件の帳票の登録や更新)時にユーザーを5秒待たせてもOK 1000⼈の従業員による利⽤なら、1件あたり5000秒(約1時間20分)の時間が無駄に費やされる} 保守要件が⽰されていなかったら？

◦ 2週に1回、12時間のメンテナンスが発⽣するシステムでもOK 平⽇に⽌めることはできず、休⽇にエンジニアの稼働が発⽣する◦ コンシューマ向けサービスが⽉に1回メンテナンスに⼊ってもOK 機会損失による収益への影響、メンテナンスによって利⽤できなかったユーザーの離脱の発⽣などが考えられる© 2023 Brightechno, Inc.

7

⾮機能要件は軽視してよいのか？
} 使いやすさについての指標がないとどうなるか？

◦ スマートフォンで電話番号⼊⼒のフォームをタップした時、⽇本語⼊⼒のキーパッドが表⽰される
 ユーザーが数字キーパッドに切り替える⼿間をかけさせられる◦ PCで画像やファイルアップロードする時に、ファイル名に使えない⽂字があるとして拒絶される
 ユーザー側からすると理不尽なエラーをつきつけられる© 2023 Brightechno, Inc.

8

⾮機能要件は軽視してよいのか？
} 結論：軽視してはいけない◦ 社外に開発を依頼する場合、社内で開発する場合のいずれであっても、要求仕様には⼗分に検討した機能要件と⾮機能要件を記載するべき 「○○機能が欲しい」だけではなく、使い勝⼿、性能、保守性なども⽰す◦ とはいえ、システム・PC・スマートフォンの専⾨家ではないビジネス部⾨が、適切な機能要件と⾮機能要件を⽰すことは難しい◦ 社内外の専⾨家に頼る◦ リファレンス（お⼿本）、標準ライブラリ、OSS、クラウド(SaaS等)、ローコード・ノーコード開発ツール、共通開発環境を活⽤する
 作る開発・作らない開発を検討する上で重要© 2023 Brightechno, Inc.

9

リファレンス（お⼿本）の活⽤} お⼿本になるもの（モバイルUIの場合）◦ 公式アプリ（例：標準メールアプリなど）
 公式アプリは基本的にデザインガイドラインに準拠している
 ユーザーは公式アプリのUIに慣れている◦ 利⽤者の多いアプリ
 LINE、メルカリ、Xなど
 デザインガイドラインに準拠しつつ、独⾃の使いやすさを追求している◦ デザインガイドライン
 AndroidはMaterial Designのガイドライン
 https://m3.material.io/

 iOS/iPadOSはHuman Interface Guidelines https://developer.apple.com/design/human-interface-guidelines
技術者向けの英語資料のためハードルは高い© 2023 Brightechno, Inc.

10

リファレンス（お⼿本）の活⽤} 発注者◦ 標準アプリ、有名アプリ、デザインガイドラインの存在を意識する
 開発者からの提案が適切かどうかを判断する基準を持てる
 RFPに⾮機能要件にそれらの情報を提⽰できるようになる} 開発者◦ 標準アプリ、有名アプリ、デザインガイドラインについて知っておくべき
 少なくとも必要になった時に最新情報を参照・検討し顧客に提案できる◦ 実装⽅法について知っておくべき 標準ライブラリでできるのか、有名なOSSはあるのか、など© 2023 Brightechno, Inc.

11

標準ライブラリ・OSSの活⽤} 多くのアプリ・システムで実装されている機能のほとんどは、標準ライブラリやOSSとして提供されているもの◦ スクラッチから⾃作するよりも、⾮機能要件も考慮された洗練されたものを利⽤できる スマートフォンに表⽰されている画⾯を、下⽅向にスワイプして離すことでリロードする機能
 ⼤⼿テック企業が⾃社内で開発したUI部品をOSSとして提供する場合あり◦ OSバージョンアップなどを考慮して開発されている◦ ただし、開発者がメンテナンスをやめるリスクはあるので、その場合の⽅針をあらかじめ決めておく ⾃社でメンテナンスを継続する
 乗り換え先を探す、など© 2023 Brightechno, Inc.

12

クラウドの活⽤} いろいろなシステムが必要とする機能はXaaS、ノーコード・ローコードツールとして提供されている◦ ユーザー管理のシステムおよびUI
 IDaaS◦ ノーコード・ローコードシステム
 MAツール、CRM
 スマートフォンアプリ構築
 業務システム 構築, etc.
} 独⾃開発との⽐較◦ 独⾃開発・運⽤コストとの⽐較（開発期間への影響も考慮する）◦ サービス提供を中⽌されるリスク、価格上昇リスクの評価© 2023 Brightechno, Inc.

13

クラウドの活⽤（ユーザー管理）} ユーザー管理機能をオンプレミスやIaaSで持つか、IDaaSを利⽤するか◦ コンシューマ向けなら、安価なソーシャルログイン機能の利⽤が第⼀候補
 ユーザー登録・ログインのUIまで含めてサービスから提供され、セキュリティの責任を軽減できる たとえば、Firebase Authenticationの場合MAU 49,999まで無料◦ 業務⽤システムのID管理の場合、コストを加味して検討する
 アカウントごとに⽉額数百円かかるが、⾼度なユーザー管理機能が提供される
 たとえば、1000アカウントで1アカウント500円/⽉かかる場合
 ⽉額500,000円の利⽤料が発⽣
 オンプレミスやIaaSで実現した場合、ソフトウェア導⼊費(開発費等)、セキュリティ対策、保守・運⽤費等を元に計算する© 2023 Brightechno, Inc.

14

構成要素の交換に備える} クラウドのサポート期間、提供期間はコントロールできない◦ API Gatewayなどの仕組みを⽤いることで、最⼩限の影響で構成要素を交換できるように備えるシステム開発のセオリーIIより抜粋© 2023 Brightechno, Inc.

15

ここまでのことを実践できるか？
} 発注者（ユーザー企業）◦ ビジネス部⾨の⽅が、どんなクラウドシステム、OSS、標準機能があるかなどを細かく知って対応するのは現実的には不可能◦ 社内IT部⾨でも、⽇々の業務を抱えている中で最新技術情報をキャッチアップすることは難しい◦ 技術コンサルティングができるR&D部⾨などを持っているのが理想的} 開発者（受託開発会社）◦ 顧客からの要求で⾮機能要件について⽰されていない場合に、検討して提案することが望ましい◦ 最新技術動向などをキャッチアップできていることが期待される© 2023 Brightechno, Inc.

16

「社内IT部⾨に頼る」は難しい？
} 受託開発会社が接する案件情報の⼤部分が、ビジネス部⾨だけで考えられたものに⾒える◦ 社内に専⾨部隊がまったくいない（中⼩企業ではよくある）◦ IT部⾨が保守に特化した⼈材で構成されている◦ ふんわりした要件から稟議のために概算⾦額を知りたいだけ◦ ビジネス部⾨とIT部⾨の⾵通しが悪い◦ まず⾃社内でどこまでできるかを正確に把握した⽅がよい© 2023 Brightechno, Inc.

17

作る開発・作らない開発検討の前に} DX(デジタルトランスフォーメーション)でどう変化するべきかをまず考える◦ 社内IT部⾨が保守に特化していてDXの検討に適していないなら、外部専⾨家に頼る◦ できれば⾃社サービスなどに誘導しない、独⽴性が⾼い専⾨家を利⽤できるとよいがなかなか難しい 保険アドバイスサービス事業者が保険代理店業になっているように、IT化促進の補助⾦・助成⾦を活⽤を提案する事業者なども代理店ビジネスであることが多い© 2023 Brightechno, Inc.

18

最新技術動向に強い専⾨家はどこにいる？
} 残念ながら、受託開発会社には⾮常に少ない◦ 最新情報を追いかける優秀な専⾨家は⼤⼿テック企業に引き抜かれがち◦ ⼤⼿テック企業は、プラットフォームの最新情報に精通した部隊を抱えていることが強さになることを理解している
 ⾼い技術⼒や素養を持った技術者は、業務で最新技術に触れられる環境を強く求めている} 社内で育つ環境を作るのが理想、出来ないならコンサルティングを利⽤する◦ ⼤⼿テック企業所属エンジニアと、副業マッチングプラットフォームで繋がるのも⼀つの⼿© 2023 Brightechno, Inc.

19

⽣成AIに要件定義を作ってもらうことは可能か？
} ⽣成AIに指⽰して要件定義をまとめることはできそう◦ NTTデータが⽣成AI使うシステム開発⼿法を全技術者に展開、⼈⽉型契約が⾒直しに(⽇経クロステック) https://xtech.nikkei.com/atcl/nxt/column/18/02423/073100046/◦ ChatGPTに要件定義をお願いしたらハンパなかった(DevelopersIO)
 https://dev.classmethod.jp/articles/gpt-requirement-definition/} 画期的・独創的なシステムについては適さないか？

© 2023 Brightechno, Inc.

20

⽣成AIでシステム開発できるか？
} かなり使える技術ではあるが、うまく使いこなすためにも基礎的な知識を要する◦ 定型的なアプリであれば、要求を伝えて⽣成しやすい 定型的なアプリは学習元データに含まれている場合が多い◦ ノーコード・ローコード開発を置き換えていくかもしれない
 ⽣成AIの機能で開発をしていくこともある程度はできるが、できあがったものが本当に正しいか、セキュリティ上の問題が無いかなどのチェックは必要} 少なくとも現時点では、⽣成AIを活⽤する良い技術者を利⽤することが最適解© 2023 Brightechno, Inc.

21

参考情報
} 次ページ以降で紹介© 2023 Brightechno, Inc.

22

共通開発環境} Flutter◦ Googleが主導するAndroid/iOS/Web/PC/Mac向けの共通アプリ開発環境◦ Javaに似たDart⾔語を⽤いて開発できるため、AndroidやiOSアプリ開発者にとって使いやすい} ReactNative◦ 元々Web開発向けプラットフォーム◦ JavaScriptで開発ができるため、Webアプリ開発経験者にとって使いやすい} .NET MAUI

◦ Microsoftが主導する共通開発環境◦ C#とXAMLで開発できるため、Windowsアプリ開発経験者にとって使いやすい© 2023 Brightechno, Inc.

23

モバイル向けノーコード・ローコード開発} テンプレート選択＋カスタマイズ開発サービス◦ 事業者が提供する機能の組み合わせだけで開発するのであれば、⾼速かつ⽐較的安価に⾼機能アプリをリリースできる◦ 独⾃のカスタマイズが多いと、スクラッチからの開発と⼤きな差はでにくい（逆転する場合もあり得る）} FlutterFlow◦ Android/iOSなど向けのアプリをWeb上の設定のみで作成できる◦ 安い、ただし⽇本語説明なし◦ ⽣成されたアプリのFlutterソースコードをダウンロードできる ダウンロードしたコードを元にカスタマイズ開発もできますが、かなり難解なコード（コメントなど無し）が出⼒されるので、現実的ではなさそう© 2023 Brightechno, Inc.

24

ご静聴ありがとうございました© 2023 Brightechno, Inc.

25