Undergraduate Course: Software Engineering with Objects and Components (INFR09016)
Course Outline
School | School of Informatics |
College | College of Science and Engineering |
Course type | Standard |
Availability | Available to all students |
Credit level (Normal year taken) | SCQF Level 9 (Year 3 Undergraduate) |
Credits | 10 |
Home subject area | Informatics |
Other subject area | None |
Course website |
http://www.inf.ed.ac.uk/teaching/courses/seoc |
Taught in Gaelic? | No |
Course description | This course provides an introduction to the design and implementation of software systems using object oriented techniques. The techniques we consider are oriented to creating component based designs. The course will review basic object oriented techniques and how they support the creation of component based designs. We also consider the high level modelling of systems as a means of supporting the Software Engineering process. Here we study the Unified Modelling Language (UML), which provides programming language independent notations for design. |
Entry Requirements (not applicable to Visiting Students)
Pre-requisites |
|
Co-requisites | |
Prohibited Combinations | |
Other requirements | Successful completion of Year 2 of an Informatics Single or Combined Degree, or equivalent by permission of the School. |
Additional Costs | None |
Information for Visiting Students
Pre-requisites | None |
Displayed in Visiting Students Prospectus? | Yes |
Course Delivery Information
|
Delivery period: 2011/12 Semester 1, Available to all students (SV1)
|
WebCT enabled: No |
Quota: None |
Location |
Activity |
Description |
Weeks |
Monday |
Tuesday |
Wednesday |
Thursday |
Friday |
Central | Lecture | | 1-11 | | | | | 16:10 - 17:00 | Central | Lecture | | 1-11 | | 16:10 - 17:00 | | | |
First Class |
Week 1, Tuesday, 16:10 - 17:00, Zone: Central. Robson LT |
Exam Information |
Exam Diet |
Paper Name |
Hours:Minutes |
|
|
Main Exam Diet S2 (April/May) | | 2:00 | | | Resit Exam Diet (August) | | 2:00 | | |
|
Delivery period: 2011/12 Semester 1, Part-year visiting students only (VV1)
|
WebCT enabled: No |
Quota: None |
Location |
Activity |
Description |
Weeks |
Monday |
Tuesday |
Wednesday |
Thursday |
Friday |
Central | Lecture | | 1-11 | | | | | 16:10 - 17:00 | Central | Lecture | | 1-11 | | 16:10 - 17:00 | | | |
First Class |
Week 1, Tuesday, 16:10 - 17:00, Zone: Central. Robson LT |
Exam Information |
Exam Diet |
Paper Name |
Hours:Minutes |
|
|
Main Exam Diet S1 (December) | | 2:00 | | |
Summary of Intended Learning Outcomes
1 - Software development process, system modelling using UML, elements of UML
2 - Requirements capture and analysis, architectural design, components and component design, evaluation of dessigns
3 - Using CASE tools, basic knowledge of the main tools used in software development and their role in the process.
4 - Group working, communication skills (reports and presentations), time management, self-evaluation |
Assessment Information
Written Examination 75
Assessed Assignments 25
Oral Presentations 0
Assessment
Exercises, reports, and student presentations.
If delivered in semester 1, this course will have an option for semester 1 only visiting undergraduate students, providing assessment prior to the end of the calendar year. |
Special Arrangements
None |
Additional Information
Academic description |
Not entered |
Syllabus |
THE SOFTWARE ENGINEERING PROCESS
We briefly consider how taking objects and components as a central organising theme influences the Software Engineering process. A number of case studies of ``classic'' software-related failures will be used as illustrative examples throughout the course. We also briefly consider the arguments for and against insisting upon any specific approach to Software Engineering, and those for and against object orientation in particular.
SOFTWARE DEVELOPMENT PROCESS
* Requirements analysis
* Specification
* Static verification (ie, Testing; Formal verification is studied in the module Functional Programming and Specification)
* Design and Implementation: including software architecture, and software integration techniques
* Maintenance and evolution
PROJECT MANAGEMENT AND PLANNING
Both the development process and project management and planning will be illustrated and utilised throughout the practical work.
ELEMENTS OF UML
Here we outline the main phases of an object oriented development: analysis, design and implementation. Each of these phases is supported by various diagrammatic notations embodied in UML. We consider a small subset of the full collection.
* ANALYSIS: A brief introduction to the use-case diagram as a means of analysing the external behaviour of systems from various viewpoints.
* DESIGN: Here there are various diagrams aimed at capturing the static and dynamic structure of systems. We will study:
o Class diagrams: these describe the static structural relationship between object classes.
o Behaviour diagrams, these include: state diagrams, activity diagrams, sequence diagrams, collaboration diagrams.
* IMPLEMENTATION: We provide a brief overview of the implementation process, considering: component diagrams, and deployment diagrams
Relevant QAA Computing Curriculum Sections: Computer Based Systems, Human-Computer Interaction (HCI), Information Systems, Professionalism, Software Engineering, Systems Analysis and Design |
Transferable skills |
Not entered |
Reading list |
* Bennett, Skelton and Lunn, 'UML', Shaum's Outline Series, McGraw-Hill, London 2001.
* Somerville, 'Software Engineering' (6th Edition), Addison-Wesley.
* Booch, 'Object Oriented Design with Applications' (2nd Edition), Benjamin Cummings.
* Boone, 'Java Essentials for C and C++ Programmers', Addison-Wesley.
* Winston and Narasimhan, 'On to Java', Addison-Wesley
* Stevens and Pooley, 'Using UML: Software Engineering with Objects and Components', Addison-Wesley, updated UML1.3 edition, 1999. |
Study Abroad |
Not entered |
Study Pattern |
Lectures 20
Tutorials 8
Timetabled Laboratories 0
Non-timetabled assessed assignments 30
Private Study/Other 42
Total 100 |
Keywords | Not entered |
Contacts
Course organiser | Dr Nigel Goddard
Tel: (0131 6)51 3091
Email: Nigel.Goddard@ed.ac.uk |
Course secretary | Miss Tamise Totterdell
Tel: 0131 650 9970
Email: t.totterdell@ed.ac.uk |
|
© Copyright 2011 The University of Edinburgh - 16 January 2012 6:16 am
|