ソフトウエア開発論

科 目 名
担当教員名
ソフトウエア開発論
西牧 武彦
基礎・専門 単位 選択・必修
専門
2
選択
開講年次
教職課程
3年秋
概要
“コンピュータの能力を十分生かした問題解決のプログラムをどのように作るか”ということが、ソ
フトウエア開発の重要な課題となります。この講義では、”新しいソフトウエアを設計・開発するた
めに必要となる心構え”と“企画、概念設計、基本設計、詳細設計、システムの入出力設計、ファイ
ル設計、コード設計、プロセス設計、信頼性設計、システム評価などソフトウエアを実際に動かすた
めの青写真づくりをどのようにまとめてゆくか”を(理解度自己確認)小演習や演習課題とともに学
習します。ソフトウエア開発のそれぞれの段階では文書(ドキュメント)が重要な役割を担いますの
で、文書化(ドキュメンテーション)も重要な課題の一つとしています。
到達目標・意義
この講義の到達目標は、「(1)情報システムの構築を、個々の局面という視点からではなく、シス
テム化構想の時点からシステムの開発、その運用・保守までの全サイクルとして捉えて理解するとと
もに、(2)ソフトウエア開発の基礎的な考え方を理解する、(3)一般的なソフトウエアの設計手
法を理解する」ことにあります。また、内容が基本情報技術者試験の対象領域のひとつ“システム開
発とその運用”と重なっていますので、基本情報技術者資格取得の学習にも活用できます。
発揮する能力要素
実施方法
主体性
傾聴力
課題発見力
講義は、すべてパワーポイントを用いてビジュアルに行います。そして、毎回講
義の中あるいは最後に、「(理解度自己確認)小演習」を行ない、理解度を自身
で確認して疑問点を解消してもらいます。また、講義資料は全て学内の共有フォ
ルダ(Common gukusen-P01フォルダ内)に公開して、これを用いて講義内容を復
習することにより、理解がさらに確実なものにできるようにします。
教科書および参考書
教科書:情報処理技術者テキストⅢ システム開発とその運用 平井利明監修、平井利明・斉藤裕美著 実教出
版(株)
参考文献:基本情報技術者試験テキスト システムの開発と運用 三訂版:実教出版(株)
関連科目
特にありません。
履修に必要な予備知識や技能
特にありません。
受講生への希望・要望、学習上の助言
学内の共有フォルダ(Common gukusen-P01)に公開する講義資料と教科書や参考書などを用いて復習
をし、理解を一層確実なものにして下さい。
評 価 方 法
筆記試験
レポート
評価の割合
60
10
小テスト
授業態度
30
成果発表
その他
合計
100
評価についてのコメント
毎回の出席確認は、「(理解度自己確認)小演習」の提出により行います。
定期試験は筆記試験の方式を採用しますが、一部の記述問題は事前に課題を提示して、文章をまとめ
ることの演習の機会ともします。
回
数
テーマ・内容
留 意 点
1
コンピュータシステムの基礎
コンピュータシステムを、コンピュータの種類、コンピュータの動作手順と基本的な機
能や構成、ハードウエアとソフトウエア、情報(処理)システムの構
成と処理形態やその進化などの視点から理解します。
2
システム開発とシステム設計
システム開発とシステム設計の関係を、システム開発のイメー
ジ、システムの評価/導入効果、システムのライフサイクル、シ
ステム設計者の役割などの視点から理解します。
3
システム開発の考慮点
システム開発にあたっては、開発に要するコストの管理、開発プロ
ジェクトの管理、システム開発環境(ツール・再利用)なども重要
な事項です。それらについての科学的なアプローチを理解します。
4
システム開発技法の種類
システム開発技法から、システム設計開発技法(機能中心アプローチ
他)、分析/設計技法(データフロー図他)、ソフトウエア開発技法
(ウォータフォールモデル他)、テスト技法などについて理解します。
5
ウォータフォールモデル
最も一般的であり古典的ともいえるウォータフォールモデルについ
て、概念設計からプログラム開発まではトップダウンで、テストにお
いてはボトムアップで行われる開発手順と作業内容を理解します。
6
概念設計
システム開発では、まず目的や目標、対象、処理概要などのシステム
概念を明確にします。現状や動向の調査を行い、システム化の費用と
効果、制約事項なども検討し文書にまとめていく手順を理解します。
7
基本計画
基本計画では、システム開発計画の立案とともに、システム全体に対
する機能や性能、運用要件などの要求を定義し、コンピュータへの要
求を明確にします。それらを文書にまとめていく手順を理解します。
8
外部設計
外部設計では、利用者の立場で人間(業務)とコンピュータの接点と
なるシステム仕様を明確にします。両者間のインターフェースを機能面と運用
面とに分けて設計し、文書にまとめていく手順を理解します。
9
内部設計
内部設計では、システムの機能を分解してプログラムの機能として明
確にし、データのコンピュータ内物理的配置、入出力画面や帳票のレイア
ウトを決定します。それらを文書にまとめていく手順を理解します。
10 プログラム設計
プログラム設計では、分りやすいプログラムにするためにデータの構
造や流れに着目します。プログラムをモジュールという単位に構造的に分
割して文書にまとめ、プログラムを実現していく手順を理解します。
11 プログラミング
プログラミングでは、プログラム設計に沿ってプログラムを作成します。
プログラミングの基本的な構造、モジュール設計での構造化プログラミン
グ、コーディングでのストラクチャードコーディングなどを理解します。
12 テスト
ソフトウエアの品質は、システム開発の段階毎に文書に基づくレ
ビューとテストを行うことによって保証されます。それらの種類
と手順、目的、内容を理解します。
13 運用・保守
システムはそれを開発している期間よりも、それを運用・保守してい
る期間がずっと長期間です。システムの導入から運用・保守の作業内
容とそれに対して設計時点で検討しておくべき点などを理解します。
14 ソフトウエアの再利用
システム開発では、既に開発したソフトウエアの1部が使用できる
のであれば、それを部品として扱い、新たなシステム開発で組込み
利用します。代表的なソフトウエアの部品代について理解します。
15 演習の解法・まとめ
毎回の理解度自己確認小演習や1~2回を予定する課題レポート
(演習)などの解法の理解を確実にするとともに、授業全体を振
り返り理解を確実なものにします。