Software Engineering Fundamentals
Syllabus, Bachelor's level, 2IS232
- Code
- 2IS232
- Education cycle
- First cycle
- Main field(s) of study and in-depth level
- Information Systems G1N, Software Engineering G1N
- Grading system
- Fail (U), Pass (G), Pass with distinction (VG)
- Finalised by
- The Department Board, 28 March 2018
- Responsible department
- Department of Informatics and Media
General provisions
The course is included in the following degree programme:
- Bachelor's Programme in Information Systems, specialisation software engineering 180 credits
- Bachelor's Programme in Digital Business Development
Be given also as a freestanding course
Entry requirements
General entry requirements and English 6, Mathematics 3b/3c, Social Studies 1b/1a1+1a2 or English B, Mathematics C, Civics A
Learning outcomes
Regarding knowledge and understanding the student is expected to be able to on completion of the course:
- explain the architecture and function of computer systems,
- account for digital representation of text, image, sounds and documents,
- be able to account for various types of software and explain their role in computers.
Regarding competence and skills the student is expected to be able to on completion of the course
- carry out common arithmetic and logical operations on binary, octal and hexadecimal numbers,
- systematically apply problem solving methodology,
- develop structured problem descriptions and model algorithms.
Regarding judgement and approach the student is expected to be able to on completion of the course:
- relate conceptual models of algorithms to their implementations
Content
The course generally deals with how computers function as a system of interacting components, as well as give insight into the function of the microprocessor. Various types of software are discussed. Further, the concepts of high level programming language, compilation and machine code to illustrate how software, software development, and execution of machine code in the microprocessor are linked.
Furthermore, the course deals with how text, image, sounds, and documents are represented in the memory of the computer. The starting point is training in the binary number system including basic arithmetic and logical operations on binary numbers. Also, hexadecimal and octal numbers are used to give the students a more general understanding of positioning systems. Further, the concept data type as well as different data types and related operators are included.
Based on microprocessor's working method and representation of data students work with different methods to interpret and model algorithms. A reflection between conceptual representations of algorithms are included and related to implementations in high level language. The work with algorithms is dealt with as part of a general problem solving methodology where a structured problem is formulated from natural language problems and later modelled into an algorithm that solves the problem.
Instruction
The teaching is given as lectures and laboratory work.
Assessment
The course is examined through laboratory work, assignments and written exam.
If there are special reasons for doing so, an examiner may make an exception from the method of assessment indicated and allow a student to be assessed by another method. An example of special reasons might be a certificate regarding special pedagogical support from the University's disability coordinator.