ソフトウェア工学

科目基礎情報

学校 苫小牧工業高等専門学校 開講年度 令和03年度 (2021年度)
授業科目 ソフトウェア工学
科目番号 0031 科目区分 専門 / 必修
授業形態 授業 単位の種別と単位数 学修単位: 2
開設学科 創造工学科(情報科学・工学系共通科目) 対象学年 4
開設期 前期 週時間数 2
教科書/教材 (教科書)小泉寿男・辻 秀一・吉田幸二・中島 毅 著「ソフトウェア開発」オーム社 (参考図書)川村一樹 著「ソフトウェア工学入門」近代科学社 國友義久 著「効果的プログラム開発技法」近代科学社 千葉雅弘監修「かんたんUML」翔泳社 OBJECT MANAGEMENT GROUP: "UML 2.0 Superstructure Specification" http://www.omg.org/ Len Base, Paul Clements, Rick Kazman:"Software Architecture in Practice (Sei Series in Software Engineering)"Addison-Wesley Pub (Sd), 2003 「情報セキュリティ白書2018」,(独)情報処理推進機構 (講義及び試験の内容水準確認のための参考資料)情報処理技術者試験 IPA セキュアプログラミング講座 本位田真一他著「オブジェクト指向分析設計」共立出版, 斎藤直樹著「データモデルとRDBMSへの実装」リックテレコム Steve McConnel著,石川勝訳「コードコンプリート」アスキー出版局 OBJECT MANAGEMENT GROUP: "UML 2.0 Superstructure Specification" http://www.omg.org/ Len Base, Paul Clements, Rick Kazman:"Software Architecture in Practice (Sei Series in Software Engineering)"Addison-Wesley Pub (Sd), 2003
担当教員 中村 嘉彦

到達目標

MCCにおいて
IV-D.歴史の大きな流れの中で、科学技術が社会に与えた影響を理解し、自らの果たしていく役割や責任を理解できる。
V-D-1.ソフトウェア開発に利用する標準的なツールの種類と機能を説明できる。
V-D-2.ソフトウェアを中心としたシステム開発のプロセスを理解している。
V-D-2.ソースプログラムを解析することにより、計算量等のさまざまな観点から評価できる。
V-D-4.システム設計には、要求される機能をハードウェアとソフトウェアでどのように実現するかなどの要求の振り分けやシステム構成の決定が含まれることを理解している。
V-D-4.ユーザの要求に従ってシステム設計を行うプロセスを説明することができる。
V-D-4.プロジェクト管理の必要性について説明することができる。
VI-D.与えられた簡単な問題に対してそれを解決するためのソースプログラムを、標準的な開発ツールや開発環境を利用して記述できる。
VII-B.集められた情報をもとに、状況を適確に分析することができる。
VII-B.与えられた目標を達成するための解決方法を考えることができる。
VII-C.品質、コスト、効率、スピード、納期などに対する視点を持つことができる。
VII-C.クライアント(企業及び社会)の要求に適合するシステムやプロセスを開発することができる。
VIII-A.日本語と特定の外国語を用いて、読み、書き、聞き、話すことができる。効果的な説明方法や手段を用いて、関係者を納得させることができる。
VIII-B.集団において、合意形成のための基礎的技術を理解し、問題解決、アイディア創造等の活動ができる。
VIII-C.情報を収集・分析し、適正に判断し、情報の加工・作成・整理、発信ができる。得られた情報を理解し、効果的に創造的に活用することができる。


ルーブリック

