INF-32306 Software Engineering
Course
Credits 6.00
Teaching method | Contact hours |
Lectures | 10 |
Learning supported by IT | |
Practical extensively supervised | 25 |
Practical intensively supervised | 14 |
Project learning | 25 |
Course coordinator(s) | drs. MR Kramer |
Lecturer(s) | ir. MA Zijp |
drs. MR Kramer | |
dr.ir. A Kassahun | |
Examiner(s) | drs. MR Kramer |
Language of instruction:
English
Assumed knowledge on:
Fundamentals of programming (e.g. INF-22306 Programming in Python)
Specifically you should be acquainted with the following concepts and techniques:
- variables, assignment, expressions, operators;
- functions (and/or procedures, subroutines, methods) and parameters; also making your own functions;
- control structures: at least: if, for, while;
- objects and their properties (fields, variables) and operations (methods);
arrays, including standard algorithms to traverse arrays (searching, summing, finding the largest element, etc.).
Continuation courses:
MSc Thesis Information Technology with an emphasis on software development.
Contents:
Software systems are developed to serve a specific purpose for specific groups of users. Such systems typically consist of many interacting components. Designing and implementing software systems goes beyond small-scale and ad-hoc programming. The techniques for building them are known under the term Software Engineering.
Software engineering is the application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software. In other words, it is the application of engineering to software. In this course we cover the process of developing a computer program from an initial idea to a tested and maintainable software system.
Learning outcomes:
After successful completion of this course students are expected to be able to:
- find occurrences of object-oriented (OO) software concepts in a given computer program (source code) or UML model;
- write a software specification using UML;
- assess adherence to specified software development practices;
- design a software system using object-oriented (OO) techniques;
- construct a working computer program according to defined specifications;
- formulate and execute functional tests for a software system;
- operate a software version management system for sharing software components and documentation.
Activities:
- project work;
- small individual assignments;
- developing components and integrating them.
Examination:
Each individual student has to fill out check-lists.
The final grade of the course is derived from the grades for these check-lists: group work (at least 5.5: 50%);
individual contributions to group work (at least 5.5: 50 %).
Literature:
See http://www.wageningenur.nl/inf
Programme | Phase | Specialization | Period | ||
---|---|---|---|---|---|
Restricted Optional for: | MBE | Biosystems Engineering | MSc | 5AF |