| Code |
16230
|
| Year |
3
|
| Semester |
S1
|
| ECTS Credits |
6
|
| Workload |
PL(30H)/T(30H)
|
| Scientific area |
Informatics
|
|
Entry requirements |
N/A
|
|
Mode of delivery |
Face-to-face.
|
|
Work placements |
Not applicable.
|
|
Learning outcomes |
1) Knowledge: By the end of the course unit, students should know: Agile/Scrum; requirements (user stories, scenarios, modeling); design/architecture (UML/SysML); QA, testing, and CI; AI’s impact (testing, refactoring, generation); code smells/refactoring; DevOps, pipelines, and AI-supported workflows. 2) Skills: Students should be able to: gather/specify requirements (user stories, modeling); apply Agile to plan/track/reflect on sprints; model systems (e.g., use case diagrams); implement tests (unit, integration, exploratory) with AI assistance; analyze quality and refactor code smells; design/operate CI/CD; use assistants responsibly; communicate effectively in teams (retrospectives, planning, demos). 3) Competences: Students should demonstrate: iterative team delivery (Scrum); collaborative proficiency (GitHub/pipelines); critical thinking; ethics/sustainability (responsible AI); continuous/lifelong learning.
|
|
Syllabus |
1. Introduction to Software Development and Software Products 2. Software Processes and Agile Development 3. Lifecycle Models: Waterfall, Iterative, Incremental 4. Features, Scenarios, and User Stories 5. Model-Driven Requirements Engineering 6. System Architecture 7. System Modeling 8. Software Testing and AI-Assisted Testing 9. Automated Refactoring and Code Smells with Intelligent Tools 10. Continuous Integration and Software Engineering Platforms 11. AI-Assisted Software Engineering
|
|
Main Bibliography |
- Bass L., Lu Q., Weber I., and Zhu L., Engineering AI Systems: Architecture and DevOps Essentials, Pearson, 2025 - Sommerville I., Engineering Software Products: An Introduction to Modern Software Engineering, Pearson, 2020 - Fowler M., Refactoring (2nd Edition), Addison-Wesley Signature Series, 2018 - Sommerville I., Software Engineering, 9th edition, Pearson Education, 2011 - Pressman R. S. and Ince D., Software Engineering - A Practitioner’s Approach, McGraw-Hill, 2007 - Rambaugh J., Jacobson I. and Booch G., The Unified Modeling Language Reference Manual, Addison-Wesley, 2005
|
|
Teaching Methodologies and Assessment Criteria |
Theoretical classes (T). Practical-laboratory classes (PL). Project-based learning.
1) Teaching-learning period F1: 1st term test (5 marks) F2: 2nd term test (6 marks) BT: 2 badges (1 mark). P: project (8 marks)
Grade = F1 + F2 + BT + P
Definition of Badge: Accomplishment of activities that promote student engagement and participation in class, fostering the acquisition of hard skills and especially soft skills such as proactivity, communication skills (with the teacher and peers), analytical ability, argumentative skills, teamwork, and problem-solving focus.
2) Exam: E: written exam (12 marks) P: project (8 marks)
Grade = E + P
|
|
Language |
Portuguese. Tutorial support is available in English.
|