Publication in the Diário da República: Despacho n.º 13495/2022 - 18/11/2022
10 ECTS; 1º Ano, 1º Semestre, 30,0 PL + 30,0 TP + 30,0 OT
- José Casimiro Nunes Pereira
- Renato Eduardo Silva Panda
Learn to apply software development methodologies, namely agile methodologies when developing modern web applications using a continuous integration approach. Exposure to state-of-the-art technologies and paradigms used to develop complex software solutions.
Traditional vs. Agile software development methodologies.
Application of agile concepts to develop modern software.
Software development topics: Model-View-Controller (MVC) paradigm, web frameworks, RESTful APIs and SPAs, ORM systems, VCS, code reviews and continuous integration, automated tests, WebSockets, caching, background jobs and message queues.
Theoretical (25%, 5 points in 20) Written exam (closed-book), with a minimum grade of 35% to be approved.
Practical (75%, 15 in 20) Practical group project (software development using technologies introduced weekly), evaluated continuously (per sprint, as well as final deliverables).
- Ruby, S. (2022). Agile Web Development with Rails 7. US: Pragmatic Bookshelf
- Sutherland, J. e Schwaber, K. (0). The definitive guide to scrum: the rules of the game. Acedido em 21 de novembro de 2018 em https://www.scrum.org/resources/scrum-guide
Theoretical presentations to introduce concepts and practical workshops to demonstrate and experiment with new technologies.
Practical labs are used to discuss, plan, and develop the practical project (most work is extra-class).
Software used in class