1read 100read
2012年07月プログラマー360: 詳細設計をしても逆にコーディングしにくくなるだけ (874) TOP カテ一覧 スレ一覧 2ch元 削除依頼
プログラマーの持っている資格 (446)
CとPHPがあればJavaは要らない (543)
他人が作ったプログラムを修正する時の絶望感 (413)
ホワイトカラー・エグゼプション (683)
世間は社会保険庁を叩くけど・・・ (338)
35歳のプログラマ志望なんですが・・ (819)

詳細設計をしても逆にコーディングしにくくなるだけ


1 :2010/08/01 〜 最終レス :2012/08/07


2 :
ソースコード=詳細設計

3 :
>>2
そうであるべきなのだが実際は・・・。

4 :
そもそも詳細設計って都市伝説

5 :
ひょっとしてフローチャートまであるとか、それを修正するとか…

6 :
グーグルでは詳細設計はしないだろうな

7 :
いきなりコーディングして動かしてみて
動いたものを見て直していったほうがいいのではと思うけど
それは通らないんだよね

8 :
>>ソースコード=詳細設計
>そうであるべきなのだが実際は・・・。
そもそもそうであるべきでないような。


9 :
誰もが一定レベルのコーディングレベルにあって
読みやすくて保守しやすい書き方ができるなら
ラフな設計図で承認もらったら
あとはソースコードが詳細設計書でもいいと思う。
実際はコピペやコメントアウトやプリプロセッサの嵐
のような糞コードが多いから詳細設計をして
評価とコードを分けざるを得ない

10 :
まともにメンテしてある詳細設計書を見たことがない自分は
仕事に恵まれてないんだろうな。きっとそうだ。
世の中には運用開始後何年にもわたってソースとぴったり合うように
メンテされた詳細設計書が存在するんだ。するんだよね?

11 :
なんで「詳細設計」というと、コードとイコールな何かを思い浮かべる人が多いんだろう。
詳細設計が、要件定義とコーディングの間の「ソフトウェア設計」、
あるいは、要件定義、概要設計(例えば、UI定義とか外部I/F定義など)とコーディングの
間の「ソフトウェア設計」という意味なら、それがドキュメント化されるべきかどうかは
さておいて、不要と言う人はほとんどいないだろう。

12 :
イメージ的にはクラス構造や呼び出し関係まで細かく書いた
UMLでがんばった感のある設計書

13 :
>>10
するよ。銀行の汎用機の現場とか行くとちゃんとメンテされてるよ
コボラー乙とか言われそうだけどホントに

14 :
基本設計には意味があると思うが
詳細設計にはあまり意味を感じないな
詳細作る奴とPG作る奴が別なら尚更

15 :
逆に別なら意味があると思う。
同じなら意味なくね?

16 :
そもそもウォーターフォールR!

17 :
>>15
詳細設計=コードとほぼ同じくらいのレベルと認識してるので
(Aという変数にBという値を代入とかそういうレベル)
詳細設計が書けるのなら、そいつがコードそのまま書いた方がいいと思ってる。
PGと詳細が別人だったら
その設計書からコードを起こしていくのがすげー無駄に感じるからかな
>>16
各々に長短はあるんだぜ

18 :
コーディングしながら設計するスタイルなんで、
設計書だけ先に書けって言われると手が止まってしまう。

19 :
ガチガチにメソッドまで設計したつもりだったのに
いざ実装してみると新しいメソッドが欲しくなる

20 :
>>18
コードからastah(jude)使って逆仕様書作れば? astahになってムカつくことにフリー版は画像や印刷に透かし
入るようになったから相変わらずjude comm版を使い続けてるけど。
>>19
それくらいはアリだろ。実際はアクティビティレベルの呼出し規約変更を山ほどしたくなるのが世の常。

21 :
1クラスあたり1000行超えたらそのクラスは再設計の寿命がきてる

