THE UNIVERSITY of EDINBURGH

DEGREE REGULATIONS & PROGRAMMES OF STUDY 2014/2015
- ARCHIVE as at 1 September 2014

University Homepage
DRPS Homepage
DRPS Search
DRPS Contact
DRPS : Course Catalogue : School of Informatics : Informatics

Undergraduate Course: Informatics 2C - Introduction to Software Engineering (INFR08019)

Course Outline
SchoolSchool of Informatics CollegeCollege of Science and Engineering
Course typeStandard AvailabilityAvailable to all students
Credit level (Normal year taken)SCQF Level 8 (Year 2 Undergraduate) Credits10
Home subject areaInformatics Other subject areaNone
Course website http://course.inf.ed.ac.uk/inf2c-se Taught in Gaelic?No
Course descriptionThis course gives an overview of the engineering of software systems. It introduces the main activities and concerns of industrial and commercial software engineering, and enables students to go beyond programming towards software engineering in their own work.
Entry Requirements (not applicable to Visiting Students)
Pre-requisites Students MUST have passed: Informatics 1 - Computation and Logic (INFR08012) AND Informatics 1 - Data and Analysis (INFR08015) AND Informatics 1 - Functional Programming (INFR08013) AND Informatics 1 - Object-Oriented Programming (INFR08014)
Co-requisites
Prohibited Combinations Other requirements None
Additional Costs none
Information for Visiting Students
Pre-requisitesNone
Displayed in Visiting Students Prospectus?Yes
Course Delivery Information
Delivery period: 2014/15 Semester 1, Available to all students (SV1) Learn enabled:  Yes Quota:  None
Web Timetable Web Timetable
Course Start Date 15/09/2014
Breakdown of Learning and Teaching activities (Further Info) Total Hours: 100 ( Lecture Hours 15, Seminar/Tutorial Hours 5, Summative Assessment Hours 1, Programme Level Learning and Teaching Hours 2, Directed Learning and Independent Learning Hours 77 )
Additional Notes
Breakdown of Assessment Methods (Further Info) Written Exam 60 %, Coursework 40 %, Practical Exam 0 %
Exam Information
Exam Diet Paper Name Hours & Minutes
Main Exam Diet S1 (December)1:00
Resit Exam Diet (August)1:00
Summary of Intended Learning Outcomes
- Explain how to apply commonly agreed ethical principles to a software engineering situation.
- Motivate and describe the activities in the software engineering process.
- Construct use cases for the system requirements.
- Explain and construct UML class diagrams and sequence diagrams.
- Understand and construct a software system using Java.
- Assess the software system using testing and other appropriate tools.
- Evaluate aspects of human usability of an application program or web site.
- Compare different approaches to software licensing.
Assessment Information
In order to pass the course you must satisfy all of the following requirements:
* achieve at least 35% in the examination;
* achieve a total of at least 25% in assessed coursework;
* obtain a combined total mark of at least 40%

The students will work together in small groups to develop a software. The software development project will be split into assignments focussing on the different software engineering activities - requirements capture, system design, implementation, and testing. Most assignments (if not all) will be group assignments.

To assess individuals fairly in a group assignment, the assignment will be composed of several tasks and an individual in the group will need to complete a set of tasks (non-overlapping with other members) independently.
Special Arrangements
None
Additional Information
Academic description Not entered
Syllabus The aim is to understand and execute the process of building software systems. The process will entail capturing requirements as use-cases, modelling the system using class and sequence diagrams, implementing the system using Java and running requirements-based tests and system level tests. Beyond the construction process itself, some important surrounding concerns are
introduced including: satisfying non-functional requirements, building good human interfaces, and considering various software licensing models.

The core topics covered, all at introductory level, in this course are:
* Software engineering as a discipline: history, professionalism, ethics
* Software engineering activities: requirements capture; design; implementation; testing, debugging
and maintenance; software process management.
* Modelling in UML (use cases, class diagrams, sequence diagrams).
* Design principles and their influence on maintainability of software.
* Software configuration management.
* Verification, validation and testing.
* Software usability and HCI issues.
* Economic and social aspects of software ownership, patents and licensing.
* Software quality assurance.

Some further topics will also be covered, depending on topicality and lecturer's expertise. These might include, for example:
* Model-driven development: how to use UML for construction, not just description, of systems
* Software in the world: embedded systems, web services, cloud computing, autonomous computing and other means of delivering functionality
* Agile software development.
Transferable skills Not entered
Reading list Software Engineering, I. Somerville
Study Abroad Not entered
Study Pattern Not entered
KeywordsNot entered
Contacts
Course organiserDr Ajitha Rajan
Tel:
Email: arajan@exseed.ed.ac.uk
Course secretaryMs Kendal Reid
Tel: (0131 6)50 5194
Email: kr@inf.ed.ac.uk
Navigation
Help & Information
Home
Introduction
Glossary
Search DPTs and Courses
Regulations
Regulations
Degree Programmes
Introduction
Browse DPTs
Courses
Introduction
Humanities and Social Science
Science and Engineering
Medicine and Veterinary Medicine
Other Information
Combined Course Timetable
Prospectuses
Important Information
 
© Copyright 2014 The University of Edinburgh - 29 August 2014 4:10 am