理想的な到達レベルの目安標準的な到達レベルの目安未到達レベルの目安
IV-D.歴史の大きな流れの中で、科学技術が社会に与えた影響を理解し、自らの果たしていく役割や責任を理解できる。歴史の大きな流れの中で、科学技術が社会に与えた影響を理解し、自らの果たしていく役割や責任を理解できる。歴史の大きな流れの中で、科学技術が社会に与えた影響をおおよそ理解し、自らの果たしていく役割や責任をおおよそ理解できる。歴史の大きな流れの中で、科学技術が社会に与えた影響を理解し、自らの果たしていく役割や責任を理解できない。
V-D-1.ソフトウェア開発に利用する標準的なツールの種類と機能を説明できる。ソフトウェア開発に利用する標準的なツールの種類と機能を説明できる。ソフトウェア開発に利用する標準的なツールの種類と機能をおおよそ説明できる。ソフトウェア開発に利用する標準的なツールの種類と機能を説明できない。
V-D-2.ソフトウェアを中心としたシステム開発のプロセスを理解している。ソフトウェアを中心としたシステム開発のプロセスを理解している。ソフトウェアを中心としたシステム開発のプロセスをおおよそ理解している。ソフトウェアを中心としたシステム開発のプロセスを理解していない。
V-D-2.ソースプログラムを解析することにより、計算量等のさまざまな観点から評価できる。ソースプログラムを解析することにより、計算量等のさまざまな観点から評価できる。ソースプログラムを解析することにより、計算量等のさまざまな観点からおおよそ評価できる。ソースプログラムを解析することにより、計算量等のさまざまな観点から評価できない。
V-D-4.システム設計には、要求される機能をハードウェアとソフトウェアでどのように実現するかなどの要求の振り分けやシステム構成の決定が含まれることを理解している。システム設計には、要求される機能をハードウェアとソフトウェアでどのように実現するかなどの要求の振り分けやシステム構成の決定が含まれることを理解している。システム設計には、要求される機能をハードウェアとソフトウェアでどのように実現するかなどの要求の振り分けやシステム構成の決定が含まれることをおおよそ理解している。システム設計には、要求される機能をハードウェアとソフトウェアでどのように実現するかなどの要求の振り分けやシステム構成の決定が含まれることを理解していない。
V-D-4.ユーザの要求に従ってシステム設計を行うプロセスを説明することができる。ユーザの要求に従ってシステム設計を行うプロセスを説明することができる。ユーザの要求に従ってシステム設計を行うプロセスをおおよそ説明することができる。ユーザの要求に従ってシステム設計を行うプロセスを説明することができない。
V-D-4.プロジェクト管理の必要性について説明することができる。プロジェクト管理の必要性について説明することができる。プロジェクト管理の必要性についておおよそ説明することができる。プロジェクト管理の必要性について説明することができない。
VI-D.与えられた簡単な問題に対してそれを解決するためのソースプログラムを、標準的な開発ツールや開発環境を利用して記述できる。与えられた簡単な問題に対してそれを解決するためのソースプログラムを、標準的な開発ツールや開発環境を利用して記述できる。与えられた簡単な問題に対してそれを解決するためのソースプログラムを、標準的な開発ツールや開発環境を利用しておおよそ記述できる。与えられた簡単な問題に対してそれを解決するためのソースプログラムを、標準的な開発ツールや開発環境を利用して記述できない。
VII-B.集められた情報をもとに、状況を適確に分析することができる。集められた情報をもとに、状況を適確に分析することができる。集められた情報をもとに、状況を適確におおよそ分析することができる。集められた情報をもとに、状況を適確に分析することができない。
VII-B.与えられた目標を達成するための解決方法を考えることができる。与えられた目標を達成するための解決方法を考えることができる。与えられた目標を達成するための解決方法をおおよそ考えることができる。与えられた目標を達成するための解決方法を考えることができない。
VII-C.品質、コスト、効率、スピード、納期などに対する視点を持つことができる。品質、コスト、効率、スピード、納期などに対する視点を持つことができる。品質、コスト、効率、スピード、納期などに対する視点を持つことがおおよそできる。品質、コスト、効率、スピード、納期などに対する視点を持つことができない。
VII-C.クライアント(企業及び社会)の要求に適合するシステムやプロセスを開発することができる。クライアント(企業及び社会)の要求に適合するシステムやプロセスを開発することができる。クライアント(企業及び社会)の要求に適合するシステムやプロセスをおおよそ開発することができる。クライアント(企業及び社会)の要求に適合するシステムやプロセスを開発することができない。
VIII-A.日本語と特定の外国語を用いて、読み、書き、聞き、話すことができる。効果的な説明方法や手段を用いて、関係者を納得させることができる。日本語と特定の外国語を用いて、読み、書き、聞き、話すことができる。効果的な説明方法や手段を用いて、関係者を納得させることができる。日本語と特定の外国語を用いて、読み、書き、聞き、話すことができる。効果的な説明方法や手段を用いて、関係者をおおよそ納得させることができる。日本語と特定の外国語を用いて、読み、書き、聞き、話すことができる。効果的な説明方法や手段を用いて、関係者を納得させることができない。
VIII-B.集団において、合意形成のための基礎的技術を理解し、問題解決、アイディア創造等の活動ができる。集団において、合意形成のための基礎的技術を理解し、問題解決、アイディア創造等の活動ができる。集団において、合意形成のための基礎的技術を理解し、問題解決、アイディア創造等の活動がおおよそできる。集団において、合意形成のための基礎的技術を理解し、問題解決、アイディア創造等の活動ができない。
VIII-C.情報を収集・分析し、適正に判断し、情報の加工・作成・整理、発信ができる。得られた情報を理解し、効果的に創造的に活用することができる。情報を収集・分析し、適正に判断し、情報の加工・作成・整理、発信ができる。得られた情報を理解し、効果的に創造的に活用することができる。情報を収集・分析し、適正に判断し、情報の加工・作成・整理、発信ができる。得られた情報を理解し、効果的に創造的におおよそ活用することができる。情報を収集・分析し、適正に判断し、情報の加工・作成・整理、発信ができる。得られた情報を理解し、効果的に創造的に活用することができない。

