COMP SCI 3006 - Software Engineering & Project
North Terrace Campus - Semester 2 - 2021
General Course Information
Course Code COMP SCI 3006 Course Software Engineering & Project Coordinating Unit Computer Science Term Semester 2 Level Undergraduate Location/s North Terrace Campus Units 3 Contact Up to 4 hours per week Available for Study Abroad and Exchange Y Prerequisites One of COMP SCI 1103, COMP SCI 1203, COMP SCI 2103, COMP SCI 2202 or COMP SCI 2202B Incompatible COMP SCI 3015B, COMP SCI 3018, COMP SCI 3303, COMP SCI 3304, COMP SCI 3310, COMP SCI 3311, COMP SCI 3312, COMP SCI 3313 Assumed Knowledge (COMP SCI 1106 or COMP SCI 2006) and COMP SCI 2201 Restrictions Not available to BE(Software) students Course Description Within the context of a semester-long, group-based software engineering project, this course provides an introduction to the production of high quality software solutions to large tasks. Among the topics covered in this course are the following: models of the software life-cycle, requirements analysis and specification, program design techniques and paradigms, software specification techniques, configuration management and version control, quality assurance, integration and testing, project management, risk analysis, case study of ethical considerations in Software Engineering.
Course Coordinator: Associate Professor Markus WagnerLecturers: Dr Markus Wagner, Mr. Hamish Pratt
The full timetable of all activities for this course can be accessed from Course Planner.
Course Learning OutcomesOn successful completion of this course students will be able to:
1 Discuss software development techniques and methodologies 2 Apply various Computer Science methods and algorithms 3 Apply in group-based software development 4 Demonstrate appropriate professional conduct 5 Discuss professional codes of conduct of Computer Scientists and Engineers 6 Demonstrate skills in investigating, analyzing, and using software tools
The above course learning outcomes are aligned with the Engineers Australia Stage 1 Competency Standard for the Professional Engineer.
The course is designed to develop the following Elements of Competency: 1.1 1.2 1.3 1.4 1.5 2.1 2.2 2.3 2.4 3.1 3.2 3.3 3.4 3.5 3.6
University Graduate Attributes
This course will provide students with an opportunity to develop the Graduate Attribute(s) specified below:
University Graduate Attribute Course Learning Outcome(s) Deep discipline knowledge
- informed and infused by cutting edge research, scaffolded throughout their program of studies
- acquired from personal interaction with research active educators, from year 1
- accredited or validated against national or international standards (for relevant programs)
1,2,3,5,6 Critical thinking and problem solving
- steeped in research methods and rigor
- based on empirical evidence and the scientific approach to knowledge development
- demonstrated through appropriate and relevant assessment
1,2,3,5,6 Teamwork and communication skills
- developed from, with, and via the SGDE
- honed through assessment and practice throughout the program of studies
- encouraged and valued in all aspects of learning
3,4,5 Career and leadership readiness
- technology savvy
- professional and, where relevant, fully accredited
- forward thinking and well informed
- tested and validated by work based experiences
1,2,3,4,5,6 Intercultural and ethical competency
- adept at operating in other cultures
- comfortable with different nationalities and social contexts
- able to determine and contribute to desirable social outcomes
- demonstrated by study abroad or with an understanding of indigenous knowledges
5 Self-awareness and emotional intelligence
- a capacity for self-reflection and a willingness to engage in self-appraisal
- open to objective and constructive feedback from supervisors and peers
- able to negotiate difficult social situations, defuse conflict and engage positively in purposeful debate
Required ResourcesThe prescribed textbook for the course is "Scrum: a Breathtakingly Brief and Agile Introduction" - Sims and Johnson.
Alternatively, the slightly longer book "The Elements of Scrum" by the same authors.
- Software Engineering: A Practitioners Approach, 5th Ed., R. Pressman, McGraw-Hill, 2001.
- Object-Oriented and Classical Software Engineering, 5th Ed., S. Schach, McGraw-Hill, 2002.
- Software Engineering Principles and Practice, 2nd Ed., H. VanVliet, Wiley, 2000.
- A Discipline for Software Engineering, W.S. Humphrey, Addison-Wesley, 1995.
- Managing Technical People, W.S. Humphrey, Addison-Wesley, 1997.
- Introduction to the Team Software Process, W.S. Humphrey, Addison-Wesley, 2000.
Online LearningThe Software Engineering and Project course currently uses a MyUni Canvas for communication (the link will be published in time).
All students are required to subscribe and check the forum on a regular basis for announcements relating to the course and project.
Learning & Teaching Activities
Learning & Teaching ModesThe course aims to introduce students to a wide range of Software Engineering terminology, techniques and processes throughan eight week block of lectures. The concepts taught in these lectures will be practised and reinforced by participation in asemester long, group-based software engineering project. This project will take students through the entire software development lifecycle, from requirements gathering, through to implementation, testing and deployment.
Weekly group meetings will be held with students, in which students will gather requirements for their project, demonstrate software prototypes, and present on various topics relevant to their project. Agendas will be prepared for the meetings, andeach meeting will be fully minuted by the students. Feedback will be given to students at the group meeting, in order forstudents to improve on their presentation, demonstration and meeting management skills. Attendance at all the lectures of thecourse is encouraged as the engineering practices and principles taught in these lectures will be assessed during the entire semester in the group meetings. At the end of the project, students will give a final presentation and demonstration reflecting on their experiences in the project and the lessons learnt.
The information below is provided as a guide to assist students in engaging appropriately with the course requirements.The information below is provided as a guide to assist students in engaging appropriately with the course requirements.The information below is provided as a guide to assist students in engaging appropriately with the course requirements.
Software Engineering and Project is a 3 unit course. The expectation is that students will be spending 12 hours per week working on the course. For the first 8 weeks of the course, this will include 3
hours per week of lectures. From week 3, students are required to attend a weekly group meeting with one of the lecturers, approximately 25 minutes in duration. Students are also required to attend their own group meeting to solve the relevant issues involved in the project, approximately 25 to 35 minutes in duration. The remainder of the time should be spent working on the project – students are expected to learn the content presented in lectures by doing the project.
NOTE: the nature of the course means that it is very easy for students to spend more than the allotted 12 hours per week onthe course. The onus is on students to plan their tasks and time carefully to ensure they do not over commit to the project. Importantly students should start preparing for the project from Week 1, and should maintain a consistent workload throughoutthe semester. One of the learning objectives for this course is the development of good time management skills.
Learning Activities SummaryThe following topics will be covered in lectures:
- Project management: Group dynamics and management; project planning; communication; meetings
- Requirements: Requirements gathering techniques; requirements analysis; requirements presentation
- Process models: Traditional software development process models; development lifecycle activities; risk focused process models; agile process models
- Configuration management: Configuration items; version and release control; source code control; change management
- Cost Models: Metrics for cost estimation; project cost estimation techniques; software productivity and measures
- Modelling and architectures: Software architectures; architecture design decision; system analysis; non-functional requirements; system organisation; modular decomposition; control styles
- System modelling: Software system specification; context models; behavioural models; data models; object models; data flow diagrams; statechart; UML; sequence diagram
- Testing: Unit testing; blackbox and whitebox testing; integration and system testing; testing tools; test coverage analysis
- Real time modelling: Real-time system design; soft/hard real-time systems; stimulus types; real-time system programming; real-time operating systems; process scheduling; resource management; real-time data acquisition
- Safety critical SE: Designing for safety; hazard analysis techniques; safety integrity levels
- Formal specification: Limitations of natural language specifications; semi-formal and formal specifications; Z specification language
- Software industry: Understand real-world software industry and their operations
The University's policy on Assessment for Coursework Programs is based on the following four principles:
- Assessment must encourage and reinforce learning.
- Assessment must enable robust and fair judgements about student performance.
- Assessment practices must be fair and equitable to students and give them the opportunity to demonstrate what they have learned.
- Assessment must maintain academic standards.
Assessments Percentage Type Due Week Course Outcome CBOK Initial Report 10% Group 4 1,2,3,4,6 1.1, 1.2, 2.2,2.3,2.4,2.5,3.1,3,2,4.1,4.2,4.3,4.4,5.2 Retrospective 1 10% Group + Individual 3 1,2,3,4,6 1.1,1.2,2.2,2.3,3.1,3.2,4.1,4.3,4.4 Retrospective 2 10% Group + Individual 5 1,2,3,4,6 1.1,1.2,2.2,2.3,3.1,3.2,4.1,4.3,4.4 Retrospective 3 10% Group + Individual 7 1,2,3,4,6 1.1,1.2,2.2,2.3,3.1,3.2,4.1,4.3,4.4 Retrospective 4 10% Group + Individual 9 1,2,3,4,6 1.1,1.2,2.2,2.3,3.1,3.2,4.1,4.3,4.4 Final Report 20% Group + Individual 12 1,2,3,4,6 1.1, 1.2, 2.2,2.3,2.4,2.5,3.1,3,2,4.1,4.2,4.3,4.4,5.2 Quizzes 5% Individual 2,4,6,8 1,5 2.1,2.2,2.3,2.4,5.2 Final Presentation 25% Group + Individual 12 1,2,3,4,6 1.1, 1.2, 2.2,2.3,2.4,2.5,3.1,3,2,4.1,4.2,4.3,4.4,5.2
**CBOK is the Core Body of Knowledge for ICT Professionals defined by the Australian Computer Society. The alignment in the table above corresponds with the following CBOK Areas:
1. Problem Solving
2. Professional Knowledge
2.2 Professional expectations
2.3 Teamwork concepts & issues
2.4 Interpersonal communications
2.5 Societal issues
2.6 Understanding of ICT profession
3. Technology resources
3.1 Hardware & Software
3.2 Data & information
4. Technology Building
4.2 Human factors
4.3 Systems development
4.4 Systems acquisition
5. ICT Management
5.1 IT governance & organisational
5.2 IT project management
5.3 Service management
5.4 Security management
Assessment Related RequirementsAttendance at weekly group meetings with lecturers is compulsory. Students will be required to obtain at least 40% in the exam and 50% overall to pass the course.
Assessment DetailInitial Report
In the initial report, the teams will summarize their vision of the project based on the first kick-off meeting with the customer.
The retrospectives contain snaptshots of the Scrum board, product backlog, discussed issues, measures taken to resolve issues, and an individual reflection on the team's progress during the previous sprint.
The final report summarises the team activity throughout the semester and contrasts the end result with the vision outlined in the initial report.
Quizzes are used throughout the semeter to assess students' knowledge of concepts and techniques presented in the lectures.
In Week 12 or the swot week each group will be required to give a final demonstration and presentation. The purpose is to demonstrate their final software to the lecturers (and customers) and to present the processes and techniques used throughout the project. The students will also be expected to reflect on lessons learnt during the project.
Individual Assessment Components
All retrospectives and the final report will have individually assessed components where students are asked to reflect on their own role in the teams. Also, each student must present some part of the project in the final presentation.
SubmissionFor details on the submission format, see assignments published on MyUni.
Grades for your performance in this course will be awarded in accordance with the following scheme:
M10 (Coursework Mark Scheme) Grade Mark Description FNS Fail No Submission F 1-49 Fail P 50-64 Pass C 65-74 Credit D 75-84 Distinction HD 85-100 High Distinction CN Continuing NFE No Formal Examination RP Result Pending
Further details of the grades/results can be obtained from Examinations.
Grade Descriptors are available which provide a general guide to the standard of work that is expected at each grade level. More information at Assessment for Coursework Programs.
Final results for this course will be made available through Access Adelaide.
The University places a high priority on approaches to learning and teaching that enhance the student experience. Feedback is sought from students in a variety of ways including on-going engagement with staff, the use of online discussion boards and the use of Student Experience of Learning and Teaching (SELT) surveys as well as GOS surveys and Program reviews.
SELTs are an important source of information to inform individual teaching practice, decisions about teaching duties, and course and program curriculum design. They enable the University to assess how effectively its learning environments and teaching practices facilitate student engagement and learning outcomes. Under the current SELT Policy (http://www.adelaide.edu.au/policies/101/) course SELTs are mandated and must be conducted at the conclusion of each term/semester/trimester for every course offering. Feedback on issues raised through course SELT surveys is made available to enrolled students through various resources (e.g. MyUni). In addition aggregated course SELT data is available.
- Academic Integrity for Students
- Academic Support with Maths
- Academic Support with writing and study skills
- Careers Services
- International Student Support
- Library Services for Students
- LinkedIn Learning
- Student Life Counselling Support - Personal counselling for issues affecting study
- Students with a Disability - Alternative academic arrangements
- YouX Student Care - Advocacy, confidential counselling, welfare support and advice
Policies & Guidelines
This section contains links to relevant assessment-related policies and guidelines - all university policies.
- Academic Credit Arrangements Policy
- Academic Integrity Policy
- Academic Progress by Coursework Students Policy
- Assessment for Coursework Programs Policy
- Copyright Compliance Policy
- Coursework Academic Programs Policy
- Elder Conservatorium of Music Noise Management Plan
- Intellectual Property Policy
- IT Acceptable Use and Security Policy
- Modified Arrangements for Coursework Assessment Policy
- Reasonable Adjustments to Learning, Teaching & Assessment for Students with a Disability Policy
- Student Experience of Learning and Teaching Policy
- Student Grievance Resolution Process
Students are reminded that in order to maintain the academic integrity of all programs and courses, the university has a zero-tolerance approach to students offering money or significant value goods or services to any staff member who is involved in their teaching or assessment. Students offering lecturers or tutors or professional staff anything more than a small token of appreciation is totally unacceptable, in any circumstances. Staff members are obliged to report all such incidents to their supervisor/manager, who will refer them for action under the university's student’s disciplinary procedures.
The University of Adelaide is committed to regular reviews of the courses and programs it offers to students. The University of Adelaide therefore reserves the right to discontinue or vary programs and courses without notice. Please read the important information contained in the disclaimer.