CSC8005 : Software Engineering with Group Project (Inactive)
CSC8005 : Software Engineering with Group Project (Inactive)
- Inactive for Year: 2024/25
- Module Leader(s): Dr Dan Nesbitt
- Other Staff: Miss Laura Heels
- Owning School: Computing
- Teaching Location: Newcastle City Campus
Semesters
Your programme is made up of credits, the total differs on programme to programme.
Semester 1 Credit Value: | 10 |
Semester 2 Credit Value: | 10 |
ECTS Credits: | 10.0 |
European Credit Transfer System | |
Pre-requisite
Modules you must have done previously to study this module
Pre Requisite Comment
None
Co-Requisite
Modules you need to take at the same time
Code | Title |
---|---|
CSC8001 | Programming and Data Structures |
Co Requisite Comment
None
Aims
To equip students with the knowledge and experience to function as successful practitioner software engineers.
This module aims to equip students with the knowledge and experience to function as successful practitioner software engineers. The course begins with a discussion of the nature of Software and the Software Engineering Industry. It then introduces Software Development Activities & important Process Models. A model-based approach is then used to introduce various Software Engineering Tools & Techniques. UML (Unified Modeling Language) is introduced to capture system design. Finally, methods of managing the Software Development Process are taught. A Group Project runs as part of this course to give students experience in team working and management of a software project.
Outline Of Syllabus
Software and the Software Engineering Industry
1. The discrete character of software
2. Programs: machine code to high level languages
3. Software Qualities: code qualities (e.g. maintainability, complexity); emergent properties (e.g. reliability)
4. The Software Industry: software as part of a system; products (closed source, open source, training, maintenance, ad-hoc bespoke, COTS); software developers (companies, teams, individuals: software engineer vs. programmer); life as a software engineering professional
Software Development Activities & Process Models
1. Development activities: synthesis and V&V; analysis, design, implementation, test.
2. Development process models as ways of organising activities: waterfall, V, evolutionary, Boehm's spiral model. Choosing a development model.
Software Engineering Tools & Techniques: a model-based approach
1. Models: abstraction and rigour.
2. The idea of modelling: data, functionality, data flow, control, consistency of models
3. Basic Modelling Skills in UML: conceptual and specification level models using use cases, class diagrams and activity charts
4. Model-based techniques for Synthesis
5. Issues in Requirements Modelling
6. The Design Process
7. Implementation
8. Model-based techniques in Validation & Verification
9. The idea of correctness; difference between validation and verification
10. V&V by Inspection
11. V&V by Testing
12. V&V by automated analysis (static analysis, model checking and proof)
13. Deployment and Maintenance
Managing the Development Process
1. Cost Estimation
2. Planning Tools
3. Product Metrics
4. Process Improvement
Trends in Software Engineering
1. New architectural paradigms. An introduction to function orientation, compared with object orientation. Aspect-oriented programming
2. Open source development
3. New project paradigms: agility, extreme programming.
4. The Professional's Role: issues in ethics & conduct
Learning Outcomes
Intended Knowledge Outcomes
To be able to describe & discuss:
- the characteristics of software as an engineering medium,
- the main techniques for modelling and analysing software,
- the major software architectural paradigms,
- the major development process models,
- the role of software quality in influencing the development process,
- the basic techniques for planning and monitoring a software development project.
Intended Skill Outcomes
The ability to evaluate emerging software engineering technology critically.
The ability to choose, and justify the choice of, software engineering tools, techniques and processes within project constraints.
The ability to plan and manage software engineering projects.
The ability to contribute effectively to the work of a software development team.
The ability to reflect constructively on software development experience.
Teaching Methods
Teaching Activities
Category | Activity | Number | Length | Student Hours | Comment |
---|---|---|---|---|---|
Guided Independent Study | Assessment preparation and completion | 44 | 1:00 | 44:00 | Lecture follow-up |
Scheduled Learning And Teaching Activities | Lecture | 44 | 1:00 | 44:00 | Lectures |
Guided Independent Study | Assessment preparation and completion | 48 | 0:30 | 24:00 | Revision for end of Semester exam and exam duration |
Scheduled Learning And Teaching Activities | Small group teaching | 22 | 1:00 | 22:00 | Tutorials |
Guided Independent Study | Project work | 44 | 1:00 | 44:00 | Coursework |
Guided Independent Study | Student-led group activity | 15 | 1:00 | 15:00 | Informal/formal group meetings |
Guided Independent Study | Independent study | 7 | 1:00 | 7:00 | Background reading |
Total | 200:00 |
Teaching Rationale And Relationship
Lectures will be used to introduce the learning material and for demonstrating the key concepts by example. Students are expected to follow-up lectures within a few days by re-reading and annotating lecture notes to aid deep learning.
Project meetings both formal and informal, will provide team members and the team monitor with the opportunity to follow progress and address team issues.
Students aiming for 1st class marks are expected to widen their knowledge beyond the content of lecture notes through background reading.
Students should set aside sufficient time to revise for the end of semester exam.
Reading Lists
Assessment Methods
The format of resits will be determined by the Board of Examiners
Exams
Description | Length | Semester | When Set | Percentage | Comment |
---|---|---|---|---|---|
Digital Examination | 90 | 1 | A | 40 | N/A |
Other Assessment
Description | Semester | When Set | Percentage | Comment |
---|---|---|---|---|
Practical/lab report | 2 | M | 20 | Individual work |
Practical/lab report | 2 | M | 40 | Group work |
Formative Assessments
Formative Assessment is an assessment which develops your skills in being assessed, allows for you to receive feedback, and prepares you for being assessed. However, it does not count to your final mark.
Description | Semester | When Set | Comment |
---|---|---|---|
Report | 1 | M | Requirements Specification: Group Work |
Assessment Rationale And Relationship
The Individual Report is used to assess what the individual has learnt about the group project, and whether he/she is able to function independently as a software engineering professional.
The Group Report is used to demonstrate what has been achieved in the Group Project, and the contribution that each group member has made. The formative "Requirements Specification" deliverable is used to provide early feedback to the group.
The examination assesses fundamental knowledge and understanding of theory and application of fundamental software engineering principles.
Study abroad students may request to take their exam before the semester 1 exam period, in which case the length of the exam may differ from that shown in the MOF.
N.B. This module has both “Exam Assessment” and “Other Assessment” (e.g. coursework). If the total mark for either assessment falls below 40%, the maximum mark returned for the module will normally be 40%.
Timetable
- Timetable Website: www.ncl.ac.uk/timetable/
- CSC8005's Timetable
Past Exam Papers
- Exam Papers Online : www.ncl.ac.uk/exam.papers/
- CSC8005's past Exam Papers
General Notes
N/A
Welcome to Newcastle University Module Catalogue
This is where you will be able to find all key information about modules on your programme of study. It will help you make an informed decision on the options available to you within your programme.
You may have some queries about the modules available to you. Your school office will be able to signpost you to someone who will support you with any queries.
Disclaimer
The information contained within the Module Catalogue relates to the 2024 academic year.
In accordance with University Terms and Conditions, the University makes all reasonable efforts to deliver the modules as described.
Modules may be amended on an annual basis to take account of changing staff expertise, developments in the discipline, the requirements of external bodies and partners, and student feedback. Module information for the 2025/26 entry will be published here in early-April 2025. Queries about information in the Module Catalogue should in the first instance be addressed to your School Office.