Mário M. Freire
         Full Professor (Professor Catedrático)
           Department of Computer Science, University of Beira Interior, Rua Marquês de Ávila e Bolama, 6201-001 Covilhã, Portugal
           E-mail addresses: mfreire(at)ieee.org  or mfreire(at)computer.org  or  mfreire(at)acm.org  or  mario(at)di.ubi.pt

           IEEE Member, ACM Member, Ordem dos Engenheiros - Colégio de Engenharia Informática Member

           Senior Researcher at Instituto de Telecomunicações, member of the
Secure and Intelligent Networked Software Systems Lab, home of the Network Applications and Services - Cv Group


Tópicos de Investigação em Engenharia Informática / Research Topics in Computer Science and Engineering 2023/2024
Doutoramento em Engenharia Informática / PhD in Computer Science and Engineering

"To be great, be whole; Exclude nothing, exaggerate nothing that is not you. Be whole in everything. Put all you are Into the smallest thing you do. So, in each lake, the moon shines with splendor Because it blooms up above."

Ricardo Reis, in "Odes", an heteronym of Fernando Pessoa (1888-1935), Portuguese poet, writer, literary critic, and translator.


Descrição da Unidade Curricular, Avaliação e Bibliografia / Course Description, Evaluation and Grading and Bibliography

Objetivos Gerais e Resultados de Aprendizagem / Course Objectives and Learning outcomes
O objetivo da unidade curricular consiste em dotar os estudantes com competências em metodologias de investigação científica e contribuir para a aprendizagem orientada da prática de I&D de alto nível, de modo a preparar os estudantes para uma carreira científica ou académica em engenharia informática. No final da unidade curricular o estudante deve ser capaz de elaborar um survey sobre o estado da arte num dado tópico de engenharia informática com especial interesse para a realização da sua tese de doutoramento, sob supervisão de um professor do Departamento de Informática.
The aim of the course is to provide students with skills in scientific research methodologies and contribute to oriented learning of high-level R&D practice, in order to prepare students for a scientific or academic career in computer science and engineering. At the end of the course the student should be able to prepare a survey on the state of the art in a given topic of computer science and engineering with special interest for the accomplishment of his doctoral thesis, under the supervision of a professor of the Department of computer Science.

Programa / Syllabus
Integridade académica, códigos de ética e plágio. Introdução à investigação científica. Métodos de investigação científica. A escolha de um problema de investigação científica. A escolha de um orientador. A arte de revisão da literatura. Escrita de artigos científicos e de relatórios técnicos. Apresentação oral de artigos e relatórios técnicos.
Academic Integrity, code of ethics and plagiarism. Introduction to scientific research. Scientific research methods. The choice of a scientific research problem. The choice of an adviser. The art of literature review. Writing scientific papers and technical reports. Oral presentation of articles and technical reports.

Metodologias de Ensino e de Avaliação / Teaching and Evaluation Methodologies
As aulas de contacto desta unidade curricular são baseadas em orientação tutorial. Pretende-se debater temas baseados em artigos e documentos on-line e esclarecer dúvidas concretas apresentadas pelos estudantes sobre a elaboração do survey (artigo de revisão) sobre o estado da arte num dado tópico de engenharia informática. A elaboração do survey é realizada sob a orientação de um docente do Departamento que fará reuniões de trabalho com o estudante, em coordenação com o docente responsável pela unidades curricular. O survey e a respetiva apresentação, com duração máxima de 15 minutos, serão avaliados por um júri constituído pelo docente desta unidade curriular e pelos membros da Comissão Científica de Curso do Doutoramento. O survey deve ser enviado por email (mario@di.ubi.pt) para o docente desta unidade curricular até uma semana antes da respetiva discussão.
Língua da unidade curricular: Português ou Inglês. O suporte tutorial está disponível maioritariamente em inglês.
Lectures of this course consists of tutorials. It is intended to discuss topics based on scientific articles and online documents and clarify specific doubts presented by students on the preparation of the survey (review paper) on the state of the art in a given topic of computer science and engineering. The preparation of the survey is carried out under the guidance of a professor from the Department of Computer Science who will hold working meetings with the student, in coordination with the instructor responsible for this course. The survey and its presentation, with a maximum duration of 15 minutes, will be evaluated by a jury composed of the instructor of this course and the members of the PhD Study Program Committee. The survey must be sent by email (mario@di.ubi.pt) to the instructor of this course by one week before the respective discussion.
Couse language: Portuguese or English. Tutorial support is available mainly in English.

Critérios de Avaliação / Evaluation and Grading
Elaboração de um survey paper: 70%.
Apresentação oral e discussão do survey: 25%.
Participação na discussão de artigos em 4 aulas: 5%.
Preparation of a survey paper: 70%.
Oral presentation and discussion of the survey paper: 25%.
Participation in the discussion of papers in 4 lectures: 5%.

