Guia de Cursos

Queres conhecer a oferta de cursos da NOVA, nas áreas das licenciaturas, mestrados e doutoramentos?
No nosso Guia de Cursos encontras informação útil sobre Faculdades, Institutos e Escolas.
Podes ainda aceder a informações complementares necessárias a uma completa integração.

saber mais Guia de Cursos

Faculdade de Ciências e Tecnologia

Sistemas e Tecnologias de Middleware

Código

8304

Unidade Orgânica

Faculdade de Ciências e Tecnologia

Departamento

Departamento de Informática

Créditos

6.0

Professor responsável

Henrique João Lopes Domingos, José Augusto Legatheaux Martins

Horas semanais

4

Total de horas

52

Língua de ensino

Português

Objectivos

Knowledge

  • Understand the characteristics of different middleware systems and technologies, as reusable system foundations to approach complex distributed computing environments and applications;
  • Know how distributed middleware systems and internetworking support work, with an in-depth vision and understanding of its internal components and protocols;
  • Learn the models and architectures used in the development of reusable middleware services and components and its relevance in engineering complex distributed applications;
  • Understand the problems, challenges and techniques regarding the design of presentation and application integration services,  reusable middleware logics and data access models, to design N-tier service oriented software architectures (SOA) and enterprise application integration (EIA) platforms

Know-how

  • Consolidate an hand-on-approach and a practical knowledge base on programming paradigms, software architecture and development tools provided by different middleware systems and technology
  • Assemble systems based on different middleware services and distributed system components for the design and experimental assessment of distributed systems and applications
  • Develop applications on top of specific middleware systems and technology

Soft-Skills

  • Design, project and implementation of middleware layers, reusable as system-level services to deal with complexity and transparency at the application level;
  • Know how to model, how to specify and how to report experiments using middleware systems and technology, including experimental assessment concerns, proof-of-concept demonstration results and analysis.
  • Be capable of studying and surveying middleware systems and technology, namely middleware products and technology available in the market;
  • Be capable of researching hot topics, open-issues or new trends in the design of innovative middleware systems and technology.
  • Improve planning and organization skills for group collaboration and group projects on large scale information systems, with separation of concerns, duties and responsability roles of each participant to address the common goals.

Pré-requisitos

  • Good knowledge base on Distributed Systems: concepts, foundations, programming models, paradigms and design principles.
  • Good Programming Skills
  • Distributed Systems Project capabilities and autonomy:
    • J2SE or MS Studio .Net programming, IDEs and Tools
    • Internetworking and programming with TCP/IP
    • Distributed systems programming (design, specification and programming practice).

Conteúdo

Course Program Topics
  1. Introduction
  2. Distributed Middleware System Models and Architectures
  3. Multi-tier Architectures, Modules and Patterns
  4. Engineering Object Broker Middleware Architectures
  5. Synchronous and Asynchronous Message Oriented Middleware (MOM)
  6. Reliable Messsage Queuing and Enterprise Application Integration (EAI)
  7. Web-Application Servers and Web-Oriented Middleware Technology
  8. Multi-Channel Middleware Platforms. Mobile and Ubiquitous Middleware Environments and Programming Frameworks
  9. Cloud-Based Dependable Middleware Solutions

Bibliografia

Course program main topics:

  • Gustavo Alonso, F. Casti, H. Kuno, V. Machiraju, Web Services Concepts, Architectures and Applications, ISBN 3-540-44008-9 Springer, 2004
  • A. Tanembaum, M. Van Steen, Distributed Systems Principles and Paradigms, ISBN 0-13-239227-5, Prentice Hall, 2007
  • K. Birman, Reliable Distributed Systems Technologies, Web Services and Applications, ISBN-13-978-0-387-21509-9, Springer, 2005

Practical topics for specific work-assignments:

  • W. Emmerich, Engineering Distributed Objects, ISBN 0-471-98657-7 Wiley, 2000W. Iverson, Real World Web Services, ISBN 0-596-00642-X, O''''''''Reilly 2004
  • R. Mogha, V.V. Preetham, Java Web Services Programming, 0-7645-4952-9, Wiley, 2002
  • E. Bruno, Java Messaging, ISBN -58450-418-8 Charles River Media - Programming Series, 2006
  • Complementary web-references and resources will be provided by the teacher for work-assignments

Complementary references

Experimental work (examples, hands-on exercices or workgroup assignments) covering the following middleware systems and technology:

  • Agent based middleware platforms
  • Oracle Fusion Middleware
  • Windows Azure App Fabric
  • IB WebSphere MQ / IBM MQ Series
  • Spring AppServer Development Platform
  • JBoss Application Server
  • Backbase Enterprise Portal / Multi-Channel Development Framework

Additional suggested readings, based on a selected set of papers, will proposed, introduced and provided by the professor in the course web-site, to cover the final topics related with on-going research on middleware systems and technology. 

Método de ensino

Theoretical lectures for presenting and discussing theoretical foundations, fundamental concepts, middleware paradigms and architectural patterns, as well as techniques, interoperability protocols and algorithms.

Labs, used for the implementation, practice and demonstration of algorithms, protocols and experimental analysis with hands-on validation exercises. Work assignments are used to integrate and to consolidate the theoretical foundations with practical knowledge in designing, programming and testing middleware systems and technology.

The complementary topics on middleware research-orienetd topics and/or middleware enterprise solutions are introduced as complementary topics. These topics are addressed with surveys and analysis on a selected set of research papers and/or middleware products,  as final optional work-assignments or mini-projects.

Obs) Classes may be taught in portuguese or english.

Método de avaliação

Assessment components:

  • T1, T2: Midterm Tests (Theoretical and Practical Evaluation): 30%
  • W1, W2: Lab work assignments with reports  (30%): 
  • FP: Final lab mini-project with report (40%)
Frequency admission
  • Average rating of W1 and W2: at leaat 10/20
  • FP grade: at least 10/20
Final Grade:
G = 15% T1 + 15% T2 + 15% W1 + 15% W2 + 40% FP, or
G = 30% Exam + 15 % W1 + 15% W2 + 40% FP

Cursos