【XP】 Agile Process 【UP】
■ このスレッドは過去ログ倉庫に格納されています
XPスレと補い合う感じで役立てばいいなと思います。
関連スレ
・eXtreme Programming Part.3 (XPスレッド)
http://pc3.2ch.net/test/read.cgi/tech/1023709462/l50
・Agile Alliance にあるドキュメント集
http://www.agilealliance.org/home
・Wiki本家のAgile関連ページ
http://c2.com/cgi/like?AgileProcess
・Agile Modeling(お勧め)
http://www.agilemodeling.com/
なるべくマターリでおながいします。
0449デフォルトの名無しさん
NGNGスリーアミーゴ!
0450デフォルトの名無しさん
NGNG0451デフォルトの名無しさん
NGNGICONIXっていうのはどうでしょうか?
RUPとXPの間で、実は一番現実的じゃないかと思うのだが。
0452デフォルトの名無しさん
NGNG『Applying Use Case Driven Object Modeling with UML』って本で
前提にしてるプロセスがICONIXだった。プロセスの勉強じゃなく、
ユースケース上手くなりたくて使ってた参考書なんだけど。
現実性云々を考えると課題はやはり、ICONIXもi&iを前提としてる辺り
じゃないかな。ICONIXを現実的と言うには、まず初めに反復型開発に
ついて現実的と言えてなきゃならないでしょう。(既にRUPなんかで
成功してる所が軽量化のために、って話なら問題無いだろうけどさ。)
ただこのウォータフォールの拘束だけクリアしちゃうと、導入し易い
部類には見える。ユースケースとかooa-d-pとかの一般的な技術が
まあまあ不自由無いレベルに達してさえいれば、プロセス固有の
ジャーゴンとかドグマとか少なくて、習得コストも抑えられそうだし。
敷居の低さも、開発プロセスの重要なファクターだと思う秋の夜長。
0453デフォルトの名無しさん
NGNG長瀬 嘉秀 訳だから躊躇しているんだが。
ttp://www.amazon.co.jp/exec/obidos/ASIN/4894717115/ref=ase_xpjp-22/249-6525190-2768302
0454デフォルトの名無しさん
NGNG監訳だし、そんなに変な訳じゃなかったよ。
内容自体も良いからお勧め。
テストが開発を駆動させるっていうイメージがつかめる。
それでも訳が気に入らないなら原書を読め。
0455デフォルトの名無しさん
NGNG0456デフォルトの名無しさん
NGNGhttp://d.hatena.ne.jp/neverbird/20031027#p1
0457デフォルトの名無しさん
NGNG活用できてないんだろうか。むしろ、その方がもったいないな。
0458デフォルトの名無しさん
NGNGMore Effective C++を買おうと思ったが、Amazonだと4910円もする。
訳書だと3800円…
0459デフォルトの名無しさん
NGNG変じゃないなら購入してみるよ。
速く翻訳されないかと待っていたし。
たしかに英語読めると情報量が全然違うだろうなぁ
だが今じゃなかなか勉強する機会も時間も取れなくて。
学生のうちに勉強しておけば良かった・・・
0460デフォルトの名無しさん
NGNGっていうか、コードの部分が大きいからね。
逆に、コードが多いから原書でも読みやすいかもしれない。
0461デフォルトの名無しさん
NGNG0462デフォルトの名無しさん
NGNGなし崩し型もあるよ、、、たぶん。
ユーザー(営業)に早いとこプロトタイプをわたす。すると向こうから変更の希望が
「必ず」でてくるので以下 iterative に進行させる、と。進捗の情報が頻繁に届く
状態で、しかも希望を次々と聞いてくれる(ような気がする)となれば気分を悪くする
ユーザーはほとんどいない。といいなあ。
逆につんぼ状態で納期が来ていきなりまだできてません、とかいうのが一番怒る
のは確実だが。
ただし、よくわからないので出来上がったものを黙って受け取るような楽な顧客が
うるさくいろいろ言い出すという副作用はありそう。
0463デフォルトの名無しさん
NGNGそんなプロジェクト管理できるわけないだろ。
0464デフォルトの名無しさん
NGNG朝釣りごくろうさまです。m(__)m
0465デフォルトの名無しさん
NGNG客からの要望が出る量・速度
が
それを実装して見せるための実装量・速度
より大きい場合は全然対応してくれないし完成度も低い。
納期に仕様を満たしているものも出せない。
と客の不満全開で最悪の結果となる。
0466デフォルトの名無しさん
NGNGひかえめに言って、おまえは「氏ね」
0467デフォルトの名無しさん
NGNGいい意味で言うんだけど、おまえは逝ってよし。
0468デフォルトの名無しさん
NGNGそうならないように、「計画ゲーム」で主導権をとれる準備しないとねー。世の中楽じゃない。
0469デフォルトの名無しさん
NGNGてないですか?
アジャイル、UP問いませんが、1冊でまとまってほしい。
0470デフォルトの名無しさん
NGNG0471デフォルトの名無しさん
NGNGhttp://www.amazon.co.jp/exec/obidos/ASIN/0131111558/250-6971824-9058617
0472デフォルトの名無しさん
NGNGたまには1人で勉強しながら
コーディングもやりたいんですが
ひょっとしてペアプロする人は
勉強する必要のない達人ばっかなんでしょうか
0473デフォルトの名無しさん
NGNG二人で勉強するんでは(笑)
0474デフォルトの名無しさん
NGNG0475デフォルトの名無しさん
NGNGペアプロなんて、ほんとに仕事でやるわけないだろ。
XP自体が壮大なネタだよ。
0476デフォルトの名無しさん
NGNGうちはやってますが。
0477デフォルトの名無しさん
NGNG現状の日本では同意。
うにテストとリファクタリングがXPの最大の功績。
プロセス自体はとても使えない。
0478デフォルトの名無しさん
NGNGうちではやってるって。
0479デフォルトの名無しさん
NGNGそれはキミの会社が良い会社だからだよ。
正直羨ましい。
でもそれが当たり前だと思わない方が良いよ。
0480デフォルトの名無しさん
NGNG0481デフォルトの名無しさん
NGNG最近馬鹿ばかりでホント疲れるニャー。
0482デフォルトの名無しさん
NGNG違うよ。規定で社名は出せないが。
0483デフォルトの名無しさん
NGNG>>324や>>404を読んで反論して下さい。
あと、仕事内容、契約形態、チーム構成(人数、トラッカとかマネージャとかコーチとかの役割分担)など良ければ教えて頂けないかと。
0484デフォルトの名無しさん
NGNG何が問題なのかわかってないみたいだね。
それから君の個人的好奇心を満たしてあげるつもりはさらさらないよ。
0485デフォルトの名無しさん
NGNG仕事の規模、リリース間隔、ストーリーの単位も教えて頂けると嬉しい。
0486デフォルトの名無しさん
NGNG0487デフォルトの名無しさん
NGNGあほくさ。
0488デフォルトの名無しさん
NGNG0489デフォルトの名無しさん
NGNG0490デフォルトの名無しさん
NGNG君ってクラス名スレの96なんじゃないの?
同じような感違いっぷりだよ。
アフォ相手は疲れるニャー
0491デフォルトの名無しさん
NGNG0492デフォルトの名無しさん
NGNG念のために言っておくけど、XPの全プラクティスを実践してるとは言ってないよ。
実際してないし。
0493デフォルトの名無しさん
NGNG何を理由にしているんでしょう?
過去スレ読んだけど
いまいちわかりませんでした
風習にあわないから?
馬鹿・新人に足引っ張られたから?
0494デフォルトの名無しさん
NGNG実践しやすく失敗しやすいから。
0495デフォルトの名無しさん
NGNG貶すと言うより環境が出来てない場合が多い。
日本のオフィス環境でXPの求めるオープンな環境が作りにくかったりする。
XP白本にあるような速い結合マシンが部屋の中央にあって机に区切りはなく広々とした自由に動ける
そんな環境は作れるところが少ない。
あとは開発人数の兼ね合いもある。
少人数で回している零細企業だとペアプロやってられない場合がある。
仕事を掛け持ちしている場合など無理でしょ。
それとこれはちょっと個人的意見なのでアレだけどやっぱプログラマは偏屈なヤツが多いでしょ。
協調性も欠けているし、幼稚だったり、酷いのになると三日くらい風呂に入らないヤツもいる。
そんなヤツと密着して仕事したくないよw
まぁ、出来る環境になったらやるけどね。
0496デフォルトの名無しさん
NGNGどの辺が問題になりそうでしょうか?
テスティングフレームワークは一応存在するみたいですが...。
0497デフォルトの名無しさん
NGNG悪いコードを書かれやすい故に、OOに詳しいコーチが他の言語より重要な役割を果たすだろう
プログラマのモチベーションを維持するのが難しいだろう。
将来性の無い、キャリアにならない言語で書くプロジェクトは、プログラマの動機付けをうまくやるマネージャが必要になる。
リファクタリングにかかるコストを他の言語より多く時間をとる必要があるだろう
命名規則の統一に他の言語に比べたら苦労するだろう
--
言語という観点からすると、こんなところだと思います。
0498デフォルトの名無しさん
NGNG0499デフォルトの名無しさん
NGNG0500497
NGNG0501デフォルトの名無しさん
NGNG実際にやっている所を全然想像できない。
特定のバグを見つけるために1時間くらいわきにたって一緒に検討するっていうのは
何回か経験ありますが、実装をしかも何時間もの時間さらに何週間もそのシーンを
やるのは気持ち悪いなあって持ってしまいます。
べつに煽るつもりはないんですけど、現実問題として実際にやっているシーンを想像できるように、ペアプログラミングの典型的1日とか教えてもらえませんでしょうか?
0502デフォルトの名無しさん
NGNGこのへんで伝わると思う
http://agileware.jp/articles/xp/xpepisode-kansai.html
http://www.objectclub.jp/eXtremeProgramming/StackTDD.pdf
気持ち悪い?
0503デフォルトの名無しさん
NGNGペアプロの本でも買ったら?
0504デフォルトの名無しさん
NGNG0505デフォルトの名無しさん
NGNGだから、その辺の話はスルー白よ。
XPは有功だが、使えるプラクティスは本の一部。
こだわらずに使う分にはそれなりに有効。
XP房には飽きたな。
0506デフォルトの名無しさん
NGNGやってみないとわからないと思うけど。たしかに業務でやるにはいろいろな障害・障壁があるだろうけど。
0507デフォルトの名無しさん
NGNG別名サービス残業制。
0508デフォルトの名無しさん
NGNG週80時間労働を無理なく1年続けられるのなら、XPのプラクティスを実現できてるよ。
0509デフォルトの名無しさん
NGNG0510デフォルトの名無しさん
NGNG> たしかに業務でやるにはいろいろな障害・障壁があるだろうけど。
解ってるじゃん。
オンサイトカスタマーやってみそ?
XPの契約取ってみそ?
0511デフォルトの名無しさん
NGNG0512デフォルトの名無しさん
NGNG顧客がリスク犯したいというならそうするだけだ
0513デフォルトの名無しさん
NGNG0514デフォルトの名無しさん
NGNGうちではやってますが。
0515デフォルトの名無しさん
NGNG就職したいので社名を教えてください
0516デフォルトの名無しさん
NGNG検索してください。たぶん入れないと思うけど。
0517デフォルトの名無しさん
NGNG0518デフォルトの名無しさん
NGNG>>オンサイトカスタマーやってみそ?
客先常駐?
0519デフォルトの名無しさん
NGNGhttp://www.hnes.co.jp/documents/swkaihatu/01.htm
Technologic Arts
http://www.tech-arts.co.jp/top.h
秀逸なのは↓
NEC情報システムズ
http://www.nis.co.jp/solution/enterprise_omcs/business_application/
> 特徴
> お客様独自の強みを活かしたビジネスモデル(コアコンピタンス)に対応
> XPライクに少数精鋭チームによるイテレーションシップ開発手法を適用
> 最新のオープンアーキテクチャ(Java/J2EE)を活用し、短納期で柔軟な情報システムを構築
> 情報システムの企画から構築・運用の中で、お客様が必要とするサービスをご提供
これを特徴と言えるのが凄い
0520デフォルトの名無しさん
NGNG「XPライク」は確かに特徴だな(じゃあどんなやねん!!!)
0521デフォルトの名無しさん
NGNG本とかでは実体験的な話がないので全然現実に置き換えられません。
>>502
ありがとうございます。でも、特定の問題事案のときの一断面だけ
切り出してくるのはそういう問題解決手法もあるってだけで、
一日8時間の枠の中で実際に体験している人の話が聞きたいんです。
例えば、始業時間は前日に打ち合わせているの?二人がそろうまで
何していて、いつはじめるかはお互い顔を見つめあって、「じゃあ
やる?」とかするの?
一つのクラス設計決まっていて、クラス名/メソッド名とか決まった段階で
実装はじめたら、そうそう話をすることもないと思うんだけど、30分とか
黙々とタイプをうつのを横で覗いているだけ?それも嫌だけど、逆に大して
重要でもないことをいちいち口出されたら、やるきなくなるような気がする
んだけど。
とか
0522デフォルトの名無しさん
NGNGウォータフォール開発を前提とするなら、ペアプログラミングのメリットは下がると思います。
ペアプログラミングは常にレビューを行うという意図を含んでますから、
できあがってレビュー済みの仕様書に従って実装するという作業をペアでやっても
効果は低いでしょう。
一方、テスト駆動で開発し、同時にシンプルな方向への設計の変更を奨励している場合、
ペアプログラミングの効果はより高くなります。テストケースの提案とかシンプルな設計への
変更方法とか考えることが多い分誤りや適切でない解を含みやすいので、
常にレビューを行うことで誤りを減らしより適切な解を発見することが期待できます。
ウォータフォール前提で考えるのなら、私も終日ペアプロは無駄が多いと思います。
私は、ペアプログラミングはXPなどのアジャイルプロセス向けのプログラミングスタイルだと思っています。
0523デフォルトの名無しさん
NGNGえーっとつまり、仕様を考えながらプログラミングしているってことでしょうか?
仕様議論10分→テスト方案議論10分→テストコード実装5分
→メソッド名とか実装ロジックとか議論10分→コード実装5分
→実行デバッグ10分→休憩10分
みたいな?
0524デフォルトの名無しさん
NGNGxUnitも中途半端な効力しか得られないだろうね。
両方とも今までに何回か、XPの産物のうち残るものとしてこのスレで
挙がったけど、最低限、反復型開発でないと小技の域を出ないし、
むしろ余計な手間になりかねない。
やはりプロセス抜きには語れない。
0525デフォルトの名無しさん
NGNG> ウォータフォール前提というなら、ペアプロだけじゃなくリファクタリングと
> xUnitも中途半端な効力しか得られないだろうね。
はぁ?
本気で言ってます?
0526デフォルトの名無しさん
NGNGウォーターフォールでのリファクタリングの妥当性と、xUnitの正当性は誰が検証・レビューするのだ?
0527デフォルトの名無しさん
NGNGそれがウォーターフォールと反復型開発の差だと本気で言ってるの?
ペアプロかそうでないかの差だというならほんの少しくらいは解ってやっても良いけど。
それにしたってUnitTestとリファクタリングが中途半端な効果しか得られないと言うのはあまりにも物を知らなすぎ。
これらはこのような専門用語になる前から使われてきた技術だよ。
プロセスにほとんど左右されない。
開発スピードも遅くなんかならない。
0528デフォルトの名無しさん
NGNGテストする項目、リファクタリングするタイミングにはある程度法則がある。
とりあえずこの本でも読んでおけ。
ttp://www.amazon.co.jp/exec/obidos/ASIN/4894717115/ref%3Dase%5Fxpjp-22/250-2049071-6912228
中途半端なんて事はない。
0529デフォルトの名無しさん
NGNG0530526
NGNGウォーターフォールというプロセスとペアプロというXPの一プラクティスを並列に
並べて語るから、何を言おうとしているのかよくわからないが、少なくとも言える事は、
コーディングとレビュー、テストが独立して行われるウォーターフォールでは、
xUnitやリファクタリングの有効性は、XPで行うよりも有効性が劣ると思う。
やってみればわかることだが、それらの妥当性を独立したレビューでチェックすることは
ペアプロに比べればはるかに煩雑になり、工数もかかる。
つまり、それらはプロセス抜きには語れない。
0531デフォルトの名無しさん
NGNGプロセスとペアプロを並べて語っているのは524。
UnitTestとリファクタリングをすればテストが独立になるなんて事はないと思うけど。
それ以外の解答は>>528が書いたとおり。
どのプロセスにも取り入れられてプラスになる。
>>530の指摘はウォーターフォール全体の指摘であってウォーターフォールに
UnitTestとリファクタリングを取り入れた時の指摘にはならない。
> 最低限、反復型開発でないと小技の域を出ないし、
> むしろ余計な手間になりかねない。
この裏付けになんてなりようがない。
XPを盲信する人はここらヘンの感覚を変えないと誰もついてこないと思うよ。
何度も言うけどUnitTestとリファクタリングは昔からやってたことだからね。
独立して使うと中途半端とか言ったら怒られるよw
0532デフォルトの名無しさん
NGNGとりあえず、動くカタチに実装
↓
重複を外していく
↓
似たような実装が来た
↓
クラス抽出などetc
↓
…
知らないうちにデザパタとかの良い形になっている。
モデリングとかはまた別の話。
0533526
NGNG誰もマイナスになるとは言っていないけど。
で、もろもろの論点を捨て去って(それらに関しては俺はあまり興味ない)、
ペアプロでやらなかったUnitTestとリファクタリングの妥当性・品質のチェックは
誰がいつやるのだ?
0534デフォルトの名無しさん
NGNGTDDやリファクタリングは正しく実行されればもちろんどんなプロセスでも
コードの品質を高めたり、妥当性の保障となるが、それらが正しく実行され
たかどうかのチェックは、プロセス抜きには語れないだろうということ。
0535デフォルトの名無しさん
NGNG> 妥当性・品質のチェック
具体的にそれは何?
論点がずれそうなのでたとえ話でお願いしたいが。
UnitTestする物には法則がある、ある程度の経験則もあるが学習できるレベルだ。
今は書籍も沢山あるのでかなりマニュアル化されつつある。
GUI関係、DB関係、制御関係など専門的なテスティングも方法論がある。
リファクタリングの方も小さいレベルのリファクタリングをしていけば大きな問題になることはない。
リファクタリングの方法論もファウラーの本を読めば解ると思うがほとんどマニュアル化されてる。
ただ、大きな変更を行う時にはその枝葉がかなり増えるので妥当性を考える必要が出てくる。
これは、いろんな意見をまとめた方が良いだろう。
それより大きなレベルはモデリングでするべき。
と、ここまで書いたがこれらはペアプロを否定するものではない。
テストもベテランと組むことにより専門分野の法論を全体に染み渡らせることが可能で技術の底上げになる。
ナレッジの共有はどの分野でもこれから必要になっていくと思うよ。
>>534
> それらが正しく実行されたかどうかのチェック
この実行とは何を指すのか。
これだと、ただのマネージメントの世界だと思うけど違う?
トラッカとかコーチとか。
なんか、論点がずれてきてるなぁ
何が言いたいのか良く解らない。
それはUnitTestやリファクタリングに限った事じゃないだろ。
0536デフォルトの名無しさん
NGNGまず最初に言っておきたいのは、TDDやリファクタリングそのものの有用性
(絶対的価値)や方法論ではない。
その組織が行ってきた既存のプロセスにどのようにTDDやリファクタリングを
組み入れ、そしてそれらはプロセス全体から見たときにどのような価値をもつ
のかということを議論したい。つまり「プロセス抜きには語れない」というのは
そういうこと。
またその組織が今まで「単体テストフェース」をどのように実行し、どのように
それをレビューしてきたかによっても(ここは意図的にあいまいな記述にしてる)、
TDDやリファクタリングの価値は変わってくる。
0537デフォルトの名無しさん
NGNGなんかしてないような気もしないでもない。
0538デフォルトの名無しさん
NGNGリファクタリング:
・そのリファクタリングが、それをする前と意味的に変わりは無いかどうかという妥当性
・そのリファクタリングをする必然性があったかどうかという妥当性
これはちょっと前に/.jpで話題になった「趣味のリファクタリングはしてはいけない」というようなこと
UnitTest:
・あるUnitTestが正しくコーディングされているかどうか(=正当性)
・理想的なUnitTest全体に対するカバレッジが妥当なものかどうか
・テストされていない部分はそれが妥当かどうか(C1カバレッジレベルで)
・そのテストは正しい環境で正しくテストしたのかどうか(=正当性)
とまぁ、こんな感じかな。
0539デフォルトの名無しさん
NGNG> またその組織が今まで「単体テストフェース」をどのように実行し、どのように
> それをレビューしてきたかによっても(ここは意図的にあいまいな記述にしてる)、
> TDDやリファクタリングの価値は変わってくる。
TDD知っているなら解ると思うけどフェーズっていうレベルじゃないよアレは。
kent も言っていたが最終的に境目など無くなってしまう。
実装のフェーズと融合してしまっているんだな。
なので、実装フェーズにそのまま組み入れることが可能になる。
結合テスト、受け入れテストなどは従来の方法をそのまま使っても構わない。
ただ、この時にはかなりの品質になっていると思われる。
0540デフォルトの名無しさん
NGNGそれはレビューしながらテストをコーディングし実行するペアプロに比べれば
明らかに大変な作業だということがわかると思う。
しかも、レビューがNGだった場合のOKまでの絶望的な道のりは、やったものに
しかわからないかもしれない。
UnitTestを導入したからすべてがばら色に変わるわけではない。
ただし、プログラマ全員がUnitTestに精通していた場合は話は別。
0541デフォルトの名無しさん
NGNGごめん、俺の文章力では、君が理解できる文章は書けそうも無いので、
この議論からは撤退する。
0542デフォルトの名無しさん
NGNGXPの単体テストフェーズとは違うみたいだし。
全体的にみんな話がかみ合ってないね。
0543デフォルトの名無しさん
NGNGやらんよりマシ
0545デフォルトの名無しさん
NGNGあっ、そうなんだ。
Agile Process 以前の単体テストってどんなことやってました?
自分のところはせいぜい機能毎のテストでした。
サーバサイドなので意外に楽だったり。
GUI系はツラそうですね。
0546536
NGNG以前からC0カバレッジを実現するテストコードは書いてました。
Un*xのアプリなんかでmake testとかmake checkとかやると実行されるようなもの。
後でリグレッションテストができるようにもしてました。
Rational社のテストツールが買えるようになってからは、pure coverage、purifyを
使ってました。4年くらい前からだったかな?今でもたまに使いますが。
0547デフォルトの名無しさん
NGNGツラそうですね、それは。
うちなんかメチャいい加減だw
やったとしてもc2が精々かな。
xpはホントにコーディングしながらのテストですよね。
ぱっとテストを作って要らなくなったらぱっとテストを消すようなもっと気軽な感じがします。
ここらヘンも Agile な感覚なんでしょうね。
0548デフォルトの名無しさん
NGNGもちろんぐぐったさ。
■ このスレッドは過去ログ倉庫に格納されています