タグ

ソフトウェア開発に関するAJYAのブックマーク (45)

  • 超速で開発・リリースするための6つのこと - Cybozu Inside Out | サイボウズエンジニアのブログ

    「サイボウズ・アドベントカレンダー」の8日目です。ちょうど真ん中まできました(これまでの記事一覧)。 こんにちは。kintone 開発チームの刈川です。いきなりですが、皆さんはどのくらいの頻度でアプリやサービスをリリースしていますか? 1週間? 1ヶ月? 1年? 規模によると思いますがクラウドサービスではリリースのスピードが大事です。せっかくいいアイデアを思いついたのに、それを実現するまでに果てしない時間と労力がかかるとしたら…。ユーザの意見を取り入れるまでに半年も一年もかかっていたのでは、ユーザは他サービスに移ってしまうかもしれません。そこで今回は、私たち kintone チームが取り組んでいる「スピーディな開発・リリース」のための手法を簡単に紹介したいと思います。 アイデアを形にする アイデアというのは形にするまでがゴールです。開発現場ではこのことをリリースと呼び、リリースをするまでに

    超速で開発・リリースするための6つのこと - Cybozu Inside Out | サイボウズエンジニアのブログ
  • 最近の開発現場はギャグとしか思えない - rabbit2goのブログ

    知人とコソコソと世間話。最近の開発現場は面白いことが多過ぎるという点で意見が一致してしまう。その一例。 人の入れ替わりが激しくて技術やノウハウが蓄積しない。忙しくなるとスキルよりも経験よりも頭数を揃えることを主目的にやたらと人を集めるものの、プロジェクトが終わると直ぐさま関係を切ってしまうので継続的な蓄積が何も残らない。 コンプライアンスの掛け声の下、関係者以外にも情報が見えてしまうホワイトボードやRedmineによる情報共有はご法度。セキュリティ対策も厳しくなる一方なので、ソフトをダウンロードしてパソコンに入れるだけで、正義感の塊のような監視委員から直ぐさま電話がかかってくる。 行き当たりばったりの対策を取り続けているので、何か問題が有ってもブレーンストーミングで出てきたようなアイデア案ばかりが続く。根原因を探ることをしないし、そもそもそんな追求を行うスキルすら無い。 人月単価に惹かれ

    最近の開発現場はギャグとしか思えない - rabbit2goのブログ
  • ソフトウェア開発プロジェクトをとりまく6つの誤解〜プログラミングを経験しないとわからないこと | Social Change!

    続きを書きました → 伝えなければ伝わらないという当たり前の話 ソフトウェア開発に関する相談を受ける中で、どうもソフトウェアというものの特性について誤解をされているな、という思いを持つことがあります。 そうした場合、聞いてみるとプログラミングの経験が無かったり、殆どプログラミングには携わったことがないという方が多いです。 ソフトウェアを開発しようとするならば、ソフトウェアという特性をよく知った上で、プロジェクトは運営した方が良いし、うまくいくはずです。そしてソフトウェアならではの特徴を知るのに、プログラミングの経験はとても重要です。 この記事では、プログラミング経験の無い方が陥ってしまいがちな、ソフトウェア開発にまつわる誤解について考えてみました。 Harry Potter is Ready for Divination / weekbeforenext 誤解:既にあるソフトウェアを流用し

    ソフトウェア開発プロジェクトをとりまく6つの誤解〜プログラミングを経験しないとわからないこと | Social Change!
  • リーマンの法則~ソフトウェアもエントロピー増大の法則を避けられない - プログラマの思索

    森崎さんのBlogを読んで、ソフトウェアもエントロピー増大の法則を避けられないのだなあと思った。 だが、ソフトウェアはハードウェアとは違う特徴がかなりあると思う。 考えたことをメモ書き。 【元ネタ】 ソフトウェア保守の法則(リーマンの法則)、ご存知ですか?:森崎修司の「どうやってはかるの?」:ITmedia オルタナティブ・ブログ バグ修正のための変更の40%が新たなバグを混入するという研究結果 - Googleのバグ予測方法との共通点:森崎修司の「どうやってはかるの?」:ITmedia オルタナティブ・ブログ Googleのバグ予測アルゴリズム: プログラマの思索 リーマンの法則とは、上記記事にもある通り、ソフトウェア保守に関する経験則。 元々は5つあるそうだが、「ソフトウェア工学・システム工学ハンドブック―エンピリカルアプローチによる法則とその理論」によれば次の3つにまとめられると言う

    リーマンの法則~ソフトウェアもエントロピー増大の法則を避けられない - プログラマの思索
  • 海外でなぜアジャイル開発が普及しているのか? IPAが分析と提言

    海外ではなぜアジャイル型開発が普及しているのか、IPA(独立行政法人情報処理推進機構)が継続的に行っている非ウォーターフォール型開発についての調査や提言活動の一環として、海外でのアジャイル開発の背景などについての報告書「非ウォーターフォール型開発の普及要因と適用領域の拡大に関する調査報告書 (非ウォーターフォール型開発の海外における普及要因編)」が公開されました。 調査対象国は、アメリカ、イギリス、中国、ブラジル、デンマークです。アメリカアジャイル宣言が行われたアジャイル開発先進国として、イギリスもアジャイル開発の先進国として選ばれ、中国は日のオフショア先であり新しいソフトウェア開発市場が起こりつつある国として、ブラジルはアジャイルコミュニティが活発化しており、デンマークは政府がアジャイル開発を推進している国として選択されました。 報告書のハイライトを紹介します。 海外でなぜアジャイル

    海外でなぜアジャイル開発が普及しているのか? IPAが分析と提言
  • ソフトウェア開発プロジェクトを蝕む10の典型的な過ち

    プロジェクト管理は決して精密な科学ではないが、これにソフトウェア開発が持つ予測が難しいという性質と組み合わせられると、大きな悲劇のレシピが生まれる。わたしは、ソフトウェア開発プロジェクトに取り組んでいるプロジェクトマネージャーがよく犯す過ちを数多く見てきた。それらの過ちの一部はソフトウェア開発に限ったことではないが、この文脈では特に頻繁に起こり、ダメージも大きい。 1.「人数を増やせばよい」という誤解 Fred Brooks氏は同氏の有名な言葉の中で、よくあるプロジェクト管理の間違いについて「ある女性が9カ月に1人子どもを産めるからといって、9人の女性がいれば1カ月に1人の子どもを産めるわけではない」と表現している。そして、この間違いは今でも頻繁に見られる。ある問題に多くの人間を割り当てれば、その問題は早く解決するという考え方だ。残念ながら、これは正しくない。 プロジェクトに人を1人投入す

    ソフトウェア開発プロジェクトを蝕む10の典型的な過ち
  • TDDをはじめる条件 #tddbc #tddconf - やさしいデスマーチ

    色々と忙しすぎてブログが書けません。 JavaOneの話とか、JUnitの話とか色々書きたいんですが…もうしばらく我慢なのです。 で、TDDの前方依存と後方依存で意見が欲しいとのことなので自分なりの意見を。 技術的な前方依存 『TDDを始める前と終TDDを実際やるために必要な技術』 ・最低限対象言語でコードがかけるようになって ・最低限テスティングフレームワークを使えるようになって ・リファクタリングをしっかり学んで ・対象言語でのきれいなコード、設計とは何かを知って ・テストファーストを知って こうしておそらくスタートライン。 自分はこれは疑問です。 最後の「テストファーストを知って」という部分はTDDに関することですけど、それ以外ってTDDを始めるスタートラインではなく、ソフトウェア開発としてのスタートラインかと思います。 言い換えると 最低限対象言語でコードを書けないと、ソフトウェア

    TDDをはじめる条件 #tddbc #tddconf - やさしいデスマーチ
  • 今春まともなエンジニアになりたい人が読む12冊+α - うさぎ組

    今春まともなエンジニアになりたい人とはつまり僕のことです。 ちなみに最近まで読んでいたのはこっち →「ソフトウェアテストを勉強しはじめて10ヵ月でやったこと - うさぎ組」 読み返すのも含めてこれらをしっかりと読もうと思ってる書籍をあげてみます。 最後のほうにOOPの設計系の書籍について補足を書いておきます。 CleanCoder まだ半分くらいまでしか読んでいませんが、宣伝の通り全てのソフトウェア開発に関わる人に読んでほしいと思わせますね。 Clean Coder プロフェッショナルプログラマへの道 作者: Robert C. Martin,角征典出版社/メーカー: アスキー・メディアワークス発売日: 2012/01/27メディア: 大型購入: 12人 クリック: 645回この商品を含むブログ (36件) を見る いかにして問題を解くか 数学を題材に扱いながらも一般的にどのように目の前

    今春まともなエンジニアになりたい人が読む12冊+α - うさぎ組
  • 高速で無駄のないソフトウェア開発を実現するための7つのポイント | Social Change!

    どうすれば小規模なチームでも大きな成果を出せるのか。大きな組織で沢山の量をこなすのは当たり前のことで、あまりクールではありません。少ない人数でも大きな成果を出すには、スピードをあげることと、そのためにも無駄をなくすことがポイントになってきます。 ソフトウェアをつくるための3つの役割で書いた通り、ソフトウェア開発をクラウドのようなサービス提供で続けていくには、プロダクトオーナーとプログラマーがキャッチボールのような形で、仕様と実装をずっと繰り返しながら作っていくのが自然です。 SonicGardenで使っているツールと開発の流れの全体は以下のようになります。大事なことは「動くソフトウェア」の状態を保ったまま、どれだけ回転数をあげていけるか、ということです。そのために、プロダクトオーナーとプログラマの間で待ち時間を減らすために並行して進めるようにするなど工夫しています。 ホワイトボードとMVP

    高速で無駄のないソフトウェア開発を実現するための7つのポイント | Social Change!
  • なぜ日本でIT産業は育たなかったのか アメリカどころか印中韓台にすら負けてる : 暇人\(^o^)/速報

    なぜ日IT産業は育たなかったのか アメリカどころか印中韓台にすら負けてる Tweet 2:名無しさん@涙目です。(庭):2011/11/19(土) 11:36:24.95 ID:bg8e7aK/0 マーケティング弱者であること 保守的開発であること 天才がおらずみんなまあまあなこと 346:名無しさん@涙目です。(dion軍):2011/11/19(土) 12:31:18.69 ID:BF45w4Ba0 >>2で終わってた 4:名無しさん@涙目です。(茨城県):2011/11/19(土) 11:36:37.13 ID:CmtELczf0 やっと芽が出てきたと思ったらムショ送りだからな 51:名無しさん@涙目です。(大阪府):2011/11/19(土) 11:45:41.70 ID:MqH2nGT60 >>4 オリンパスのような企業はぬくぬくと残ってきたがなw 5:名無しさん@涙目です。

    なぜ日本でIT産業は育たなかったのか アメリカどころか印中韓台にすら負けてる : 暇人\(^o^)/速報
  • Y.M | 株式会社ラグザイア

    〒194-0022 東京都町田市森野1-33-11 町田森野ビル 205 TEL : 042-720-2356 FAX : 042-720-2658 SERVICE chevron_rightRuby on Railsとの関わり chevron_rightサービス・開発の流れ chevron_right開発実績 ABOUT chevron_right代表挨拶 chevron_right会社概要 chevron_right沿革 chevron_right社員紹介 NEWS RECRUIT CONTACT SITEMAP

    Y.M | 株式会社ラグザイア
  • スクラム提唱者から学ぶ、チームの不幸を減らすたった2つの方法

    スクラム提唱者から学ぶ、チームの不幸を減らすたった2つの方法:スクラム提唱者が教える、チームの不幸を減らす方法(1/2 ページ) スクラム提唱者のジェフ・サザーランド氏を講師に招いた、日初の「スクラムアライアンス認定プロダクトオーナー研修 レポート」レポート。チームも顧客も不幸な状態をなくす方法は実にシンプルだ。 2011年はアジャイル実践者にとって歴史的な年となった デスマーチ続きでリリースは遅延、チームはプレッシャーを受けてマネージャはてんてこ舞い、顧客も不幸……そんな状態を良い方向に転換する方法はたった2つである――「スクラム」提唱者の1人である、ジェフ・サザーランド氏の言葉です。 1月11日と12日、サザーランド氏による日初のスクラムアライアンス認定プロダクトオーナー研修(Certified Scrum Product Owner 研修、以下CSPO研修)が開催されました。翌日

    スクラム提唱者から学ぶ、チームの不幸を減らすたった2つの方法
  • 5つの世界 - The Joel on Software Translation Project

    Joel Spolsky ジョエル・スポルスキ 翻訳: Yasushi Aoki 青木靖 2002/5/6 ある重要なことがプログラミングやソフトウェア開発についての文献でほとんど語られず、そのため私たちは互いに誤解する結果となっている。 あなたはソフトウェア開発者だ。私もそうだ。しかし私たちの目的や要求は異なっているかもしれない。実際、ソフトウェア開発にはいくつかの異なる世界があり、異なった世界ではルールも異なっている。 あなたがUMLモデリングのを読んでも、それがデバイスドライバのプログラムを作るのには役立たないということはどこにも書かれていない。あるいは「(.NETに必要な)20MBのランタイムは問題ではない」というアーティクルを読んでも、それは当たり前のことに触れていない:あなたがROMが32KBの携帯電話のためのコードを書いているなら、それは十分に問題だ! ソフトウェア開発には

  • アジャイル型開発を推進するための活動成果を公開 - 情報処理推進機構:ソフトウェアエンジニアリング

    2012年3月26日 更新 2011年4月7日 公開 独立行政法人情報処理推進機構 ソフトウェア・エンジニアリング・センター 概要 最近のソフトウェア開発では、ビジネス環境の変化への対応、これに伴う要求の変更、ソフトウェアの市場投入や投資効果の確認の迅速化が、以前にも増して厳しく求められています。このような状況において、要件を最初に決めずに開発に着手できるアジャイル型を中心とする非ウォーターフォール型の開発手法が注目されています。 IPA(独立行政法人情報処理推進機構)ソフトウェア・エンジニアリング・センター(SEC)では、ウォーターフォール型開発及び、アジャイル型開発の経験が豊富な実務者、契約に詳しい専門家など、産学官の有識者をメンバーとした「非ウォーターフォール型開発ワーキンググループ」を設置し、これらの課題について検討してきました。 この度、日におけるアジャイル型開発に適したモデル

  • ソフトウェア開発会社に入って学ぶべき最初の事 - やさしいデスマーチ

    主に受託開発がメインのソフトウェア開発を行っている会社に入って学ぶべき最初の事です。よく、プログラミング言語を幾つか学べとか、技術的な部分が重要と言われています。しかし、個人的にはそれも大切かと思いますが、最近は開発プロセス・テスト技法・ドキュメンテーション能力などを学ぶ方が重要なのでは?と感じています。 技術的な部分を後にする理由 技術的な部分は業務を行っている中で、いくらでも学ぶ機会があります。少なくとも1年目や2年目では自分で新しい技術を持ってきて設計したりという事は少ないでしょう。すると、その会社で使われている技術を吸収するというフェイズでも良いという考え方もできるのです。勿論、自分で興味のある分野をどんどん伸ばすことは悪い事ではありません。 開発プロセスを学ぶワケ 別にアジャイルを学べ!みたいな事ではありません。しかし、ソフトウェア開発を進めていく中での作業の1つを取ったとき、そ

    ソフトウェア開発会社に入って学ぶべき最初の事 - やさしいデスマーチ
  • 第8回 ソフトウェアデベロップメント:キャリアアップのカギは強みや得意分野の確立

    今回は、ソフトウェアデベロップメントのモデルキャリアパスとキャリアアップのポイントを紹介しよう。ソフトウェアデベロップメントとは、OS、ミドルウエア、業務パッケージなどのソフトウエア製品の企画、仕様決定、設計、開発を手がける職種である。 図1に、ソフトウェアデベロップメントのモデルキャリアパスを示す。 まず入社して数年間は、プログラマとして、ソフトウエア製品の実装やテストを担当し、開発手法などの基技術・手法を習得する。そのうえで10年目までに技術リーダーとなり、製品開発デザインなど他の役割も兼務しながら、得意領域において誰にも負けない高度な技術力を習得する。 10年目以降は、製品アーキテクチャの設計や基盤技術に関する業務など、より高度な技術力が必要で責任も大きな業務に携わりながらリーダーとしての実績と経験を積み、20年目くらいから、個人の得意分野や強みを生かして、様々な分野のプロフェッシ

    第8回 ソフトウェアデベロップメント:キャリアアップのカギは強みや得意分野の確立
  • 最近興味深いと思ったWeb記事のリンク集 - give IT a try

    社内のメンバーに紹介しようと思ってためてきた各種Web記事へのリンクが大量に溜まっちゃいました。 ついでにここでも紹介しておきます。 一部の記事は会員登録が必要かもしれません。あしからず。。。 プログラミング/プログラム設計 プログラミングについてあまり知られていない7つのこと http://www.tommyjp.com/2010/08/blog-post_1710.html => どれも超重要。知らなかった人はこれを機に覚えておきましょう。 ソースコードの質 http://el.jibun.atmarkit.co.jp/genmaicha/2010/11/post-5c3e.html => 保守性、可読性、拡張性の重要性について。 技術的負債 http://d.hatena.ne.jp/asakichy/20101210/1291936604 => 技術的負債の原因や解決策について(そ

    最近興味深いと思ったWeb記事のリンク集 - give IT a try
  • ソフトウェア工学とは何か

    ソフトウェア設計とは何か? (原文: What Is Software Design?) by Jack W. Reeves (c)C++ Journal - 1992 訳者まえがき この文書は,Jack W. Reeves 氏が1992年に C++ Journal に寄稿した記事の邦訳です。 記事では,オブジェクト指向プログラミング言語の代表として C++ を挙げていますが,これは記事が執筆された当時,一般的に利用可能なオブジェクト指向言語は C++ だけであったという事情があるためです。 今では C++ に加えて Java,Delphi,C# といったオブジェクト指向言語が利用可能となっていますが,そんな今でさえこの記事は古さを感じないものとなっており,ソフトウェア開発の質,現状を鋭くえぐるものとなっています。 邦訳の公開を許諾していただいた Jack W. Reeves 氏に,

  • C#たんと学ぶ/わりと硬派なソフトウェア開発講座 第1回「C#でできること」

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

    C#たんと学ぶ/わりと硬派なソフトウェア開発講座 第1回「C#でできること」
  • 「やることリスト」に基づく見積もり手法

    業務としてソフトウェアを開発するならば、工数の見積もりは避けては通れない。見積もりは、ソフトウェア開発プロセスのはじめの一歩に過ぎないが、その成否はプロジェクト全体の命運を握ることになる。プロジェクトに焦燥と混乱をもたらすことなく、堅実に開発を進めていくためには、正確で具体的な見積もり手法が求められる。 良く知られた見積もり手法の1つに、ファンクションポイント法がある。外部との入出力に着目して、ソフトウェアの機能から工数を見積もるファンクションポイント法は、有効な見積もり手法である。 だが、実際のソフトウェア開発の現場では、ファンクションポイント法で見積もりを行っているケースは多くはない。その原因の1つには、ファンクションポイント法を使うためには、入出力を定めたモデルの作成や、ポイントの計算方法など、専門的な知識と技能が必要なことが挙げられる。 小規模なソフトウェア開発では、見積もりのしや