Introduction
Year: 3th and 4th
Semester: 1st
Credits: 8
ECTS: 8
Hours/Week: 2h lectures e 3,5h laboratories
Classes: 1 lecture, 8 laboratory
Teacher:
João Correia Lopes
Aims
- To promote the acquisition of concepts, methodologies and skills of Software Engineering to be used in the design and development of software products.
- To give the practical skills in applying the tools to support the methodology to be used during the development of the product in its entire life-cycle, including testing and documentation.
Contents
- Introduction to Software Engineering.
- Requirements engineering. Elicitation, analysis, specification, validation and management of requirements.
- Modelling languages. User Requirements Document.
- Object-oriented software design. Structure, behaviour and architecture design.
- User interfaces design.
- Coding with Java.
- Verification, validation and testing of software.
- Software maintenance. Configurations and versioning.
- Project management.
Main Bibliography
- Alberto Rodrigues da Silva, Carlos Videira, UML — Metodologias e Ferramentas CASE. 2ª Edição, Volume 1, Centro Atlântico Editora, Maio 2005, ISBN: 989-615-009-5
Complementary Bibliography
- Grady Booch, James Rumbaugh, Ivar Jacobson, The Unified Modeling Language User Guide, Addison Wesley Professional, 2nd Edition, 2005, ISBN: 0-321-26797-4
- Roger Pressman, Software Engineering: A Practicioner's Approach, McGraw Hill, 6th Edition, 2005, 896 pp, ISBN: 0-07-123840-9
- Ian Sommerville, Software Engineering, Addison-Wesley, 8th Edition, 2006, 840pp, ISBN: 03213-1379-8
- Bruce Eckel, Thinking In Java, 4th Edition, Prentice Hall, 2006, 1482pp, ISBN: 01318-7248-6
Teaching Procedures
The subject has lectures and laboratory classes.
Lectures will be used to present the theoretical content, together with practical examples using the methodologies and tools to be used in laboratory. The students will work in groups of five people in a software project.
Software
Evaluation Type
Continuous evaluation without Final Exam.
Evaluation Components
Practical work (TP) will be accessed through the documentation delivered, the product developed and the student's own performance in the laboratory classes:
- TP1: User Interface Prototype
- TP2: User Requirements Document
- TP3: Preliminary Design Document
- TP4: Vertical Prototype
- TP5: Detailed Design Document
- TP6: Test Plan
- TP7: Product
- TP8: Demonstration
- TP9: Continuous assessment of the students' own performance
Theoretical content will be accessed through Continuous Assessment Test (CAT) sheets (FT1 to FT4) to be filled by each student in some of the laboratory classes.
Frequency Attainment
Minimum required to pass this course: 50% in each of the practical components (TP1 to TP9) and 40% overall mark in the CAT sheets.
Final Classification
Classification = 80% TP + 20% FT,
where:
TP = TP1 + 3* TP2 + 2* TP3 + 2* TP4 + 3* TP5 + TP6 + 6* TP7 + TP8 + TP9
and:
FT = FT1 + FT2 + FT3 + FT4
Special Work and Tests
The practical work is required for all enrolled students and must be submitted before the deadlines advertised. After product demonstration, an oral session may be required for some of the students.
Special Evaluation (Working Students, etc)
Students under special regimes are expected to submit the practical work required for this subject as ordinary students.
Classification Improvement
Students may improve the mark obtained in the subject's next edition.