タグ

開発に関するlets_skepticのブックマーク (25)

  • 優れた仕様を決定するために必要なこと - GoTheDistance

    たまにはブログ更新したいから、ついさっき流れてきたエントリにいついちゃうよー。 ソフトウェア設計とは何か 〜 設計にはプログラミング経験が必要か否か | Social Change! 工程の分断はあり得ません ソフトウエアの設計に実装経験が要るか要らないかというのはそもそも議論にならない。「ソフトウエアの設計=仕様の設計+コードの設計」なんだから、例えればコインの表と裏。それらは引き離すことは出来ないのに引き離して分業しようとするからよろしくないことが起きてしまうというのが、上記記事の主題かと思います。簡単に言えば。 僕もこの点については「工程の分断」という言葉で何度も書いています。コインの表と裏であるべきものを分断してしまうと、互いのフィードバックを得る術を無くしてしまいます。そうなったら良いことは無い。ここは誰でも納得がいく所でしょう。 仕様を設計するチャンスって超少ないんじゃない?

    優れた仕様を決定するために必要なこと - GoTheDistance
    lets_skeptic
    lets_skeptic 2013/01/22
    いいね。
  • プランニングポーカー かんたんガイド 作りました。 - kawaguti’s diary

    デブサミで、ご希望の方にプランニングポーカーを有償でお分けしました。一個単位で輸入すると送料がばかにならないのですが、弊社で多めに買ったものをお分けしており、少量でもコスト安く手に入ります。 (2014年現在は行っておりません。アギレルゴコンサルティング社にお問い合わせください。) Mountain Goat 社製プランニングポーカーカード を一個単位でお分けします。 - アギレルゴコンサルティング株式会社 残念ながら在庫が十分に足りず、ご興味を持っていただきながら手に入らなかった方がたくさんいらっしゃると聞きました。弊社の方でもほそぼそとお分けしておりますので、ご興味のある方は、ご検討いただければ幸いです。ほとんど原価販売です*1。 ※2012/2/20追記: 日マイクロソフトの長沢さんがノベルティとしてプランニングポーカーを配布されていますので、そちらもご参照ください。 使い方の説明

    プランニングポーカー かんたんガイド 作りました。 - kawaguti’s diary
    lets_skeptic
    lets_skeptic 2012/02/20
    プランニングポーカーの使い方
  • 開発コストや技術リスクを考えない「上流設計」がシステムの複雑化と大規模な障害の原因となっているのでは? - 達人プログラマーを目指して

    皆さん、明けましておめでとうございます。昨年の後半は私自身SI業界からWeb業界へ転職したことなど仕事環境の変化があり、ブログの更新頻度も鈍りがちになってしまっていましたが、年もどうぞよろしくお願いいたします。 さて、ちょうど、一年前のお正月にはグルーポンのおせち料理事件が話題になっていましたが、私はおせち料理の品質とIT業界における品質の問題を絡めて、以下の記事を書きました。 グルーポンのおせち事件を受けてSI業界が当に教訓とすべきこと - 達人プログラマーを目指して この記事では、一般にSIerによって開発される日のシステムはあの事件おせち料理のように、低い品質に甘んじているが、多くの場合、社内システムなどではそういった品質の問題が公に明らかにされることが少ないのではということを指摘しました。ただ、その時は私の希望も込めて 最近はOSSやクラウドなどの影響で社内システムもどんど

    開発コストや技術リスクを考えない「上流設計」がシステムの複雑化と大規模な障害の原因となっているのでは? - 達人プログラマーを目指して
    lets_skeptic
    lets_skeptic 2012/01/04
    俗にいうウォーターフォール型開発の問題点についてのコメント
  • オフェンシブな開発〜「納品しない受託開発」にみるソフトウェア受託開発の未来 | Social Change!

    定期的にSI業界が終わったという話が出ますが、当にそうでしょうか。終わるべきは一括発注・請負のディフェンシブなビジネスモデルです。受託はなくなることはありません。ソフトウェアの開発を、他の業界のアナロジーで考えるのではなく、正面から取り組んだビジネスモデルについて語っています。 ディフェンシブな開発 今から5年前に、SI業界における多くの問題の原因がそのビジネスモデルにあるという「ディフェンシブな開発〜SIビジネスの致命的欠陥」という記事を書きました。SIにおけるビジネスモデルは、発注者とベンダーはあらかじめ決めた金額と要件の中で納品と検収を目指すため、利益を出すためには双方がリスクを取らずに「守り」に入る必要があります。その結果、顧客にとって価値を産むかどうかよりも決められた要件通りに作られることを重視することになってしまいます。人月という単位であらかじめ決めるとなれば、単価の安い下請

    オフェンシブな開発〜「納品しない受託開発」にみるソフトウェア受託開発の未来 | Social Change!
    lets_skeptic
    lets_skeptic 2011/09/27
    いわゆるアジャイルをSIで実現ということ。業務知識の不足とか、月額料金のレベルとか、社内での仕事の進め方(コンテキストスイッチ)とか、難しい問題については不透明。
  • Selenium WebDriver を利用して Webアプリケーションのテストをしてみる - suzukij's diary

    以前から気になっていた Selenium WebDriver を使ってWebアプリの自動テストを試してみたので忘れないうちにメモ。 WebDriverに惹かれたのは以下の理由 ブラウザの操作がJavaで簡単に書ける(学習コストが低い) 記述するコードが簡潔で分かりやすい(コードのメンテナンスがしやすい) JUnitからも実行できる(Jenkinsから実行して自動化したり) ブラウザのスクリーンショットが撮れる(エビデンス作成) 導入準備 ここから Selenium Client Drivers(Java) をダウンロードしてjarにクラスパスを通すだけ。 Mavenを利用する場合、pom.xmlに selenium-java を追加するだけでOKです。 ブラウザ操作の機能のみを利用するだけなら selenium-htmlunit-driver は不要なのでexclusionを指定しておくと

    Selenium WebDriver を利用して Webアプリケーションのテストをしてみる - suzukij's diary
  • 継続開発のススメ - Twisted Mind

    概要 開発をすればリリースがあり、リリースが終われば開発があります。継続開発をする以上はリリースと開発の繰り返しです。 開発手法やリリース手段は沢山あるのですが、あまりしっくりくるものが無かったので自分でまとめてみました。 これで完璧というものは残念ながらこの世にないと思うので、これからも臨機応変に良い流れを作って行ければと思います。 この文章は以下のような構成になってます。書き殴りですみません。 バージョンの付け方 ソースコード管理とリリース タスク駆動 環境方針 定義 いくつか事前に定義しておかないと話しが訳わからなくなりそうなので。 バージョン管理には git を採用しています。 開発というのはコードを書く事だけを指してはいません。 ここでいうフレームワークは「自身で開発している」として扱います。そうしないとちょっと難しいので。 ライブラリは自身の開発とそれ以外があると思いますので、

    継続開発のススメ - Twisted Mind
  • Slow in the Application, Fast in SSMS?

    You might see where this is getting at. Your application connects with ARITHABORT OFF, but when you run the query in SSMS, ARITHABORT is ON and thus you will not reuse the cache entry that the application uses, but SQL Server will compile the procedure anew, sniffing your current parameter values, and you may get a different plan than from the application. So there you have a likely answer to the

    lets_skeptic
    lets_skeptic 2011/07/20
    SQL Serverのパフォーマンスについての理解(英語)未読
  • TDDを実践してわかったTDDつまづくあるあると自分なりの乗り越え方まとめ

    導入から 10 年、PHP の trait は滅びるべきなのか その適切な使いどころと弱点、将来についてshinjiigarashi

    TDDを実践してわかったTDDつまづくあるあると自分なりの乗り越え方まとめ
    lets_skeptic
    lets_skeptic 2011/07/11
    同じようなつまずきは誰もがやっていると思う
  • なぜ糞システムができあがるか

    納期が、予算が、バグフィックスが、性能、デザイン、インタフェース、使い勝手、保守が、可用性が、移行にマイグレーション、稼働率が、糞だ。そもそも要求を満たしとらんまともに動かない糞システムが、なぜ莫大な銭金かけてできあがってしまうのは、なぜか? アナリスト、コンサルPM、SE、プログラマ、テスタ、ヘルプデスク、メンテ、ユーザー、そして経営者と、それぞれの立場から言いたいことは山ほどある。それぞれの立場から「これぞ真の原因!」と叫びたいのも分かる。経営者を除き、全てのキャリアをやってきたから。だから、自信をもって断言する。糞システムができあがる、最も根っこの原因はこれだ。 一つ前の仕事をしている それぞれの立場で「やるべきこと」は分かっている。だからこそ、そのインプットが体を成していないことが明白なのだ。仕方がないので、自分で「インプット」相当を作るハメになる。 例えばプログラマ、プログラミ

    なぜ糞システムができあがるか
    lets_skeptic
    lets_skeptic 2011/07/08
    なにを作ればよいかをはっきりさせることが重要ということ
  • 詳説!Redmineを使ったスマートな開発プロセス改善(画面キャプチャ付き)

    最近は、課題管理システム、チケット管理システムがメジャーになっており、私もこの種のツールをサービス開発、ソフトウェア開発で利用し、開発プロセス改善を試みています。 今回は、Shibuya.trac第12回勉強会 ~チケット管理システム大決戦 第二弾~で紹介させていただいた、Redmine利用事例の詳細解説を、共有させていただこうと思います。上記、勉強会の資料は、こちらに公開されています。各種ツールの事例が詰まった内容ですので、ぜひご確認ください。 Redmineプロジェクト画面 上記が自社のRedmineプロジェクト画面です。私のチームは「A-Team」といい、すべての作業は「A-Team」プロジェクトで管理しています。トップページには、勤怠の連絡や、Redmineを利用するときのルールなどがまとめてあり、資料を見ていただければわかると思いますが、プロジェクトメニューにはたくさんのモジ

    詳説!Redmineを使ったスマートな開発プロセス改善(画面キャプチャ付き)
    lets_skeptic
    lets_skeptic 2011/07/07
    redmineを使ったプロジェクト管理事例
  • GitHub - jiska/phpunit-stack at ad852d1b07f02216eda9a94a9217b13376ff5d5c

    lets_skeptic
    lets_skeptic 2011/07/07
    PHPUnitを自動実行
  • 本当はすごい codefirst の開発環境 - suer のブログ

    (記事は @suer, @mallowlabs, @mzp がノリノリで共同執筆しました!) 近代的なソフトウェア開発に必要なツールは3つある。 分散バージョン管理ツール ITS CI ツール 私はこれに AsakusaSatellite (以下AS)を加えたいと思う。 以上の4ツールを使用することによって、迅速なコミュニケーション、洗練された自動化をベースとした開発リズムを体験することができる。 このあとの節では具体的なユースケースをベースに、上記ツールの連携方法及びそのメリットをみていく。 ユースケース:開発中にソースコードの特定行で例外が発生した原因を探る ここは codefirst の開発室。 @suer と @mallowlabs と @mzp はリズム良くコードを書いています。 そんなとき、ビルドの異常を知らせるポップアップが表示されます。 さっそくAS 上でミーティングがは

    本当はすごい codefirst の開発環境 - suer のブログ
  • ドキュメンテーションを加速するストレスフリーの作図ツール『blockdiag』 jus2011年6月勉強会

    システム開発や保守、運用の現場においてドキュメントは必須のものです。 しかし、ドキュメントの作成・維持には多くのパワーがかかるため、ドキュ メントが存在しない、資料が古いままになっているなどといった現状を多く 耳にします。 勉強会ではこれらのドキュメントでよく利用される「図」にフォーカスし、 みるみるうちに図を作成できる「blockdiag」をご紹介します。 「blockdiag」はシンプルなテキスト記述からブロック図、ネットワーク図などの 画像ファイルを出力可能なオープンソースの画像生成ツールです。書き やすさ、メンテナンスしやすさを中心にデザインされており、図を作るのに 配置や並べ替えに苦労する必要はありません。 blockdiagのサンプルはこちら このような特徴を持つ「blockdiag」と、シンプルな記述でドキュメントを作成 するツール「Sphinx」を組み合わせることによって

    ドキュメンテーションを加速するストレスフリーの作図ツール『blockdiag』 jus2011年6月勉強会
  • はてなチーフエンジニアが聞く、サイボウズLiveのアジャイルな開発現場 - はてなニュース

    「ビジネス上のコミュニケーションを、メールの不便さから解放したい」という思いから2009年にサイボウズがスタートした無料コラボレーションツール「サイボウズLive」。その開発現場は、Webアプリケーション開発の流行をうまく取り入れたアジャイルなものでした。その様子を、はてなチーフエンジニアの大西康裕がインタビューしました。テーマは、プログラミング言語の選び方から、自動ビルドと自動テスト、リファクタリング、チーム内コミュニケーションなど。大西自身も「面白かった」と語る取材の様子をぜひお楽しみください。記事の最後ではプレゼントもご案内しています。ところでこの取材には、サイボウズ・ラボの竹迫良範氏が、なぜか大量のレッドブルを抱えて登場したのですが……。 http://live.cybozu.co.jp/ (※この記事はサイボウズ株式会社提供によるPR記事です。) 大西 はてなチーフエンジニアの大

    はてなチーフエンジニアが聞く、サイボウズLiveのアジャイルな開発現場 - はてなニュース
  • 知識ゼロからはじめるiPhoneアプリ開発 - A Day In The Life

    iPhone アプリ開発を初めてはや2年。わけわからんレベルからなんとかアプリをリリースするところまでこぎつけました。もともと趣味ではじめた事ですが今は仕事でも iPhone アプリ開発をしています。ここに至るまで自分が調べたことや参考にした文書をアプリの構想からアプリをリリースするまでの手順にそってまとめてみました。 iOSアプリ開発関連のを書きました 初めて iOS アプリ開発をされるかた向けに「プロの力を身につける iPhone/iPadアプリケーション開発の教科書」というを書きました。 この記事を読んで iOS アプリ開発に興味を持たれた方におすすめです(2013年2月26日発売)。2015年1月17日にSwiftに対応した改訂版がでました。 の内容に関する詳しい記事はこちらです。 iOSアプリ開発のを書きました 初期投資 8400円とプライベートな時間、iPhoneまたは

    知識ゼロからはじめるiPhoneアプリ開発 - A Day In The Life
  • 携帯端末以外のIPを制限するhtaccessを簡単生成 『Mobile IP htaccess Maker』 - HTMLタグボード

    携帯サイトを運営する上で、携帯端末のみをアクセス可能にしたい場合にサーバーに設置が必要なサーバー定義ファイル「.htaccess」を簡単に生成します。キャリアや検索エンジンのクローラーごとに設定可能なため、例えば「auは許可し、docomoは拒否」といった設定も可能です。 アクセスを許可したいキャリアやクローラーを選択し、最後に「htaccess生成」ボタンを押すと、htaccess用に書かれたIP情報(自IP含む)が表示れます。表示内容をコピーし、「.htaccess」という名前で保存した後、自分のサーバーにアップロードすれば完了です。 以下の携帯キャリアとモバイル向け検索エンジンに対応しています。 ※スマートフォンは対象外です。 携帯キャリア (5) NTT docomo, au by KDDI, SoftBank, 旧willcom(新Y!mobile), 旧emobile(新Y!m

  • ウノウラボ Unoh Labs: 見ないと損する ソフトウェアテスト関連サイト色々

    こんにちは!やまもと@テスト番長です。 今回は自分が普段チェックしている、ソフトウェアテスト系のサイトを色々ご紹介してみようと思います。既にご存知のサイトもあるかと思いますが、宜しくお付き合いください。 swtest.jp/wiki http://www.swtest.jp/wiki/index.php?swtest.jp/wiki 最近wiki化され、情報更新が活発になっています。必見です。 StickyMinds.com http://www.stickyminds.com/ コラムなどの読み物が充実しています。 Google Testing Blog http://googletesting.blogspot.com/ グーグルのテストチームのブログです。面白くないはずがありません。 Open source software testing tools http://www.

  • プロジェクトをデザインする: DESIGN IT! w/LOVE

    不確実な時代をクネクネ蛇行しながら道を切りひらく非線形型ブログ。人間の思考の形の変遷を探求することをライフワークに。 どんなプロジェクトでも、最初にプロジェクトを定義・計画しないと、決められた時間内・リソース内で成果を出すことってできないんじゃないかと思います。 そうじゃなくても、必ずしもプロジェクトで成果を出すのはむずかしいわけですから、せめて最初の定義と計画はきちんとしないとね。 プロジェクトのデザイン大なり小なりプロジェクトを行う上では、ざっと下記のリストのようなことを検討する必要があるでしょう(リストはできるだけいろんなプロジェクトに対応するよう一般化してみました)。 最初の「定義」の部分で、タスクと役割とスケジュール、その他リソースが紐づいた状態でプロジェクトをデザインしておかないといけないと思います。 定義ミッションとヴィジョンの明確化目的と測定可能なゴールの設定ターゲットの明

  • [進捗管理編]人月を入れ替えてはいけない

    システム開発プロジェクトでは規模を表す単位として「人月」という単位がよく用いられる。これは技術者一人が1カ月労働することを意味し,人を数える助数詞「人」と,時間を数える単位「月」を掛け合わせたものである。数学的な見地から見ると「人」は分離量であり「月」は連続量である。この分離量と連続量の違いとは,例えば計算機について考えれば,分離量はデジタル計算機であり,連続量は計算尺である。つまり,「人月」とは分離量と連続量を掛け合わせた特殊な単位であり,どちらかというと「概念」に近い。 この「人月」という概念を「人」×「月」という単純な数式で考えると大きな失敗を犯す。例えば,プロジェクトの後半で問題が発覚し納期遅延が発生しそうな場合,あとどのくらいの工数が必要かを算定し,追加要員を投入して遅延を挽回しようとすることがある。 これは,遅延挽回対策として非常に危険な方法である。遅延を挽回できるどころか,当

    [進捗管理編]人月を入れ替えてはいけない
  • MOONGIFT: » ブラウザをターミナルから操作して自動テストを実現「Firewatir」:オープンソースを毎日紹介

    Webアプリケーションのテストは面倒くさい。HTTPでゲットするだけであれば良いが、ポストしたり、JavaScriptでレンダリングしてあったりと、動作も複雑だ。それらを全て網羅的にテストするのはなかなか難しい。 自動操作中 そこでテストにブラウザを使ってみよう。自動操作することで、テストの効率化をはかれる。 今回紹介するオープンソース・ソフトウェアはFirewatir、Firefoxを自動操作するソフトウェアだ。 FirewatirはIEをRubyを使って自動操作するソフトウェア、WatirのFirefox板とでも言うべきソフトウェアだ。実際、読み込むファイル等は違えども全体的な操作はWatirと同じスクリプトで動作する。 操作中のターミナル 実際の使い方はFirewatirの提供するXPIをFirefoxにインストールし、JSSHを起動する。そしてGemを使ってFirewatirをイン

    MOONGIFT: » ブラウザをターミナルから操作して自動テストを実現「Firewatir」:オープンソースを毎日紹介