Contribution of the course to the overall degree programme goals
The aim of the course is to provide the main methodologies required for software engineering (from the initial business plan, to the use of UML for the analysis and design phases, to the testing techniques for verification and validation of a software product (an Android app).
Expected learning outcomes
The student will get the skills yo apply suitable methodologies for the design and implementation of a software product, in all the software life cycle phases.
Programming. Algorithms. Architectures and OS.
1. Software Processes and Project Management
2. Requirement Engineering Processes - System Models - Prototyping
3. Design Methodologies
4. Verification and Validation Techniques
5. Managing People - Software Cost Estimation - Software Change
6. Legal and Quality issues
7. Development of Android apps
Ian Sommerville. Software Engineering, Pearson, 2015
Roger S Pressman, Software Engineering: A Practitioner's Approach, McGraw-Hill, 2014
Sinan Si Alhir: Learning UML, O'Reilly, 2003
A project will be given to teams of 3/4 students. The aim of the project is the full development of a new Android app. Intermediate appointments will be carried to discuss the quality of the planning, analysis, design, implementation and testing of the software application. A special care will be given to the documentation quality.
The final exam will consist in the presentation of the app.
Lectures, team-working, project revisions
Last update of the programme