ログインしてさらにmixiを楽しもう

コメントを投稿して情報交換!
更新通知を受け取って、最新情報をゲット!

ホーム > コミュニティ > PC、インターネット > システムエンジニアの部屋 > トピック一覧 > ソフトウェア設計のあるべき姿

システムエンジニアの部屋コミュのソフトウェア設計のあるべき姿

  • mixiチェック
  • このエントリーをはてなブックマークに追加

コミュ内全体

ソフトウェア設計については例えばドメイン駆動設計(DDD)のような方法論が知られていますが、
実際の開発においては
設計段階で整理された理想形はほとんどの場合、改めて実装上MVCフレームワークのような別の設計手法にすり合わせる必要があり、
そこで生まれた奇妙な歪みが、実装のシンプルさ、可読性、再利用性、メンテナンス性を下げる原因になっているような気がします。

例えば、汎用性のないメソッドはMVC上のどこで定義するべきであるかという場面で、
ある規約の上ではそれはモデルに記述すべきとされ、また別の規約の下ではコントローラ、
あるいは汎用性がなくてもライブラリ化すべきだとなったりする。

ビジネスロジックのシンプルさを保つために、複雑化した粒度の細かい具体的な演算を
どこかに外だしするという時に、その巻き取り先をどう配置すべきでしょうか。

このような必ずしも明確でない揺らぎは、メンバー間のコードの粒度や整理の仕方の整合性を奪ってしまい、
あるべき姿が見えないために読解やメンテのコストを上げて開発プロジェクトの無秩序さに影響を及ぼしているように思えます。

これは一言でいえば外部設計と内部設計の間で思想の食い違いが起きているところに原因の発端が
あるように思えるのですが、
なぜ、上流工程では実装上のフレームワークの設計思想との整合が議論されることが少ないのでしょうか。

コメント(106)

なんか、投資と投機が違う話を聞いている気分。
その理屈。
自分は投資はやるけど、投機はパーティ的な遊びとしてしか興味ないなあ。

パチンコも、友達と行って勝った負けたとグダグダ喋っているのが楽しそう。
あの光る箱にくるくる回されてるのが楽しそうと思ったことはないな。
まあなんしても
ストイックに生きていく
勉三さんになりたい
最近は世渡りよくして金儲かりゃいいかな気分になってきた自分。
テクニカルな最近は勉強はやればできそうとしか思ってなくて、それより基本資質の無駄なところを削って利益を得たい心持ち。

いくらでも勉強できる資質磨くほうが楽かな。この歳になると。
カネがなきゃ、自立できねーからねー。
よくばりにもなれない。
よくばりになることが、人生の目的なのかどうか。

最後はどうお墓に入るかという。
ムーン。
>>[66]

すると、いつかはターミネーター2の世界。。。?
100年経ったら、能力的にどうなるかわかりゃしないしね。今の情勢。
>>[70]

40超えると、金にうるさくなるみたいですよ。人間って。
自分も例に漏れず。


投資信託で蓄財している自分に違和感はない。むしろオススメ。
自分もオフトゥンの中で数日過ごしたい。

コタツでもいいな。
そのまま死んだら散骨か、骨が残らないほど焼いてもらいたい。

おいら、自然と一体になるんだ。
今、哲学コミュ見てきたけど、なんだ、chunさんと最近絡んでたのね。。。
懐かしや。
若いもんはやらしくていいのう。。。老
コントローラー側にロジックを集約しちゃダメだったんですね......。

ビューはArrayをループで回して表示だけさせるということだけ考えて
コントローラにビューのロジックを組んでしまっていた。

ヘルパーを初めて書いたっす。
いい経験できている気がする。
そういや、今はどこで仕事しているんですか?
どこかの有名ゲーム会社?
ヒルズ?
おもしろいところで仕事させていただいてます
いままで勉強不足だったのかもしれませんがいろいろ勉強になっていて感謝
あとそうだ。資格はその後何か取りましたか?
セキュスペ以降。
そういえばなんにも受けてないですな
SIerじゃないとまわりに受けている人もおらず
試験の時期がいつなのかもわからなくなるという言い訳があったり
ただ
設計とかの議論を聞かされるときに
どこかでググってきた情報の通りにやるというのでは
なんとなくだけど嘘を妄信する危険性もあると思うし、
きちんとしたベースを勉強し間違いを検証するという意味で資格試験は受けておいたほうが
どこの業界でやるにせよ
いいのではないかなという風に反省はしていますね
自分は先日、応用情報受け直してきました。病気で倒れたのもあって、錆びついてきた感があったので。
でも一秒も勉強しなかったから、お呪いみたいな扱い。汗

早くレベル4とりたい。
ご病気されていたんですか......
ご自愛くださいよ〜
ところで、ビューはテンプレート機能搭載のモジュールにお任せしちゃうから、全然意識しないで書いていますけど。。。
smartyとか使わないんですか?
>>[87]

今はもう、だらだらと仕事しています。。やる気なし。
だから給料上がんない。涙
>>[88]
Smartyあると楽ですね〜。自分は使いますが今の案件では使ってないですねー。
ただヘルパー使うと割とスッキリしたビューにはなっていくみたいな感じですね
>>[90]

