2026年度 シラバス学部
2026年度 シラバス学部
| 2026/02/19 現在 |
| コンピテンシーコード表を開く 科目一覧へ戻る |
| 開講学期 /Semester |
2026年度/Academic Year 2学期 /Second Quarter |
|---|---|
| 対象学年 /Course for; |
3年 |
| 単位数 /Credits |
3.0 |
| 責任者 /Coordinator |
イエン ニール ユーウェン |
| 担当教員名 /Instructor |
イエン ニール ユーウェン, 山田 竜平 |
| 推奨トラック /Recommended track |
- |
| 先修科目 /Essential courses |
- |
| 更新日/Last updated on | 2026/02/02 |
|---|---|
| 授業の概要 /Course outline |
Nowadays, the Web is not only the source of information for the end users. Companies migrate more of their business activities to Web based systems. We are facing increasing demands for professionals who can design large Web systems. Web engineering is a relatively new term in computer science. It can be defined as a discipline of systematic development of Web applications. |
| 授業の目的と到達目標 /Objectives and attainment goals |
[Corresponding Learning Outcomes] (A)Graduates are aware of their professional and ethical responsibilities as an engineer, and are able to analyze societal requirements, and set, solve, and evaluate technical problems using information science technologies in society. The aim of this course is to study current concepts and methods for Web application engineering. |
| 授業スケジュール /Class schedule |
Topics to be discussed include, but not limited to, the followings. Topic 1: Introduction Topic 2: A Web engineering process Topic 3: Communication and planning Topic 4: Web App Architectures Topic 5: Introduction to WordPress Topic 6: Responsive Web Design Topic 7: Universal Design for Web Topic 8: About the Future Topic 9: Presentation and Discussions Notes: ** Some topics may need more than 1 time of lectures/exercises to complete. Any updates will be posted on LMS when the class begins. ** Schedule may be adjusted according to actual conditions. Any updates will be posted on LMS when the class begins. |
| 教科書 /Textbook(s) |
No designated textbook is required but students are encouraged to follow the content of The Modern Web: Multi-Device Web Development with HTML5, CSS3, and JavaScript by Peter Gasston, No Starch Press, 2013. Dart 1 for Everyone Fast, Flexible, Structured Code for the Modern Web by Chris Strom, The Pragmatic Programmers, LLC., 2014. Anatomy of a web application using node.js, ExpressJS, MongoDB & Backbone.js by Jason Crol, 2015. Knockout.js: Building Dynamic Client-Side Web Applications by Jamine Munro, O’Reilly Media, 2015. |
| 成績評価の方法・基準 /Grading method/criteria |
The final grade will be calculated based on the following contributions: Exercises - 55% Presentations/Reports - 15% Quiz - 20% Active Participation during lectures - 10% Please note that the proportion to each part may be adjusted according to actual conditions. |
| コンピテンシーコード表を開く 科目一覧へ戻る |
| 開講学期 /Semester |
2026年度/Academic Year 4学期 /Fourth Quarter |
|---|---|
| 対象学年 /Course for; |
3年 |
| 単位数 /Credits |
3.0 |
| 責任者 /Coordinator |
渡部 有隆 |
| 担当教員名 /Instructor |
渡部 有隆, サクセナ ディーピカー |
| 推奨トラック /Recommended track |
- |
| 先修科目 /Essential courses |
- |
| 更新日/Last updated on | 2026/02/06 |
|---|---|
| 授業の概要 /Course outline |
This course covers many current topics of interest in software engineering. Some of the topics covered are formal methods to specify requirements of software systems, software reuse, software maintenance, software maintenance models, and evaluation of processes, products, and resources. It includes Advanced Treatment of Selected Software Engineering issues: Software Maintenance, Software Configuration Management, Software Re-engineering, Managing People, Critical Systems Development, User Interface Design and Evaluation, Emerging Technologies like Visual Programming, Security Engineering, and other advanced topics including student engineering topic. |
| 授業の目的と到達目標 /Objectives and attainment goals |
[Corresponding Learning Outcomes] (A)Graduates are aware of their professional and ethical responsibilities as an engineer, and are able to analyze societal requirements, and set, solve, and evaluate technical problems using information science technologies in society. [Competency Codes] C-HI-003, C-SD-005, C-SE-001, C-SE-002 The objective of the course is to impart knowledge to students about methods in software development. The methods range from how to precisely specify software requirements to how to evaluate the methods and their products and required resources. This is achieved in two parts: first, lectures are given on several current topics of interest; second, students are given a programming project to design and implement a system using the Object-Oriented programming paradigm and the version management with a team. |
| 授業スケジュール /Class schedule |
Lecture 1: The Nature of Software Engineering Topics to study: - How did software engineering become a term? - Is there a good technical solution to software development problems? - How and why are agile methods considered more people-affirming? - Compare software engineering with other professions. Lecture 2: Revisioning Software Topics to study: - Collaborative development problems, - Revision control, - VCS terminology, - Collaborative development and conflict resolution. Lecture 3: The Human Factors in Software Engineering Topics to study: - Human Diversity; - Limits to Thinking; - Knowledge Modeling; - Personality Types; - Human Factors Engineering. Lecture 4: The Managing People and Team Work Topics to study: - Selecting and Motivating Staff - Ego-less Programming - Managing Groups - The People Capability Maturity Model Lecture 5-6: User Interface Design and Evaluation Topics to study: - User Interface Design Principles - User Interaction Styles - Information Presentation - GUI Features - Message System Features - System Documentation - User Interface Design Process - Interface Evaluation Lecture 7: Visual Programming Systems Topics to study: - Terminology - Classification and Theory - A Review of Visual Programming Systems Lecture 8: Software change: Maintenance and Architectural Evolution Topics to study: -Program evolution dynamics -Software maintenance -Architectural evolution Lecture 9: Software re-engineering Topics to study: -Source code translation -Reverse engineering -Program structure improvement -Program modularization -Data re-engineering Lecture 10: Critical systems development Topics to study: -Dependable processes -Dependable programming -Fault tolerance -Fault tolerant architectures Lecture 11: Software Security Engineering Topics to study: -Security concepts -Security risk management -Design for security -System survivability The first four periods of each week are conducted in a lecture format, while the remaining two periods are dedicated to programming exercises. These exercises are structured as team-based development projects. [Preparation and Review] To effectively engage in the project, students must proactively acquire the necessary development knowledge and technical skills through self-directed study. The estimated time for learning outside of scheduled class hours is approximately 6 hours per week. |
| 教科書 /Textbook(s) |
1.Software Engineering, 5-9th editions by Ian Sommerville, publisher: Addision-Wesley 2.Human Aspects of Software Engineering by J.E. Tomayko and O. Hazzan, Charles River Media Inc., 2004 3. User Interface Design and Evaluation by D. Stone, C. Jarrett, M.Woodroffe, Sh. Mincha 4. Lecture notes distributed by the instructor will be developed from materials collected from books, journals and proceedings papers. |
| 成績評価の方法・基準 /Grading method/criteria |
Your final grade includes the following parts 1). Quiz: 10 points 2). Exam: 40 points 3). Project: 50 points |
| 履修上の留意点 /Note for course registration |
It would be good if students have knowledge about basics of Software Engineering, Programming in Java and C. |
| 参考(授業ホームページ、図書など) /Reference (course website, literature, etc.) |
The course coordinator Yutaka Watanobe has practical work experience. He collaborated with Givery Inc. to develop the programming skill check tool and materials which can be useful for personnel assessment, training and education. He has provided a number of problems and related test data as one of main contents. He also has experience in developing large scale software in practical use, such as development environments and educational support systems. Based on his experience, he can teach the basics of Software Engineering. |
| コンピテンシーコード表を開く 科目一覧へ戻る |
| 開講学期 /Semester |
2026年度/Academic Year 前期 /First Semester |
|---|---|
| 対象学年 /Course for; |
4年 |
| 単位数 /Credits |
3.0 |
| 責任者 /Coordinator |
吉岡 廉太郎 |
| 担当教員名 /Instructor |
吉岡 廉太郎, 川口 立喜 |
| 推奨トラック /Recommended track |
- |
| 先修科目 /Essential courses |
事前に学んでおいてほしい科目一覧(下記科目内容の一部ないし全部を既知として授業を進めます) FU14ソフトウェア工学概論 |
| 更新日/Last updated on | 2026/01/22 |
|---|---|
| 授業の概要 /Course outline |
履修学生でチームを組み、顧客の要望に応えるソフトウェアの開発を行うことを通してソフトウェア工学に対する理解を深める授業です。 授業では、顧客から実際に注文を受け、一つの注文を一つの学生チームが受け持ちます。通常3~5名程度のチームになります。各チームは、顧客の要望を聞き取るヒアリングから始め、開発すべきソフトウェアの要件を決定するところから始めます。その後、設計、開発、テストの各開発工程を実施し、第14回授業内で開発作業の概要および成果物の発表を行い、顧客に納品します。 各チームには産業界から派遣されるコーチが付き開発実務のアドバイスを行います。毎週教員・コーチに進捗を報告するとともに、必要に応じて顧客と打合せを持ちます。開発の各行程は成果物(ドキュメント類)で管理し、各工程を終了する度に提出していきます。顧客も参加する中間レビューと最終レビューでは、作業時間数、成果物の量、質などを定量的に分析して報告を行います。 顧客によって定められた機能と品質を満たし、顧客にとって最良のソフトウェアを提供するため、創造力と努力を尽くします。そのため、チームメンバー全員の自主的で主体的な取り組みが求められます。 |
| 授業の目的と到達目標 /Objectives and attainment goals |
[対応する学習・教育到達目標] (A) 技術者としての専門的・倫理的責任を自覚し、情報科学技術を駆使して社会における要求を分析し、技術的課題を設定・解決・評価することができる [コンピテンシーコード] C-GV-001, C-HI-003, C-SD-005, C-SE-001, C-SE-002, C-SP-002, C-SP-004, C-SP-006, C-SP-009, C-SP-0011-1, C-SP-012, C-SP-013, C-SP-014 1. 一定の(要求された)機能と品質を満足するソフトウェアを開発するにあたっての課題に気づき、それらを解決する基本的な手法を学ぶ。 2. リソース(人、物、時間など)が限られた中でソフトウェアを完成するためにプロジェクト管理が必要であることを実感し、ソフトウェア工学で学んだ各工程(要求定義・分析、設計、開発、テスト)の手法を実践する。 3. 異分野の技術にまたがる問題の特定や正確な情報伝達など、現実世界で直面する流動的な環境への迅速な対応の必要性を体験し、それに対応するための手法を学ぶ。 履修学生は、上記1~3を通して、比較的大規模で、実用に耐えうるソフトウェアの開発の課題について理解することができる。 |
| 授業スケジュール /Class schedule |
各回の授業(3コマ)では、 1. 各チームによる進捗報告(各10分) 2. 進捗報告に対するフィードバック 3. その週の作業の進め方と留意点に関する講義 4. チーム毎に顧客との打合せ を行います。 第1回:プロジェクト立ち上げ, 計画立案 チーム内での役割分担を決め、プロジェクト管理システムの準備、顧客からの注文依頼を聞き、要求定義以降の開発プロセスを実行するためのプロジェクト計画を立案する 第2回:現地調査 顧客の要求を理解し、課題についての理解を深めるため、現場の調査を行う。(顧客の都合等により時期は前後する) 第3回:要件定義 課題から要求を正確に把握し、明確な要求として整理し、システム化する範囲を顧客と合意する。 第4回:要件定義 課題から要求を正確に把握し、明確な要求として整理し、システム化する範囲を顧客と合意する。積極的にプロトタイプを作成してイメージの共有とすり合わせを行う。 第5回:要件定義 課題から要求を正確に把握し、明確な要求として整理し、システム化する範囲を顧客と合意する。 第6回:中間レビュー・デモ 顧客が要件定義の成果物を精査し、以降のフェーズに着手してよいかどうかの判断を行う。 第7回:分析 要件定義工程の成果物から、要求仕様を論理的に分析し、実現手段を検討する。 第8回:分析 要件定義工程の成果物から、要求仕様を論理的に分析し、実現手段を検討する。 第9回:設計 システムに必要な機能やオブジェクトの構造や振る舞いを、実装を考慮して詳細化する。 第10回:設計 システムに必要な機能やオブジェクトの構造や振る舞いを、実装を考慮して詳細化する。 第11回:開発 ソフトウェアのソースコードを作成する。 第12回:開発&テスト ソフトウェアのソースコードを作成し、テストを行う。 第13回:テスト ソフトウェアのテストを行う。 第14回:最終レビュー 顧客がテスト結果および、詳細設計以降の成果物の内容を精査し、受け入れが妥当か否かを判断する。 ※積極的にプロトタイピングを行いながら、チームごとにスケジュール管理と作業を行うので進捗は変わってきますが、中間レビューと最終レビューの日付は変えられません。 [予習・復習] 各回の授業の後から次回授業までに、チームまたは個人で、チームで計画したプロジェクト活動(打合せ、調査・分析、アイデア生成、開発、資料作成など)を実施すること。毎回の予習・復習の目安は6~7 時間です。 |
| 教科書 /Textbook(s) |
※必要に応じて講義資料を配布する |
| 成績評価の方法・基準 /Grading method/criteria |
期末試験は行わず、以下の項目で評価する 1. 中間レビューと最終レビューでの発表25% 2. 成果物(ドキュメントおよびソフトウェア)25% 3. 個人レポート 40% 4. 活動への参加と貢献度 10% ※各学生の貢献度は進捗報告とプロジェクト管理システムで確認する。 ※評価には顧客とコーチの意見も取り入れる。 ※個人レポートでは、プロジェクトでの活動・貢献内容やソフトウェア工学とプロジェクトマネジメントの知識・理解に関する質問について論じてもらいます。 |
| 履修上の留意点 /Note for course registration |
• 次の授業を履修していることを前提とした授業です。 FU14ソフトウェア工学概論 IE03ソフトウェア総合演習Ⅰ IE04ソフトウェア総合演習Ⅱ • 3月下旬~授業開始前の期間に履修希望者に対して実施する事前面談を必ず受けてください。 • プロジェクトごとに必要とされる知識・技術が異なります。 • 開発に必要な技術・知識(設計、プログラミング等)について、スキルが足りない場合には、時間外の自助努力が必要です。 • 授業およびミーティングへの参加は必須です。無断での欠席、遅刻、途中退席は、やむをえない場合を除いてマイナス評価します。 |
| 参考(授業ホームページ、図書など) /Reference (course website, literature, etc.) |
https://www.u-aizu.ac.jp/enpit/record/2025_software.html https://www.u-aizu.ac.jp/enpit/record/2024_software.html https://www.u-aizu.ac.jp/enpit/record/2023_software.html https://www.u-aizu.ac.jp/enpit/record/2022_software.html https://www.u-aizu.ac.jp/enpit/record/2021_software.html https://www.u-aizu.ac.jp/enpit/record/2020_software.html https://www.u-aizu.ac.jp/enpit/record/2019_software.html https://www.u-aizu.ac.jp/enpit/record/2018_software.html https://www.u-aizu.ac.jp/enpit/record/2017_software.html 実務経験有り:企業でソフトウェア開発に従事している技術者が講師として毎回の授業に参加し、学生の開発活動に対するレビュー、評価、アドバイスを行います。 現役のソフトウェア技術者(30年以上の実務経験)とソフトウェア開発に従事した経験豊富な教員が共同で授業を行います。 |
| コンピテンシーコード表を開く 科目一覧へ戻る |
| 開講学期 /Semester |
2026年度/Academic Year 4学期 /Fourth Quarter |
|---|---|
| 対象学年 /Course for; |
3年 |
| 単位数 /Credits |
3.0 |
| 責任者 /Coordinator |
モズゴボイ マキシム |
| 担当教員名 /Instructor |
モズゴボイ マキシム |
| 推奨トラック /Recommended track |
- |
| 先修科目 /Essential courses |
Courses preferred to be learned prior to this course (This course assumes understanding of entire or partial content of the following courses) PL03 JAVA Programming I |
| 更新日/Last updated on | 2026/01/08 |
|---|---|
| 授業の概要 /Course outline |
Concurrent programs take advantage of modern multicore and multiprocessor machines to implement algorithms that run concurrently (in parallel) to achieve higher performance and better user experience. Distributed computing brings this idea to the next level, dealing with the systems made up of independent computers, linked by a network. At the present time, both concurrent and distributed systems are widespread, due to high popularity of multicore machines and computer networks. However, the design and implementation of such systems and corresponding software remains a challenging task. We have to know how to coordinate independent processes to achieve high performance and avoid common pitfalls. The goal of this course is to introduce the basics of concurrent and distributed systems design and implementation. We will cover a number of classical and modern approaches to this problem, paying special attention to the practical aspects of implementation using Java language. |
| 授業の目的と到達目標 /Objectives and attainment goals |
[Corresponding Learning Outcomes] (A)Graduates are aware of their professional and ethical responsibilities as an engineer, and are able to analyze societal requirements, and set, solve, and evaluate technical problems using information science technologies in society. At the end of the course the student should be able to: - Understand the key advantages of concurrent and distributed systems and common problems the developers may encounter. - Know different approaches to concurrent and distributed systems design, their advantages and disadvantages. - Be able to implement simple concurrent and distributed systems using modern tools. - Be aware of the historical perspective of the developments in this area, understand modern trends and technologies. |
| 授業スケジュール /Class schedule |
This course follows flipped learning format. Face to face lecture sessions are actually dedicated to the discussion of exercises and homeworks to make sure the students understand solutions even if they didn't manage to solve exercises themselves. Conversely, homework time is reserved for watching lectures in video format. There are 12 lectures covering the following topics: 1. Introduction 2. Basics of Concurrency 3. Synchronizing Processes 4. Introduction to Model Checking and Promela Language 5. Model Checking with SPIN and Linear Temporal Logic 6. From Shared-memory Model to Message Passing 7. Distributed Programming with MPI & Tuple Space Model 8. OpenMP Technology 9. Client-Server Programming 10. RMI: Distributed Objects in Java 11. Modern Concurrent Programming in Java 12. Actor Model of Concurrent Computations The learning process is organized as follows: - the students watch video course material covering a certain topic and solve exercises; - we discuss unclear points of the topic material and exercise solutions during the next face-to-face meeting. This approach presumes certain level of autonomy and self-learning abilities of the students, but it gives more options to discuss course material after the exercises, when the students already gained certain familiarity and experience with the topic. In addition to the regular lecture/exercise classes, a student is expected to devote around 2-3 hours per topic to achieve a minimum passing grade, and around 4-5 hours for a very high score if they wish to solve additional exercises. |
| 教科書 /Textbook(s) |
- Distributed Systems: Principles and Paradigms by Andrew S. Tanenbaum and Maarten van Steen, Prentice Hall, 2007. - M. Ben-Ari. Principles of Concurrent and Distributed Programming, 2nd Ed. Addison-Wesley, 2006. - G. R. Andrews. Foundations of Multithreaded, Parallel, and Distributed Programming. Addision-Wesley, 2000. - M. L. Liu, Distributed Computing: Principles and Applications, Addison-Wesley, 2004. |
| 成績評価の方法・基準 /Grading method/criteria |
The final grade is based on the following parts: - Exercises (50% of the final score). - Two exams (30% of the final score). - Quizzes on lecture content (20% of the final score). We keep strict deadlines in this course. |
| 履修上の留意点 /Note for course registration |
The presented course is not an introductory subject. It is intended for students who already have basic experience in programming such as Java Programming, Algorithms and Data Structures, Object-Oriented Programming, Operating Systems. |
| コンピテンシーコード表を開く 科目一覧へ戻る |
| 開講学期 /Semester |
2026年度/Academic Year 2学期 /Second Quarter |
|---|---|
| 対象学年 /Course for; |
3年 |
| 単位数 /Credits |
3.0 |
| 責任者 /Coordinator |
ラゲ ウダイ キラン |
| 担当教員名 /Instructor |
ラゲ ウダイ キラン, 山田 竜平 |
| 推奨トラック /Recommended track |
- |
| 先修科目 /Essential courses |
- |
| 更新日/Last updated on | 2026/02/10 |
|---|---|
| 授業の概要 /Course outline |
Python is a widely used programming language for developing large-scale industrial, scientific, and data-driven applications. It is closely integrated with Database Management Systems (DBMS) and data-frame-based processing frameworks, which form the foundation of modern AI and Big Data analytics. This course introduces students to Python programming, object-oriented concepts, database design and querying, and data processing using data frames. Through a combination of lectures and hands-on exercises, students will learn how to design data models, store and retrieve large volumes of data, and perform data analysis tasks relevant to AI and Big Data applications. The course covers: (i) fundamentals of Python programming, (ii) object-oriented programming and documentation in Python, (iii) database concepts including ER modeling and DBMS architecture, (iv) Structured Query Language (SQL), (v) object–database connectivity, (vi) data frames and data processing, and (vii) introductory knowledge discovery and pattern mining. Each class consists of one lecture period followed by two exercise periods, emphasizing learning by doing. |
| 授業の目的と到達目標 /Objectives and attainment goals |
Objectives This course aims to provide students with practical and conceptual foundations in data science using Python. Students will understand how programming, databases, and data-frame-based processing work together in real-world data-intensive applications. Attainment Goals By the end of the course, students will be able to: Develop Python programs using procedural and object-oriented paradigms Design conceptual and logical data models using ER diagrams Create and manage relational databases using SQL Connect Python applications with databases for data access Store, manipulate, and analyze data using data frames Apply basic data processing and pattern discovery techniques to real datasets |
| 授業スケジュール /Class schedule |
Course Content and Methods Each session consists of a lecture (theory and examples) followed by hands-on exercises. Exercises are conducted individually or in small groups and include programming tasks, database design, SQL execution, and data analysis using real datasets. Discussion and feedback are incorporated regularly to reinforce understanding. Schedule (14 Sessions) Session 1 Lecture: Introduction to Python and data-driven applications Exercise: Input/output operations in Python Session 2 Lecture: Python syntax, variables, control structures Exercise: Solving the Tower of Hanoi problem in Python Session 3 Lecture: Object-Oriented Programming in Python Exercise: File handling, dictionaries, and searching Session 4 Lecture: Python packages and documentation Exercise: Web crawling and scraping application Session 5 Lecture: Introduction to Database Management Systems Exercise: ER modeling for air-pollution data Session 6 Lecture: Entity–Relationship model and schema design Exercise: Database schema implementation Session 7 Lecture: SQL-1 (DDL: CREATE, ALTER, DROP) Exercise: Creating tables and schemas Session 8 Lecture: SQL-2 (DML: INSERT, UPDATE, DELETE) Exercise: Inserting air-pollution data Session 9 Lecture: SQL-3 (SELECT queries) Exercise: Querying and filtering data Session 10 Lecture: Keys and indexes Exercise: Index creation and performance discussion Session 11 Lecture: Object Database Connectivity (ODBC) Exercise: Connecting Python programs to databases Session 12 Lecture: Introduction to data frames Exercise: Generating data frames from SQL results Session 13 Lecture: Managing and processing data frames Exercise: Processing air-pollution data in data frames Session 14 Lecture: Knowledge discovery and pattern mining Exercise: Pattern mining on data frames and discussion Pre-class and Post-class Learning Before each class, students are expected to review lecture materials and relevant textbook sections. After class, students should complete assigned programming or database exercises and review key concepts covered in the session. Typical out-of-class study time per session: 3–5 hours, including preparation, review, and exercise completion. |
| 教科書 /Textbook(s) |
Database Systems: The Complete Book, Hector Garcia-Molina, Jeffrey Ullman, Jennifer Widom Stanford University Python course materials: http://web.stanford.edu/class/archive/cs/cs106a/cs106a.1212/lectures/4-Variables/4-IntroPython.pdf |
| 成績評価の方法・基準 /Grading method/criteria |
Student performance will be evaluated based on: Quizzes: 30% Exercises and assignments: 40% Final examination: 30% Exercises do not carry negative marks. Quizzes and the final examination may include negative marking where applicable. Attendance is not included in the grading criteria. Active participation during exercises and discussions may be reflected within the exercise evaluation. Grades are determined on a percentile basis. |
| 履修上の留意点 /Note for course registration |
Students are strongly advised to have prior knowledge equivalent to: Operating Systems Structured Programming Languages Assignments must be submitted by the specified deadlines. Late submissions may result in score deductions. |
| 参考(授業ホームページ、図書など) /Reference (course website, literature, etc.) |
Stanford University course resources: https://web.stanford.edu/class/cs245/ Office hours will be announced during the first week of the course. |
| コンピテンシーコード表を開く 科目一覧へ戻る |
| 開講学期 /Semester |
2026年度/Academic Year 3学期 /Third Quarter |
|---|---|
| 対象学年 /Course for; |
3年 |
| 単位数 /Credits |
3.0 |
| 責任者 /Coordinator |
ラゲ ウダイ キラン |
| 担当教員名 /Instructor |
ラゲ ウダイ キラン, ダン ナム カイン |
| 推奨トラック /Recommended track |
- |
| 先修科目 /Essential courses |
- |
| 更新日/Last updated on | 2026/02/10 |
|---|---|
| 授業の概要 /Course outline |
Course Outline This course introduces students to the principles and practices of Big Data Analytics, with a strong emphasis on data science and data mining techniques used to extract meaningful knowledge from large-scale datasets. The course addresses the challenge of transforming massive volumes of raw data into actionable insights for decision-making and socio-economic development. The course integrates three major aspects of big data analytics: (i) data storage and preprocessing, (ii) data mining and machine learning, and (iii) predictive and time-series analytics. Students will learn how data is collected, stored, cleaned, analyzed, and transformed into knowledge using real-world datasets. Core analytical techniques such as pattern mining, clustering, classification, prediction, and forecasting are covered through hands-on exercises. A “Learn by Doing” approach is adopted throughout the course. Each topic is introduced through conceptual explanations and demonstrations, followed by extensive practical exercises that allow students to implement and experiment with analytics techniques on real datasets. Each class consists of three periods: the first period focuses on explanation and demonstration by the instructor, while the remaining two periods are dedicated to student exercises and guided practice. |
| 授業の目的と到達目標 /Objectives and attainment goals |
Objectives In modern data-driven environments, organizations collect massive volumes of data, yet valuable knowledge often remains hidden due to the limitations of traditional analysis methods. This phenomenon is commonly referred to as the “Data-Rich but Information-Poor” problem. Big Data Analytics and Data Mining provide systematic approaches to overcome this challenge. This course aims to equip students with both theoretical understanding and practical skills necessary to analyze large datasets and extract useful patterns, models, and predictions. Attainment Goals By the end of the course, students will be able to: Design and manage databases for large-scale data storage Construct analytical data repositories for big data processing Apply data preprocessing and missing-value imputation techniques Perform pattern mining, clustering, and classification tasks Apply regression and time-series forecasting techniques Build ensemble models to improve analytical accuracy Interpret analytical results to support data-driven decision-making |
| 授業スケジュール /Class schedule |
Course Content and Methods Each session combines conceptual instruction, live demonstrations, and hands-on exercises. Exercises are conducted individually or in small groups using real-world datasets, such as air-pollution and sensor data. Discussion and feedback sessions are incorporated to reinforce analytical thinking and interpretation skills. Session 1 Lecture: Introduction to Big Data Analytics and data science workflow Exercise: Understanding datasets and basic data exploration Session 2 Lecture: Data storage concepts and relational databases Exercise: ER modeling and database schema design Session 3 Lecture: Data warehousing and analytical data organization Exercise: Constructing a data warehouse from transactional data Session 4 Lecture: Data preprocessing and data quality issues Exercise: Handling missing values and data normalization Session 5 Lecture: Knowledge discovery process Exercise: Exploratory analysis of air-pollution data Session 6 Lecture: Pattern mining fundamentals Exercise: Mining frequent patterns from transactional data Session 7 Lecture: Advanced pattern mining and fuzzy concepts Exercise: Fuzzy frequent pattern extraction Session 8 Lecture: Clustering concepts and k-Means algorithm Exercise: k-Means clustering on pollution data Session 9 Lecture: Density-based clustering and DBSCAN Exercise: DBSCAN clustering and comparison with k-Means Session 10 Lecture: Classification concepts and evaluation metrics Exercise: Naïve Bayes classification Session 11 Lecture: Decision tree classification Exercise: Building and evaluating decision tree models Session 12 Lecture: Prediction and regression techniques Exercise: Linear regression and autoregression Session 13 Lecture: Time-series analytics and forecasting Exercise: ARIMA-based forecasting Session 14 Lecture: Ensemble models and integrated analytics Exercise: Ensemble modeling and case study discussion Pre-class and Post-class Learning Students are expected to review lecture materials before each session and complete unfinished exercises after class. Typical out-of-class study time per session: 3–5 hours, including preparation, review, and assignment work. |
| 教科書 /Textbook(s) |
Core / Data Mining & Big Data Mining of Massive Datasets — Anand Rajaraman, Jeff Ullman, Jure Leskovec Used in many big data analytics courses; excellent for large-scale data mining and pattern discovery. Data Science and Big Data Analytics: Discovering, Analyzing, Visualizing and Presenting Data — EMC Education Services Comprehensive overview of practical analytics workflows used in industry. Big Data Analytics: From Strategic Planning to Enterprise Integration — David Loshin Focus on strategic, architectural, and integration aspects of big data systems. |
| 成績評価の方法・基準 /Grading method/criteria |
Student performance is evaluated based on: Quizzes: 30% Exercises and assignments: 40% Final examination: 30% Exercises do not carry negative marks. Quizzes and the final examination may include negative marking where applicable. Attendance is not included in grading criteria. However, students must have 75% of attendence. |
| 履修上の留意点 /Note for course registration |
Attendance is mandatory. Students must maintain at least 75% attendance to be eligible for course completion. Failure to meet the attendance requirement will result in failure of the course, regardless of academic performance. Prior knowledge of Operating Systems, Database Systems, and a Programming Language is strongly recommended. |
| 参考(授業ホームページ、図書など) /Reference (course website, literature, etc.) |
Course website: https://u-aizu.ac.jp/~udayrage/intro2BigData.html Stanford University (CS246): https://web.stanford.edu/class/cs246/ The University of Tokyo OCW: https://ocwx.ocw.u-tokyo.ac.jp/course_11414/ |