22 :
>>21
1000行で区切る論拠は? 4桁だから? 16進なら0x3E8で3桁だけど?(w

23 :
詳細設計なしだと単体テストできないだろ

24 :
たかが小さいクラスに単体テストをかけるほど
プログラムが下手なら辞めたほうがいいんじゃないか
論理的思考に穴があるなら何回テストしても抜けが出る

25 :
テスト駆動開発って知ってる?

26 :
クラスによって単体テストを行わないのはナンセンス
君の言い方だと
この世のソフトにバグは存在しないことにならないか

27 :
詳細設計ってのは、IDEと頭でやって、
詳細設計仕様書はDoxygenで出力、
ってじぶんのじょーしきあってるおね?

28 :
>>24
その言い草だとカバレッジすらかけてないようだな。

29 :
>>27
クラス図と継承図くらいは必要だろ。

30 :
ハァ?(゚Д゚)y─┛~~ >>29
クラス図のグラフィックや継承のHTMLリンクなら、Doxygenがふつーに作ってくれる

31 :
>>25 説明して

32 :
             「 ̄ `ヽ、   ______
             L -‐ '´  ̄ `ヽ- 、   〉
          /           ヽ\ /
        //  /  /      ヽヽ ヽ〈
        ヽ、レ! {  ム-t ハ li 、 i i  }ト、
         ハN | lヽ八l ヽjハVヽ、i j/ l !
         /ハ. l ヽk== , r= 、ノルl lL」
        ヽN、ハ l   ┌‐┐   ゙l ノl l
           ヽトjヽ、 ヽ_ノ   ノ//レ′
    r777777777tノ` ー r ´フ/′
   j´ニゝ        l|ヽ  _/`\
   〈 ‐ 知ってるが lト、 /   〃ゝ、
   〈、ネ..         .lF V=="/ イl.
   ト |お前の態度が とニヽ二/  l
   ヽ.|l         〈ー-   ! `ヽ.   l
      |l気に入らない lトニ、_ノ     ヾ、!
      |l__________l|   \    ソ

33 :
>>30
他人と連携する必要がなければそれでいい
作る前にある程度の構想伝えてから着手してるだろうけど

34 :
>>33
詳細仕様書が毎日更新できるのに、
>それでいい
ってなんなの?ばかなの?(ry

35 :
毎日更新される仕様書なんて必要ないぞ

36 :
つ [doxygen]

37 :
>>36
いや、doxygen使って毎日仕様が後追いで変更かかったら問題だぞ。

38 :
必要ないっつかそもそも意味ないよな。仕様を説明するもんが毎日変わっちゃ。

39 :
納品物としての詳細
開発終了後の引継ぎ資料としての詳細としてなら
Doxygenはいいと思うよ
でも設計のための設計書としてはどう考えても使えんだろう

40 :
そもそも日本語すら不自由な奴が設計書とやらを書くな!、と。
下手な日本語書いてる暇が余ってるなら、直接C言語で書け!

41 :
俺は詳細仕様書は書かせてるけど詳細設計書は書かせてないなぁ。
他のチームは詳細設計書を書いてるけど、工数ばかり無駄にかけて品質は悪いし保守しづらくて保守からも文句を言われてるらしい。

42 :
最後はコードなんだから、読めば馬鹿でも1週間で全体が把握できるような
キレイなコードを書けよ。まずはそれからだ。

43 :
>>37 >>39
だから、仕様書は基本仕様書モンリーにしといて、
詳細設計は後からdoxygenすれば良いんじゃねーの?

44 :
このスレで書かれてることはプログラム設計じゃねぇの?詳細設計じゃなくて。
と思う俺は世間とずれてるのだろうか?

45 :
>>43
基本的に、詳細設計書はPG前に提出するもんだろ。それよりも普通、仕様書変更なんて上司の承認受けないと
出来ないと思ってるんだが、そんなザル会社あるんだ?

46 :
お前の会社の文化が世界の標準だとでもおもってんのか
デスマに投げ込むぞ

47 :
>>45
>詳細設計書はPG前に提出
受託会社モンリーでしょそれは。

48 :
デスマ→とりあえず仕様書作ってろ→仕様書つくるためにデスマ→ろくなの出来ない→ダメ出し→
結局ISMSって何?な具合にバグを壁に貼って営業みたいに可視化→PGマー腐ってやる気なくす→∞地獄


49 :
他の部署は仕様書を信じてコッチのコードにアクセスしてくるわけじゃん。
テスト班は仕様書を信じてテストしてるわけじゃん。
そんなにコロコロ仕様書が変わってたら大変じゃね?

50 :
だから仕様書なんか信用せず、ソースコードを信用しろ。

51 :
>>49
インタフェースさえ決めとけば、中身の設計とかどうでもよくね?

52 :
仕様書が信用できないプロジェクトは
デスマの要件を満たしている
>>51
日々更新されるならIF固定という保証無いでしょ
他部門との連携が詳細設計で・・・・ということは
ありえないと思うんだがどうなんだ

53 :
俺、このニート生活が終わったらデスマに参加するんだ……

54 :
>>52 IFは固定。ただし中の実装がチョコチョコ変わる
そういう話。IF決めないと、そもそも平行で作れないだろ、さすがにそれは俺もまずいと思う。

55 :
バグってるんだけど中の実装いじる予算も時間も無いから、I/F変えることにしたから宜しくw

56 :
>>52
うちだと実装する言語に縛られるトコからが詳細設計。
だから関数呼び出し的なAPI仕様書は詳細設計書(群)の一部。
てかこのスレじゃ何が詳細設計か分からん状態だし、
雑談にもなんないね。

57 :
>>51
> インタフェースさえ決めとけば、中身の設計とかどうでもよくね?
インターフェースってウチは詳細仕様書で決まるんだけど。

58 :
うちの場合こんな感じだ。
概要仕様書
・営業がプレゼンで使う資料みたいなやつ
・開発が始まるとあんまり見ない。
外部仕様書
・制約事項などを含めた顧客に何を提供するかの一覧で、顧客との契約内容を文書にしたもの。
内部仕様書
・システムを部分に分割する仕方を記したもの。
・何を実装するかのコンポネント一覧でもある。
・コンポネント間の連携図やコンポネントのスコープ等々を決める。
詳細設計書
・各コンポネント(クラス/関数/サブシステム)のインタフェースと満たすべき要件。
・これが満たされたときコンポネントは単体テスト通過となる。

59 :
設計書の中身が各社で違ってるのが話のすれ違いの元なのかもしれないな
基本設計と言いながらも、画面と2,3行程度の説明しか無い、
まるで概要設計のようなものがあったりで
設計書の名称と中身の剥離が起こってる気がするな

60 :
ある程度の設計は必要だよ。
重複する似たような変数、状態、遷移があったり、
メンバ変数の中に意味不明なmTmpなんてあったり、
そんな謎ソースコードが紛れ込む可能性は減る。

61 :
>・営業がプレゼンで使う資料みたいなやつ
それどこのNTTデータだよ?

62 :
Google Waveが公開前に開発終了したみたいだな
今世紀最大のデスマだったに違いないな

63 :
公開はした。

64 :
ググルってそういう公開&開発終了、といったライトな開発は通常パスにある。
ま、詳細仕様書は手では書いてないだろうし、手でかいてたら最悪のデスマだろうねw

65 :
Googleみたいに優秀なエンジニアが集まってるところなら、
仕様書なんてホワイトボードに手書きじゃないの?

66 :
白板は発想の具体化用じゃない?
仕様書とかはwiki的なものに個々で纏めてく感じじゃぬ

67 :
いや、手って言ったのは、ワープロソフトって意味であって、、、
手じゃないものってのは、IDEがリアルタイムに図で表示したり、ソースから仕様書動的生成みたいなものを逝ったのだが。。。

68 :
グーグルwaveはライトな開発じゃないよね

69 :
ライトってのは、開発スタイルがウォーターフォールじゃなくて、って意味で。
ま、”ライト”って言葉で書いたのが間違ってたか。

70 :
ウォーターフォールはそもそも作るものが固まってるものを作るようだからな・・
ぐーぐるみたいな未知の領域に踏み込む場合って
そもそも仕様書なんて無さそうだな

71 :
ウォーターフォールは
作るものの詳細をガチガチに最初から固めろという事をいってるんだろ
実際は頭の悪い偉いさんの脳内イメージを
こっちが推測しながら短納期開発しなきゃいけないから実現不可能

72 :
で、詳細設計を作成するってのはウォーターフォールじゃね?
スパイラルアプローチだとかだと、詳細設計はIDEが表示してくれたり、ソースからジェネレートしたり、データ構造なら設計専用アプリだとか。

73 :
そもそもコードから自動生成するものを
設計書などと呼びたく無い

74 :
コーディング中に行われた設計を
人間用ドキュメントとして抽出したものだから、問題ないんじゃね?

75 :
>>73
コードが設計書だろ、アジャイルの常識的に考えて。
仕様書はラフスケッチ、ソースコードが下書き、ビルドが実際の描画、実行が鑑賞だろうな。
画家的に言うなら。

76 :
「コードが設計書」だとしっくりこない、「テストコードが設計書」だとしっくりくる
まだアジャイル能力が低いかな、オレ

77 :
テストコードは仕様しか表してないじゃん。
設計がどうなってるかは別問題。

78 :
>「テストコードが設計書」
イミフメ

79 :
>>78
カバレッジツールを勉強しよう。

80 :
テストコードは言うなれば、外部仕様書だな。
実行コードそのものが、詳細設計書のような位置づけ。
自動生成されないものは、概要や計画のラフだけでいい。

81 :
アジャイル開発をやる場合って、見積書はどう書くの?
と言うか、どうやって費用を見積もればいいの?

82 :
>81
つ「アジャイルな見積りと計画づくり」
読んでたら眠くなってほとんど読んでないけど

83 :
>>82
ズバリなタイトルの本があるんですね。ググってみたら評判もいい
みたいなんで、早速注文しました。どーもです。

84 :
アジャイルな物作りって、永遠に完成しないから、適当な所で収穫するんだろ?

85 :
そして翌年以降はバージョンアップで保守料せしめる。

86 :
組み込みでアジャイルとかやってみたい

87 :
ソニーがよくやってるじゃないか
携帯電話もよくあるな

88 :
>>87
それはアジャイルじゃなくて、単に仕様がイイカゲンだからどこまでも中途半端な物しか出来上がらないだけで…

89 :
agile
1 敏捷な, 機敏な, すばしこい, はしこい(⇔awkward)
2 活発な, いきいきとした(active)(⇔sluggish);頭の切れる, 頭の回転が早い

90 :
>>86
用語だけアジャイルでもいいなら…・うちで。
イテレーションという名のマイルストーン、とか。

91 :
そもそも計画を修正していく権限がないのに
「アジャイルでやりますから」とか言われるんだよな。
イテレーション内で作業が終わらない事が
判明したとたん破綻するだけのプロジェクト。
それが組み込みアジャイル

92 :
>>1 はただの未熟なプログラマだろ。


93 :
詳細設計書を組んでから書かせるくせに1つ1つ指示してくるところはウゼー
すべてのコントロールにショートカット割り当てるとかどんだけ無茶いうんだ
しかも、アクティブになってると反応してくれないコントロール多い・・・ちゃんとやってよ>MS

94 :
ソースコードと一対一のフローチャートこそが真の詳細設計

95 :
デザインパターンを
どうフローチャートにするのか
みてみたいw

96 :
doxygenとかjavadoc使って、詳細設計書を後出しで作るってのも
変な話だよな

97 :
無料RPG製作ツール「ロープレジェネレーター」
 直感的操作で簡単なゲームが作れます。 簡単に配布可能な状態に出力することができます。
(HSP製のソースコード付きで、スクリプトの知識があれば自由度の非常に高いカスタマイズ
ができます)
他にも仲間預かり機能(100人も)や、仲間の状態/状態異常を細かく設定できたり、
乗り物が作れたりゲーム中に画像を差し込んだり、回転やフラッシュなどのエフェクト
なんかも簡単に作れる様です。戦闘はデフォだとドラクエ系。
移動は矢印キーの他に、キャラがマウスを追っかけたりするとのこと。
 他にはオートアクションというのがあってオリジナルシステムの製作に役に立つかも
しれない機能です。これは、マップエディタで設定することで、「マップに入った時・
出た時・一歩歩いた時・戦闘開始前」に自動的に実行されるアクションを設定できる
機能です。
■分からないことや要望は掲示板へどうぞ。他にもいろいろ進化中みたい。

98 :
>>97
思いっきりショボイんですがとりあえず3Dになりませんか?

99 :
設計書も成果物の一つとして納品対象だから
ただそれだけのこと

100read 1read
1read 100read
TOP カテ一覧 スレ一覧 2ch元 削除依頼
テストデータに「test」とか「てst」とかもうやめろ (371)
プログラミング初心者あるある (253)
VB6システム、未だリプレイスせず拡張中 (232)
プログラマーをマジギレさせる言動 2 (287)
UMLなんていらない (393)
Sun認定Java資格 実用情報 2 【SJC-WC用】 (411)
--log9.info------------------
授業中にやる定番 (535)
昔板総合雑談所 (284)
昔あった変なあだ名 (502)
団地に住んでた人いる? (206)
昔飼っていたペットとの思い出について (273)
田代砲の現状を語る (469)
過去の栄光 (261)
@@昔@@ (235)
■ カンフー映画によくある風景 (552)
トイレの落書き (210)
人生で最も泣いた時は? (279)
子供時代の恐怖体験 (224)
てぃむぽ部隊 (666)
(´∀`)うゎぁい (222)
生きてる証を刻むスレ (217)
ささら (543)
--log55.com------------------
ゲルマラジオこそ無線の原点 3台目
【人生捨てたもんじゃないよ♪】CB世代が主導権を握る新しい無線の世界へ【未来へ】
石野真子
【最後の】FT-102やTS-830のスレ(2球目)【真空管】
QSL無し包茎野郎
鉄道無線関係のスレッドがないのはなぜでしょうか
【花の】平成生まれ学生ハム【けいじ】
裏切り者JG1K*Cを語る