DebTab

  • ホーム
  • DevTabとは
  • 記事一覧
    • きたえる
    • かえる
    • つくる
    • みちびく
    • たばねる
    • つたえる
かんたんログイン
Githubでログイン
Githubアカウントでかんたんにログインして、DevTabをもっと便利に使おう。

DebTab成長しつづけるデベロッパーのための情報タブロイド

DebTab

ログイン

検索 検索

ソフトウェア開発とは何か?

写真市谷 聡啓

つくる

  • #DRR
  • #正しいものを正しく作る

2017.12.25

ポイントポイント

8

ベタープログラマ

 書籍「ベタープログラマ」の14章を読んで、「ソフトウェア開発とは何なのか」という問いに直面しました。ベタープログラマがさまざまなメタファを用いて明らかにしようとするソフトウェア開発のあり方、一つ一つに私は共感しました。このうちどのくらい出来ているのか?を考えるのに良い機会となりました。

 一方、ソフトウェア開発とは何かという問いの向こう側に、そもそも「ソフトウェアとは何か」という問いがあることに気づきました。ソフトウェアとは一体何でしょう?

煩わしさを減らす、嬉しさを増やす

 先日、ベトナムのホーチミンに講演に行く機会がありました。そこで空港からの移動のためにUBerを使ったわけですが、やっぱりこれが便利なわけですね。少し詳しく考えてみると、もしUberが無かったら、私は右も左も分からない空港周辺で、タクシーを探すことになります。向こうのタクシーの売り込みは激しく、異国の地の不安からきっとその勧誘に乗ってしまうことでしょう。さて、ベトナムの方の英語を私は聞き取れるでしょうか。逆に私の不自由な英語は通じるでしょうか。行き先に無事辿り着けるでしょうか。メーターは読めるでしょうか。ベトナムの通貨ドンはインフレしています。20,000ドンが100円くらいです。慣れない通貨での支払いができるでしょうか。支払いのときに交渉が発生すると尚更面倒です。以上のように不安でいっぱいです。

 一方、Uberなら行き先は事前に地図上で選び、支払い額も固定です。待ち合わせ場所に気をつければすぐにドライバーと出会うことができます。簡単に行き先をすり合わせれば、あとは乗っておくだけです。決済も自動です。明らかに、コミュニケーション上の「煩わしさ(pain)」は減り、異国の地でも安心して行き先に辿り着ける「嬉しさ(gain)」が得られました。Uberが無かった時の場合と、その差は雲泥です。

 ソフトウェアとは何かの問いに、クラウド上の何らかのサービスであること、APIであること、業務支援を行なうツールであること、SNSな何か、あるいはフレームワークやライブラリ、さまざまな答え方がでてくると思います。そうした形態ではなく、効果に着目すると、先にあげた「煩わしさを減らす」「嬉しさを増やす」の2つに帰結することが分かります。

 ということは、これから作ろうとしているソフトウェアを思い浮かべたときに「煩わしさを減らす」「嬉しさを増やす」、両方とも思いつかないようですと、そのソフトウェアは本当に必要なのかという疑問が湧いてきます。

 また、「煩わしさを減らす」「嬉しさを増やす」の効果にも度合いがあります。そもそもそのソフトウェアが無かったときに必要となる代替活動の煩わしさの大きさ、それで得られる嬉しさの大きさ、が大したものでなければ新たなソフトウェアをつくっても、大きな効果は得られ無さそうです。

それは、ユーザーの価値への反応の強さに繋がります。これからつくるソフトウェアがユーザーにどの程度受け入れられるのか、その想像の助けになるでしょう。

正しいものを正しくつくりたいか?

 ベタープログラマの14章にはもう一つ問いがあります。それは、正しいものをつくりたいか?という問いです。私がいまソフトウェア開発に関わっているのは、まさに正しいものを正しくつくるに向かい続けたいためです。

 正しいものとは、そのソフトウェアを利用する人の目的に適していて、「煩わしさを減らす」「嬉しさを増やす」をもたらすものだと言えます。そうした正しさが最初から分かっていて、どうすればいいか分かっているということはなかなか無いことだと思います。ゆえに、ソフトウェア開発は、何があれば良いのかという探索的な活動となります。そして、ユーザーとの関わりの中で、目的に適したものは何なのか気づくことになります。

 そのためにはソフトウェアの作り方として変更容易性を高めておくことが望ましく、正しくつくるとは、ソフトウェアを変え続けることができる作り方といえます。

 こういう作り方をすれば必ず正しいものが正しくできるという方法はありません。ギルドワークスが、正しいものを正しくつくるを旗印として掲げているのは、そのようなソフトウェア開発であろうとする意思の表明であり、われわれとわれわれに関係する方にとっての行き先を明確にすることであり、そのための技を磨き続けるというコミットメントを意味しています。

 そこに一緒に向かう人達には、作り手はもちろん、「煩わしさを減らす」「嬉しさを増やす」ソフトウェアを必要とする人たちも含まれます。ソフトウェア開発を探索から発見をする活動と捉えると、この両者が直接的、間接的に一体となってつくっていくことが求められます。共創が正しいものを正しくつくるへと歩みを進められるのだと私は感じています。

共感した

ポイントポイント

8

取り消す

この記事に共感したら、何度でも押してこの記事のポイントをみんなでアップしよう。

自分の感想を残す

この感想は、サイトに公開されることはなく自分にしか見えません。自分の考えのログを残すために感じたことを登録し、のこしておきましょう。あとで振り返ったときに、あのとき自分はこう考えていたのかということを知ることにより、あなたの成長へとつながります。

Githubでログイン

Githubアカウントでかんたんにログインして、DevTabをもっと便利に使おう。

  • ひとつ前の記事

    状況判断で駆動する「機略型のアジャイル開発」

  • ひとつ後の記事

    市谷と中村洋の2人が、毎回テーマを決めて語り合う場を始めました。

この記事もどうですか?

開発チームの設計力を強化する

増田です。 最近、いろいろな会社の社内の開発チームの方と話す機会が増えました。その中で、感じることが…

つくる

たばねる

2016.11.10

ポイント
0

リモートワークにおけるコミュニケーションツール「Zoom」

この記事は、ギルドワークス アドベントカレンダーの5日目の記事です。 今回は、リモートワークにおける…

つくる

2017.12.05

ポイント
1

カスタマージャーニーマップ、失敗のすゝめ

カスタマージャーニーマップとは、ウェブサイトやサービスを利用する顧客がどのようなプロセスで、どのよう…

つくる

2016.04.13

ポイント
0

シェア
  • Twitter
  • このエントリーをはてなブックマークに追加
  • Google Plus

ログインして
ブックマーク

  • Twitter
  • このエントリーをはてなブックマークに追加
  • Google Plus
  • ログイン
LINE@

新しい記事が出たときや、注目の記事などを
定期的にLINEでお知らせしていきます

LINEで登録

LINEイメージ

DevTab
成長しつづけるデベロッパーのための情報タブロイド

株式会社ギルドワークス
https://guildworks.jp
  • プライバシーポリシー
  • お問い合わせ

Copyright © GuildWorks Inc. All Rights Reserved.

ページのトップへ