F-nameのブログ

はてなダイアリーから移行し、更に独自ドメイン化しました。

ソフトウェアとは(ソフトウェア工学第1回)

ソフトウェアの歴史は古い。そして大半の物はプログラムが入っているのでその知識は必要。

 

ソフトウェア工学と情報社会。工学。物作り、設計や開発製造。機械工学や電気工学などが。電子工学。電子回路などを設計するなど。これらとソフトウェア工学の違い。自然科学が基礎。力学や量子力学。固体物理学。工学の基礎には科学的な法則。ソフトウェアとは何なのか。同じ工学の目的や採集成果物や効果。機械工学の場合ば機械が目的。電子回路の電子は目的。ソフトウェア工学が対象とするソフトウェア。目的と共に手段。設計開発すると同時に手段として設計開発。歴史的な経緯。ソフトウェアエンジニアリング。68年に名付けられる。アメリカのIBMなどの大型計算機、メインフレームと後で呼ばれる。ハードウェア。計算機装置などを指す。演算装置など。大規模な電子回路。電子工学の対象。高価だった。80年前後にパーソナルコンピュータが来るまでは効率的に動かす利用技術がソフトウェア。モニター。OSというソフトウェアに発達。OSは基本的仕組みを提供するソフトウェア。360OS。64年に。100万行を越えるソフトウェア。多数の技術者が長期間で。機能や設計開発の目的。膨大な費用を必要とするプロジェクトに。開発過程で複雑なソフトウェア開発の手法が、様々な論文が。OSに限らず大規模プログラム。プログラミングの基礎は計算機科学。処理にどれくらいの手間がかかるかなどに関心。コンピューティング。計算とは何かを。OSには計算機科学の知見が。プログラミングとことなる側面。多くの技術者が協力して。計算機科学は大人数の開発を対象としていない。ソフトウェア工学の難しいところ。答えは一つではない。膨大な期間と費用。長期間の使用でコストを回収。大手銀行の勘定系システム。30年以上使われているものも。改定も必要。バージョン。共通して利用する機能。共通部分を明確に分ける。再利用の背景。複数バージョンに枝分かれすることを前提に。大人数の開発の技術が必要。ソフトウェア工学の領域は共通する技術を。手段としてのソフトウェア。何がソフトウェア工学を支配するか。円滑に進める。規模が大きくなると複雑化を避けられない。複雑化に支配される。量的な質的な共同作業の複雑化。環境が変化する要因も。複雑さの理由は様々。解決の方法も異なる。間口が広い。ソフトウェア工学の基礎となる科学的法則は?実態はプログラムだから計算機科学。様々な科学的方法が関係思想。間口の広さに合わせて色々なテーマを。
計算機の移り変わり。60年代の汎用計算機。空調設備のある計算機室に。小型計算機、オフコンの登場。ミニコン。データ交換をする通信ネットワーク。UnixとInternet Protocolがデファクト・スタンダードに。80年頃にはデスクトップPCが。90年代にはラップトップ型。WEBの技術でInternetが身近に。10年からはスマートフォンやタブレットが。大型計算機の頃は利用技術。高価なハードウェアを効率よく。スマホでは事情が異なる。使いやすい機能を。特に入力。音声認識の機械操作。使いやすさを支える。使いやすいシステムとは?プログラミングの考え方も変わる。「プログラミングのパラダイム」。ソフトウェア開発プロジェクトに影響。多くの技術者が複数バージョンを。基本的考え方を共有して理解を容易に。再利用。適切なプログラミングのパラダイムの例。オブジェクトプログラミング。デザインパターンなどの技術が。オブジェクト技術やオブジェクト志向。高い再利用性。クラスライブラリ。標準に部品を容易。生産効率が向上。生産性の向上のための人などの情報処理。再利用は部品だけではなく。オブジェクト志向は万能?万能のプログラミングパラダイムはない。開発対象との間にミスマッチが、サイバーフィジカルシステム。06年に。CPS。自動車の高度化。ACCなどの機能が。運転手が設定した速度を保つ自動化。アクセス操作の無駄を減らし省燃費に。回転から実際の速度を。設定速度と比較して判断して燃料の供給量を。ダイヤの回転に。ループ状。閉じたループに沿って制御の流れを。分割して機能を考えるのではなく全体そのものが重要。CPSの典型的応用例。サイバー、部フィジカル、実社会の。CPSはオブジェクト技術と違う?
インフラでも使われているが殆ど認識されていない。目に触れないので動いているのが意識されない。
特徴、種類、誰がどう作るか?
現代社会を動かすソフトウェア。インフラを作る。System、IT。その中心にSoftware。情報システム。インフラを支え使う業種。業務の根幹にSoftware。身近なところにSoftware。日頃はあまり意識されない。Softwareの語源。60年代頃から。
softという用語。Softwareは物質的限界に晒されない、目に見えない。物理的制約が無い。Hardwareの発達によって産まれた能力的空間を埋めていく。抽象的なもの。適用分野は多様。共通の技術としてのSoftware工学。普及が必要。人に変わって機械を制御。HardwareでしていたものをSoftwareに。中間としてのファームウェア。SoftwareをLSIなどに固定。最近は書き換え可能、Software化。境目も縮小している。Firmwareで更新可能。柔軟性がmaintenanceを難しくしている面も。
Systemという用語。Softwareだけでなくcomputer、通信System。情報システム、組込型System。業務SystemメインフレームからWeb型のSystemへ。組込型。自動車の中に数十個のcomputerが。膨大なSoftware。制御機器。ゲームソフト。Softwareの開発も様々。汎用で市場から買えるものと、注文で作るもの。パッケージソフトウェア。最近はnetからDownload。箱を買う必要が無くなった。外にあるSoftwareを直接使うことも。注文で作る。85%は受託して開発。SystemSoftware。主にOSを指す。ここの要素で、アプリケーションソフトウェア、中間にミドルウェアも。ワープロ表計算。オープンソース。プログラムコードを公開。商業ベースではないけれど。Linux。Apache。IBMが提供するものも。ソースを公開する以上は無償なのが殆ど。Projectの形態?多くの人により発達させる。バグが有った時に報告、修正。欠陥を見つけ修正するspeedがある。多くの目によって。Internetを基盤にした開発形態。サービス志向。Internetを介して提供する。業者が使うSystemを提供。Salesforce。クラウドコンピューティング。Cloud。雲、InternetのNetwork。サービスだけでなくPlatform機能。ProgramDataを保管。Systemの投資が少なくて済む。GoogleAmazon。寡占化。
利用する方法や環境は多様化。けれど変わらないことも。情報産業の大きな部分はSoftware。20兆円。けれどSoftware専業会社に限らない。富士通などや製造業なども。開発に従事する人。推測128万人。技術者に要求される知識や技能。特に大学のカリキュラムCurriculum。skill。経産省が作ったITskillの体系、35個の。目標にもなる。Softwareは一人でも作れる、その一方で組織として作ることも。天才型ハッカーhacker型、Unix、WWW。システム化して作る、工場型。標準化。流れ作業的に。毎回設定をしている感じ。人間的な側面。Softwareの開発。最終的には人、知識集約的、労働集約的。使うのも人間。どういうSoftwareを?利害調整の必要性。ヒューマンインタフェースも重要。トラブルで不具合が出た場合は?

 

