1. Mandatory Disciplines for all Areas of Concentration 


Scientific Methodology (2 Credit Units, 30 Credit Hours)

Syllabus: Notions of scientific methodology. Theoretical reference of the scientific research. Concepts and techniques for the preparation of research projects: introduction, objectives, methodology, justification, expected results, state of the art, development, experiments, conclusions. Concepts and techniques to carry out the bibliographical and written review of scientific articles.


  • Raul Sidnei Wazlawick. Metodologia de Pesquisa para Ciência da Computação. Rio de Janeiro: Elsevier, 2008.
  • Antônio Joaquim Severino. Metodologia do trabalho científico. São Paulo: Cortez, 23rd Edition. 2007.
  • Elisabete Matallo M. de Pádua. Metodologia da pesquisa: abordagem teórico-prática. Campinas- SP: Papirus, 2004.
  • Justin Zobel. Writing for Computer Science. New York: Springer-Verlag, 2004.


Design and Analysis of Algorithms (4 Credit Units, 60 Credit Hours)

Syllabus: Basic concepts. Growth of functions. Recurrences. Ordination. NP-Complete Problems. Dynamic programming. Greedy algorithms. Algorithms in graphs. Notions of information retrieval. Pattern marriage. Data compression.


  • Introduction to Algorithms by Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest and Clifford Stein. The MIT Press; third edition (July 31, 2009).
  • Ziviani, N. Projeto de Algoritmos com Implementações em Java e C++. São Paulo: Thompson, 2007.
  • Udi Manber, Introduction to Algorithms: A Creative Approach, Addison-Wesley, 1 edition (January 11, 1989).
  • Szwarcfiter, Jayme L. Grafos e Algoritmos Computacionais. Campus. Rio de Janeiro, 1984.


Theory of Computation (4 Credit Units, 60 Credit Hours)

Syllabus: Finite automata. Context-free languages. Turing machines. Church Thesis. Non-computability.


  • Sipser, Michael. Introdução à Teoria da Computação. 2nd Edition. São Paulo: Cengage Learning – Pioneira, 2007. 488 p.
  • Menezes, Paulo Blauth. Linguagens Formais e Autômatos. Porto Alegre: Editora Sagra-Luzzato, 2005. 232p.
  • Diverio, Tiaraju Asmuz; Menezes, Paulo Blauth. Teoria da Computação: Máquinas Universais e Computabilidade. Porto Alegre: Sagra-Luzatto, 1999.


2. Elective Disciplines


Area of Concentration: Information Systems


Research Line – Information Management


Data Mining (4 Credit Units, 60 Credit Hours)

Syllabus: Introduction and applications of data mining. Process of knowledge discovery in databases. Pre-processing of data. Data mining techniques for the tasks of extracting association rules, clustering, classification and regression. Use of data mining tools. Current research topics in data mining.


  • P. Tan, M. Steinbach, and V. Kumar. Introduction to Data Mining. Addison Wesley, 2006.
  • J. Han and M. Kamber. Data Mining: Concepts and Techniques. Morgan Kaufmann, 2nd Edition, 2007.
  • I. Witten and E. Frank. Data Mining. Morgan Kauffmann, 2nd edition, 2007.
  • D. Ballard. Introduction to Natural Computation. MIT Press, March, 1997.


Design and Evaluation of Interactive Systems (4 Credit Units, 60 Credit Hours)

Syllabus: The classes will introduce the students in the area of Human-Computer Interface (IHC) and user interface design. The topics to be taught include: fundamental characteristics of human cognition, such as: reaction time, rules of perception, and memory performance. Models of interaction between people and their environments, symbology, mappings and constraints. An introduction to the history of interactive technologies. Iterative design, interfaces prototyping techniques. Methods of evaluation and studies with users.


  • Rogers, Y.; Sharp, H.; Preece, J. (2011) Interaction Design: Beyond Human-Computer Interaction  3rd Edition, John Wiley & Sons, Inc, 2011.
  • Shneiderman, B.; Plaisant, C. (2009) Designing the User Interface: Strategies for Effective Human-Computer Interaction (5th Edition, pp. 672, March 2009), Reading, MA: Addison-Wesley Publishing Co.
  • Mackenzie, I. S. (2012) Human-Computer Interaction: An Empirical Research Perspective. Morgan Kaufmann; 1 edition (December 31, 2012).
  • de Souza, C.S. (2005) The Semiotic Engineering of Human-Computer Interaction. Cambridge, MA. The MIT Press.
  • Barbosa, S.D.J.; Silva, B.S. (2010) Interação Humano-Computador. Série SBC, Editora Campus-Elsevier.


