SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

【夏サミ2016】セッションレポート (AD)

課題とコードを紐付けて自社ビジネスを加速! アトラシアン製品を使いこなすCommerble社【夏サミ2016レポート】

  • このエントリーをはてなブックマークに追加

 グラハム・ベルによる世界初の実用的な電話の発明、ライト兄弟による飛行機の発明、および世界で初めての有人動力飛行の成功……。これらの素晴らしい技術が生まれた背景には、ベルやライト兄弟という天才がいたことももちろんだが、それらの天才を助けモノ作りをしたチームの存在がある。しかも現在のようなスピードが求められるモノ作りの現場においては、いかにチームの能力を最大限に発揮できるかが、非常に重要になっている。そんな「チーム力」を最大限引き出すためのツールを提供しているのがアトラシアンである。同社が提供している製品を、同社 新村剛史氏が簡単に解説。さらに同社製品がいかに現場のチーム力の向上に貢献しているか、Commerbleの竹原貴司氏がCommerbleでの活用事例を紹介した。

  • このエントリーをはてなブックマークに追加
アトラシアン 新村剛史氏
アトラシアン 新村剛史氏
Commerble 竹原貴司氏
Commerble 竹原貴司氏

チームのために何ができるかをコンセプトに開発されたアトラシアン製品群

 「アトラシアンを知っている人?」と新村氏は会場へ呼びかけ、同セッションは始まった。本セッションの参加者の多くは、新村氏が予想した以上に社名を知っていたが、たとえアトラシアンという社名は知らない人でも、「JIRA Software」や「Bitbucket」「HipChat」などの製品名は知っているという人も多い。

 アトラシアンはオーストラリア・シドニーで2002年に生まれた企業で、創業当時から「チームのために何ができるか。それをコンセプトに製品を開発してきた」と新村氏は説明する。同社のミッションは「あらゆるチームの可能性を解き放つこと」と新村氏。つまり地球上のすべてのチームがソフトウェアの力により人類を未来へ前進させることに貢献していくことをミッションに、チームのコミュニケーションやコラボレーションを実現するツールを提供することで、それを目指していくという。「すでに5万1000社以上の人に使ってもらい、チーム力を高めてもらっている」と新村氏は続ける。

 アトラシアンが提供している製品群は次の通り。プロジェクト管理ツール「JIRA Software」「JIRA Core」、リポジトリ管理と継続的デリバリーを実現する「Bitbucket」「Bamboo」、リアルタイムコミュニケーションを実現する「HipChat」、ドキュメント管理ツール「Confluence」、そしてリクエストを時間通りに処理するサービスデスク「JIRA Service Desk」である。

 「このように当社ではソフトウェアの開発の流れをチームで進めていくためのツールを提供している。当社からの説明はこれで終わり。ここからは当社製品を導入しているCommerbleの竹原さんにバトンタッチし、Commerble社での活用事例について紹介してもらう」と新村氏は壇上を去り、続いてCommerbleの竹原氏が登壇した。

チーム力向上に貢献するアトラシアンの製品群
チーム力向上に貢献するアトラシアンの製品群

