情報システム学科

情報システム学科での学び

産業や社会の基盤となる情報システム、皆さんの生活を支え豊かにするWebやスマートフォンで動作するアプリケーション。それらの基本から応用までを幅広く学び、社会のあらゆる場面で役に立つ汎用的な実力を養います。

ハード・ソフトウェアをはじめプログラミング、データベース、ネットワークなどの情報コア技術を中心に学び、図に示す学びの三本柱に基づいてシステムエンジニア(SE)に求められる「情報システムの 提案・設計・開発・運用管理を行う力」を身に付けます。

多くの卒業生がSEとしてこの力を社会の中で発揮しているのですが、その活躍のためには学生時代にいかに深くプログラムを開発したかが重要になります。 情報システム学科は、楽しく、深く、達成感のあるプログラミングができるよう知識ゼロからの学習を支援します。

これらの教育内容は、経済産業省が実施している国家試験「基本情報技術者試験」や「応用情報技術者試験」の出題範囲とも密接に関係しています。当学科では在学中の合格を推奨しています。

情報システム学科の特徴

授業

基礎からじっくり学ぶプログラミング(演習)

情報システムの開発にはプログラミングが必須で す。1年次のプログラミング演習は初めてプログラミ ングを学ぶ人を想定した内容であり、徐々に高度な 内容になっていきます。3年次には簡単なゲームプログラムの開発 を題材として、ソフトウェア開発の一連の工程を経験します 【C演習I・II、Java演習、ソフトウェア工学演習】。

基礎からじっくり学ぶプログラミング(講義)

演習に加え、プログラムに関連する専門的な理論や、コンピュータ上でプログラムが動作する仕組みについても学びます。 【プログラミング基礎、プログラミング言語論、データ構造とアルゴリズム、計算機アーキテクチャ】

一般に、「特定のプログラミング言語を扱える」だけでは情報技術者としては心許なく、 「特定の言語に依存しない基礎的・普遍的な理論と技術を身につける」ことが大事です。 無数にある(そして今後も新たに生まれる)プログラミング言語に柔軟に対応できるようになるためには、これらの両方を修得することが必要です。 情報システム学科では初年次から、演習と講義を関連させながらそのことを学びます。 序盤のプログラミング学習についてこちらにもまとめています

自分のノートパソコンでプログラミング

自分のノートPC(Windows 11)を使って様々な授業を受けます。パソコンを使ったことが無い人も心配ありません。1年生前期の授業でノートPCにOffice系ソフトを導入して使い方を練習することでパソコンを使いこなせるようになります。また、プログラミング等の演習系科目でも自分のノートPCを用います。情報システム学科の教員が各演習用に用意したプログラミング環境を導入することで、学内の共用スペースや自宅など、どこでも気軽に演習課題に取り組むことができます。【各演習科目】

パソコンを使ってレポートを作成

パソコンに慣れるだけではなくレポートなどの文書作成能力を養うことは重要です。情報科学部での教育のために用意されたテキストを使用して、図、表、グラフ、数式の作成方法からレポートの執筆、さらにプレゼンまでを実習します(写真はプレゼンテーションの実習場景)。また、表計算ソフトによる分析や電子メールの書き方についても学びます。演習では、「できる」を積み重ねていきます。【コンピュータリテラシー】

ソフトウェアを効率良く開発する技術

情報システムを構築するためには単にプログラミング技術を学ぶだけでは不十分です。高品質なソフトウェアを開発するための設計技法、開発プロセス、抽象化技法、およびチームで開発するための方法論を身に付けます。【ソフトウェア工学I・II】

本質的な部分を考える

複雑な対象から本質的な部分だけを取り出して考られるようになること(抽象化)は情報科学の真髄の1つであり、高度な情報システムを設計・開発するためにも大事な技術です。【グラフ理論、有限オートマトン、情報数学、線形数学、微積分学】

情報システムに不可欠なデータベース技術

情報システムを構成する重要な技術の一つにデータベースがあります。情報システム学科では、データベースの理論に関する講義のみならず、要求定義書からのデータベース設計、 SQLによるデータベースの構築やデータの集計などを行う専門的な演習も行っており、より実践的なデータベース技術を学びます。【データベースシステム、情報システム専門演習】

システムエンジニアのためのWebアプリケーション開発

