Computer Science II: Software Engineering



The field of software engineering (SE) is concerned with all aspects of software development, from the early stages of system specification to maintaining the system after it has gone into use. This includes technical processes of software development as well as activities such as software project management and the development of tools, methods, and theories to support software development. This course focuses on helping students to develop good understanding of the fundamental concepts and principles for the cost-effective engineeringof high-quality software systems.

Course Description

This course provides the student with a working knowledge of the terms, principles and methods of Software Engineering, with emphasis on the topics described in the IEEE’s Software Engineering Body of Knowledge, http://www.swebok.org.  It also addresses other topics and skills essential for a career in software engineering including project management, open source software and management. This course establishes bedrock knowledge necessary to practise software engineering in software projects and to pursue further courses in software engineering.

Learning Outcomes

 On completion of this course students should be able to:

  1. Discuss and explain the major issues in contemporary software development and maintenance as related to complex and critical software systems;
  2. Apply the methods and practices typically used in software development and management of software.
  3. Explain leading practices in software engineering
  4. Analyze key principles of systems engineering and explain how they apply to software development.
  5. Evaluate new methods and practices in Software engineering
  6. Apply what they have learnt to more advanced courses in software engineering and use their skills gained efficiently in the world of work.

Assessment Summary

Task / Assignment No. & Name Due Date Time Weight Type Learning Outcomes
1.     Oral Presentation Sept. 30th 4 pm 20% Group / Summative 1,2
2.     Research Oct. 28th 4 pm 30% Project 3,4
3.     Mid Term Examination Nov. 25 4 pm 20% Presentation 5,6
4.     Final Exam December 30% Individual Written Exam 1 – 6

Nb: Dates are subjected to be changed.

Recommended Text/Material

Bernstein, L. & Yuhas, C.M. Trustworthy systems through quantitative software   Engineering. Indianapolis: Wiley.

Reading List 

  1. Frederick P. Brooks, Jr. (1995). The mythical man-month: Essays on software engineering. (20thAnniversary Edition). Boston, MA: Addison Wesley Professional
  2. Hunt , A., & Thomas, D. (2000). The pragmatic programmer: from Journeyman to master.    Indianapolis, In: Addison Wesley.
  3. McConnell, S. (2004).Code complete: A practical handbook of software construction(2nd).          Redmond, Washington: Microsoft Press.
  4. I. (2015). Software engineering(10thed.). Boston, MA: Addison-Wesley

Course Outline

COMP2001 Computer Science II: Software Engineering Course Outline


Course Content

Total learning: 49 lessons / 1 quiz Time: 12 weeks


Admin bar avatar
College Info Tech. Lecturer

If you can't do great things, do small things in a great way. Your time is limited, so don't waste it living someone else's.


21 rating

5 stars
4 stars
3 stars
2 stars
1 star
  • Admin bar avatar

    Oksana Isaac

    Extremely Applicable Content

    The Software Engineering industry is one of the most prevalent industries today. We are literally dependent on these applications that are made up of such intricate, yet concise, lines of code. Software makes everything more interesting and greatly influences the way we connect with the world through the dissemination of information - the most valuable commodity. This course brought much insight in regards to the governing bodies that set the standards for software development. I learnt much about the principles, new trends and leading practices of software engineering internationally. The content is super applicable to our understanding of the technological world around us.
  • Admin bar avatar

    Rasarles Nisbett

    In deep and thorough

    This course balances raw in deep information with a subtle and approachable format that allows for each lecture’s content to be easily grasp, which allows me to gather a deep understand of the content that well no doubt stick with me and be extremely useful to anyone pursuing a career I.T.
  • Admin bar avatar



    As someone who has just taken their first steps unto software engineering this course was very helpful and unbelievabley informative on each lessons and activity. I enjoyed every part and have learned tons
  • Admin bar avatar

    T'Quan Warner


    This course showed me all the work that goes into making a software and what makes a software runs and do the things it does .It introduce me to the many different methods of developing software the advantages and disadvantages and when to use a particular method in a situation.
  • Admin bar avatar

    Antonio Belle

    Opening doors

    This course is very helpful in explaining the different methodologies and rules all aspiring system engineers should know
  • Loading...

Computer Science II: Software Engineering


Join our community of students around,the world helping you succeed.

× How can I help you? Available from 08:00 to 18:00