Professional Programming
Study plans 2016-2017
-
IMT3602
- 5 ECTS
Prerequisite(s)
IMT2021 Algorithms
IMT2243 Software Engineering
On the basis of
Working on a large full semester project in another course, for example the Bachelor Oppgave or Masters Thesis.
Expected learning outcomes
The students will learn skills and knowledge related to developing a project using the principles of professional software development.
Knowledge:
- Understanding the strenghts and weaknesses of different programming languages
- Understanding the need for process control, and communication systems for software development
Skills:
- Use of version control systems in large development projects, including ticket tracking, branching, SKUs and deployment
- Ability to comment code in accordance with an agreed standard and in a professional manner
- The ability to program for clarity
- Develop and build library components for larger systems
- Integration of multiple libraries into a large project
- Perform code reviews
General Competence:
- Professionalism in approach to software development
- Give and receive critisim of coding practices and decisions
- Ask accurate questions to solve logical and programming problems
Topic(s)
The topics include but are not limited to:
- Using version control in teams.
- Coding styles
- Comparitive languages
- Bug tracking and solving
- Commenting styles
- Deployment of applications
- Integrating libraries
- Developing library modules.
- Debugging
- Testing
- Deployment
- Packaging
Teaching Methods
Group works
Project work
Teaching Methods (additional text)
The main teaching method for this course will be group meetings with code reviews. Students will present their work and have that worked review in front of the group. This allows students to learn from each other, and helps students learn to present their code and defend their coding decisions
Form(s) of Assessment
Portfolio Assessment
Form(s) of Assessment (additional text)
The assessment of this course is based on:
- Quality of code written
- Quality of comments and coding style
- Quality and relevance of comment comments in version control
- Quality of involvement in code reviews and refactoring of code
Grading Scale
Alphabetical Scale, A(best) – F (fail)
External/internal examiner
Internal examiner, with external examiner every 5 years, next time in 2020-2021.
Re-sit examination
No resit. The course must be retaken.
Examination support
None
Teaching Materials
Web based resources, based on the language and processes chosen for the project.