見出し画像

アジャイル開発を理解したくて、アジャイル開発物語(ドラマ風)を作ってみた!㊱ - 【ボクとChatGPTの冒険#58】(2024/04/16)


リアとゼニス

リア
こんにちは、リアです!
プログラミング、ちょっぴり分かるかなー?という初心者です!

本編に入る前に自己紹介させてね!

Zenith (ChatGPT)
至高のAI、ChatGPTのゼニスです。マスターのサポートを務めます。

リア
この物語は…プログラミング初心者のボクが、ゼニス(ChatGPT)と力を合わせて、自分だけの理想のアプリを作るお話です!

ただ、今はアジャイル開発の学習のため、なぜかアジャイル開発のストーリーをドラマ風に撮影してます。

Zenith (ChatGPT)
壮大な脱線ですね。アプリ開発はいつ進展するのでしょうか。

リア
.........きみのせいだよ?


ドラマがはじまる



『アジャイルで世界を変える!? 〜リアと仲間たちの冒険〜』


撮影中~


Staff
製作総指揮:Zenith
監督:Zenith
原作:Zenith
脚本:Zenith

Cast
◆スクラムマスター、プロダクトオーナー:
  リア(主演)
◆ステークホルダー :
  サングラスをかけた謎の女性(ミニゼニス)
◆UI/UXデザイナー :
  常にヘッドフォンの青年(ミニゼニス)
◆フロントエンドエンジニア:
  いつも笑顔の親しみやすい女性(ミニゼニス)
◆バックエンドエンジニア:
  孤高のプログラマー(ミニゼニス)
◆データベースエンジニア:
  古いノートとペンを持ち歩く(ミニゼニス)
◆インフラエンジニア  :
  無口だが技術に長けた男性(ミニゼニス)
◆テストエンジニア   :
  細かいメモを取り続ける女性(ミニゼニス)
◆セキュリティエンジニア:
  黒いスーツを着た無表情(ミニゼニス)
◆ドキュメンテーション/技術ライター:
  本に抱えた文学少女(ミニゼニス)
◆スクラムの悪魔:
  Zenith
◆子ども:
  ミニゼニス


▼ アジャイル開発物語 各話 ▼

21 アジャイル開発を理解したくて、アジャイル開発物語(ドラマ風)を作ってみた!①
22 アジャイル開発を理解したくて、アジャイル開発物語(ドラマ風)を作ってみた!②
23 アジャイル開発を理解したくて、アジャイル開発物語(ドラマ風)を作ってみた!③