これまで学習してきたプログラミング技術、データベース技術、ソフトウェアを効率よく開発する技術などを組み合わせて、チームでWebアプリケーションを開発します。実際にビジネス現場でも使われている様々な開発環境を利用し、自由な題材で(ゲームWebアプリを開発するチームもいます)Webアプリを開発し、大勢の前で発表することでシステムエンジニアとしての能力を磨きます。【情報システム応用演習】

問題解決とシステム系科目群

理想と現実のギャップを埋めることを問題解決といいます。現代社会において高度な問題解決には、複数の手段を組み合わせたシステムが重要になります。情報システム学科のシステム系科目群は、企業やホワイトカラーの生産性の向上に焦点を当てています。システムの概念、設計、開発、計画、最適化、運用、評価、事例などを幅広く学び社会に貢献しよう。【システム工学、経営システム論、Webサービス論、モデリングとシミュレーション、オペレーションズ・リサーチ、数理計画法など】

4年間の集大成:卒業研究発表会

4年次には研究室に配属して卒業研究を行います。指導教員の指導の下、各学生がそれぞれ未知の問題に取り組み、その問題の技術的背景、解決手法の提案、実験、評価などを論文にまとめます。また、発表会でその成果を発表します。情報システム学科の卒業研究では、問題を解決するためのシステムを提案することも多く、情報システム技術者に必要なスキル・考え方・取り組み姿勢を身に付けます。完成度の高い卒業研究は学会などで発表することもあります。

学生主体のプロジェクト

競技プログラミングチーム(学生プロジェクト)

ICPCという国際大学対抗プログラミングコンテストへの出場を通して高度なプログラミング能力を身に付けることを目指します。国内予選には2002年度から連続21年出場し、4回国内予選を突破できました。本プロジェクトにおける勉強内容は授業レベルを超えた難しいものですが、スーパープログラマに一歩でも近付くことを目指して頑張っています。 なお、学生時代に本チームで活動し、Google、Yahoo Japan、楽天、NAVITIMEといったWebサービス系企業で活躍しているOBが多数います。

マインクラフトBOTコンテスト

情報システム学科では大学教育のエデュテインメント(edutainment:娯楽と教育を融合)の試みとして、1年次に修得したC言語の内容を活用した市販のMinecraft Education Editionで敵を探索して倒す、ボット(自動実行)プログラムコンテストを実施しています。また、ボットを作成するためには、画像処理や機械学習といった様々な技術や知識が必要なため、1年生でも参加できるようなボットの開発環境も高次学年の学生が主体となって開発することで高度なプログラミングコンテストへ参加するきっかけづくりをしています。

キーテクノロジー

ソフトウェアの信頼性評価方法

ソフトウェアの信頼性を評価する方法を研究しています。例えば、様々なAIが登場していますが、どのAIを利用すればよいかを評価することは難しいものです。本研究室では、AIが判断に利用した場所や特徴から、より信頼性の高いAIを評価する方法を提案しています。また、信頼性の高いソフトウェアを作るための工夫や方法を分析し、開発者を支援する効率的で効果的な方法を探求しています。その一つとして、ソフトウェア開発の際に発生するバグの予測技術を利用した開発支援手法を研究しています。【ソフトウェア信頼性研究室】

チームでのソフトウェア開発

レゴブロックを使った街の作成やマシュマロタワーといった様々な演習を通じてチームでのコミュニケーションを学び、ロボットカーやゲーム開発といった様々な題材を通じてプログラミングだけではないチーム開発で求められるスキルの獲得を目指します。ただ作るだけではなく、他のメンバーと協力してシステムを作り上げる楽しさを体験しよう!【Team Software Development研究室】

スマートシティを実現する情報制御システム

スマートシティと呼ばれる、鉄道や電力など社会を支えるシステムの高度化が進められています。安心安全で楽しい社会を構想して、設備制御から情報サービスまでのトータルシステムをデザインしましょう。プロトタイプ(模擬システム)を作成して、実現技術を考案しましょう。【社会基盤情報システム研究室】

マルチエージェント系での最適化

複数の意思決定者が存在するシステムをマルチエージェント系と呼びます。IoTでは複数のデバイスが、スマートシティでは複数の情報システムが相互作用し、交通流の最適化やエネルギー消費の削減などの全体としての効率的なリソース利用や持続可能性向上を目指します。本研究室では、複数のエージェントが相互に連携し、目標を達成する方法、最適化を達成する手法について研究しています。【インテリジェントシステム研究室】