Information Systems for Sustainable Development (4 Credit Units, 60 Credit Hours)

Syllabus: General theory of systems and cybernetics. Systems and the concept of feedback, quality of life and sustainable environment. The different dimensions of sustainable development. Statistical and computational techniques for the generation of performance indicators. Knowledge engineering and information systems. Information systems solutions for sustainable development. Case studies. The classes will allow students to conduct experiments and user interface projects applying the theoretical concepts learned.


  • Atkinson, G., S. Dietz, E. Neumayer. Handbook of Sustainable Development. Edward Elgar Publishing, 2009.
  • Baltzan, Paige. Sistemas de Informação. Ed. Mcgraw Hill - ARTMED, 2012.
  • Bateson, Gregory. Cybernetics & Human Knowing: Gregory Bateson Essays for an Ecology of Ideas. Ed. Taunton Press, 2005.
  • Jonathan Harris, Timothy Wise, Kevin Gallagher, Neva R. Goodwin, Amartya Sen. A Survey of Sustainable Development: Social And Economic Dimensions (Frontier Issues in Economic Thought). Island Press; 1 edition (March 1, 2001).
  • Johnson, R. A.; Wichern, D. W. Applied multivariate statistical analysis. 5 edition [S.l.]: Prentice Hall, 2001.


Computational Visualization (4 Credit Units, 60 Credit Hours)

Syllabus: Visualization of information is a research area that focuses on the use of visualization techniques to help people understand and analyze data. While areas such as scientific visualization involve the presentation of data that have some physical or geometric match, information visualization focuses on abstract data without such correspondences. The objectives of the course are: to learn the principles involved in visualizing information. Know a variety of techniques and systems in the information visualization. Develop skills in criticizing different visualization techniques and their application to certain tasks. Learn to evaluate visualization systems.


  • Now You See It: Simple Visualization Techniques for Quantitative Analysis. Stephen Few. Analytics Press. 2009.
  • Interactive Data Visualization: Foundations, Techniques, and Applications. Matthew Ward, Georges Grinstein, Daniel Keim. A. K. Peters, 2011.
  • Information Visualization: Design for Interaction (2nd Edition). Robert Spence, Prentice Hall, 2007.

Other recommended sources:

  • Envisioning Information. Edward Tufte, Graphics Press, 1990.
  • Information Visualization: Perception for Design, 2nd ed. Colin Ware, Morgan Kaufmann, 2004.
  • Artigos da ACM e IEEE sobre Visualização de Informação.


Research Line – Software Engineering


Software Engineering (4 Credit Units, 60 Credit Hours)

Syllabus: Introduction to software and software engineering. Principles of software engineering. Qualities expected in software engineering. Lifecycles in software development. Software development processes: traditional and agile. Product quality and process quality. Process quality models. Measurement and analysis of software projects. Requirements engineering: functional and non-functional requirements. Requirements management. Software quality assurance. Verification and validation of software. Software testing. Evolution in software. Legacy systems, maintenance and re-engineering. Introduction to experimental software engineering.


  • Sommerville, I. Software Engineering, Addison-Wesley, Readings, 1995.
  • Pressman, Roger. Engenharia de Software. Ed. Makron Books, 1995, 1056p.
  • Humphrey, Watts S. A Discipline for Software Engineering. Ed. Addison Wesley, 1995, 789p.
  • Braude, E. Projeto de Software: Da Programação à arquitetura: uma abordagem baseada em Java, Bookman, 2005.
  • Larman, C. Utilizando UML e Padrões - Uma Introdução à Análise e ao Projeto Orientados a Objetos, Bookman, 2003.


Collaborative Software Engineering (4 Credit Units, 60 Credit Hours)