学科の到達目標項目との関係

Ⅰ 人間性
Ⅱ 実践性
Ⅲ 国際性

教育方法等

概要:
ソフトウェアの設計プロセスやそれにまつわる運用方法,情報管理の原則や情報セキュリティの技術的面や運用面を講義します.
授業の進め方・方法:
情報システムの設計開発における作業手順や作業内容,これらに適用される技術・技法を,主として開発者の観点から捉え,講義します.また,実際に用いられている技術トピックも交えながら講義します.これまでに学習したことを実践的に整理するとともに,実務で使用されている代表的な技法を理解し応用できる能力を育成します.
達成目標に示す試験,小テスト・レポートを100点法で採点し,達成度評価試験40%,小テスト25%,課題・レポート35%の割合で評価します.(2021/6/28修正)
この科目は学修単位科目のため,事前・事後学習としてレポートやオンラインテストを実施します.
再試験は実施しませんが,再評価を実施する場合は試験により評価します
注意点:
演習課題を自学自習として取り組み,その結果をレポートで提出してください.提出物に不備がある場合は再提出を求めます.
適宜情報処理実習室で実習を行います.ハンドアウトを必要に応じ配布するので,フォルダを持参してください.
レポートの提出期限後の提出は減点の対象となることがあります.

授業の属性・履修上の区分

アクティブラーニング
ICT 利用
遠隔授業対応
実務経験のある教員による授業

授業計画

授業内容 週ごとの到達目標
前期
1stQ
1週 ソフトウェアの性質と開発の課題
ソフトウェア開発プロセス
ソフトウェアの役割・特徴・分類・ライフサイクルなどについて適切に説明できる
ソフトウェア開発プロセスのモデルなどについて適切に説明できる
2週 ソフトウェア開発プロセス
要求分析
ソフトウェア開発プロセスのモデルなどについて適切に説明できる
ソフトウェア開発の要求分析における手順・内容・分析技法を適切に説明できる
3週 要求分析 ソフトウェア開発の要求分析における手順・内容・分析技法を適切に説明できる
4週 ソフトウェア設計 ソフトウェアの設計工程における手順や技法を適切に説明できる
5週 ソフトウェア設計
ソフトウェアテスト
ソフトウェアの設計工程における手順や技法を適切に説明できる
ソフトウェアのテスト工程・テストケース設計・妥当性評価方法・保守について適切に説明できる
6週 ソフトウェアテスト ソフトウェアのテスト工程・テストケース設計・妥当性評価方法・保守について適切に説明できる
7週 ソフトウェアテスト ソフトウェアのテスト工程・テストケース設計・妥当性評価方法・保守について適切に説明できる
8週 達成度試験
2ndQ
9週 ソフトウェア開発プロセスの実践 与えられた簡単な問題に対してそれを解決するためのソースプログラムを、標準的な開発ツールや開発環境を利用して記述できる。
10週 オブジェクト指向とモデリング オブジェクト指向の考え方・分析・設計・プログラミングについて適切に説明できる
11週 オブジェクト指向とモデリング オブジェクト指向の考え方・分析・設計・プログラミングについて適切に説明できる
12週 オブジェクト指向とモデリング オブジェクト指向の考え方・分析・設計・プログラミングについて適切に説明できる
13週 ソフトウェア再利用
ソフトウェア再利用の意義・再利用の効果・再利用の手法について適切に説明できる
ソフトウェアの運用時にどのようなリスクが潜んでいるかを適切に説明できる
ソフトウェアの運用時のリスクを最小限に抑えるために,設計や運用で対策できる事柄を適切に説明できる

14週 プロジェクト管理 プロジェクト管理の必要性について適切に説明できる
15週 グループディスカッション 情報システムやそれに関連する事柄についてそれぞれが意見を述べ,適切にまとめられる
16週

評価割合

達成度試験課題・レポート小テスト合計
総合評価割合403525100
専門的能力403525100