Survey Paper
Esta unidade curricular permite ao estudante desenvolver estudos avançados na área da informática, com base em artigos científicos. Cada estudante deverá elaborar um artigo de revisão, no qual, de forma clara, rigorosa e pedagógica, descreve o objecto de estudo e eventuais perspectivas de desenvolvimento futuro do tópico em estudo. Para a elaboração do survey, o estudante deve seguir as instruções disponíveis em Instruções para Autores e Preparação do Manuscrito da ACM Computing Surveys. O artigo poderá ser escrito noutro formato, desde que previamente autorizado pelo docente da unidade curricular. O título do survey deve centrar-se no tópico, ser curto, claro e eye-catching. A estrutura do survey é livre e não há limite de páginas. O survey deve ser elaborado sob a supervisão dos orientadores de doutoramento, caso existam.
This course allows the student to develop advanced studies in computer science, based on scientific articles. Each student should prepare a survey paper, which, in a clear, accurate and pedagogical way, describes the object of study and possible future development perspectives of the topic under study. For the preparation of the survey, the student should follow the instructions available at Author Guidelines and Manuscript Preparation of ACM Computing Surveys. The survey may be written in another format, if previously authorized by the course instructor. The title of the article should focus on the topic, be short, clear and eye-catching. The structure of the survey is free and there is no page limit. The survey should be prepared under the guidance of the PhD advisors, if any.

Bibliografia de Apoio à Unidade Curricular / Bibliography
Artigos científicos de acordo com o objecto de estudo, disponibilizados através da biblioteca do conhecimento online (B-On) subscrita pelos Serviços de Documentação – Biblioteca da Universidade da Beira Interior. Artigos e documentos online disponibilizados pelo docente e disponíveis nesta página web.
Scientific articles according to the object of study, made available by the online knowledge library (B-On) subscribed by the Documentation Services - Library of the University of Beira Interior. Articles and online documents made available by the instructor along this web page.


Plano das Aulas / Schedule

Lecture 1 (September 20, 2023, 11:00-12:00, room 6.10).

Sumário: Apresentação do Professor aos Estudantes. Indicação da localização do gabinete do professor e do horário de atendimento. Objectivos da unidade curricular e competências a adquirir. Conteúdos programáticos. Método de avaliação. Bibliografia de apoio à unidade curricular.


Lecture 2 (September 27, 2023, 11:00-12:00, room 6.10).

Sumário: Perspectiva geral sobre o funcionamento da unidade curricular.
Abstract: Course overview.


Lecture 3 (October 4, 2023, 11:00-12:00, room 6.10).

Sumário: Apresentação das Unidades de Investigação do Departamento de Informática e dos respetivos laboratórios.
Abstract: Presentation of the Department Research Units and their labs.


Lecture 4 (October 11, 2023, 11:00-12:00, room 6.10).

Sumário: Integridade académica, códigos de ética e plágio.
Abstract: Academic integrity, codes of ethics, and plagiarism.

Required Reading:
Academic Integrity: The Fundamental Values of Academic Integrity, Código de Integridade da UBI.
Codes of Ethics: ACM Code of Ethics and and Professional Conduct, IEEE Code of Ethics.
Plagiarism: IEEE Plagiarism Policy, ACM Policy on Plagiarism, Misrepresentation, and Falsification, Self-Plagiarism in Computer Science.
Fair Use and Simultaneous Submissions: ACM Guidance for Authors on Fair Use, Prior Publication and Simultaneous Submissions.


Lecture 5 (October 18, 2023, 11:00-12:00, room 6.10).

Sumário: Introdução à investigação científica
Abstract: Introduction to scientific research.

Required Reading:
Introduction to Research and Research Methods for Computer Science by Alexander Ferworn, Professor at Ryerson University, Canada.
Putting the Science Back into Computer Science by Robert Sedgewick, Professor at Princeton University and Director of Adobe Systems, in a CS Colloquium, at Rutgers University, November, 2010. See also the invited talks of Professor Robert Sedgewick

Suggested Reading:
You and Your Research by Richard Hamming, Professor at the Naval Postgraduate School in Monterey, California, and a retired Bell Labs scientist. See also the video in YouTube.


Lecture 6 (October 25, 2023, 11:00-12:00, room 6.10).

Sumário: A escolha de um problema de investigação científica.
Abstract: Choosing a Computer Science Research Problem.