ソフトウェア工学 (放送大学大学院教材)

ソフトウェア工学 (放送大学大学院教材)

 

 

 

 

 

AIシステムと人・社会との関係 (放送大学教材)

AIシステムと人・社会との関係 (放送大学教材)

 

 

 

情報学の技術 (放送大学大学院教材)

情報学の技術 (放送大学大学院教材)

 

 

 

抽象によるソフトウェア設計−Alloyではじめる形式手法−

抽象によるソフトウェア設計−Alloyではじめる形式手法−

  • 作者:Daniel Jackson
  • 発売日: 2011/07/15
  • メディア: 単行本(ソフトカバー)
 

 

 

デジタル・プラットフォーム解体新書

デジタル・プラットフォーム解体新書

 

 

 

SPINモデル検査入門

SPINモデル検査入門

  • 作者:Mordechai Ben-Ari
  • 発売日: 2010/03/24
  • メディア: 単行本(ソフトカバー)
 

 

 

SPIN モデル検査:検証モデリング技法

SPIN モデル検査:検証モデリング技法

  • 作者:中島 震
  • 発売日: 2016/11/01
  • メディア: Kindle版
 

 

 

形式手法入門―ロジックによるソフトウェア設計―

形式手法入門―ロジックによるソフトウェア設計―

  • 作者:中島 震
  • 発売日: 2012/04/20
  • メディア: 単行本(ソフトカバー)