Syllabus: Distributed software development organizations are also getting the attention of researchers interested in communication, collaboration, and coordination over distances. Creating trust, awareness, shared understanding, and many other essentials of teamwork often depends on face-to-face interaction. Creating effective mechanisms to support distributed teams requires a deep understanding of how individuals come together to form teams and organizations. This course covers a set of topics that are essential for practitioners who will become participants and leaders in globally distributed projects as well as researchers interested in studying virtual teams, distributed organizations, and global software development. Course topics: Virtual teams and distributed organizations. Collaborative architectures for software development. Distributed development environments. Open Source Lessons. The relationship of outsourcing. Social networks and knowledge networks. Communication considering cultural factors.


  • Ivan Mistrík, John Grundy, André van der Hoek and Jim Whitehead. Collaborative Software Engineering. Springer; 2010 edition (March 11, 2010).
  • Raghvinder Sangwan, Matthew Bass, Neel Mullick and Daniel J. Paulish. Global Software Development Handbook (Applied Software Engineering Series). Auerbach Publications (September 29, 2006).
  • Dale Walter Karolak. Global Software Development: Managing Virtual Teams and Environments. January 1999, Wiley-IEEE Computer Society Press.


Software Quality (4 Credit Units, 60 Credit Hours)

Syllabus: Quality concepts. Software process and product quality concepts. Quality models. Project management models. Implantation of quality models. Software check. Software validation.


  • Thelma C. dos Santos Chiossi, Mario Lúcio Côrtes. Modelos de Qualidade de Software. Editora UNICAMP, 2001.
  • Mary Beth Chrissis, Mike Konrad, Sandra Shrum. CMMI - Guidelines for Process Integration and Product Improvement. Addison-Wesley Professional; 3 edition (March 20, 2011).
  • Ana Regina Cavalcanti da Rocha, ‪José Carlos Maldonado, ‪Kival Chaves Weber. Qualidade de Software - Teoria e Prática. Prentice Hall, 2001.‬‬‬‬‬‬‬‬‬‬‬‬‬‬
  • G. Gordon Schulmeyer. Handbook of Software Quality Assurance. Artech House Publishers; 4 edition (September 30, 2007).


Software Process Technology (4 Credit Units, 60 Credit Hours)

Syllabus: Modeling and execution of software processes. Process modeling aimed at improving maturity in organizations. Study of paradigms of modeling and execution of processes. Integrated modeling process model considering maturity models.


  • Pankaj K. Garg, Mehdi Jazayeri. Process-Centered Software Engineering Environments. Institute of Electrical & Electronics Enginee (October 1995). 409p.
  • Ian Graham, Brian Henderson-Sellers, Houman Younessi. The OPEN Process Specification. Addison-Wesley Professional; 1 edition (September, 1997).
  • Ivar Jacobson, Grady Booch, James Rumbaugh. The Unified Software Development Process. Addison-Wesley Professional; 1 edition (February, 1999).


Area of Concentration: Computer Systems


Research Line – Communication Networks


Network Performance Assessment (4 Credit Units, 60 Credit Hours)

Syllabus: Introduction to analytical performance models. Mathematical prerequisite revision and Queue Theory. Analytical modeling of queuing networks. Approximate methods of analysis of queuing networks. Kleinrock's Theorem. Flows. Capacity planning of computational systems. Simulation Laboratory.


  • Bertsekas D., Gallager R. Data Networks. 2a Edição, Prentice-Hall. 1992.
  • Alberto Leon-Garcia, Indra Widjaja. Communication Networks. McGraw-Hill Science/Engineering/Math; 2 edition (July 16, 2003).
  • Kishor S. Trivedi. Probability & Statistics with Reliability, Queuing, and Computer Science Applications. 2nd Edition, Wiley. November 2001.
  • William Stallings. Data and Computer Communications. Prentice Hall; 10 edition (September 23, 2013).
  • Fishwick, P. Simulation Model Design and Execution: Building Digital Worlds. Prentice Hall; 1 edition (January 27, 1995).


New Technologies for Internet of the Future (4 Credit Units, 60 Credit Hours)

Syllabus: History and review of important concepts. Models and challenges related to the internet of the future. New proposals of Internet architectures (slate-clean and evolutionary). Software defined networks. Virtualization. Frameworks to support experimental research. Requirements for building environments for experiments and network virtualization; Experimental research in internet of the future.


  • Siamak Azodolmolky. Software Defined Networking with OpenFlow. Packt Publishing (October 25, 2013).
  • John Day. Patterns in Network Architecture: A Return to Fundamentals. Prentice Hall; 1 edition (January 6, 2008).
  • Ning Wang. Recent Advances in Providing QoS and Reliability in the Future Internet Backbone. Nova Science Publishers Inc (26 Aug 2011).
  • RFCs e artigos diversos.


