17
8

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

英語版 Wikipedia の Software Engineering の第1段落を解説してみた

Last updated at Posted at 2020-05-15

Software engineering is the systematic application of engineering approaches to the development of software. Software engineering is a sub-field of computing science.

方針として,語順の通りに解釈するというのが英語学習において大事です。よくある後ろから訳すという方針では,英語学習の妨げになることが多いです。

したがって,Software engineering is the systematic application から訳していきます。これは SVC (主語+動詞+補語) の構文です。すなわち,S である software engineering と C である the systematic application が等しいことを意味しています。

systematic

systematic というのは,英英辞典 (New Oxford American Dictionary) を引いてみると,

(adjective) done or acting according to a fixed plan or system; methodical

とあります。

  • adjective は形容詞です。
  • done は,ここでは形容詞として働き,「完了した(状態)」を意味します。
  • done と acting が or で結合しているので,done と acting が同じ位置付けにあること,done と acting のどちらかであることを意味します。
  • acting は act の現在進行形,「行動している(状態)」を意味します。

以上から,"done or acting" で,「完了した(状態),もしくは行動している(状態)」を意味します。

according to は,報告・調査・人などの情報源を示して,「〜によれば」という意味です。あるいは英英辞典を引くと as stated by or in ということなので,「〜に述べられているように」というような意味です。

したがって,"done or acting according to" という表現で,「〜に示されているように完了した,もしくは行動している状態」という意味になります。

  • a fixed plan は「ある確固たる計画」という意味です。
  • or は前述の通りで,ここでは plan と system が同じ位置付けにあり,どちらかであることを意味します。
    system は,ここでは「体系」という意味です。
    a fixed plan or system で「ある確固たる計画もしくは体系」という意味になります。

したがって,全体として,「ある確固たる計画もしくは体系に示されているように完了した,もしくは行動している状態」という意味になります。要するに,「計画的な方法で,体系的な方法で」というような意味となります。

; (セミコロン) より後の単語は,systematic を言い換えた言葉,すなわち類語を示します。

すなわち,systematic を言い換えると,methodical という言葉になります。

まとめると,systematic という概念が内包しているのは,理論的ということだと思います。

application

application を英英辞典で引いてみるといくつかの意味が出てきますが,ここでは次の意味合いになります。(いくつかの意味の中で,どうしてこれを選ぶか,というのは説明が難しいですね)

the action of putting something into operation

application は,まず the action です。ここでは「活動」が近い意味です。

どんな活動かというと,"of putting something into operation" です。

  • of はここでは「ofの前にあるもの(ここでは the action) がofの後に続くもの(ここでは putting〜)の一部である」ということを意味します。
  • put のイメージは「目的語 (ここでは something) を副詞(句) (ここでは into operation) の位置や状態にする」という感じです。
  • something は「何か」です。すなわちここでは application の対象を意味します。
  • into のイメージは,「その後に続くもの(ここでは operation)の内部へ」というような感じです。
  • operation も意味が複数あるのですが,ここでは「実務」というような意味合いが一番近いです。

したがって,"of putting something into operation" で「何かを実務の中へ位置付けることの一部であるような」というような意味になります。

全体として,「何かを実務の中へ位置付けることの一部であるような活動」ということになります。要するに,「応用」というような意味になります。

application という概念が内包しているのは,実践です。

the systematic application

以上をまとめると,the systematic application は,「ある確固たる計画もしくは体系に示されているように完了した,もしくは行動している状態であるような,何かを実務の中へ位置付けることの一部であるような活動」ということ,すなわち,「(場当たり的ではない)体系的な方法で,何かを応用しようとすること」という意味になります。

そういうわけで,software engineering は,まず第一に「(場当たり的ではない)体系的な方法で,何かを応用しようとすること」だということになります。概念として,理論と実践が内包されています。

the systematic application of engineering approaches

次に,"the systematic application of engineering approaches" というようにつながっています。

of は前述のように, 「ofの前にあるもの(ここでは the systematic application) がofの後に続くもの(ここでは engineering approaches)の一部である」ことを示します。

engineering

engineering を英英辞典で引いてみると,the branch of science and technology concerned with the design, building, and use of engines, machines, and structures とあります。

  • branch の元々の意味は「枝」ということですが,そこから転じて,「学問などの分野」という意味になります。(この意味を選んだ理由は,その後に science and technology と続くからです)
  • of は前述のように, 「ofの前にあるもの(ここでは the branch) がofの後に続くもの(ここでは science and technology)の一部である」ことを示します。
  • science and technology は科学技術ですね。

