- ベストアンサー
SEについて教えて下さい☆
今月中に大学の推薦入試を受けるのですが 過去の質問でSEについて問われていたので お聞きしたいことがあります。 ちなみに私の受ける学科は数学科です。 SEについて高校生の私でもわかるように 分かりやすく教えて下さい。 知りたいことは仕事内容等です。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
がると申します。 SEについてわかりやすくということで…難題に挑戦してみましょう(笑 なにせ、業界人ですら定義が分かれるものなので。 まず「SE == システムエンジニア」とさせていただきます。 何でかっていうと、SEという略称で「セールスエンジニア」とか「サービスエンジニア」とか色々と亜種があるので、そのあたりまで入れると本気でわけがわからなくなってしまうので。 SE(システムエンジニア)は、一言で片付けると「システムを作る人」です。 ここでいうシステムというのは…そうですねぇ。高校生さんとのことで、身近にコンビニを例題にしてみましょう。 コンビニ(に限らないと思いますが)で、レジで商品を買うときに。バーコードに「ピ」ってするだけで、金額から商品名からすぐに出てきますよね? で、それらが足し算されて、合計金額とか出てきますよね? あれも立派に一つの「システム」です。 また、あの売り上げデータは全国で集計されて、何が売れ行きがよい、何が売れ行きがいまいち、などの統計を取っています。これもまた一つのシステムです。 さて。「もし」このシステムがなかったらどうなるでしょう? まずお店では「値段対応表」とかを人間が見て商品に一つ一つ値札をつけて、レジでは頑張って計算をして、お客様が何を買ったのかを一つ一つメモをして。…とんでもなく面倒です。 システムとは「人間がやると面倒なものをコンピュータに肩代わりにしてもらうことによって人間が楽をする(効率を上げる)ためのもの」です。 では、そんな「便利グッズ」のようなシステムを作るにはどんなことが必要でしょうか? まず初めに「今困ってるのはどんなことか」を探り出す必要があります。困ってる会社の人に話を聞いて、どこがどんな風に困っているかを聞き出すんですね。 これを「ヒアリング」とか「事前調査」とか「インタビュー」とか、そんな風に呼びます。 次に、やっぱり予算の関係というものがあるので。ヒアリングの結果から「どんなシステムを作ったら、一番安く上がってしかも困ってる会社の人たちが楽になるのか」を話し合います。 これを「要件定義」とか「要求定義」とかって呼びます。 場合によっては、SEのほうから「こんなことをするともっと業務がよくなるよ」というアドバイスをかける場合もあり、これを「コンサルティング」とかって呼びます。 厳密にはこのあたりで「お値段の決定」があるのですが、ほとんどの場合は営業さんがやるのでSEさんにはあまり馴染みがない…かもしれません。 要件定義が片付くと、次は「どんな性能のコンピュータで」「どんなプログラムを 作る/使う とよいか」といった技術的な設計に入ります。 このあたりを「設計」と呼びます。一般に外部設計、内部設計、詳細設計などの言葉がありますが、案外意味合いがばらばらなので、まとめて「設計」っておぼえちゃってよいと思います。 設計が片付いたら、実際に物を作成する「プログラミング / コーディング(意味はまったく一緒です)」と、作ったものを試験する「テスト」を行っていきます。 場合によっては作成中に困ってる会社の人たちに実際に使ってもらったりして、設計の内容の一部を変更し、作り直しをすることもあります。この作り直しのことを「仕様調整」とか「仕様変更」とかって呼びます。 いざモノが出来上がって、困ってる会社の人が「うんこれならこれから楽が出来るからOK」ってOKを出してくれたら、そのシステムを実際に使い始めます。 これを「納品」とか「運用開始」とかって呼びます。 でも使っていく間に「あれ? なんかバグがある」とか「やっぱりこの辺はこう変えて欲しい」とか「あとこんな機能があるといいのになぁ」とかっていう風に思いが広がっていきます。システムによっては日々のお世話をしてあげる必要があるものもあります。 それぞれ、「障害対応」「仕様変更」「仕様追加 / 機能追加」「保守 / メンテナンス」と呼びます。 SEは、上記を「大体全部」カバーする職業です。…ええ幅広いです(苦笑 狭~~いところだとSEの作業範疇は「設計」部分だけになるんですが。大抵は一通りやることを期待されます。 かなりの長文になってしまいましたが、どうでしょうか?
その他の回答 (3)
私的独断と偏見に満ちたイメージ的なもの。参考程度に。 ディレクター(以下デ:)、SE(以下エ:)、プログラマー(以下プ:) ---とある撮影所--- エ:SEですが、なにか困りごとがあるとか?(要件定義) デ:おー待ってたよ。今度、中世ヨーロッパの映画で、大地を埋め尽くす程の大人数が激戦する場面を撮りたいんだが、予算の関係もあってエキストラはあまり多く雇えないんだけど・・・。なんとかならない?(ヒアリング) エ:CGを使ってみたらどうですか?そうすれば、実在する人間の数は縮小でき、大迫力の絵が撮れますよ。(コンサルティング・提案) デ:しかし、CGを使ってしまうと映像のリアリティがなくなってしまうんでない?あくまで、リアリティありきの大激戦!(提案却下) エ:では、大雨の中の戦闘としたらどうでしょうか?映像的には雨が邪魔するので、実在の人物なのかCGの人物なのか人間の目には解らなくなります。(コンサルティング・提案) デ:いやいや、この場面は晴れた日の戦闘ってことでイメージしてるんだよ。(またまた、提案却下) エ:では、主役の周りは実物の人間で固め、遠くにしたがって実物の人間の数を減少していき、逆にCGの人間は遠くに行くほど多くしていきます。カメラのフォーカスは常に、主役にあたっているので、CGの人間は全て背景となります。背景となるんであれば、実際の人間とほとんど変わらなく表現できます。また、砂煙などを立ち上げ、画面の鮮明さを低下させれば、さらに完璧だと思います。(コンサルティング・提案) デ:おおぉ~!なるほど。それでいこう!CGはたのむぞ!(提案合意) エ:おまかせ下さい! ---撮影終了後、会社に戻って--- エ:おい!プログラマー! プ:はい。なんでございましょう? エ:CGで、この映像のここの部分に弓兵3000人、ここの部分に騎馬兵500騎、あと背景前面が埋まるくらい歩兵を書いて。(基本設計) プ:了解です! エ:兵隊のデザインは考えてネ。(詳細設計) プ:解りました! エ:1時間でやってネ。 プ:・・・・解りました。 エ:終わんなかったらクビネ。 プ:・・・・・・・・・ガンバリマス。 ・・・・・・・・・カタカタカタカタカタカタカタ・・・・・・・・・・・(コーディング) プ:できました。 エ:おー、そうか。では、まず騎馬兵を動かしてみろ!(単体試験) プ:はい! エ:次は弓兵。(単体試験) プ:はい! エ:次はCGで作ったやつ全部動かして。(結合試験) プ:はい! エ:次は、撮った映像とCGを合成して動かしてみて(総合試験) プ:はい! エ:うん、まぁいいだろう。 ---とある撮影所--- エ:ディレクターさん。映像が完成しました。 デ:おー、どれどれ。すごい、想像以上の出来だよ!(ユーザー検証) エ:ありがとうございます!今後、何かこの映像に不満があったりしたらなんでもいって下さい!(保守) 以上、私的独断と偏見についてのイメージでした。 ()でそれぞれの工程名を書いておきました。 SEの役割は、NO1~NO3さんの書かれている通りだと思います。 大学の入試であれば、問われるのは実際のSEの姿ではなく、本などに書かれているあくまで一般的な定義だと思われます。 多分、いきなり本とか読むとよけい混乱すると思われるので、まずはインターネットで"SEとは"という文言で検索してみてはいかがでしょうか? どこかの、辞書にヒットすると思うのでそこからSEについての知識を広げて行った方が良いかと思います。 *注意* 今回のやりとりは、基本設計とか、単体試験とかの工程ってどんなものなのか私なりにイメージしたつもりです。 *重要* 混乱するのであれば、読み飛ばしてください。
- riku2451
- ベストアンサー率34% (35/101)
SEと一言でいいますが、業務内容は多岐にわたります。(会社にもよるみたいですが) 技術営業、コンサルティング、システム設計・開発、基盤構築、プロジェクト管理、システム運用とか。 システム開発全般の流れとしては、 (1)要件定義 →客の業務要件(何をするのか、何ができるのか等)をシステム的な見地からとりまとめる。 (2)基本設計(外部設計) →要件定義に基づき、実際のシステムイメージをとりまとめ、必要な機能を設計。 (3)詳細設計(内部設計) →基本設計に基づき、画面・帳票・バッチ処理のプログラム一本一本の設計書を作成。 (4)プログラミング →詳細設計にもとづき、コーディングを行う。 (5)単体テスト →作成されたプログラム単体のテストを行う。 仕様書の作成やテストデータの作成も行う。 (6)結合テスト →作成されたプログラムを組み合わせ、機能のかたまりとしてのテストを行う。 (7)他システムテスト →他システムとのI/Fについて、確認を行う。 (8)システムテスト →定義したシステム前提条件が満たされているかどうかを運用面や、インフラ面で検証。 (9)ユーザ検証 →業務機能が、開発したシステムで実現されているかを、 客に検証してもらう。 (10)保守 →本番稼動後の運用フォローを行う。 就活の時にもらった資料からがんばって書いてみました。わかるといいんですが・・・。
- usamimi333
- ベストアンサー率20% (8/39)
システムエンジニアのことですか? お客さんのニーズを満たすシステムの設計や、開発のプロジェクト管理をしたりします。 例えば従業員50人の会社でメールをしたい、という要望があった際、メールの容量や頻度、セキュリティポリシー、データのバックアップを行うか、停電の際の対策は?などヒアリングをして、要望を満たすサーバを選定し、ソフトウェアなどを組み合わせてシステム設計をします。その後の設定作業から引渡しまでのプロジェクト管理なども行います。 性格的にはトラブルが合ったときにあきらめずにいろいろな方法を試したり、粘り強く掘り下げるタイプの人が向いていると思います。 その他にも特定の技術に精通して、プログラミングなどのみを行うSEもいます。 ・・・うまく説明できずごめんなさい。 ちなみに私はIT企業の営業で、SEと一緒にお客さんのところに行きヒアリングなどを行う立場です。