Computer Networks (4 Credit Units, 60 Credit Hours)

Syllabus: Introduction and basic concepts. Application layer: services, layer functionalities and the main Internet application protocols (http, ftp, smtp, dns). Transport Layer: Services layer functionalities and Internet transport protocols (UDP and TCP). Network Layer: Services layer functionalities and IP protocol. Interlacing layer and the main technologies of local and metropolitan networks.


  • Kurose & Rossi. Computer Networking: A Top-Down Approach Featuring the Internet. 5ª  edição. 2009.
  • Tanenbaum, A. Computer Network. 5th Edition. Prentice Hall, 2010.
  • Comer, D. Internetworking with TCP/IP. 5th Edition. Prentice Hall, 2005.
  • RFCs and various articles.


Services and Platforms for Smart Cities (4 Credit Units, 60 Credit Hours)

Syllabus: Introduction to computer networks: applications, services and protocols. Multimedia systems: distribution of videos in smart cities. Sensor networks: applications, services, protocols and energy efficiency for smart cities. Software-based networks: openflow, component-based model. Technologies, platforms and services for smart cities. Performance evaluation: simulation and experimentation.


  • Anthony M. Townsend. Smart Cities: Big Data, Civic Hackers, and the Quest for a New Utopia. W. W. Norton & Company; 1 edition, October 7, 2013.
  • Vivek Kumar, Pankaj Kumar, Tarsem Kumar. 5G: Insight into future: Next Generation 5G mobile wireless technology. LAP LAMBERT Academic Publishing, May 13, 2012.

Scientific Articles in the Area:

  • Paolo Neirotti, Alberto De Marco, Anna Cagliano, Giulio Mangano, Francesco Scorrano. Current trends in Smart City initiatives: Some stylised facts. Cities. Volume 38, June 2014, Pages 25–36.
  • Jungwoo Lee, Hyejung Lee. Developing and validating a citizen-centric typology for smart city services. Government Information Quarterly. Available online 2 May 2014.
  • Anna Kramers, Mattias Höjer, Nina Lövehagen, Josefin Wangel. Smart sustainable cities – Exploring ICT solutions for reduced energy use in cities. Environmental Modelling & Software. Volume 56, June 2014, Pages 52–62.


Parallel and Distributed Computing Systems (4 Credit Units, 60 Credit Hours)

Syllabus: Distributed systems architecture, models and classification. Characterization of process communication. Distributed Algorithms. Business components in distributed application. Service oriented architectures. Introduction to parallel programming. Models of parallel architectures. Performance measures of parallel applications. Complexity of parallel programs. Exploration of parallelism in programs: implicit and explicit. Parallel programming paradigms: message exchanges and shared memory. Writing parallel programs.


  • B. Wilkinson and M. Allen, Parallel Programming: Techniques and Applications Using Networked Workstations and Parallel Computers, Prentice Hall, 2nd Edition, 2004.
  • A. Grama, G. Karypis, V. Kuma, A. Gupta. Introduction to Parallel Computing. 2nd Edition, Addison-Wesley. 2003.
  • G. Couloris, J. Dollimore, T. Kindberg, Distributed Systems: Concepts and Design, 5rd Edition, Addison-Wesley, 2011.
  • Andrew S. Tanenbaum e Maarten Van Steen. Sistemas Distribuídos: princípios e paradigmas. 5th Edition, Pearson. 2007


Access Network Technology (4 Credit Units, 60 Credit Hours)

Syllabus: Introduction to access networks. Wired access networks: xDSL networks. PLC networks. Fiber optic access networks. Coaxial cable. Hybrid networks with fiber optic (FFTx, HFC). Wireless access networks: Wireless LAN. Mobile cellular system (UMTS / LTE). Satellite access networks. Hybrid fiber-radio (RoF) and fiber-wireless (FiWi) networks.


  • Paul France. Local Access Network Technologies (Telecommunications). Published by Institution of Engineering and Technology, 2003.
  • Adalton P. Toledo . Rede de acesso em Telecomunicações. Makron Books, 2001.
  • Matthew N. O. Sadiku. Optical and wireless communications. CRC Press, 2002
  • Articles of scientific journals in the area.
  • Technical standards.


