タグ

設計と技術に関するgorou5656のブックマーク (9)

  • ソフトウェア設計についてtwada技術顧問と話してみた 〜 A Philosophy of Software Design をベースに 〜 - NTT Communications Engineers' Blog

    はじめに スタンフォード大学の John Ousterhout 教授が執筆された “A Philosophy of Software Design”(以下 APoSD と略す) という書籍をご存じでしょうか? 書籍のタイトルを直訳すると、「ソフトウェア設計の哲学」となります。書籍の内容はまさに、ソフトウェア設計について扱っています。 書籍をベースに、「A Philosophy of Software Design を30分でざっと理解する」というお題で社内ランチ勉強会が開催されました。記事執筆者である岩瀬(@iwashi86)が発表者であり、勉強会資料は以下のとおりです。 スライド P.4 に記載したとおり、書籍は John Ousterhout 教授の意見が強く反映されており、ソフトウェアエンジニアであれば、議論を呼ぶ箇所があります。実際、勉強会の実況Slackでは、「これはどうな

    ソフトウェア設計についてtwada技術顧問と話してみた 〜 A Philosophy of Software Design をベースに 〜 - NTT Communications Engineers' Blog
  • ソフトウェア設計の Why & What & How | Wantedly Engineer Blog

    こんにちは、開発チームのアーキテクトをやっている竹野(@Altech)です。先日、新人研修でソフトウェアの設計について話す機会がありました。 ソフトウェアの設計というのは関連する領域が広いため、どうしても断片的な理解になりがちです。そこで、早い段階で全体像を感じてもらうために、ソフトウェア設計の Why と How と What を1時間でまとめて話すというちょっと意欲的なコンセプトで研修を行いました。今回は、その内容を記事にしました。 この研修のねらいはじめにソフトウェアの設計について書かれた情報は世の中に多いですが、その情報の多くは How であり、それだけを読んで適切に使うことが難しいと感じています。その直接的な理由は、How に対しての What、How / What に対しての Why が語られることが少ないからです。 ただ、How だけを知っていると、それは当に問題を解決して

    ソフトウェア設計の Why & What & How | Wantedly Engineer Blog
  • ソフトウェア設計の際には遺書を書こう

    この記事はハワイアンAdvent Calendar 2020 2日目の記事です。ツイートアナリティクスによれば、1日目のブログへのエンゲージメントは32という事だそうです。今確認のためにもう一回開いたので33です。わたしは自分のブログを何回も読み直すので、99%は自分のアクセスでしょう。これまでご愛読頂きありがとうございました。 Advent Calendarの前半では進化的アーキテクチャについて触れてやっていくつもりなので、その為の前提を埋めていきたいと思います。 2020年現在、サービス開発や製品開発の為のソースコードの自動生成が進んでいますが、残念ながら製品開発の根幹となるロジックは人間が書いています。人間がソースコードを書くこの時代において、ソフトウェア設計とはなんの為にあるのでしょうか。リファクタリングはなぜ行うのでしょうか。綺麗なコードを書くのはなんの為でしょうか。綺麗なコード

    ソフトウェア設計の際には遺書を書こう
  • エンジニアリングとは統合力(インテグレーション能力)である | タイム・コンサルタントの日誌から

    エンジニアリング」という言葉を聞くと、読者諸賢はどのような仕事を想起されるだろうか。都会的なオフィスで遂行する、理知的な設計とデザインの仕事? それとも製図板と作業着とノギスをともなう、泥臭い仕事? あるいは企画と要求仕様だけを与えて、どこか海の外でやってもらう設計の力仕事? 『エンジニアリング会社』と呼ばれる職場で、もう30年以上も働いている。会社には、机と椅子とPCと、あとは人が並んでいるだけだ。自社の工場は持っていない。建設現場はあるが、建設労働者を雇っているわけでもない。資機材は世界中の製造業の会社に頼んで作ってもらい、物流業の会社に頼んで現場まで運んでもらう。据付け組立工事は、現地の工事業者にお願いしてやってもらう。 わたしの属するエンジニアリング業界には、国内で「専業」と呼ばれる大手が3社あるが、どこもほぼ同じような業態である。もっとも、国内には「エンジニアリング」と名前のつ

    エンジニアリングとは統合力(インテグレーション能力)である | タイム・コンサルタントの日誌から
  • 運用技術者組織の設計と運用 / Design and operation of operational engineer organization

    第12回 インターネットと運用技術シンポジウム(IOTS 2019)~運用管理する人”も”報われるシステムの構築を考える~ にて招待講演を行った際の資料です。 概要: https://www.iot.ipsj.or.jp/symposium/iots2019/ プログラム: https://ww…

    運用技術者組織の設計と運用 / Design and operation of operational engineer organization
  • 電気回路内の電磁ノイズの起源を大阪大学が解明、電磁ノイズレス回路設計が可能に

    電気回路内の電磁ノイズの起源を大阪大学が解明、電磁ノイズレス回路設計が可能に 大学ジャーナルオンライン編集部 大阪大学の神野崇馬博士後期課程3年生らの研究グループは、電子・電気機器の誤動作や発熱の原因となる電磁ノイズ現象を定量化するための理論を考案し、その発生メカニズムを解明して、電磁ノイズが発生しない回路構造を理論的に導出することに成功した。 今回の研究では、電磁ノイズ現象の記述のために、電気回路を信号の往復路である2の導線で表し、環境を1の導線で表した3線回路を使用。その結果、信号を表すノーマルモードと、電磁干渉を表すコモンモードの定式化が可能になった。さらに、3線回路の入力や出力での接続関係を考慮し、各モードの振る舞いを表す方程式を導出。その結果、回路と環境の幾何学的な位置関係と、接続される素子との電気的な接続関係により、コモンモードがノーマルモードに変換され、電磁ノイズが発

    電気回路内の電磁ノイズの起源を大阪大学が解明、電磁ノイズレス回路設計が可能に
  • ソフトウェア設計の言語化スキルを磨くこと|qsona

    たとえば設計について議論するときや、コードレビューで指摘をするときに、「なぜその設計が良いと思うのか?」について言語化するのが上手だと、確実に良いことがあります。 言語化が上手にできるかが一つの壁なのではないか、と感じることもあります。後輩を育てたりチームをリードするような立場になると、特に必要性を感じるのではないかなと。 自分も、うまく言語化できたことですんなり議論を進められていると感じることは多いですし、逆に直感的な良さを言語化できなかったことで直感に反する方向に進んでしまい、結果よくなかったというような苦い経験もあります。 前提: ソフトウェア設計の良さは静的には決まらない良い設計・良いコードとは何なのか。という質問に一言で答えるなら、「保守性が高い」ことだと思います。つまり、今後の変更・拡張を、高速にバグが少なく行えるような状態が良い設計・良いコードです。(一般的にはこれで70%く

    ソフトウェア設計の言語化スキルを磨くこと|qsona
  • ドメイン駆動設計の正しい歩き方

    ドメイン駆動設計でなぜ作るのか? ドメイン駆動設計の考え方 ドメイン駆動設計を実践するための6つの問い 事例研究 ドメイン駆動設計を現場に導入する 体験的に学ぶ エヴァンスをちゃんと読むRead less

    ドメイン駆動設計の正しい歩き方
  • HAZOP - Wikipedia

    HAZOP(Hazard and Operability Studies)とは、元々、リスク特定のため、複雑なプロセスや装置に対して行う手法である。 化学工業、原子力、製鉄などの装置産業で、事故などの原因が、原料、材料、燃料などの気体・液体の流量の調整との関係で、電磁バルブの所で分析すると効率がよいという経験則から一般化した方式として用いるようになった。現在では、化学プラントにかかるセーフテイ・アセスメントの「 プロセス安全性評価(第4段階)」において、「第3段階の危険度ランクがIのプラントについては、プロセス固有の特性等を考慮し、フォルトツリー解析、HAZOP、FMEA手法等により、危険度ランクがIIのプラントについては、What-if分析等により、潜在危険の洗い出しを行い、妥当な安全対策を決定する。」という形で 労働省労働基準局長から通達がでている[1][2][3]。当初は時間の量・質

  • 1