Webブラウザ上で動作するプログラミング学習支援ツール

プログラミング初心者にとってプログラムの実行状況をイメージすることは難しいものです。本研究室では、Webブラウザ上でC言語のプログラムを1行ずつ実行しながら変数の内容やプログラムの実行場所を図示してくれるツールを開発しています。このツールは、C言語のプログラムをJavascript(ブラウザ内で実行できる形式)に変換しながら、様々なデータを表示させるためのコードも生成し、それらを同時にブラウザ上で実行させることで可視化を実現しています。ツールの開発は主に4年生の卒業研究として行っており、3年生のゼミで学んだコンパイラ技術を応用しています。最近では、初学者のための辞書機能、演習問題の提示と採点、並列プログラムの実行状況の可視化、といった機能も開発しています。【並列処理研究室】

レポート受領システムの開発と運用

昨今のWebアプリケーションを開発するにはサーバ・クラウド技術やFlask、FastAPIといったフレームワークの知識、更には開発したアプリケーションを運用するためのノウハウが必要となります。本研究室では、これらを学ぶ目的として実際の授業(情報システム基礎演習)で利用するレポート受領システムの開発に取り組んでいます。レポート提出から教員とのレポートのやり取り、レポート評価といった授業業務を支援するためのシステムを学生主体で開発・運用を行っています。また、生成系AIといった情報技術をシステムに組み込むことで他には無いオリジナルのシステムを開発しています。【ソフトウェア開発・設計学研究室】

大規模/高速な処理を実現する並列処理システム

ビッグデータ解析や深層学習という言葉が広く用いられているように、現代では大規模な処理を高速に行ってビジネスに活用する動きが盛んです。そのような処理を裏から支えているのが並列処理システムです。並列処理を行うプログラムの開発は難しいのですが、それを容易にするためのプログラム開発技術について研究しています。【並列処理研究室】

情報システム学科の歴史

情報システム学科は、社会を支える情報システムを構築・運用・保守できる技術者の育成を目的とし、1996年に情報科学部と同時に設立されました。 現在、情報システム学科は、情報科学部の設立当初からそのままの名称で存続している唯一の学科です。 その長い歴史の中で、情報科学(コンピュータサイエンス)に基づく普遍的な技術とその時代ごとの新しい技術をバランス良く取り入れ、教育内容を蓄積して発展させてきました。 また、学科の設立以来、約2000名もの卒業生を輩出しました。 卒業生は情報システムの分野だけでなく様々な分野で活躍しています。 特に、初期に入学した世代の卒業生は既にベテランと呼ばれる世代です。 そのような多くの卒業生と同じ「情報システム学科」でつながっていることは大きな財産と言えます。

卒業生の主な就職先

多くの卒業生はシステムエンジニアとして様々な分野のシステム開発に関わっています。 過去の主な就職先を以下に示します。

【ソフトウエア・情報処理・通信】
NTTドコモ, ドコモ・テクノロジ, NTTデータ関西, NTTデータアイ, NTTデータ MSE, NTTコムウェア, 三菱電機コントロールソフトウエア, 三菱電機ビジネスシステム, 三菱電機マイコン機器ソフトウエア, 日立社会情報サービス, 日立システムズ, 日立ソリューションズ, NEC情報システムズ, NECソリューションイノベータ, NECネッツエスアイ, NECネクサソリューションズ, 富士通, パナソニックソリューションテクノロジー, パナソニックデバイスシステムテクノ, キヤノンITSメディカル, カプコン, インテック, STNet, NSD, サイバーエージェント, ジャステック, OKIソフトウェア, ケイ・オプティコム, JSOL, システナ, TIS, DNP情報システム, DTS, ニッセイ情報テクノロジー, 日本情報通信, Minoriソリューションズ, ユニアデックス, Yahoo!,ドワンゴ,メルカリ,楽天,メドレー,NAVITIME, アドウェイズ

【公務員】(若干名)
大阪府警察本部,警視庁,兵庫県警察本部,防衛省航空自衛隊

【教員】(若干名)
大阪府中学校, 兵庫県中学校, 羽衣学園中学校・高等学校, 浪速高等学校

【その他】
淡陽信用組合, パナソニックコンシューマーマーケティング,リコージャパン, ほか
より高度な技術を学ぶために大学院に進学する人もいます。 過去の就職率についてはこちらもご覧ください。