Research Line – Computational Intelligence


Evolutionary Computation (4 Credit Units, 60 Credit Hours)

Syllabus: Introduction to evolutionary computing. Evolution by natural selection. Basic concepts and components of evolutionary algorithms. Genetic algorithms. Evolutionary strategies. Evolutionary programming. Genetic programming. Classification systems. Hybrid algorithms. Treatment of restrictions. Multiobjective optimization with evolutionary algorithms.


  • A.E. Eiben, J.E. Smith. Introduction to Evolutionary Computing. Springer. 2008. ISBN: 3540401849.
  • D.B. Fogel. Evolutionary Computation: Toward a New Philosophy of Machine Intelligence. 3rd Edition. Wiley-IEEE Press. 2005. ISBN: 471669512.


Computer Graphics and Image Processing (4 Credit Units, 60 Credit Hours)

Syllabus: The discipline focuses on the areas of image synthesis and image processing. In the area of synthesis will be presented contents referring to the geometric transformations in two and three dimensions; homogeneous coordinates and transformation matrices, projections, camera models, and definition of three-dimensional objects and scenes. Also included is the Rendering Process: light sources; removal of hidden lines and surfaces; lighting and shading models: Flat, Gouraud and Phong. The image processing area will address the main fundamentals of digital image processing, capture and training, sampling and quantization, enhancement techniques, segmentation, representation and image description. In addition to image sorting and compression.


  • Pratt, William K. Introduction to Digital Image Processing. CRC PRESS. 2014.
  • Theoharis, T.; Papaioannou, G.; Platis, N.; Patrikalakis, M. Graphics and Visualization: Principles & Algorithms. A K Peters/CRC Press, 2007.
  • Shirley,P.; Marschner, S. Fundamentals of Computer Graphics. CRC Press, 2009.
  • Gonzalez, Rafael C. e Woods, Richard E., Digital Image Processing, 3rd edition, 2008, Addison Wesley.
  • Gomes, J.; Velho, L. Computação Gráfica: Imagem. São Paulo: IMPA, 1994.
  • Parker, R. J. Algorithms for Image Processing and Computer Vision. Wiley, 2010. 


Computational Intelligence (4 Credit Units, 60 Credit Hours)

Syllabus: Introduction and paradigms of computational intelligence. Basic concepts of artificial neural networks. Artificial neuron. Perceptrons and Perceptrons multiple layers. Training and Generalization of Artificial Neural Networks. Nebular Sets: Basic Concepts and Operations. Nebula Logic. Adaptive Nebula Systems. Computing based on social interactions. Collective intelligence. Applications.


  • Andries P. Engelbrecht. Computational Intelligence: An Introduction. 2nd Edition. Wiley. 2007.
  • Simon O. Haykin. Neural Networks and Learning Machines. 3rd Edition. Prentice Hall. 2008.
  • Jyh-Shing Roger Jang, ‪Chuen-Tsai Sun, ‪Eiji Mizutani. Neuro-Fuzzy and Soft Computing: A Computational Approach to Learning and Machine Intelligence. Prentice Hall. Prentice Hall; 1 edition (September 26, 1997).‬‬‬‬‬‬‬‬‬‬‬‬‬‬


Linear and Integer Optimization (4 Credit Units, 60 Credit Hours)

Syllabus: Linear programming: Primal and dual simplex methods, duality, sensitivity analysis, column generation, Dantzig-Wolfe decomposition methods. Whole programming: modeling, solution methods, cut planes, implicit enumeration, generation of columns in whole programming. Dynamic Programming. Basic network optimization problems: Minimum Generation Tree, Minimum Path, Transport, Assignment, Minimum Cost Flow, and Maximum Flow.


  • L.A. WOLSEY. Integer Programming. 1st Edition. Wiley-Interscience.1998.
  • N. Maculan e M. Fampa. Otimização Linear. University of Brasilia Publisher (UnB), 2006.


Special Topics in Computing (4 Credit Units, 60 Credit Hours)

Syllabus: Variable syllabus. Disciplines offered annually with permission of the collegiate.

Variable bibliography.