Foundations of Professional Software Engineering COMPSCI1019

  • Academic Session: 2019-20
  • School: School of Computing Science
  • Credits: 30
  • Level: Level 1 (SCQF level 7)
  • Typically Offered: Runs Throughout Semesters 1 and 2
  • Available to Visiting Students: No
  • Available to Erasmus Students: No

Short Description

Students on the GA programme will be going straight into a working environment, so it is important that they understand the fundamentals of working as a professional. This course will introduce them to many facets of software development beyond simply writing code, which will be important to prepare them for professional work.

Timetable

Note that the first half of the course will be spent largely on campus, with the second half spent largely in the workplace.

Requirements of Entry

None

Excluded Courses

None

Co-requisites

How to Learn a New Language

Assessment

Written examination 55%, Report on workplace practices 30%, mid semester class tests 10%, in-class quizzes 5%

Main Assessment In: December

Course Aims

The aim of this course is to impart a breadth of knowledge about software engineering in a professional environment. This knowledge will cover ethical issues, design lifecycles, development methodologies and security factors. It will also develop their ability to critically assess software development design decisions. Students should also develop an understanding of common software development tools and packages on a conceptual level to make their transition into the workplace more efficient.

Intended Learning Outcomes of Course

By the end of this course students will be able to:

1. Discuss ethical and legal issues faced by professional software developers

2. Evaluate standard software engineering lifecycles and development methodologies

3. Describe a range of different software testing methodologies

4. Evaluate object-oriented design patterns in order to contrast workplace practices

5. Explain how to avoid common software security risks in the workplace, including human factors

6. Explain the rationale for using common software development toolsets to apply these in the workplace

7. Appraise workplace practices and methodologies in order to critically discuss their application

Minimum Requirement for Award of Credits

Students must submit at least 75% by weight of the components (including examinations) of the course's summative assessment.