あ、そだ。
自分はデザインとか人任せにする傾向あるんだけど、
デザインのCSSの汎用テンプレートなんて用意したりしますか?
割とちゃんとした汎用テンプレートあると便利なのかも、なんて最近思うようになってきた。
CSSは割と既存のものが多い気がしますよね
WEBインテグレータだとそういう汎用のCSSとか汎用素材とかがあったりしましたな
新規だとしても大体は既存のものをベースにスタートする感じが多いと思いましたな
そういう遺産が豊富にあるかどうかが
実はその会社の強みだというイメージ
だよねー。やっぱそうだよねー。。
とりあえず3種類4種類5種類の汎用テンプレート用意して、それに当て込むように画面作るほうが、出来上がる前にお客さんにもピンとくるもの見せられて良さそう。

デザインも作る上での一つの城壁だから、どんだけそこで手を抜けるかって大事かなと。
自分はフリーエンジニアみたいな感じな現場渡り鳥だから、遺産が全然残らんのよ。。。めそり。
そうっすね。
基本我々が動く前に
もうデザインが先にできあがっていて

「この画面のボタンとかフォーム、表示どおりに動くようにしといて」ってわたされてるような仕事ですよね
わしらって
>>[95]
困難にぶちあたったときにどうやってやり過ごしていくかっていうノウハウが
わしらの遺産なんじゃあないでしょうかw
>>[97]

そうですね。そこはその通り。笑

あれ?フリーエンジニアみたいな現場渡り鳥やっているんだっけ?コヲノスケさんって。
つーかデザインが先に仕上がっているっていうのはひとつの理想で

実はリリース直前までデザインは微調整しつづけていて
デザインが変わるたびにプログラムも微修正が入る、
それがリリース直前に一番大きく変わる、みたいなことの繰り返しですよね

テストが終わって研修直前になるまで確認側の人が仕事してくれない、っていう言い方もみんなしてましたな
で、お客さんがここはこうしてほしいといってきたから仕様変わります、
と言われて変わった仕様を実装しなおしたらテストのスケジュールはとれずにそのままリリースして……
ハラハラドキドキという事が多いと
>>[98]
さあどうなんでしょうw
ご想像にお任せしますw
>>[99]

UIが揺れると面倒ですよね。UIが揺れても吸収できる作りならいいんだろうけど。。。そのへんマネジメントできるやり方があるといいんでしょうね。
何か策はないかなっと。
部品ごとの改修内容と改修規模の見積り表作ってお客さん脅すとか?笑
お客さんといっても
向こうも向こうの情シス部門だったりして彼等は単に発注しているというよりは
自分が主導権を握ってベンダーに作らせているんだというつもりだろうから
こうじゃなきゃ無理ですといいにくかったりするんでしょうか
私にはちょっと立ち入れない領域の部分ではあるのですが
自分もあんまり分かんないけど、
情シスさんもエンドの人に説明できればいいところはありますよね。
どっちかいうと責任を負わせないやり方で話せば、話は通りやすいと思います。

別に改修が発生したとしても追加期間と追加料金が発生することを承認してもらえるなら、別にいいと思いますしね。こっちとしては手間は手間だけど、それで食べている人間としては、やるならやりますよ?って話するしかないですからね。
よくもわるくもIT技術屋は経営責任にコミットすることを求められていないというか
結果が黒字に貢献するかどうかにコミットしていないから成果がでないことに関与しても仕事したことにはなってしまう
でもそれはそういう判断というかジャッジをする側の責任でしかなく
なんというか貧乏くじのなすりあいみたいなところもあるのかも
誰もかれもが腹を割って”我々全員の成功”みたいなものを達成できりゃいいんですけどねー
そうじゃなくて、現実はうちらとあんたらの維持の張り合い、みたいな
うーん。
結局、システムがそこそこでも大きくなってくると、システムの作り手がシステム方面の職人しかいなくなってしまい、経営のこと分かる人ではなくなっていくってことなんでしょうね。
だから、どうしても分業化してしまう。経営を考える人、システムを作る人と。ハブはコンサルの立場の人となる、と。

どうなんだろ。全員が経営の視座でシステムを作るっていう状況って、小規模開発くらいでしかなさそうなイメージありますけど。
情シス内で完結するくらいの小型の開発とかなら、いけるのかな。
エンジニアの仕事ってのは
かつて昔、なんらかの理由で諦められて落とされた仕様をイマドキの技術と気合とで実現しなおすという
ことなのかよと最近思ってしまう。

そうやって継ぎ接ぎを繰り返していく事で
コードはどんどんトリッキーで難読化されていく。
そうした営みをリセットするのが

定期的な
フルスクラッチでのリニューアル案件なのかもしれない。
最初はどんなシステムも美しかった。
しかしそれも徐々に継ぎ接ぎで乱れていく。やむを得ないライフサイクルだ。

ログインすると、残り66件のコメントが見れるよ

mixiユーザー
ログインしてコメントしよう!

システムエンジニアの部屋 更新情報

システムエンジニアの部屋のメンバーはこんなコミュニティにも参加しています

星印の数は、共通して参加しているメンバーが多いほど増えます。