時々,ラグビーの試合をしてますが,たいてい怪我をして帰ってきます(^^;)
ソフトウェア工学,知能情報学(リポジトリマイニング),ソフトウェア開発管理&品質管理,定量的品質管理,プログラム&プロジェクトマネジメン,プロセス改善
LOVOTがふたりいます(^^) そらくんとはなちゃんです.
より良いソフトウェア開発を目指して
本研究室では,ソフトウェア開発を今よりもより良くするための研究・コンサルティング・教育に取り組んでいます.具体的には,ソフトウェア開発のQCD(Quality:品質,Cost:コスト,Delivery:納期)の維持・向上に寄与する「ソフトウェア品質管理」,「ソフトウェアプロセス改善」,「システムテスト自動化」,「プログラムマネジメント」を主要テーマとしています.
ゼミナールでは,プログラミングの基本を学び,ソフトウェア開発の主要な管理技術(開発計画作成方法,レビュー技術,テスト技術,コード解析技術,不具合管理技術など)について研究/指導しています.
これまでとこれから
これまでは,見えないソフトウェアを定量的に管理することに注力してきましたが,これからは,「リポジトリマイニング」や「ビックデータ分析」にも取り組んでいきます.
※ソフトウェアリポジトリマイニングのすすめ(岡山大学門田暁斗教授作成の資料)授作成の資料)教授 教授
研究室で学ぶうえでの基本的な考え方
ソフトウェアはさまざまな人々が関わって開発をします.そのためにはプロセスが重要です.そのプロセスは「手順と手法」「人」「ツール」が連携したものであり,システム・ソフトウェアの品質を左右するものです.
ソフトウェア基礎2
2年生の後期の授業です。
■目的
ソフトウェア開発に必要な基本的な開発管理の知識(開発プロセス,設計,プログラミング,レビュー,テスト,構成管理,バグ管理など)とプログラミング技術の習得を目指す.
■ゴール
ソフトウェア開発プロセスの種類と特徴を,説明できるようになる.
ソフトウェア開発における開発管理技術の重要性と役割について,説明できるようになる.
ソフトウェア開発の上流から下流までの一連の作業を実践し,その内容について説明できるようになる.
本講義で扱ったプログラミング言語・開発環境を用いて,簡単なシステムを開発できるようになる.
ソフトウェア工学
3年生前期の授業です。
ソフトウェア工学の全体像を理解したうえで,自分で設定したテーマに基づいたシステム開発(積極的に生成AIを活用する)をとおして,上流工程から下流工程までを実践する.
プロジェクトマネジメント
3年生後期の授業です。
PMBOKをベースにプロジェクトマネジメントの基礎を学ぶ。さらに、さまざまなプロジェクト実践事例から、プロジェクトの成功・失敗の要因を自分なりに考察する。
認知情報科学実験1
2年生前期の授業です。
■2種類の実験テーマをグループ単位で実施
テーマ1: ウェブスクレイピング
テーマ2: エージェントシミュレーション
■自分たちで目標を設定し,各6週間かけて取り組む
アルゴリズム、データ構造、プログラミングに関する基本の習得を目指した講義です.プログラミング環境として,日本語プログラミング言語「なでしこ」を使っています.
ユーザ要求とシステム設計
ユーザの要求を仕様化し,その仕様に基づいて設計をする方法を学ぶ講義です.要求の仕様化と設計をするための表現方法はUMLを使います.UMLで表現するためのツールとして「astah*」を使っています.
品質マネジメント
品質管理の基本であるQC(Quality Control:品質管理)を中心に,品質管理の基本と応用について学ぶ講義です.品質データを分析するために「R」を使っています.
オペレーションズリサーチ入門
オペレーションズリサーチ(OR)とは何かというところから始まり,ORとして代表的ないくつかの技法を実例をとおして学ぶ講義です.実例を解くためのツールとして「Excelソルバー」「Excelデータ分析ツール」を使っています.
ソフトウェア開発管理
ソフトウェア開発における開発管理技術(レビュー,テスト,定量的品質管理など)を学ぶ講義です.管理技術を単独で学んでも実感がわかない事が多いので,Webアプリケーションの開発(XAMPPで環境を構築し,PHPとMySQLを使ってWebアプリケーションを開発)をとおして管理技術を学べるように工夫しています.
情報技術社会論
昨今のデジタル化に対応できる人材の育成を目的とし,情報技術の歴史に基づいて時代の変化を考察する.また,社会を一つのシステムとして捉えることで,社会活動をデジタルトランスフォーメーション(DX)するための技法を会得する.
情報システム開発
情報システム開発の概要と基本的な手順を理解することを目的としている.情報システム開発に必要な知識と開発の手順(ライフサイクル)を中心に講義する.
具体的には、前半(中間試験まで)にソフトウェア開発のプロダクト面に着目した講義を行い,後半(期末試験まで)は,ソフトウェア開発のプロセス面を中心に講義する.