はかせのラボ

私の頭の中を書いていく雑記ブログです

自分の工数を見積もってみる

あいさつ

どうも、はかせです。
今回はプログラムのTipsみたいなの上げたかったんですが、
思いつかなかったので前々からやろうと思っていた
自分の工数を見積もってみようと思います。

工数

自分がどんな機能をどのくらいの時間をかけて
実装できるのかっていうことです。
これがある程度わかっているとある程度の完成の予想が立てられます。
自分の工数を正確に把握していれば示された期間で最大限いいものが
作れるようになると思うのでしっかり把握していきたいです。

実際に考えてみる

今回は最近作っている落ちモノパズルの実績から考えてみます。
これは私がつくっているガントチャートです。
f:id:hakase0274:20190304231114p:plain

ガントチャートっていうのは作業の計画と実績が一目でわかる便利な表です。
スプレッドシートにテンプレートがあったのでそれをそのまま使っています。

1マスが1日を表しています。
マス目にある色がその日の作業のステータスを示しています。
青=完了緑=着手赤=遅れといった感じの色分けになっています。

では表を見ていきましょう。
上の前準備は割と順当に進んでいます。
ただこれはうまくいったわけではなく
粒度を粗く作っていたからですね。
(正直タスクってどのレベルで分解すればいいのかわからない(´・ω・))

まず今回一番苦戦したピースの管理の仕方がまるっとぬけています
基礎機能の所でいきなり赤が大量に出ているのはそのためですね。
ピースの管理を考えずいきなり操作から入ってますからそりゃ遅れます。

大体ピースの管理は3日ぐらいかかりましたね。
色んなものの根っことなる部分なので私にしては作りこみましたからね。

ただそのあとは一気に開発が進みました。
(赤が全然でなくなった)
時間かけて作りこんだかいがあったわけですね。

ただそのあと追加ルールのところで少し赤がでています。
これは私自身がスーパーローテーションやTスピンに対して
ほぼ無知であったことと頑張って作ったピース管理が逆に邪魔になってしまったためですね。
詳細は下記の記事にて↓
hakase0274.hatenablog.com

私の工数

プログラム全体の根っことなる部分の開発は3日程度、
その根っこの上に乗る機能などの実装は2.3時間ってとこですかね。

ただ今のところ私は弾幕シューティングとパズルゲームという
登竜門的なものしか作っていません。

なのでより難しいもの(格闘ゲームとか)ってなると
なにかの機能1つつけるのに数日~数週間とかもあり得ると思っています。
(なるべくそうならないよう勉強しているわけなんですけどね)

それにまだまだ設計・計画能力が足りていないので
この辺は2.3日かけなければちゃんとしたものはできないでしょうね。

あとがき

今回は私の工数を見積もってみました。

正直落ちモノパズルは予定していた基本的なところは実装が終わりましたし、
色んな人に見せても開発期間に対しての
クオリティってところで評価されているので
これ以上何か触るのもどうかなぁって思いつつあります。
まぁやるとしたらまた別に予定立ててやるって感じですかね。

それでは今回はこの辺でノシ