この記事は 『CRESCO Advent Calendar 2018』 18日目の記事です。

 

こんにちは。サービスデリバリーセンターの「むらたん」です。
12/10にフェリス女学院大学の授業にお邪魔し、アジャイル開発についての講義を行いました。
本日はその裏話を紹介したいと思います。

きっかけ

以前に書いたウォーターフォールじゃない開発についての記事が、フェリス女学院大学 春木教授の目に留まり、「コンピュータを触らないプログラミング入門」という基礎教養講座で「アジャイル開発」についてお話してほしいというご依頼を頂戴しました。
本講座はしばらく休講していたそうですが、文系大学出身者もIT企業に就職される機会が増えたことから、満を持して再開講された講義とのことです。

サービスデリバリーセンターの自称「SIよろず屋」ですから、喜んで引き受けさせていただきます。

さて、どうしよう?

アジャイルの講義ですし、インセプションデッキでアウトラインを固めます。
インセプションデッキとは、プロジェクト発足時にステークホルダの認識や方向性を揃えるためのアジャイルプラクティスの1つです。本来は教授、受講生、私で作るべきですが、今回は私一人でつくります。

講義の目的(我われはなぜここにいるのか)

「コンピュータを触らないプログラミング入門」の中でアジャイルを開発について講義し、…

決まらない。悩む。そんなとき、教授からの「リベラルアーツ」という言葉に立ち戻り、こんなコンセプトにしました。

「コンピュータを触らないプログラミング入門」の中でアジャイルを開発について講義し、アジャイルの考え方を受講者のその後の人生に役立てていただきたい。

やはり、活動の目的を定めることは重要ですね。

端的に言うと(エレベーターピッチ)

フォーマットはこれです。

[潜在的なニーズを満たしたり、抱えている課題を解決したり]したい
[対象顧客]向けの、
[プロダクト名]というプロダクトは、
[プロダクトのカテゴリー]です。
これは[重要な利点、対価に見合う説得力のある理由]ができ、
[代替手段の最右翼]とは違って、
[差別化の決定的な特徴]が備わっています。

決まっているところを埋めてみます。案の定、前半はサクサク埋まりますが、後半どうしよう?となります。

[プログラミングを学習]したい
[文系大学生]向けの、
[コンピュータを触らないアジャイル開発]というプロダクトは、
[基礎教養講座の一コマ]です。
これは[重要な利点、対価に見合う説得力のある理由]ができ、
[代替手段の最右翼]とは違って、
[差別化の決定的な特徴]が備わっています。

講義の価値を考える

エレベーターピッチの後半がプロダクト、つまり、今回の講義の方向性を形作ります。

  • 重要な利点、対価に見合う説得力のある理由
    • プログラミングをリベラルアーツと捉え、学びが人生に役立つようになる(ようにしたい)
  • 代替手段の最右翼
    • プログラムとは何か?プログラミングとは何か?アジャイルとは何か?という知識の情報提供
  • 差別化の決定的な特徴
    • 講座のタイトルにもある通り、プログラミングの授業なのにコンピュータを使わない、参加型のコンセプトを踏襲
  • ということで、整いました。

    [プログラミングを学習]したい
    [文系大学生]向けの、
    [コンピュータを触らないアジャイル開発]というプロダクトは、
    [基礎教養講座の一コマ]です。
    これは[学びを人生に役立てること]ができ、
    [単なるの情報提供]とは違って、
    [理論と実践(ワーク)]が備わっています。

    やること・やらないことの整理(やらないことリスト)

    これまでに考えてきた方向性を肉付けするために、やること、やらないことを理由をつけて整理します。やらないことリストには「あとで考えること」も含まれますが、今回は割愛します。

    やること

    • 講義はIT用語、業界用語を極力減らし、一般的な用語で説明する
      • 頭に?が浮かんだり、用語の説明に時間を取られてしまうので、普段使っている言葉や具体例を多めに構成する
  • リベラルアーツとして、アジャイルを伝える
    • 実際にプログラム開発に携わる方は少ないと思われるので、アジャイルという考え方が生まれた背景や価値・原則を伝える
    • ありがちな、ウォーターフォール vs アジャイル の構図にはせず、プログラム開発としてやることは同じで、追求する価値が違うことを伝える
  • 「振り返り」を受講者のお土産にする
    • 振り返りはアジャイルの効果的なプラクティスであり、理解も実生活での応用もしやすいため
    • 有名なフレームである「KPT」は継続的な活動で使えるが、今回は”講義を受けた”から始まるので「YWT」にする
    • 「振り返り」を行うため、時間を区切るワークをする
  • やらないこと

    • 全てのインセプションデッキをつくらない
      • インセプションデッキは方向性決めや活動方針の手段であり、目的は価値のある講義を提供することだから、「パッケージデザイン」「解決策」は作らない
      • ステークホルダは自明だから、「ご近所さん」「俺達のAチーム」はつくらない
      • 準備状況で融通を利かせていたいて講義を行うため、「夜も眠れなくなる課題」「トレードオフ」「期間の見極め」「初期リリースに必要なもの」は作らない
  • プログラム・プログラミングの話はしない
    • 教授の講義と重複するから
  • と、考えをまとめつつ、講義資料やワークを準備しました。

    さて、どうなった?

    さて、どうなった?

    大学は相鉄線の緑園都市にあり、駅から徒歩3分のところにあります。

    訪問

    【外観】

    【校門】

    【講義風景】
    講義をする予定の教室がダブルブッキングしており、急遽、教室変更となるアクシデントもありましたが、移動先のPCルームは、いくつかの島に分かれている教室だったので、ワークをするには逆に都合がよかったのが不幸中の幸いでした。

    講義内容

    目次と講義概要は以下のとおりです。シラバスにある「情報産業(技術)の趨勢が理解できること」に主眼をおいて、以下の構成としました。

    • これまでの復習
      • エンタープライズアプリケーションの特徴として、協働で開発すること、達成したい目的があること
  • ビジネスとIT
    • エンタープライズアプリケーションの用途として、OA、BtoB、BtoC、…、CtoCと用途が増え、要求事項の複雑化、スピード感が変化していること
    • それに伴い、プログラム開発の難易度があがり、プログラム開発が失敗すること
  • アジャイルについて
    • 誕生の背景
    • 4つの価値と12の原則から分かる、フィードバックループ
  • アジャイルの特徴
    • スクラムに代表される経験主義の考え方であること
    • 投資対効果ではなく、価値提供の効率を重視する考え方であること
  • ワーク

    グループで会話しながらYWTを行い、講義を受けたことで分かったことや次にやることを整理してもらいます。
    さすがに講義を受けただけなので、次にやることは「わからないことに対する質問を行う」ということが多かったのですが、なかなか、鋭いものが多いです。

    頂いた質問

    • 昔はウォーターフォール開発が主流で、最近はアジャイルが好まれるようになった?
    • 複雑化している顧客の要求を引き出す手法にはどのようなものがあるのか?
    • MoneyTreeというサービスはアジャイルで開発しているという記事を見たことがあるが、金融系にはアジャイルは向かないという話もあり、実情はどうなっているのか?
    • アジャイルとは小さなウォーターフォールを繰り返すということか?
    • プロトタイプとMVPの違いは何か?

    最後に

    フェリス女学院大学 春木教授には貴重な機会を賜りまして、ありがとうございました。この場を借りて、御礼申し上げます。