タグ

ブックマーク / atmarkit.itmedia.co.jp (18)

  • 「アジャイル」という言葉が一人歩き――アジャイル開発における理想と現実

    アジャイル」という言葉が一人歩き――アジャイル開発における理想と現実:アジャイル時代のプロジェクトマネジメント入門(3) プロジェクト管理の基礎からアジャイル開発の理想と現実、成功例と失敗例、を紹介し、ベストプラクティスを提案する連載。今回は、実際の開発現場での理想と現実、失敗談をお話しし、アジャイル開発を進めるためのツールとして「Pivotal Tracker」を紹介します。 連載目次 連載では、「アジャイル時代のプロジェクトマネジメント」というテーマで、プロジェクトマネジメント/プロジェクト管理の基礎から、アジャイル開発の理想と現実、成功例と失敗例、そしてベストプラクティスの提案までを紹介します。 前回の「現代のプロマネが知っておきたいアジャイル開発の基礎知識まとめ」では、開発手法やアジャイルの基礎、その他の開発手法との違いなどを中心にお話ししました。さて今回は実際の開発現場での理

    「アジャイル」という言葉が一人歩き――アジャイル開発における理想と現実
    daipresents2
    daipresents2 2015/03/25
    "ペストプラクティス"ってわざとだろうか?
  • エンジニアが28歳までにキャリアプランを立てるべき理由

    エンジニアが28歳までにキャリアプランを立てるべき理由:経済評論家・山崎元の「エンジニアの生きる道」(6)(1/2 ページ) 連載目次 キャリアプランが必要な理由 ビジネスパーソンは、キャリアプランを持つべきだ。エンジニアも例外ではない。 ここでいうキャリアプランとは、数年から十数年くらいの時間軸における将来の働き方の大まかな見通しのことだ。将棋でいう「読み筋」のようなもので、必ずしも現実がその通りになる必要はない。「毎年、毎年、将来数年の見通しが変化していく」といった形で、心の中に将来像がある状態を持っているといい。 キャリアプランニングが必要な理由は、人材価値を作るためには年単位の時間がかかるからだ。 ビジネスにおける人材価値は、(1)ある仕事ができるという「能力」と、(2)その能力を現実に使った「実績」の2つで構成されている。能力を養うにも、何らかの仕事をするためにも、年単位の時間が

    エンジニアが28歳までにキャリアプランを立てるべき理由
  • fluentdと定番プラグインのインストール

    fluentdと定番プラグインのインストール:今さら聞けないfluentd~クラウド時代のログ管理入門(2)(1/2 ページ) 前回の記事「増えるログ、多様化するログをどう効率的に運用するか」では、fluentdの大まかなアーキテクチャについてご紹介しました。第2回では、fluentdがどういったものであるかをもう少し具体的に理解するために、実際の利用までの流れを紹介します。 fluentdの使い方 fluentdを利用するには、各サーバーにfluentdをインストールし、どのプラグインを使って処理を行うかについての設定が必要になります。 インストール手順 fluentdはさまざまな方法でインストールできます。例えば、 rpmパッケージによるインストール(CentOS、Red Hat Enterprise LinuxなどのOS向け) debパッケージによるインストール(Ubuntu、Deb

    fluentdと定番プラグインのインストール
  • テスト駆動開発/振る舞い駆動開発を始めるための基礎知識

    連載目次 2000年代初期に開発手法として確立された「テスト駆動開発」(Test Driven Development、以下「TDD」)は、その後10年もの間で普及が進み、今や珍しくない開発スタイルの1つとなっています。国内でも「アジャイルアカデミー」「TDD Boot Camp」などによる推進・普及活動が各地で活発化し、認知が広がってきました。 なおTDDは誕生からこれまでの間に、さまざまな工夫や実践上のノウハウが提唱されてきました。またTDDの普及に影響を受け、他のさまざまな「テストファースト」手法も台頭してきています。 稿では、そうしたTDDの発展や、振る舞い駆動開発(Behavior Driven Development、以下「BDD」)など他のテストファースト手法への展開についても解説します。 ※編集部注:ソフトウェアの「テスト」そのものの概要や種類について知りたい方は記事「J

    テスト駆動開発/振る舞い駆動開発を始めるための基礎知識
  • 増えるログ、多様化するログをどう効率的に運用するか

    増えるログ、多様化するログをどう効率的に運用するか:今さら聞けないfluentd~クラウド時代のログ管理入門(1)(1/2 ページ) 仮想化やクラウド化、モバイル化の進展に伴い、管理すべきログが多様化・肥大化しています。そんな中でも効率よく、意味のあるログ管理を実現するツールとして注目されている「fluentd」を、これから始めたい方のために一から解説します。 システムを安定して効率良く運用していくために、ログ管理は欠かせない要素の1つです。仮想化やクラウド化、モバイル化の進展につれてシステムはますます大規模化し、それに伴い管理すべきログが多様化・肥大化する傾向にあります。 fluentdはこういった中でも、効率よく、意味のあるログ管理を実現するために非常に有用なツールです。連載では、fluentdの基と具体的な活用方法を紹介します。 ログ管理の現状と課題 環境の仮想化・クラウド化、さ

    増えるログ、多様化するログをどう効率的に運用するか
  • 書籍でたどる「リーン」の本質

    先ごろ出版された「リーン開発の現場:カンバンによる大規模プロジェクトの運営」(ヘンリック・クニバーグ著/オーム社/2013年10月)は、アジャイル開発手法を実践事例の視点から解説した力作である。スクラム、カンバン、XPなどの手法に言及しているが、中でも「リーン開発」を正面から取り上げているのが大きな特徴となっている。 書ではリーン開発現場の写真、会話をふんだんに使って事例解説がなされていたり、まさに現場でプロジェクトに立ち向かっているマネージャ、エンジニアたちによって訳されていたりと、実に臨場感あふれる仕上がりとなっている。ちなみに著者のヘンリック・クニバーグ氏は私の長年の友人であり、書、日語訳巻末の解説も私が担当した(詳細はこちらで紹介している/参考リンク:「リーン開発の現場」紹介ページ)。 ただ「リーン」という言葉は、米国で注目を集めた経営書「リーンスタートアップ」で広く知られる

    書籍でたどる「リーン」の本質
    daipresents2
    daipresents2 2013/11/15
     [アジャイル][リーン][カンバン]平鍋さんによる『リーン開発の現場』解説 公開!
  • ITコミュニティカンファレンス主催者のための参考書

    5月17日、カンファレンス運営に興味がある人のためのイベント「カンファレンスカンファレンス」が開催された。会場には、IT系コミュニティカンファレンスの主催者たち(Lightweight Language Matsuriの法林浩之氏、YAPC::Asia Tokyoの牧大輔氏、PHPカンファレンスの田中康一氏、東京Node学園祭のJxck氏、PyCon JPの清水川貴之氏)が勢ぞろい。そこで共有されたイベント運営のためのノウハウを、一問一答形式に再構成してレポートする。 カンファレンスを主催・運営する上での心構え ――何のためにそのカンファレンスを運営しているのか 情報・知識を提供する プログラミングの楽しさを伝える 参加者同士のコミュニケーションの場を提供する 自分が楽む 恩返し まず、カンファレンス主催者は、参加者の誰よりもカンファレンスが好きである。そもそも、カンファレンスが好きでなけ

    ITコミュニティカンファレンス主催者のための参考書
    daipresents2
    daipresents2 2013/05/23
    「しかし、われわれは、炭水化物と揚げものとビールさえあればいい」
  • ITエンジニアがデータサイエンティストを目指すには?

    ITエンジニアがデータサイエンティストを目指すには?:ITエンジニアのためのデータサイエンティスト養成講座(1)(1/2 ページ) それぞれの専門分野を生かした「データサイエンスチーム」を結成すればデータ活用への道は短縮できる。そのとき、ITエンジニアはどんな知識があればいい? データサイエンティストとして活動する筆者が必須スキル「だけ」に絞って伝授します。 連載バックナンバー はじめに:分析スキルの課題をどう乗り越えるべき? 昨今では、IT系のメディアのみならず一般雑誌や新聞なども“ビッグデータ”というキーワードを見出しに使っています。この文字を目にしない日がないくらいに多用されていて“バズワード”としてとらえられるケースも少なからずあるようです。 しかし、世界の至る所で――もちろん日でも、ビッグデータを分析することで新たな知見を見つけて利益を増大した企業や、顧客の購買行動を予測するこ

    ITエンジニアがデータサイエンティストを目指すには?
    daipresents2
    daipresents2 2013/05/08
    肩書きが増えてきたなぁ
  • なぜTwitterは低遅延のままスケールできたのか 秒間120万つぶやきを処理、Twitterシステムの“今” − @IT

    ユーザー同士のつながりを元に時系列に140文字のメッセージを20個ほど表示する――。Twitterのサービスは、文字にしてしまうと実にシンプルだが、背後には非常に大きな技術的チャレンジが横たわっている。つぶやき数は月間10億件を突破、Twitterを流れるメッセージ数は秒間120万にも達し、ユーザー同士のつながりを表すソーシャル・グラフですらメモリに載る量を超えている。途方もないスケールのデータをつないでいるにも関わらず、0.1秒以下でWebページの表示を完了させなければならない。そのために各データストレージは1~5ms程度で応答しなければならない。 Twitterのリスト機能の実装でプロジェクトリーダーを務めたこともあるNick Kallen氏が来日し、2010年4月19日から2日間の予定で開催中の「QCon Tokyo 2010」で基調講演を行った。「Data Architecture

  • チーム・ビルドによる開発の安定化(1/3) - @IT

    連載:Team Foundation Server 2008の下流工程への適用 第4回 チーム・ビルドによる開発の安定化 アバナード株式会社 安藤 大祐 2009/08/12 Team Foundation Server 2008(以下、TFS)の導入は、影響範囲が比較的限定的である下流工程(=プログラミングやテスト・ビルドなどの領域)から実施していくのがベターな選択肢である。 連載では、前回までにバージョン管理システム導入に関するノウハウと活用方法を紹介した。今回は、下流工程をサポートするTFSのもう1つ機能である、チーム・ビルド(=自動ビルド・システム)について、そのノウハウとカスタマイズについて紹介したい。 ■チーム・ビルドのアーキテクチャ まずは、チーム・ビルドのアーキテクチャを説明したいと思う。 詳細は後述するが、チーム・ビルドを効果的に利用するためには、プロジェクトに合わせた

  • SubversionとTracでファイル管理の“迷宮”から脱出

    SubversionとTracでファイル管理の“迷宮”から脱出:ユカイ、ツーカイ、カイハツ環境!(2)(2/4 ページ) SVNとTracの導入準備 稿では、SVNのサーバとしてTrac Lightningを利用します。クライアントとしては、EclipseにSVNのクライアント機能を追加するSubversiveプラグインを利用します。以下、それぞれの導入手順をご紹介します。 Trac Lightningのインストール Trac Lightningのインストールは、SourceForge.jpのプロジェクトからTracLightningのインストーラ(TracLightning-2.0.x.exe)をダウンロードし、ダブルクリックしてインストーラの指示に従えばインストールは完了です。稿で利用するサンプル用のリポジトリも自動的に作成されます。インストールが完了したら、スタートメニューからT

    SubversionとTracでファイル管理の“迷宮”から脱出
  • Mylyn&Tracでリズムに乗ってタスクを大掃除♪

    Mylyn&Tracの環境を構築して掃除道具を整える まず、MylynとTracの環境を構築していきましょう。ここでは、環境設定を簡単に行うため、筆者が開発するWindows用のTracディストリビューションである「Trac月」を利用して解説していきます。チームで利用するタスク管理のシステムをセットアップする作業なので若干長いです(商用製品に比べると短いと思いますが……)。頑張ってやりましょう。 ここからは、開発サーバとEclipseを利用する各開発担当者に分けて解説をします。開発の都合上、同じマシン上でTracとEclipseを動作させることとしますが、実際の開発では、適宜読み替えてください。 開発サーバ(Trac)のセットアップと環境設定 最初に、開発サーバ上で動作させるTracの環境設定について解説します。 Trac月のダウンロード Trac月のダウンロードページからTrac月をダウ

    Mylyn&Tracでリズムに乗ってタスクを大掃除♪
  • プロジェクトの問題点洗い出しにも使えます ― @IT自分戦略研究所

    3.マインドマップの応用例(続き) 前編「マインドマップで『伝わる』プレゼンを」では、マインドマップの基ルールを説明したうえで、応用としてプレゼンテーションにおけるマインドマップ活用例を示しました。後編に当たる今回は、よりITエンジニアの皆さんの仕事に関連の深い応用事例を紹介します。 3.2 WBS作成 WBS(Work Breakdown Structure)とは、プロジェクトマネジメントで計画を立てる際に用いる手法の1つです。プロジェクトの成果物を中心に置き、成果物を作るために必要な作業をその下層に配置することで、プロジェクトの構成要素を細分化していきます。ツリー構造の下層にいくに従って、より詳細な作業が定義されます。細分化された個々の部分を構成する一連の作業のことを、通常「ワークパッケージ」と呼びます。 WBSの作成方法はいろいろですが、1つの方法として、「すべてのワークパッケージ

    プロジェクトの問題点洗い出しにも使えます ― @IT自分戦略研究所
  • @IT:Java EE 5マイグレーションプラクティス(1)

    第1回 JSF・Spring・Hibernateで次世代Javaに備える 西ヶ谷岳(サン・マイクロシステムズ) 2005/7/6 J2EEの開発環境は大きな変革期を迎えようとしています。年中に最終スペックを公開する予定のJ2EEの次世代仕様「Java EE 5」は、開発の容易性(EoD:Ease of Development)を目指して、全く新しいといえる開発スタイルを提案しようとしています。 この変革はあまりにも大胆な変更であるため、従来のJ2EE 1.4仕様の資産は、ソースコードレベルでの互換性が保たれない部分が多く見られます(バイナリレベルでの互換性は確保されるはずです)。いわばこの過渡期にあるいま、皆さんがJ2EEアプリケーションを設計する場合に、現在開発しようとしているアプリケーションの資産が、将来のJava EE 5環境でも有効に活用できるように考慮することは非常に重要なテー

  • ThreadとHashMapに潜む無限回廊は実に面白い? (1/3) - @IT

    ThreadとHashMapに潜む無限回廊は実に面白い?:現場から学ぶWebアプリ開発のトラブルハック(10)(1/3 ページ) 連載は、現場でのエンジニアの経験から得られた、APサーバをベースとしたWebアプリ開発における注意点やノウハウについて解説するハック集である。現在起きているトラブルの解決や、今後の開発の参考として大いに活用していただきたい。(編集部) マルチスレッドのトラブルハックはさっぱり分からない… 対処が難しいトラブルといえば、GC(ガベージ・コレクション)とマルチスレッド処理に起因することが多い。 前々回(「肥え続けるTomcatと胃を痛めるトラブルハッカー 」)と前回(「JavaのGC頻度に惑わされた年末年始の苦いメモリ」)の2回にわたってGC、特にメモリ周りのトラブルを取り上げた。そこで今回は、マルチスレッド処理のトラブルの1つ、「レースコンディション(競合状態)

    ThreadとHashMapに潜む無限回廊は実に面白い? (1/3) - @IT
  • @IT:Java TIPS -- HTTPメッセージのやり取りをモニタする

    Webアプリケーションでは、通常Webブラウザを使って動作確認をしながら開発を進めていくことでしょう。しかし、Cookieや認証などHTTPヘッダに含まれる情報を使ったプログラムを作っている場合や、ファイルアップロードなどの際にPOSTフォームで送信されるデータの中身を確認したい場合には、Webブラウザとサーバとでやり取りされている生のHTTPメッセージの内容を確認したくなります。たいていのWebブラウザでは、HTMLソースの閲覧はできますが、ヘッダ情報も含んだHTTPメッセージを見ることはできません。 そんなときに使える便利なツールが、「Axis TCPモニタ」(以降tcpmon)です。tcpmonを使えば、Webブラウザとサーバ間で送受信されるHTTPメッセージをモニタリングすることができます。tcpmonは、ApacheのWebサービスプロジェクトAxisの付属ツールとして提供されて

    @IT:Java TIPS -- HTTPメッセージのやり取りをモニタする
  • @IT:Spring Frameworkで理解するDI(1)

    DI:依存性の注入とは何か?:Spring Frameworkで理解するDI(1)(1/3 ページ) Javaエンジニアであれば最近、「Dependency Injection」や「DIコンテナ」「Spring」、または「Seaser2」といった名前を目にしたことがあるのではないでしょうか。これらは次世代のEJB(EJB 3.0)に取り込まれる動きがあるなど、最近非常に注目されているキーワードであり、今後のJava開発を語るうえで避けては通れない概念の1つになるとされています。 この連載は、「Spring」というフレームワークを利用して、J2EE開発における「Dependency Injection(DI)」というデザインパターンから得られるメリットを紹介し、J2EEの今後の方向性を理解する助けとしていただくことを目的としています。 Dependency Injection:依存性の注入

    @IT:Spring Frameworkで理解するDI(1)
  • 安全なセッション管理を実現するために ― @IT

    HTTPを使用したWebアプリケーションにおいて、安全なセッション管理を行うことは難しい問題である。タブブラウザによる画面の複数起動や、Webブラウザの戻るボタン/更新ボタンの押下といった、予期しない画面遷移に起因するバグの発生に頭を悩ませることは多いだろう。 大きな問題が発生しないならば、画面遷移の仕様上の制限をクライアントに許容してもらう選択肢もあるだろうが、不正な画面遷移を利用したセキュリティホールが存在するならば、放置しておいてよい問題ではなくなる。今回はセッション管理を安全に行うための基的な注意点について解説していこう。 セッション固定攻撃とは何か セッション固定攻撃(Session Fixation)という脆弱性を耳にしたことはあるだろうか。脆弱性そのものの詳しい解説は稿の趣旨ではないため割愛するが、簡潔に説明すると、以下のような手順を踏むことによりセッション情報がハイジャ

    安全なセッション管理を実現するために ― @IT
  • 1