したがって,"the branch of science and technology" は,「科学技術の分野」という意味になります。

  • concerned with は「〜に関係する」という意味です。
  • the design は「設計」という意味ですね。
  • building は,ここでは「建築」という意味です。
  • and は,ここでは design, building, use が,対等な位置づけにあり,それらが並列している状態です。
  • use は「使用」という意味です。
    • of は前述のように,「ofの前にあるもの(ここでは use) がofの後に続くもの(ここでは engines, machines, and structures)の一部である」
    • engines は「エンジン」ですね。
    • machines は「機械」です。
    • and は前述のように,ここでは engines, machines, structures が対等な位置づけにあり,それらが並列している状態です。
    • structures は「構造」です。
  • use of engines, machines, and structures で,「エンジン,機械,構造の使用」という意味になります。

以上をまとめると,engineering とは,「設計,建築や,エンジン,機械,構造の使用に関連する科学技術の分野」ということになります。だから「工学」という意味になるのですね。この点でも理論が内包されています。

approaches

approach はいくつか意味がありますが,ここでは a way of dealing with something という意味です。

  • a way は「一つの方法」です。
  • of は前述のように 「ofの前にあるもの(ここでは a way) がofの後に続くもの(ここでは dealing with〜)の一部である」
  • dealing with something は「何かを処理する」という意味です。

したがって,approach は「何かを処理する一つの方法」,すなわち「方法」という意味になります。

engineering approaches

engineering approaches で,「工学的な(数々の)方法」という意味になります。

the systematic application of engineering approaches

以上をまとめると,"the systematic application of engineering approaches" で,「工学的な数々の方法の一部であるような,(場当たり的ではない)体系的な方法で,何かを応用しようとすること」という意味になります。理論と実践ということですが,特に理論が強調されているように思います。

approaches to the development of software

  • approaches to で,「〜へのアプローチ」「〜をするための方法」ということになります。

the development of software

the development of software を見ていきます。

development, develop

development を英英辞典で引くといくつか意味がありますが,まず,the process of developing or being developed です。すなわち「develop している過程もしくは develop された状態」ということになります。

develop を改めて引くといくつか意味がありますが,まず,grow or cause to grow and become more mature, advanced, or elaborate です。

  • grow は「成長させる」
  • or は前述のように,ここでは grow, cause to 〜が対等に並んでいて,どちらかであることです。
  • cause to のイメージは,〜になるような結果を引き起こすということです。
  • grow and become で「成長して〜になる」というような意味です
  • become more 〜で,「ますます〜になる」というような意味です。
    • mature は「成熟した」
    • advanced は「進んだ」
    • or はここでは mature, advanced, elaborate が対等に並んでいて,どれかであることを意味します。
    • elaborate は「精巧な」

したがって,全体として,「成熟した,進んだ,精巧な状態に成長すること,もしくは成長して成熟した,進んだ,精巧な状態になったこと」を意味します。なので,「開発する」というような意味になるのですね。

software

software はソフトウェアという意味ですが,英英辞典で引くと,the programs and other operating information used by a computer です。

  • the programs はプログラムです。
  • other operating information は「その他の操作情報」というような意味ですね。データが近い意味でしょうか。
  • used by a computer は「コンピュータで使われる」ということになります。

したがって,software は,「コンピュータで使われる,プログラムとその他操作情報(データ)」という意味です。

the development of software

the development of software は,一言で言うと「ソフトウェア開発」なのですが,詳しく意味を見ていくと,「ソフトウェアを成熟させる,進んだ状態にする,精巧にすること」ということなのですね。したがって,時間の進行とともに,大規模になったり,複雑化したり,安定化したり,というようなイメージになってきます。

まとめ

Software engineering is the systematic application of engineering approaches to the development of software. をまとめると,次のようになります。

software engineering とは,ソフトウェア開発,すなわち「ソフトウェアを成熟させたり,進んだ状態にしたり,精巧にしたりすること」に立ち向かうための,工学的な数々の方法の一部であるような,(場当たり的ではない)体系的な方法で,何かを応用しようとすることである

この定義からわかるように,**software engineering は場当たり的ではないということが重要になってきます。すなわち,勘と経験に基づいたものだとしても,その理由や根拠が説明可能であることが大事です。**そして,ソフトウェアを大規模化,複雑化,安定化していくようにするための方法論であるとも言えます。

Software engineering is a sub-field of computing science. はさらりと流しますが,software engineering は computing science の一分野である,ということです。

このことからも,software engineering は,science すなわち科学であるということが大事で,やはり単なる勘と経験だけではなく,理論が大事になってくることを示唆しています。

17
8
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
17
8

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?