ごぶさたしております。もはや境界どころかデザインともプログラムとも距離が出てきている今日この頃、すっかりこのブログの存在を忘れていました。 すでにネタの旬は過ぎていますが、Apple の UDID 廃止問題について触れておこうかと。事実関係や最もらしい憶測は、以下の記事を参照。 アップル、iOS端末ユーザーのプライバシー保護で方針変更 - 「iOS 5」ではUDIDの利用を推奨せず あくまで UIDevice クラスの uniqueIdentifier メソッドが deprecated でマークされただけであって、iOS 5.0 で今すぐ廃止されるという話ではない点に注意。各所予想を取りまとめると、iOS 5.0 では現状どおり使用できる(コンパイル時に Warning が出る)が、iOS 5.1 で廃止されるのではないかという話。ちなみに iOS 4.0 から 4.1 のアップデートまで
デスマーチに引導を渡すには、何をしたら良いんだろう。 問題を解決するときに踏む手順は、いつも同じだと思う。原因を突き止めて、それを除くアイディアを出し、実践する。じゃあ、デスマーチの原因は、一体なんだろう。 必要工数(期間 or 人員)が、足りない。 開発者(デベロッパ)が、アッパラパー。 管理者(マネージャー)が、アッパラパー。 営業が、アッパラパー。 顧客が、アッパラパー。 パラッパラッパー。 個人的な経験から言うと、はじめの原因、工数不足は、間接的な原因でしかないと思う。期間も人員も膨大だとしても、デスマーチは起こる。結局、ふたつ目以降の人間の問題が、大きいのだと考えている。パラッパラッパーはさておき。 デスマーチのとき、一番の憂き目に遭うのは、開発者、特に末端のプログラマやテスターだろう。中心(顧客)から遠ければ遠いほど、振られる幅は大きくなる。これ自然の摂理。 確かな仕様書もなく
ウィリアムのいたずらが、街歩き、食べ物、音楽等の個人的見解を主に書くブログです(たま~にコンピューター関係も) さいきん、これ どうしてプログラマに・・・プログラムが書けないのか? http://www.aoky.net/articles/jeff_atwood/why_cant_programmers_program.htm がはやっているようだ。 この文を読んで。。 あー、この書いた人がプロジェクトマネージャーになったら、開発はデスマーチ、プログラマは地獄だろうなと思った。 どうしてか。。を書く前に、まず、ここで話題になっている話を1つ (以下斜体は上記サイトより引用) ここでは、「Fizz-Buzz問題」というのを取り上げている。 それは、 1から100までの数をプリントするプログラムを書け。ただし3の倍数のときは数の代わりに「Fizz」と、5の倍数のときは「Buzz」とプリントし、
ソフトウェア開発のデスマーチの惨状を聞くと、ほとんど例外なくプログラマが徹夜で頑張っている。逆に言うと、プログラマが徹夜で頑張るしかないプロジェクトほどデスマーチになる確率が高いと言えるだろう。 プログラムを書かなければソフトウェアが完成しないのはその通りだと思うが、遅れた原因はプログラマにだけあるとは思えないのに、なぜプログラマだけが苦行に耐えないといけないのだろうか。 従来の開発方法の場合、原因ははっきりしていて、前工程が遅れて、納期は変わらないから、プログラミングの工程に全てのしわ寄せが来るのである。 やっかいなのはプログラミングの工程自体はスケジュール通りに始まっているというケースである。仕様が確定していないのになぜか並行で工程が進んでしまう。こうなると関係者はスケジュールはやや遅れているが問題ない(平行で動いているので効率的とまで思ってしまう)という認識になりやすい。 クリティカ
1. ビジネスとITのギャップを埋める 本連載が始まって約2年がたち、当時、出始めだった『ITアーキテクト』という言葉も定着した感がある。また、システム開発を成功させるためには、ビジネスとITの間のギャップを埋めなければならないという考えも、広く支持されるようになってきている。本連載では、これまで著者の所属するウルシステムズのコンサルタントの体験をベースに、上流工程で行うさまざまな活動を具体的に紹介してきた。システム開発に携わる多くの技術者にとっては、あまり縁のなかった上流の領域の様子がお伝えできたのではないかと思う。今回は、連載の締めくくりとして、IT技術者、あるいはITアーキテクトが上流領域で何をすべきなのかについてあらためて総括をしたい。 上流領域でのIT技術者の役割とは、一言で言えば、『ビジネスとITのギャップを埋める』ことにある。ビジネスとITのギャップとは、すなわちシステム開発
ソフトウェア設計とは何か? (原文: 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.
開発の現場 Vol.002 に寄稿した原稿を公開します。 処方箋⑩ デスマーチの記録に見る運命の分かれ道 体験記にみるプロジェクトの闇プログラマはなにを学ぶべきか デスマーチの記録に見る運命の分かれ道 山崎敏 YAMAZAKI Satoshi ●体験記にみるプロジェクトの闇プログラマはなにを学ぶべきか プロジェクトをデスマーチにしないために何をすればよいのか分かっていても、1開発者としてはどうにもならないということもあるでしょう。本稿では、インターネットで語られたある壮大なデスマーチの記録を題材に、自身も多くのデスマーチを体験してきた山崎氏が解説を試みます。貴重な記録を開発者のための「盾」として活かすために、何を学ぶべきか考えていきましょう。 プログラマという職業もいろいろあります。はっきり言ってピンキリです。働き甲斐があって無理なく仕事ができることもあれば、逃げ出したくなるようなひどい職
その昔、とあるプロジェクトがものすごいことになっていて、猛烈な勢いでスケジュールが遅れているのに、仕様がまったく決まっておらず「とりあえず」作ったモノを現地にブチこんで、そのあと燃え上がるであろう事態を収めよという命のもと、テスタとして放り込まれたことがある。 まずお客さんがいいかげんだった。もともと現行システムがあるので「仕様は現行と同じでいい」と言いながら、思いつきで「新しいシステムだからこんな機能も欲しい」という、失敗するならそれ! ということを頻繁に行った。 受けたSEもいいかげんだった。お客さんが「このボタンを押すと計算結果が出る」というと、仕様書には「ボタン押下により計算結果が出力される」としか書かなかった。その計算はどのデータに基づいてどのような式で行われるのかは書かれなかった。もしそれをお客さんが(幸運にも!)教えてくれても、それが議事録に書かれることはなかった。 受けたプ
GLOCOM - publications Center for Global Communications,International University of Japan top about philosophy history organization access sitemap 前川 徹 富士通総研経済研究所主任研究員/早稲田大学国際情報通信研究センター客員教授/GLOCOM主幹研究員 『ソフトウェア最前線―日本の情報サービス産業界に革新をもたらす7つの真実―』アスペクト2004年9月発行A5判、264頁税込価格1,890円 背景あるいは問題意識 われわれの生活を支えている社会インフラの多くは、コンピュータによって制御されている。たとえば、電話やインターネットなどの通信ネットワークはもちろん、金融システム、電力、ガス、公共交通機関などがコンピュータによって制御されている。また、
成果物から設計書へ はじめに コンピュータがこの世に登場した頃、プログラミングという作業は設計工程が終わってから行われる作業と考えられていました。 つまり、プログラミングという作業は、設計図に従ってものを作る「モノ作りの作業工程」であると考えられていたわけです。 これを当時一般的であった建築のアナロジーに当てはめると、プログラミング(実装工程)とは「設計図を基にして実際に建物を建築する」工程になり、プログラマは「大工」ということになります。 実際に、現在でもこの考え方に従ってソフトウェア開発を行っている組織が数多くあります。 しかし、1992年にJack Reevesという人は、「ソフトウェア設計とは何か」という記事(C++ Journal)の中で、「ソースコードは設計を表現したドキュメント、つまり設計図であり、プログラミングという作業は設計工程の一部なのだ」ということを主張
In the past few years there's been a blossoming of a new style of software methodology - referred to as agile methods. Alternatively characterized as an antidote to bureaucracy or a license to hack they've stirred up interest all over the software landscape. In this essay I explore the reasons for agile methods, focusing not so much on their weight but on their adaptive nature and their people-fir
筆者には,現役でソフトウエア開発をしていたころから抱いている疑問がある。それは「ソフトウエア開発にとって,どこまでが設計なのか?」ということだ。その疑問は,エンジニアから記者に転職し,さまざまなSEやプログラマを取材するようになって,ますます深まるようになった。 一般にビジネス・アプリケーションのソフトウエア開発は,設計工程と製造(コーディング)工程に分かれる。ソフトウエア開発者は,設計者(主にSE)とプログラマとに分類され,設計者が書いた「仕様書(設計書)」にしたがってプログラマがコーディングする。仕様書にはさまざまな様式がある。オリジナルなものから,DFD(data flow diagram),ERD(entity-relationship diagram),最近ではUML(unified modeling language)を使う場合もあるだろう。つまり設計とは「設計者が仕様書を書き
先日、経済産業省向けの仕事をしている知り合いと食事をしたのだが、彼によると経済産業省の今の悩みは、「IT産業の階層化の弊害によっておこる下流のプログラマーの収入の低下」だそうである。「プライムベンダー」と呼ばれる「上流コンサルタント」たちがインドや中国にも仕事を発注できることを理由に、激しく値切り始めたために、今やわずか一人月30万円というケースもあるという。 こんな話を聞くと本当に悲しくなる。まず第一に「プログラムを書く」という仕事は簡単な仕事ではない。数学的な頭を持っていないとかなり辛いし、基礎がしっかりと出来ていないとろくなソフトウェアは作れない。物価の安いインドや中国なら許せるが、米国よりも生活費の高い日本で一人月30万円とはあまりにも低すぎる。 「彼らは下流のエンジニアで、詳細仕様書に従った通りのプログラムを書くだけの簡単な仕事をしているから給料が安い」という説明を聞いたことがあ
某大手国立大学卒業、25才、大手IT系企業に勤める優秀な社員が 今感じてる閉塞感をリアルな言葉にしてやるよ 就職して、社会に出て、見えたのはまるで漫画の世界だ 絵に描いたような生き方をしたら 絵に描いたような悩みを持ったんだ それはこんなカンジだ 「あ、はい」 「できます」 「大丈夫です」 「頑張ります」 一人が無理をすれば、他の人に無理がかかるんだ 会社なんてその最たるもんだ 上の人間が「はい、目標達成に向けて頑張ります」と べらぼうな目標に向けて無理を宣言すれば 俺みたいなカスレベルのスタッフに全て降りかかる もちろん、中間層まで全て、 一番のシワ寄せを喰らうのは実務者だ 現場でコーディングしてるやつだ なのに、困ったことに、なぜか、どうしてか 実務者も徹夜をして勤しむ 上の人間の無理を喜んで喰って、 無理なものを無理して吸収する そしてたまに「頑張ったな」と言われて、喜んでる みんな
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く