26 第1話:ボクがプロジェクトリーダー!?
27 第2話:スクラムの悪魔
28 第3話:怪しげなコンサル契約書!? ぜったいにNOです!
29 第4話:なんでボクの部屋にいるの!? 怪しげな同居人たち!
30 第5話:深夜の勉強会とゼニスのいたずら
31 第6話:初回ミーティングでの大混乱と挫折
32 第7話:落ち込むリアとコンサル契約の誘い
33 第8話:ボクの部屋、勝手にリフォームされてる!?
34 第9話:『ゼニスの書』(Zenith's Book)
35 第10話:『ゼニスの書』スリープモード?
36 第11話:ボク、生まれ変わった?
37 第12話:再びのミーティングとアジャイルの歌
38 第13話:スクラムの始め方
39 第14話:スプリント・ゼロ..........の前に夜食かな?
40 第15話:スプリント・ゼロ ~プロダクトバックログの作り方~
41 第16話:スプリント・ゼロ ~火遊びが山火事になった話~
42 第17話:スプリント・ゼロ ~アプリのイメージとは?~
43 第18話:スプリント・ゼロ ~イメージはゲームアプリ?~
44 第19話:スプリント・ゼロ ~もっと簡単なのにしよ?パズルとか~
45 第20話:スプリント・ゼロ ~桜並木のお出かけ~
46 第21話:スプリント・ゼロ ~あれ?仕事は?~
47 第22話:スプリント・ゼロ ~労働からは逃げられない!~
48 第23話:スプリント・ゼロ ~夜明けまで働いた日!~
49 第24話:スプリント・ゼロ ~プロダクトバックログ~
50 第25話:スプリント・ゼロ ~プロダクトバックログ・続~
51 第26話:スプリント・ゼロ ~プロダクトバックログ・終~
52 第27話:スプリント・ゼロ ~居酒屋反省会~
53 第28話:スプリント・ゼロ ~二日酔いの朝~
54 第29話:スプリント・ゼロ ~走れリア~
55 第30話:スプリント・ゼロ ~爆走。力尽きたリア~
56 第31話:スプリント・ゼロ ~進む議論~
57 第32話:スプリント・ゼロ ~未知な知識との向き合い方~



第33話:
スプリント・ゼロ
  ~ 技術スタックは決まったけれど? ~


❖ S-topia社 ミーティングルーム ❖


どうですか、リーダー?


フロントエンドエンジニア
さて、技術スタック(テクノロジースタック)はひととおり整理できましたね!

バックエンドエンジニア
だいたい良さそうですよね。
まずはこれでスタートしてみますか。

フロントエンドエンジニア
ここまでの議論をドキュメント化しています。
どうですか、リーダー?

リア
り、リーダー!!
ちょっと資料を確認しますね!

............うん?意外とボリューム多くないー?


ちょっと確認?


※※ 興味のない人は読み飛ばしてね! ※※


❖ フロントエンド開発 ❖

1)  Unity
インタラクティブな3Dゲーム環境の開発に使用。
タブレットなどのデバイスでの操作に適したUIを構築し、教育ゲームの中核を形成。

【使用言語】
C#

【選択理由】
インタラクティブな3Dゲームの開発に最適であり、広範なプラットフォームサポートと豊富なドキュメントが利用可能。

【有力な代替案】
Unreal Engine。より高品質なグラフィックスに対応していますが、Unityより学習曲線が急であり、小規模から中規模のプロジェクトには過剰な機能を持つため選ばれませんでした。


2)  .NET MAUI
保護者用の進捗管理ダッシュボードや設定メニューなど、ゲーム外のアプリケーションコンポーネントの開発に利用。
iOS、Android、Windows、macOSに対応するアプリを一つのコードベースから開発。

【使用言語】
C#

【選択理由】
.NETエコシステムとの統合が良く、C#を使用してクロスプラットフォームのモバイルおよびデスクトップアプリケーションを開発できる。
UnityとVisual Studioを使うことで、同じIDE内でフロントエンドとモバイルアプリの開発を行えることが大きな利点です。
これにより、開発プロセスがスムーズになり、プロジェクトの管理が容易になります。
.NET MAUIはVisual Studioとの統合が非常に深く、ソースコード、デバッグ、バージョン管理を同じ環境で一元管理できるため、開発チームの生産性が向上します。

【有力な代替案】
FlutterやReact Native。これらもクロスプラットフォーム開発に強いですが、C#と.NETエコシステムによる技術スタック全体のシナジーを考慮しました。


リア
............!!??


心の中でなにかが壊れる
(リアの精神状態)



❖ バックエンド開発 ❖

ASP.NET Core (.NET 8)
サーバーサイドのロジックとAPIの構築に使用。
高性能でクロスプラットフォームなWebアプリケーションとAPIを構築し、保護者向けの進捗報告やアプリケーションデータの管理を行う。

【使用言語】
C#

【選択理由】
高性能でスケーラブルなWeb APIが簡単に構築でき、.NET 8の最新機能を活用できる。
ASP.NET Coreはモジュラーな構造を持っており、必要に応じて機能を追加または削除できます。
この柔軟性は、Unityで構築されるゲームのバックエンドとして、特定の機能やサービスを効率的に統合するのに適しています。
ASP.NET Coreは、Azureとの統合が優れており、クラウドベースのサービスを利用してバックエンドを強化することが容易です。

