![]() ![]() |
科目一覧へ戻る | 2019/08/20 現在 |
科目名(和文) /Course |
ソフトウェア工学 |
---|---|
科目名(英文) /Course |
Software Engineering |
時間割コード /Registration Code |
22147401 |
学部(研究科) /Faculty |
情報工学部 |
学科(専攻) /Department |
情報システム工学科 |
担当教員(○:代表教員)
/Principle Instructor (○) and Instructors |
○但馬 康宏 , 磯崎 秀樹 |
オフィスアワー /Office Hour |
但馬 康宏(火曜日3限)
磯崎 秀樹(月曜4限) |
開講年度 /Year of the Course |
2017年度 |
開講期間 /Term |
第2クォーター |
対象学生 /Eligible Students |
3年次生 |
単位数 /Credits |
2.0 |
更新日 /Date of renewal |
2017/03/27 |
---|---|
使用言語 /Language of Instruction |
日本語 |
オムニバス /Omnibus |
該当なし |
授業概略と目的 /Cource Description and Objectives |
ソフトウェア企業に勤める人はもちろん,他の企業に勤める人も,ソフトウェアはハードウェアのように目に見えないので,これだけのものを作るのには何ヶ月かかります,何百万円かかります,何億円かかります,と業者に言われても,本当かどうかわからない.自分で作るとどれくらい大変そうか,どこがネックになりそうか,と推測できる知識はあった方がよい. また,ソフトウェアを自分で作ったり,他人に作ってもらう時に,知っていれば簡単にできることに無駄な時間やお金をかけたり,すでにあるものを再発明してしまうことがある. そうした失敗をしないように,「ソフトウェア作成の常識」を身につける. |
履修に必要な知識?能力?キーワード /Prerequisites and Keywords |
自分が好きに使えるパソコンがあった方がよい.Macでもよい. |
履修上の注意 /Notes |
この授業で使うPythonというプログラミング言語は,C言語よりはるかに簡単で,ポインタに悩まされずにいろんなことができる楽しい言語です.C言語が嫌いな人も歓迎します. |
教科書 /Textbook(s) |
なし.資料を配布します. |
参考文献等 /References |
それぞれのテーマに応じた参考書を必要に応じて紹介します. |
自主学習ガイド /Expected Study Guide outside Coursework/Self-Directed Learning Other Than Coursework |
プログラミング言語は座学で勉強しても楽しくありません. ぜひ自分のパソコンにPythonをインストールして使ってみましょう. Pythonは,堅苦しいC言語とは全然違う楽しい言語です. |
資格等に関する事項 /Attention Relating to Professional License |
|
備考 /Notes |
No. | 単元(授業回数) /Unit (Lesson Number) |
単元タイトルと概要 /Unit Title and Unit Description |
時間外学習 /Preparation and Review |
配布資料 /Handouts |
---|---|---|---|---|
1 | 1 | [UnixというOS] UnixとWindowsの哲学の違いについて学ぶ.今のMacはUnixの一種である. |
||
2 | 2 | [Emacsというエディタ] プログラムを書くのに使われるのがエディタとか開発環境と呼ばれるツールである.ここでは古くから使われているEmacsというエディタについて簡単に学ぶ. |
||
3 | 3~4 | [Pythonというプログラミング言語] 世の中にはたくさんのプログラミング言語が存在する.その背景にあるプログラミング?パラダイムとPythonの使い方を学ぶ. |
||
4 | 5~6 | [HTMLやXMLの解析] 今や,WordもExcelもPowerPointも,XMLという形式でデータが保存されている.そのXMLと,ウェブを支えるHTMLは非常によく似ている.Pythonでこれらを解析する方法を学ぶ. |
||
5 | 7~8 | [正規表現] あるパターンに従って書かれているファイルから,中身を取り出すには,「正規表現」というパターン記述言語が便利である.その正規表現の使い方を学ぶ. |
||
6 | 9~10 | [再帰関数] XMLのような木構造データを解析する場合,「再帰関数」という考え方が役に立つ.この再帰関数について学ぶ. |
||
7 | 11 | [並列処理] 今や,大量のデータが入手できる時代である.大量のデータを短時間で処理するには,並列処理が役にたつ.その並列処理の仕方について学ぶ. |
||
8 | 12 | [ソフトウェア開発] 大規模なソフトウェアをチームで開発する場合にどのようにするのがいいかについて研究するのが学問としての「ソフトウェア工学」である.旧来の「ウォーターフォール?モデル」と,最近のアプローチについて学ぶ. |
||
9 | 13~15 | [復習] これまでに習ったことを身につけるために,様々な問題に取り組む. |
||
10 | 16 | [期末試験] 試験を行います. |
No. |
到達目標 /Learning Goal |
知識?理解 /Knowledge & Undestanding |
技能?表現 /Skills & Expressions |
思考?判断 /Thoughts & Decisions |
伝達?コミュニケーション /Communication |
協働 /Cooperative Attitude |
||
---|---|---|---|---|---|---|---|---|
1 | UnixとWindowsの考え方の違いについて説明できる. | ○ | ○ | |||||
2 | Emacsというエディタについて説明できる. | ○ | ○ | |||||
3 | 世のなかにある様々なプログラミング?パラダイムの違いについて説明できる. | ○ | ○ | |||||
4 | HTMLやXMLで書かれたデータをPythonで解析する方法を説明できる. | ○ | ○ | |||||
5 | 一定のパターンで書かれたファイルを正規表現で解析して,データを抽出できる. | ○ | ○ | |||||
6 | 並列処理にはどのような方法があるか説明できる. | ○ | ○ | |||||
7 | 今と昔のソフトウェア開発の考え方の違いを説明できる. | ○ | ○ |
No. |
到達目標 /Learning Goal |
定期試験 /Exam. |
|||||
---|---|---|---|---|---|---|---|
1 | UnixとWindowsの考え方の違いについて説明できる. | ○ | |||||
2 | Emacsというエディタについて説明できる. | ○ | |||||
3 | 世のなかにある様々なプログラミング?パラダイムの違いについて説明できる. | ○ | |||||
4 | HTMLやXMLで書かれたデータをPythonで解析する方法を説明できる. | ○ | |||||
5 | 一定のパターンで書かれたファイルを正規表現で解析して,データを抽出できる. | ○ | |||||
6 | 並列処理にはどのような方法があるか説明できる. | ○ | |||||
7 | 今と昔のソフトウェア開発の考え方の違いを説明できる. | ○ | |||||
評価割合(%) /Allocation of Marks |
100 |