Information & Communication
Architecture 2 [BINF 405]
GUC - Spring 2024 – Lecture 1
Introduction to Distributed Computing & Information Integration
Dr. Ayman Al-Serafi
TAs: Ghada Ahmed, Tameem Alghazaly, Youssef Ihab, Mohab Gehad
Outline
1. ICA I Feedback
2. The Teaching Team
3. Administrative Matters
4. Introduction and Overview
5. Information Integration
6. Course Outline and Objectives
Q&A breaks between
sections
Urgent Qs only in
between!
ICA II - GUC - Dr. Ayman Alserafi 1-2
Outline
1. ICA I Feedback
2. The Teaching Team
3. Administrative Matters
4. Introduction and Overview
5. Information Integration
6. Course Outline and Objectives
ICA II - GUC - Dr. Ayman Alserafi 1-3
ICA I Feedback
Need to improve this semester!
You need to attend the lectures for 75% of the
material of the course!
The labs in the tutorials only apply some of the
concepts from the lecture accounting for 25%
Business Informatics courses I teach you are
courses that you CAN’T study in 1 night before
the exam!!!
ICA II - GUC - Dr. Ayman Alserafi 1-4
Outline
1. ICA I Feedback
2. The Teaching Team
3. Administrative Matters
4. Introduction and Overview
5. Information Integration
6. Course Outline and Objectives
ICA II - GUC - Dr. Ayman Alserafi 1-6
Instructor: Dr. Ayman Al-Serafi
Continuing the curriculum from ICA I
Completed the Information Architecture part, now we focus on
Communication Architecture
esp. in distributed systems environments
We will have theoretical tutorials and practical labs to enhance your
hands-on skills
Labs will include some web development to implement the concepts we study
Will program using: ASP.NET (C#), HTML, HTTP Methods, XML, JSON, etc.
Teaching assistants:
Ghada Ahmed: ICA II Technical expert (B1.322)
Tameem Alghazaly: Data Analysis & Dev expert (B1.320)
Youssef Ihab: Technical guru (B5.229)
Mohab Gehad: Technical guru (B1.322)
Please be polite, respectful and decent with your teachers!
No late attendance after 15 minutes
1st Warning, then send out (no attendance!)
ICA II - GUC - Dr. Ayman Alserafi 1-7
Outline
1. ICA I Feedback
2. The Teaching Team
3. Administrative Matters
4. Introduction and Overview
5. Information Integration
6. Course Outline and Objectives
Q&A
ICA II - GUC - Dr. Ayman Alserafi 1-8
Course Material
CMS
ICA II - GUC - Dr. Ayman Alserafi 1-9
Why Attend the Lecture?
In-depth discussion of topics you will work with in
your jobs after graduation.
Industry needs people who can develop web services!
Interact with the instructor for better understanding.
If you don’t attend the lecture there is a 75% probability
you will fail!
What is said in the lecture comes in the exams.
Complementary elaborations with lecture material, tutorials
and labs
Opportunity to learn concepts for your course mini-
projects.
ICA II - GUC - Dr. Ayman Alserafi 1-10
DOs in the Lecture
Raise your hand if you have an urgent question
you think will be important for everybody
Discuss with the instructor and interact (don’t be shy!)
Ask questions during section breaks
DON’T DOs in the Lecture
1. Come more than 5 minutes late to the lecture
2. Chat with your friends in side-talks
3. Eat during the lecture
4. Play with your mobile phone or use it for texting during the lecture (put on
silent-mode please!)
5. Show disrespect, sarcasm, discrimination or do any violent act to your
colleagues
6. Don’t expect me to give you exam questions and don’t ask if something is
coming in the exam (YES!) Will have revision!
ICA II - GUC - Dr. Ayman Alserafi 1-11
Outline
1. ICA I Feedback
2. The Teaching Team
3. Administrative Matters
4. Introduction and Overview
5. Information Integration
6. Course Outline and Objectives
Q&A
ICA II - GUC - Dr. Ayman Alserafi 1-12
The ICA II Course
Is all about distributed computing systems for
global business communication and
information systems
This course is a technical development and
programming course that integrates computer
science concepts for business applications
First course to learn web development using
ASP.NET C# programming
C# is Microsoft's version (or copy) of the open source
programming language of Java
Object-Oriented Programming (OOP) / Class-based
ICA II - GUC - Dr. Ayman Alserafi 1-13
Business Informatics
Overview
Information
Technology
Information
Technology
Web applications
Distributed
systems
Information Databases
Systems
Artificial Intelligence
Applications People
Data analytics
Etc …
ICA II - GUC - Dr. Ayman Alserafi 1-14
Business Informatics
Overview
People
Information
Technology Social aspects / effects
Technology acceptance
IT (projects)
management
Information Information
Systems
management
Applications People
Policies, laws and
privacy
Etc …
ICA II - GUC - Dr. Ayman Alserafi 1-15
Business Informatics
Overview
Applications
Information
Technology Enterprise systems
E-Business / E-gov
Business process
Information management
Systems
Business
Applications People
Intelligence
Data science (stats)
Etc …
ICA II - GUC - Dr. Ayman Alserafi 1-16
ICA II - GUC - Dr. Ayman Alserafi 1-17
ICA II - GUC - Dr. Ayman Alserafi 1-18
ICA II - GUC - Dr. Ayman Alserafi 1-19
ICA II - GUC - Dr. Ayman Alserafi 1-20
QUESTION: HOW DOES SKYSCANNER RETRIEVE
INFORMATION ABOUT FLIGHT AVAILABILITY AND
PRICES FROM THE DIFFERENT AIRLINES?
ICA II - GUC - Dr. Ayman Alserafi 1-21
ANSWER: VIA STANDARD COMMUNICATION
PROTOCOLS ESTABLISHED BETWEEN THE CLIENT
(Skyscanner) AND THE VENDOR (the airline, e.g.,
EgyptAir and Lufthansa)!
A communication protocol is a system of [syntactical and semantical]
rules that allows two or more entities of a communications system to
transmit information via any kind of variation of a physical quantity. The
protocol defines the rules, syntax, semantics and synchronization of
communication and possible error recovery methods. Protocols may be
implemented by hardware, software, or a combination of both.[1]
(source: Wikipedia) ICA II - GUC - Dr. Ayman Alserafi
1-22
QUESTION2: WHAT KIND OF INFORMATION
TECHNOLOGY DO THEY USE TO RETRIEVE AND
INTEGRATE THE INFORMATION?
ICA II - GUC - Dr. Ayman Alserafi 1-23
ANSWER2: DISTRIBUTED MESSAGING PROTOCOLS
LIKE SERVICE-ORIENTED ARCHITECTURE, E.G.,
WEB-SERVICES, SOAP, REST WEB API, ETC.
ICA II - GUC - Dr. Ayman Alserafi 1-24
DISTRIBUTED SYSTEMS
COMMUNICATION ARCHITECTURE
Standard Communication messages
Messaging
Protocols:
SOAP, REST API,
JAVA Enterprise Service Bus,
Middleware, etc.
C++
C#
PYTHON
PHP
ICA II - GUC - Dr. Ayman Alserafi 1-25
An XML SOAP
MESSAGE
ICA II - GUC - Dr. Ayman Alserafi 1-26
Source: http://www.w3.org/TR/soap/
1-27
ICA II - GUC - Dr. Ayman Alserafi
Middleware Technology choice
ICA II - GUC - Dr. Ayman Alserafi 1-28
DISTRIBUTED COMMUNICATION
ARCHITECTURE WHAT IS
THIS?
ICA II - GUC - Dr. Ayman Alserafi 1-29
DISTRIBUTED COMMUNICATION
ARCHITECTURE A standard message
format!
(WEB HTTP protocol)
ICA II - GUC - Dr. Ayman Alserafi 1-30
Information Management
Fit for Use!
governs
How to
integrate Information
Information Processing
distributed Quality
information
supports
(sources)?
Information
Architecture
Structures Standards Technologies Systems
ICA II - GUC - Dr. Ayman Alserafi 1-31
Outline
1. ICA I Feedback
2. The Teaching Team
3. Administrative Matters
4. Introduction and Overview
5. Information Integration
6. Course Outline and Objectives
Q&A
ICA II - GUC - Dr. Ayman Alserafi 1-32
How to proceed
with distributed
Web information?
ICA II - GUC - Dr. Ayman Alserafi 1-33
Information Integration
Process of using data abstraction to access
distributed and heterogeneous data
required for constructing integrated applications
from distributed (online) sources
Critical aspects: uniform data access and
uniform information representation
Need for Communication
Standards & Structures
ICA II - GUC - Dr. Ayman Alserafi 1-34
Enterprise Information Integration
(EII)
Data integration was earliest form of integration,
but
batch ETL (Extract, Transform, Load) solutions of the
Option 1 past were not capable of meeting today’s real-time
integration (e.g., with RFID)
Enterprise Application Integration (EAI) solved
data latency problem by synchronizing changes
across systems in real time, but
EAI can effectively move data among systems in real
Option 2
time, but does not define an aggregated view of the data
objects or business entities
ICA II - GUC - Dr. Ayman Alserafi 1-35
Traditional Information Integration
(Data Integration)
Information Extraction:
Machine learning techniques for extracting information
from online sources
Source Modeling (also called schema matching):
Constructing a semantic model of wrapped sources with
mappings so that they can be automatically integrated with
other sources
Record Linkage: (also called entity resolution)
Learning how to align data records across sources
Data Integration:
Generating plans to automatically integrate data across
sources (e.g., ETL)
ICA II - GUC - Dr. Ayman Alserafi 1-36
Modern Alternative: EAI Application
Integration Design
To design of interaction and integrity
of information, we need:
Description of input messages
Description of output messages
Session state to control the protocols (or stateless
protocols without sessions!)
A session stores on the server the history of previous
communication messages with each specific client
In large systems many integration designs follow a
similar architecture!
E.g., Service-oriented architecture
ICA II - GUC - Dr. Ayman Alserafi 1-37
Perspective ontology
EAI Approach 1:
use Ontologies
Create a standard schema to describe data
(i.e., metadata) throughout the whole Web of
information
Semantic interoperability can be ensured
between all partners when including
information about new buildings and sights (for
the Schleswig-Holstein example)
Fine-grained structure & annotation allows
for identifying elementary informational
resources
Machine readability enables automatic
addressing & retrieval
ICA II - GUC - Dr. Ayman Alserafi 1-38
B. Smith & C. Welty (2001): “Ontology: Towards a new synthesis”
Goal: to provide a global and
extensible model into which data
originating from distinct sources can
An Ontology is… be mapped and integrated
a collection of a set of general
a catalog a glossary taxonomies logical constraints
a set of a collection of
a thesaurus
text-files frames
complexity
without with
automated reasoning automated reasoning
ICA II - GUC - Dr. Ayman Alserafi 1-39
Ontologies Define: Controlled
Vocabulary
The Information Architecture Glossary (Kat Hagedorn, Argus Associates, 2000;
argus-acia.com/white_papers/ia_glossary.pdf)
A collection of preferred terms that are used to
assist in more precise retrieval of content
(e.g. thesaurus) by labelling distributed data items
with the same ontology controlled vocabulary
(concepts)
Controlled vocabulary terms can be used in the
example for populating attribute values during
indexing, building labeling systems, and creating style
guides and database schema.
ICA II - GUC - Dr. Ayman Alserafi 1-40
Ontology Technology Example:
The Semantic Web The Semantic Web,
sometimes known as Web
3.0, is an extension of the
World Wide Web through
standards set by the World
Wide Web Consortium
(W3C).[1] The goal of the
Semantic Web is to make
Internet data machine-
readable. (Wikipedia)
Source: ERCIM
The semantic web adds ontology-based
description to information on the Internet
The term was coined by Tim Berners-Lee for a web of data (or
data web)[6] that can be processed by machines[7]—that is, one
in which much of the meaning is machine-readable. (Wikipedia)
ICA II - GUC - Dr. Ayman Alserafi 1-41
The Semantic Web
1. Build controlled concepts and
terminology taxonomy in an ontology
2. Label all distributed data with the
same concepts from the same ontology
3. Machine can reason based on
mappings to the same ontology
ICA II - GUC - Dr. Ayman Alserafi 1-42
The Semantic Web facilitating Resource
Technology: RDF and RDF- Description
Framework
Schema (RDF) Example
Implement
Ontology in RDF,
and label data with
ontology like RDF
code below
_:a <https://www.w3.org/1999/02/21-rdf-syntax-ns#type> <https://schema.org/Person> .
_:a <https://schema.org/name> "Paul Schuster" .
_:a <https://schema.org/birthPlace> <https://www.wikidata.org/entity/Q1731> .
<https://www.wikidata.org/entity/Q1731> <https://schema.org/itemtype> <https://schema.org/Place> .
<https://www.wikidata.org/entity/Q1731> <https://schema.org/name> "Dresden" .
ICA II - GUC - Dr. Ayman Alserafi 1-43
The Semantic Web Architecture:
RDF based stack
Any machine Create Standard
(software) can RDF Schema
use (and reason (ontology) to map
with) any data all data to it using
mapped to the RDF
same RDF
schema using
SPARQL query
language
(engine)
RDF can map
data using
XML notation
ICA II - GUC - Dr. Ayman Alserafi 1-44
EAI
Middleware Approach 2
Software that connects other software
components or applications
used most often to support complex,
distributed applications
can be found in IT solutions
based on XML, SOAP (Simple Object Access
Protocol), Web services, Service-oriented
architecture, etc.
MAIN
APPROACH we
study in the
course
ICA II - GUC - Dr. Ayman Alserafi 1-45
Today, enterprise architects believe that…
Service Oriented Architecture (SOA) can
help businesses respond more quickly
and cost-effectively to the changing
market conditions
This style of architecture promotes reuse
at the macro (service) level rather than
micro levels (e.g. objects and classes in
code)
It can also simplify interconnection to
and usage of existing IT (legacy) assets
ICA II - GUC - Dr. Ayman Alserafi 1-46
Outline
1. ICA I Feedback
2. The Teaching Team
3. Administrative Matters
4. Introduction and Overview
5. Information Integration
6. Course Outline and Objectives
Q&A
ICA II - GUC - Dr. Ayman Alserafi 1-47
Information & Communication
Architecture I and II
Provide an in-depth understanding
of form and content of business information
and communication, and
how the flow of information & communication
can be structured and supported through IT
ICA II - GUC - Dr. Ayman Alserafi 1-48
Information & Communication
Architecture II
Focus on
the (technical) integration solutions of
distributed systems and distributed
computing
the scope, purpose & technology
alternatives of middleware for information
integration
ICA II - GUC - Dr. Ayman Alserafi 1-49
ICA II Course Learning Objectives
Identify requirements for building distributed systems
Identify the architectural and structural aspects
of middleware & information integration
Discuss the relation between information management
and middleware implementation
Analyze cases and determine requirements for specific
middleware solutions & distributed computing
Take part in a collaborative process and develop an
information & communication architecture based on
middleware solutions and SOA
ICA II - GUC - Dr. Ayman Alserafi 1-50
“IT Architecture & Middleware”
Middleware technology alternatives
IT architecture guidelines and middleware
Distributed systems technology principles
Distributed computing implementation
design and development
ICA II - GUC - Dr. Ayman Alserafi 1-51
Textbooks
1) Mike P. Papazoglou: Web Services Principles and
Technology. Pearson.
2) Chris Britton, Peter Bye: IT Architectures and
Middleware: Strategies for Building Large, Integrated
Systems (2/e). Addison-Wesley / Pearson.
3) Chaffey / White: Business Information Management
Assessment Weight of
Final Grade
Final Exam 40%
Mid Term Exam 30%
Quizzes (best 2 of 3) 10%
Assignments 10%
Final Project 10%
+ Mini-project
Total 100%
ICA II - GUC - Dr. Ayman Alserafi 1-53
Date Lecture (Saturdays) Tutorials (in same week)
Week 1 Introduction to Information & Communication Architecture II
Intro + XML Lab
Week 2 Distributed Systems
Web APIs + HTTP Protocols Lab
Week 3 XML Intro + HTML + HTTP Protocol (Intro to VS and Webforms + XML Binding)
HTTP API Methods + Practical for HTTP methods
Week 4 Cloud Computing Assignment 1
Mini-Project 1
HTTP API Methods + Practical for HTTP methods
Week 5 Virtualisation
Quiz 1
Week 6 Middleware Overview and components Cloud Computing Case Study
16 March –
Mid-Term Exam
1 April
Virtualization Case Study
Week 7 Middleware Overview and Components Assignment 1 submission
Mini-Project 1 submission
SOA, Web Services and SOAP
Week 8 The Organizational SOA Roadmap
Assignment 2
Week 9 Registering and Discovering Web Services SOAP + WSDL + UDDI Lab
REST API Lab 1 +JSON
Week 10 REST API Assignment 2 submission
Quiz 2
Middleware Messaging, Enterprise Service Bus, REST API Lab 2
Week 11 Final Project submission
Transaction Processing
Final Course Lab
Middleware Messaging, Enterprise Service Bus,
Week 12 Quiz 3
Transaction Processing
Assignment 2 submission
Week 13 Revision
28 May - 13 June
Final Exam
THANK YOU FOR
YOUR ATTENTION
NEXT WEEK: Distributed Systems
and Architectures
NEXT TUTORIAL: Introduction and
XML Lab