Commerbleの開発チームが抱えていた課題

 CommerbleはクラウドネイティブなマネージドECサービス「EC PaaS」を提供しているWebサービスベンダーである。「本セッションでは、当社のECプラットフォームの開発をどうやって進めているかという話をする」と竹原氏は前置きし、事例の紹介が始まった。

 同プラットフォームを初めてリリースしたのは2010年。「そのときはいろんな失敗があった」と竹原氏は振り返る。その時の問題点として上がったのは、ソフトウェア開発においてはあるあるとも言える、要件の粒度がバラバラ、曖昧な役割分担、まとめた動作検証、課題が共有されないなどということだったと言う。そこでリリースに向けた問題の中で、自分自身で変えられることは変えていこうと話し合ったのだそうだ。問題点を改善するために取り入れたのが、朝のスタンドアップミーティング、付箋を使った課題および進捗の共有、リリース状況の可視化、2週間のイテレーションで随時リリースなどだったという。

 そんな中、2014年に会社として設立し、開発以外の全部の役割を担う社長とデベロッパー2人でスタート。「今はデベロッパー3人、合計4人の少数精鋭で、コアの機能開発、サブシステムの追加・分割や再構築、顧客用のカスタム開発などのすべてを担っている」と竹原氏は説明する。

 「余談だが」と前置きし、竹原氏は「リリースが始まってからが本当の戦いだった」と振り返る。「プロダクト開発は一度作ったら終わりではなく、運用中に生じた実装都合で思わしくない結果が出る部分の改善を行ったり、アーキテクチャレベルでのリファクタリングや作り直しを行ったりした」と明かす。

 開発の進め方としては、まずどんな問題があるのか考える・感じることから始まる。「ここが一番の難所。正しい問題を発見できれば、解決することができるかもしれないし、間違えた問題定義をしてしまうと、工程が爆発的に増え、全体最適につながらなくなる。まずはチームでできる限り話し合いながら進める方が、効率が良いと思う」と竹原氏はアドバイスする。

 続いて問題を課題に分解する。「ざっくり2~3日で解決できるくらいの小さな粒度に分解すること」と竹原氏。なぜ小さな粒度にするのか。その理由について竹原氏は、解決するのに3カ月もかかるような粒度の大きさだと、「みんなが不安になることに加え、アーキテクチャからのずれも起こってしまうこともある。またレビューが大きすぎてやりにくいなどの問題も出る。さらに日々の達成感が欠落すると、疲れやすくなるからだ」と明かす。

 課題が分割できれば、課題を起票する。「先述したようにこれまでは付箋に書いてやっていた」と竹原氏。この段階で担当を決める。課題起票は課題管理としてだけではなく、お互いの褒め合いにも役立つという。

 課題がコードを書くことで解決できるものであると仮定すると、ここでコード・テスト作成し、ソースコード管理をして、ビルドとデプロイを行う。ソースコード管理は「CVSなら何でも良い」と竹原氏。現在、竹原氏のチームではGitを使っているとのこと。「ビルドで大事なのは、日々、常に回るようにしておくことと、コードを書いた側からデプロイまでできるようにしておくこと。そしてビルドとデプロイを特別なことと捉えず、日々の作業の一環として扱うことだ」と竹原氏は熱く語る。つまり、課題の起票などの前に、ソース管理用のリポジトリの作成や自動ビルドの構築、テストサーバーの環境の用意、テストサーバーへの自動デプロイの構築を事前に行っておくことが大事になると言う。

開発者4人という少数精鋭でこれだけの開発を行っている
開発者4人という少数精鋭でこれだけの開発を行っている

アトラシアン製品を導入し、開発をスピードアップ、ビジネスに貢献

EC PaaSでは課題管理やソース管理などでアトラシアン製品を活用
EC PaaSでは課題管理やソース管理などでアトラシアン製品を活用

 ただ、これらのことを愚直にやると、「このコミットは何のためのモノなのか」「ビルドの成果物はどこにあるのか」「今回のデプロイでどの課題が解決するのか」など、わからなくて困ることが起きたと竹原氏は言う。同社のデベロッパーは3人。この少ない労力でこれらの困ったことを起きなくして開発に注力するはどうすればよいのか。

 そこで導入したのが、次のようなアトラシアンの製品群である。「課題の起票は『JIRA Software』、課題とコードの紐付けには『Bitbucket』、課題とビルド、課題とデプロイの紐付けには『Bamboo』、そして操作の追跡には『HipChat』を活用している」と竹原氏は説明した。

 実際にこの場で「賑わっている感を出したい」という問題を解決するため、ECサイトで注文が完了したらTweetするというプログラムをつくるというデモを実施した。セッションの短い時間の中で課題の起票から実装までを行うため、無事に成功するかどうか聴衆が見守る中、Tweetが完了した際には会場から大きな拍手が沸き起こった。

デモを担当した、Commerble 谷口慈行氏(左)、渡邉寛之氏(右)
デモを担当した、Commerble 谷口慈行氏(左)、渡邉寛之氏(右)
Bitbucketでプルリクエストがマージされた際には、LGTM(Looks good to me)を表す画像を表示するようにしている
Bitbucketでプルリクエストがマージされた際には、LGTM(Looks good to me)を表す画像を表示するようにしている

 「愚直にやればすごく困ることが起きる」といったことは、アトラシアンを使いコミットメッセージにイシュー番号を入れるだけで、すべて解決できることを証明するデモだった。「これが最適解だとは思っていない」と竹原氏。例えばチームが30人ぐらいまで大きくなれば、またそのチームに合う方法を検討していくという。「自社ビジネスを加速させるためにデベロッパーもできることはたくさんある。そのためのツールとして私たちは今、アトラシアンの製品を活用している」と力強く語り、竹原氏のデモは終了。

 最後にアトラシアンの新村氏が壇上に戻り、「当社製品は、無料で7日間試せるトライアルや、10ユーザーまでなら各製品を10ドルで利用できるスターターライセンスを提供しているので、ぜひ使ってみてほしい」と参加者に呼びかけ、セッションを締めた。

お問い合わせ

 アトラシアン株式会社

この記事は参考になりましたか?

  • このエントリーをはてなブックマークに追加

【AD】本記事の内容は記事掲載開始時点のものです 企画・制作 株式会社翔泳社

この記事は参考になりましたか?

この記事をシェア

  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/9616 2016/08/30 14:00

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング