Design and Analysis of Information Systems (MAS)
Comprehensive study of object-oriented domain modeling, persistent data structures, advanced UML constructs, relational database mappings, and graphical user interface architecture.
Object-Oriented Modeling
Classes in OOP
Classes vs. objects, class extents, extent persistence, simple, complex, and optional attributes in Java.
Classes in OOP (Part 2)
Multi-valued attributes, class attributes, derived attributes, and class methods in object systems.
Classes in OOP (Part 3)
Encapsulation, access modifiers, method overloading, overriding, and object identity.
Associations & Links
Inheritance & UML
Inheritance in OOP
Generalization hierarchies, abstract classes, polymorphism, interface inheritance, and multi-inheritance workarounds.
Inheritance in OOP (Part 2)
Overlapping inheritance, dynamic inheritance, multi-aspect inheritance, and structural design patterns.
Advanced UML Constructs
UML constraints: {ordered}, {bag}, {xor}, {subset}, and business rule implementation in code.
Persistence & Relational
Relational Model in OOP
Relational vs. object paradigms, impedance mismatch, table representations of classes, and primary/foreign keys.
Relational Model in OOP (Part 2)
Mapping complex and multi-valued attributes to relational database tables and normalization.
Relational Model in OOP (Part 3)
Mapping associations (1..1, 1..*, *..*) and association classes to relational foreign keys and join tables.
Relational Model in OOP (Part 4)
Mapping inheritance strategies: Table per Hierarchy, Table per Concrete Class, Table per Subclass, and ORM frameworks (Hibernate / JPA).
GUI & Usability
GUI Usability & Testing
Principles of user interface usability, Jakob Nielsen heuristics, cognitive load, user testing, and evaluation metrics.
GUI Architecture & Design
Designing desktop and web graphical interfaces, layout managers, declarative UI, MVC/MVP patterns, and dialog flow.
GUI Implementation & Logic
Step-by-step implementation of interactive Java GUI windows, event listeners, extent data binding, and video demonstrations.