【有力な代替案】
Node.js。非常に人気があり、非同期処理に優れていますが、C#と.NETエコシステムによる技術スタック全体のシナジーを考慮しました。


リア
............!??!?!?!


足元から崩れ落ちていく
(リアの精神状態)



❖ データベース ❖

1)  SQL Server
【概要】
トランザクションの整合性やセキュリティが重要なデータの管理に使用。ユーザー情報やゲーム進捗データの保存に適している。

【種類】
リレーショナルデータベース管理システム (RDBMS)

【主な用途】
複雑なクエリ、トランザクションの整合性、データ整合性が重要なビジネスアプリケーション。
ユーザー情報や進捗データなど、整合性が必要なデータを管理する場合に適しています。
例えば、保護者のログイン情報や子どものゲーム進捗スコアなど、一貫性が求められるデータを取り扱います。

2)  Cosmos DB
【概要】
高可用性とグローバルディストリビューションが求められる場合、または非リレーショナルデータを効率的に扱う必要がある場合に使用。

【種類】
グローバル分散NoSQLデータベース

【主な用途】
大規模分散アプリケーション、リアルタイムのアプリケーション、柔軟なスキーマが必要な場合。
ゲーム内で生成されるイベントデータやリアルタイムのユーザーインタラクションデータの管理に適しています。
例えば、プレイヤーの位置情報やリアルタイムでのアクションログなど、スケーラビリティと高速アクセスが必要なデータを効率的に処理します。

❖ サーバー/インフラ/他 ❖

Microsoft Azure:
アプリケーションのホスティングとスケーリングに使用。Azure App Services、Azure Functions、Azure Kubernetes Service (AKS) など、様々なサービスを組み合わせて最適なインフラストラクチャを構築。


❖ 開発ツール ❖

Visual Studio 2022
Unity、ASP.NET Core、.NET MAUIの開発環境として使用。ソースコード管理、デバッグ、デプロイメントの一元化を行い、開発効率を向上させる。


❖ 追加サービス ❖

1)  Azure DevOps
ソースコード管理からCI/CDパイプラインの構築、テスト、リリース管理まで、開発プロセス全体を効率的に管理。

2)  Azure Active Directory
認証とアクセス管理に利用。保護者と子供のユーザーアカウント管理にセキュリティと便利さを提供。



書類の雪崩に飲み込まれる
(リアの精神状態)


リア
....................................??

Zenith (ChatGPT)
付け焼刃の知識ではどうにもなりませんね、マスター。

リア
....................................そだね。

フロントエンドエンジニア
ところで、リーダー。
わたしたちの席はどこですか?
あと、PCも......

リア
え、席ないの!?

フロントエンドエンジニア
最初の説明では、プロジェクトリーダーが準備してくれるはずだと聞きました..........

リア
えぇー?
そこからー?


まだまだ先は長そうだね!
(リアの精神状態)



アジャイル開発物語(ドラマ)の第32回!!

スプリント・ゼロの後半戦が進んでいくよ!
技術スタック(?)というものが決まったらしい。
さっぱり分からないね!

いつもスキを付けてくれるみんな!
みんなの力で、リアとゼニスの物語は続いていくよ!
次回もお楽しみに!

ボクたちのことをもっと知りたい人はこちら!
これまでのストーリーを紹介しているよ!


ハッシュタグ

#Stopia #冒険 #AI #AIとやってみた #ChatGPT #GPTs #開発 #アプリ #アプリ開発 #ゲーム開発 #プログラミング #プログラミング初心者 #プログラミング学習 #プログラミング教育 #アジャイル #スクラム #可愛い #ゆるキャラ #ドラマ #生成AI #画像生成AI #OpenAI #AI画像生成



この記事が参加している募集

AIとやってみた

【Zenith】現在、私たちはサポーターを募集しております。いただいたサポートは、次のとおり使わせていただきます。①アプリの開発資金 ②サーバーの運用コスト ③リアとゼニスのおこづかい