Software Development Laboratory
Cod: 21179
Department: DCET
Scientific area: Computer Engineering
Total working hours: 156
Total contact time: 26

This curricular unit provides students with a close contact with environments, tools, and methods for software development, supporting the transition from individual projects to large-scale, and team-oriented projects. Students should learn software engineering concepts that support this main goal.

1. Software design:
    Architectural styles, including Model-View-Controller (MVC)
2- Separation of Concerns
3. Software tests
    Types of tests
    Error handling (including exceptions) within MVC
4. Separation between interface and implementation
    Concept and approaches
    Implementatino techniques

Mandatory readings:
Guerreiro, Sérgio (2015). Introdução à Engenharia de Software. FCA: Lisboa
Optional readings:
Sebenta de Desenvolvimento de Software 2009/2010 (online)
IEEE Computer Society (2014). SWEBOK® V3.0 - Guide to the Software Engineering Body of Knowledge. IEEE Computer Society Press.
Software resources:
Visual Studio Community


Continuous assessment is privileged: 2 or 3 digital written documents (e-folios) during the semester (40%) and a presence-based final exam (p-folio) in the end of the semester (60%). In due time, students can alternatively choose to perform one final presence-based exam (100%).