Required Reading:
Choosing a Computer Science Research Problem by Alexander Ferworn, Professor at Ryerson University, Canada.
Grand Challenges for Computing Research by Tony Hoare and Robin Milner in The Computer Journal 48 (1): 49-52, 2005.
How to Build a Bad Research Center by David Patterson in Communications of the ACM, Vol. 57 No. 3, pages 33-36, 2014.


Lecture 7 (November 8, 2023, 11:00-12:00, room 6.10).

Sumário: A escolha de um orientador.
Abstract: Choosing a PhD Adviser.

Required Reading:
Your Students Are Your Legacy by David A. Patterson in Communications of the ACM, Vol. 52 No. 3, pages 30-33, 2009.
How to choose an advisor by Howard G. Adams and Ashwin Ram, Georgia Institute of Technology, USA.
The PhD journey: how to choose a good supervisor, Newscientist, Careers, 20 February 2008.
Picking an Advisor: The Good, The Bad, and The Ugly by Jode Plank on 19th of July, 2010 in PhD Survival.
How to Choose a Faculty Advisor for Graduate School, University of California, San Diego, USA.
Suggested Reading:
How to Succeed in Graduate School: A Guide for Students and Advisors by Marie desJardins in Crossroads, the Online ACM Student Magazine, issues 1.2 (December 1994) and 1.3 (January 1995).
So long, and thanks for the Ph.D.!, the computer science graduate school survival guide by Ronald T. Azuma.
Rabbit's Ph.D. Thesis and Lion's Watch Repair Business, two parables for graduate students on the adviser perspectives.
Potential Faculty Advisers from the Department of Computer Science at UBI.


Lecture 8 (November 15, 2023, 11:00-12:00, room 6.10).

Sumário: A arte de revisão da literatura.
Abstract: The art of the literature review.

Required Reading:
Literature Reviews, The Writing Center, University of North Carolina at Chapel Hill.
A Systems Approach to Conduct an Effective Literature Review in Support of Information Systems Research, by Yair Levy and Timothy J. Ellis, Nova Southeastern University, Florida, USA.
Ten Simple Rules for Writing a Literature Review, by Marco Pautasso, University of California San Diego, USA.
TKDE Guidelines for Survey Papers, IEEE Transactions on Knowledge and Data Engineering, Vol. 19, No. 11, November 2007.
Literature Review by Luis M. Camarinha-Matos, Professor at Universidade Nova de Lisboa, Portugal.

PRISMA Methodology:
Welcome to the Preferred Reporting Items for Systematic Reviews and Meta-Analyses (PRISMA) website.
Preferred reporting items for systematic reviews and meta-analyses: the PRISMA statement by David Moher, Alessandro Liberati, Jennifer Tetzlaff, Douglas G Altman, PLoS Med, 2009 Jul 21, 6(7):e1000097. Also published in BMJ 2009, 339:b2535.
The PRISMA 2020 statement: an updated guideline for reporting systematic reviews by Matthew J Page et al., BMJ 2021, 372:n71.

Some Review Papers of my Research Group:
Detection and Mitigation of Low-Rate Denial-of-Service Attacks: A Survey, IEEE Access, Volume 10, pages 76648-76668, July 2022.
Attack and System Modeling Applied to IoT, Cloud, and Mobile Ecosystems: Embedding Security by Design, ACM Computing Surveys, Volume 53, Issue 2, Article 25, Pages 1–32, March 2020.
Approaches for Optimizing Virtual Machine Placement and Migration in Cloud Environments: A Survey, Journal of Parallel and Distributed Computing (Elsevier), Volume 111, Pages 222–250, January 2018.
Applications of Artificial Immune Systems to Computer Security: A Survey, Journal of Information Security and Applications (Elsevier), Volume 35, Pages 138–159, August 2017.
Security Issues in Cloud Environments: A Survey, International Journal of Information Security (Springer), Volume 13, Issue 2, Pages 113–170, April 2014.
Detection and Classification of Peer-to-Peer Traffic: A Survey, ACM Computing Surveys, Volume 45, Number 3, Article 30, Pages 1–40, June 2013.

Suggested Reading:
Beall’s List of Potential Predatory Journals and Publishers.


Lecture 9 (November 22, 2023, 11:00-12:00, room 6.10).

Sumário: Métodos de investigação científica.
Abstract: Research Methods.

