|
Course unit
SOFTWARE ENGINEERING
SCP4065580, A.A. 2019/20
Information concerning the students who enrolled in A.Y. 2017/18
ECTS: details
Type |
Scientific-Disciplinary Sector |
Credits allocated |
Core courses |
INF/01 |
Computer Science |
13.0 |
Course unit organization
Period |
Annual |
Year |
3rd Year |
Teaching method |
frontal |
Type of hours |
Credits |
Teaching hours |
Hours of Individual study |
Shifts |
Practice |
1.0 |
8 |
17.0 |
No turn |
Laboratory |
4.0 |
32 |
68.0 |
No turn |
Lecture |
8.0 |
64 |
136.0 |
No turn |
Examination board
Board |
From |
To |
Members of the board |
3 a.a 2018/2019 |
01/10/2018 |
28/02/2020 |
VARDANEGA
TULLIO
(Presidente)
CARDIN
RICCARDO
(Membro Effettivo)
CONTI
MAURO
(Supplente)
FILE'
GILBERTO
(Supplente)
SPERDUTI
ALESSANDRO
(Supplente)
|
Prerequisites:
|
The subject taught in this class requires basic knowledge of:
- the programming languages (C and C++) and associated programming paradigms (imperative and object-oriented) taught in the first two years of the curriculum; and
- the principal functionalities of data base management systems and of their most common SQL-based implementation technologies;
demonstrated by successful marks obtained in the corresponding 2nd-year classes.
Access to the class activities of Software Engineering will only be granted to students that meet the above requirements. |
Target skills and knowledge:
|
The class spans two semesters. In the first one, it presents the body of knowledge at the base of the software engineering profession. In the first half of the subsequent semester, it engages the students in the direct application of the earlier teachings, by means of an ambitious and demanding collaborative work centered on the development of a software product commissioned by external entities and subject to formal conduct rules and calendar.
Specifically, the student following this class is expected to acquire familiarity with:
1) methods and techniques to organize and manage collaborative work (project planning, task assignment, task scheduling, progress monitoring, verification of outcomes);
2) business-driven interaction with external customers around product requirements, user needs, prototype demonstrations, product releases;
3) methods and techniques for self-learning and knowledge sharing ;
4) methods and techniques for presentation and commmunication. |
Examination methods:
|
The final exam for this class is made of two distinct parts.
The first part is individual and it is taken at the end of the teaching period (shortly after the start of the second semester): in it, the student answers a number of theoretical and technical questions on subjects addressed in the class teaching. This part contributes 40% of the final marks.
The remainder 60% proceeds from the mean of the evaluation of the progress reviews made by the instructor on the partial and final outcomes of the project work conducted by the student groups. |
Assessment criteria:
|
The written examination is comprised of 3 questions with technical and practical bearing (centered on problem-solving) and 3 questions focused on fundamental elements of the body of knowledge of software engineering.
Those six questions collectively aim at ascertaining the degree of maturation achieved by the student with regard to the principal themes addressed in both class and project work.
To gauge the collaboration skills acquired by the student in the collaborative project, two of the six questions in the written examination will require a coordinated answer to be provided by groups of two to three students randomly formed by the instructor.
The evaluation of the progress reviews collectively measures the gradient of improvement in the quality of product delivery (for both documents and software artifacts) as well as of public presentations and demonstrations, achieved by each group. |
Course unit contents:
|
For an up-to-date sample of the lecture topics addressed in the class, see <http://www.math.unipd.it/~tullio/IS-1/2017/>, which include lecture slides and complementary learning material. |
Planned learning activities and teaching methods:
|
1) class lectures;
2) flipped-classroom activities centered on selected topics that help prepare the students' awareness of certain software engineering tools;
3) exercises for theory, with immediate feedback from the instructor;
4) practical activities, with progressive feedback from the instructor. |
Additional notes about suggested reading:
|
All of the lecturing material presented in class is posted on a page dedicated to the class, organized by lecture schedule. In addition to that, the class page offers additional learning material that the students may freely download. |
Textbooks (and optional supplementary readings) |
-
IEEE Computer Society. Software Engineering Coordinating Committee, Guide to the Software Engineering Body of Knowledge. --: --, 2014. https://www.computer.org/web/swebok
-
Ian Sommerville, Software Engineering (10th edition). --: Pearson Education, 2015. http://www.pearsoned.co.uk/bookshop/detail.asp?item=100000000608065
-
Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides, Design Patterns: Elements of Reusable Object-Oriented Software. --: Pearson Education, 1995. http://www.pearsoned.co.uk/bookshop/detail.asp?item=171742
|
Innovative teaching methods: Teaching and learning strategies
- Problem based learning
- Interactive lecturing
- Working in group
- Problem solving
- Flipped classroom
- Work-integrated learning
Sustainable Development Goals (SDGs)
|
|