Computer Science (COMP) 610
Selected Topics in Software Engineering (Revision 4)
Delivery Mode: Grouped Study Online
Area of Study: IS Core
Prerequisite: (COMP501, COMP504, and COMP601) or professor approval which is based on students’ knowledge in: (1) Basics of Software Engineering, (2) a high-level programming language such as C, C++, Java, and (3) Data Structure. Students who are concerned about not meeting the prerequisite for this course are encouraged to contact the course coordinator before registering.
This course is not available for challenge credit
Faculty: Faculty of Science and Technology
Instructor: Dr. Xiaokun Zhang
COMP 610 Selected Topics in Software Engineering studies the state of the art of and main research challenges of selected topics in software engineering. It covers various approaches and methodologies used in various phases of software development lifecycle, including requirements analysis and specification, software design , software implementation, software maintenance, and software process. The course topics are illustrated by examples and papers from current peer-reviewed research literature in software engineering. The course will prepare students to independently conduct research in software engineering and to apply that knowledge in their future research and practice.
COMP 610 focuses on the both traditional and emerging principles and knowledge of software engineering and provides the knowledge of and research skills in the area of software engineering. This course is designed for those who are about to start research in software engineering and for practitioners and managers who work or are about to in any aspect of software development. For the new software engineering researchers, the knowledge of and research skills in the area of software engineering will enable you to apply the knowledge of software engineering in identifying research topics, solving research problems and addressing various research challenges. For practitioners and those who have a managerial responsibility for software development, the knowledge about the software engineering state of the art and skills gained in this course should allow you to apply them in everyday software engineering practice by adding a novel and more innovative approach, which is the key of success in the knowledge area we live in.
This course is designed to
- study the state of the art of and main research challenges of selected topics in software engineering.
- introduce various approaches and methodologies used in different phases of software development lifecycle, including requirements analysis and specification, software design, software construction, software maintenance, and software process.
- illustrate the above-mentioned topics by examples and papers from current peer-reviewed research literature in software engineering.
- prepare students to independently conduct research in software engineering and to apply that knowledge in their future research and practice.
Upon completion of the course, students should be able to
- explain critically review and discuss research papers in areas of software engineering; independently analyse research papers in areas of software engineering and write literature review papers;
- discuss and argue about current topics in software engineering;
- demonstrate his/her ability to conduct a software engineering project as well as argue, justify and discuss the decisions made during this project;
- independently conduct research in software engineering and apply that knowledge in their future research and practice;
- effectively communicate course work in writing and oral presentation.
- Scope of software engineering
- Software requirements engineering
- Software design
- Software construction
- Software Maintenance
- Software engineering process
In order to receive credit for COMP 610, you must achieve a cumulative course grade of "B-" (70 percent) or better, and must achieve an average grade of at least 60 percent on the assignments. Your cumulative course grade will be based on the following assessment.
|Assignment 1 - Presentation of a software engineering research topic||15%|
|Assignment 2 - Peer-reviewed literature review paper on a software engineering topic||25%|
|Assignment 3 - Journal Papers Readings||15%|
|Assignment 4 - Project||30%|
Bourque, P. and Fairley, R.E., Eds. (2014) “Guide to the Software Engineering Body of Knowledge” [Electronic version], Version 3.0, IEEE Computer Society, Retrieved April 22, 2016, from https://www.computer.org/web/swebok.
Relevant peer-reviewed software engineering papers from the most important software engineering publications (e.g., IEEE TSE, ACM TOSEM, IEEE Software, J. of Soft. Maintenance and Evolution and international conferences such as ICSE, ESEC/FSE published by ACM, IEEE, Springer, Elsevier, Wiley, etc.
All peer-reviewed materials of Computer Science 610 will be made available through a link guide on the course Web site.
The remainder of the learning materials for Computer Science 610 is also distributed in electronic format. At this time, those materials include:
- Computer Science 610 Study Guide
- Detailed descriptions of the requirements for the individual assignments
- A course evaluation form
- Links to a variety of resources of the World Wide Web
Additional supporting materials of interests to students of Computer Science 610 will be made available through a link guide on the course Web site.
Special Course Features
COMP610 will be offered in paced electronic mode. Electronic paced study is facilitated through a variety of computer-mediated communication options, and can be completed at the student's workplace or home.
Students registered in this course will NOT be allowed to take an extension due to the nature of the course activities.
Athabasca University reserves the right to amend course outlines occasionally and without notice. Courses offered by other delivery methods may vary from their individualized-study counterparts.
Opened in Revision 4, December 20, 2016