Required Reading:
Research Methodology and Theory of Science: Science, Knowledge, Method, by Gordana Dodig-Crnkovic, professor at Mälardalen University, Sweden.
Scientific Methods in Computer Science, by Gordana Dodig-Crnkovic, in Proc. Conf. for the Promotion of Research in IT at New Universities and at University Colleges in Sweden, 2002.
Research / Scientific Methods in Computer Science by Vera Goebel & Thomas Plagemann, University of Oslo.
Research Methods in Computing: what are they, and how should we teach them? by Hilary J. Holz et al. in ITiCSE-WGR '06 Working group reports on ITiCSE on Innovation and technology in computer science education, pages 96 - 114.
Metodologias de Investigação Científica by Eugénio Oliveira, Professor at University of Porto, Portugal.
Suggested Reading:
Scientific Method by Luis M. Camarinha-Matos, Professor at Universidade Nova de Lisboa, Portugal.
Suggested Reading:
Where do New Ideas Come From? How do They Emerge? Epistemology as Computation (Information Processing), by Gordana Dodig-Crnkovic, Chapter for a book celebrating the work of Gregory Chaitin, Randomness & Complexity, from Leibniz to Chaitin, C. Calude ed., World Scientific, Singapore, 2007.

Suggested Reading:
Engineering Research Methodology A Computer Science and Engineering and Information and Communication ..., by Krishnan Nallaperumal, Manonmaniam Sundaranar University, December 2013.


Lecture 10 (November 29, 2023, 11:00-12:00, room 6.10).

Sumário: Design Science Research Methodology.
Abstract: A Metodologia Design Science Research.

Required Reading:
A design science research methodology for information systems research by Ken Peffers, Tuure Tuunanen, Marcus A. Rothenberger, and Samir Chatterjee, Journal of Management Information Systems, 24(3):45–77, 2007.
Design Science in Information Systems Research by Alan R. Hevner, Salvatore T. March, Jinsoo Park and Sudha Ram, MIS Quarterly, Vol. 28, No. 1, pp. 75-105, Mar., 2004. File in PDF.

Suggested Reading:
Design Science Research Methods and Patterns: Innovating Information and Communication Technology, by Vijay K. Vaishnavi, William Kuechler, CRC Press, 2nd edition (May 6, 2015), ISBN-10: 1498715257, 415 pages.


Lecture 11 (December 6, 2023, 11:00-12:00, room 6.10).

Sumário: Leitura de artigos científicos. Escrita do sumário de artigos científicos.
Abstract: Reading of scientific papers. Writting abstracts of scientific papers.

Required Reading About Reading of Scientific Papers:
How to Read a Paper by S. Keshav, ACM SIGCOMM Computer Communication Review 37(3): 83- 84, 2007.
Efficient Reading of Papers in Science and Technology by Michael J. Hanson, revised by Dylan J. McNamee.
How to Read a Scientific Article by Mary Purugganan, Jan Hewitt, Rice University.
How to Read and Understand a Scientific Paper: A Guide for Non-scientists by Jennifer Raff, University of Texas, 2013.

Required Reading About Writting Abstracts of Scientific Papers:
How to Construct a Nature Summary Paragraph.
How to Write an Effective Abstract.


Lecture 12 (December 13, 2023, 11:00-12:00, room 6.10).

Sumário: Escrita de artigos científicos.
Abstract: Writing of scientific papers.

Required Reading:
Editor’s Note: How to Write Research Articles in Computing and Engineering Disciplines by Ivan Stojmenovic, IEEE Transactions on Parallel and Distributed Systems 21(2): 145-147, 2010.
Editorial on How to Write Research Articles in Computing and Engineering Disciplines by Ivan Stojmenovic and Veljko Milutinovic.
Writing Technical Articles and Common Bugs in Writing by Henning Schulzrinne, Columbia University.
How to Write a Great Research Paper by Jon Turner, Washington University.
How to Write a Great Research Paper by Simon Peyton Jones, Microsoft Research, Cambridge.
Tips for Writing Technical Papers by Jennifer Widom, Stanford University.
Writing Scientific Articles Like a Native English Speaker: Top ten tips for Portuguese speakers, by Mariel A. Marlow, Clinics (Sao Paulo), 69(3): 153–157, 2014.
The Elements of Style, by W. Strunk and E. B. White.
Advice Collection for Graduate Students, by Xiaohui (Helen) Gu, North Carolina State University.


Lecture 13 (January 3, 2024, 11:00-12:00, room 6.10).

Sumário: Como realizar uma boa apresentação científica.
Abstract: How to give a good research talk.

Required Reading:
How to Give a Good Research Talk by Simon Peyton Jones, Microsoft Research, Cambridge.


Lecture 14 (January 10, 2024, 11:00-12:00, room 6.10).

Sumário: Apresentação e discussão de survey papers.
Abstract: Presentation and discussion of survey papers.

“One of the problems of being a pioneer is you always make mistakes and I never, never want to be a pioneer. It’s always best to come second when you can look at the mistakes the pioneers made”.

Seymour Cray (1925-1996), Public Lecture at Lawrence Livermore Laboratories on the introduction of the CRAY-1, 1976.
Last update: 2023/11/07.