Skip to main content
nounstudy
CIT333

Software Engineering

  • Sciences
  • 300 level
  • 2 credit units
  • 113 pages
  • 14 units

This course provides an understanding of Software Engineering principles and practices. It covers the software development lifecycle, including requirements gathering, design, implementation, testing, and maintenance. Students will learn about various software development models, modularity, and quality assurance techniques. The course also explores the historical context of software engineering and the roles of software engineers in addressing software crises and ensuring compatibility.

About this course

Difficulty
Intermediate
Study hours
150 hours
Maths
Basic
Content
Theoretical, case study
Practical work
No
How it is assessed
  • Assignments
  • Tutor marked assessments
  • Final examination

One paragraph, so you can see how it reads

CIT333 · Unit 1: Computer software

Computer software is a general name for all forms of programs. A program itself is a sequence of instruction which the computer follows to perform a given task.

What you should be able to do

  1. Explain the basic concepts of software engineering
  2. Describe the different phases of the software development lifecycle
  3. Apply modular design principles to software development
  4. Implement software testing and quality assurance techniques
  5. Understand the historical context of software engineering
  6. Identify and address software crises

What it prepares you for

Careers
  • Software Developer
  • Software Engineer
  • Quality Assurance Engineer
  • System Analyst
  • Software Architect
Where it is applied
  • Information Technology
  • Software Development
  • Telecommunications
  • Financial Services
  • Healthcare
Tools
  • CASE Tools
  • Debuggers
  • Testing Tools
  • Integrated Development Environments (IDEs)

Where it gets hard

The units students slow down on, and what makes each one heavy.

  • Module 2: Software Development

    Unit 2: Software Development Life Cycle Model

    The numerous software lifecycle models and their variations require careful comparison and understanding of their trade-offs.

  • Module 2: Software Development

    Unit 3: Modularity

    Understanding the nuances of cohesion and coupling and applying them effectively in modular design requires significant practice.

  • Module 3: Implementation and Testing

    Unit 2: Testing Phase

    Requires a comprehensive understanding of various testing methodologies and their application in different scenarios.

A suggested way through it

Suggested

13 weeks, about 69 hours in total. Yours will differ.

  1. Week 1Module 1: Basic concept of Software
    • Unit 1: Computer Software · 4 hours

      Read Unit 1: Understand the definition of computer software and its types.. Differentiate between system, application, and programming software.. Complete Activity A and Tutor Marked Assignment..

    • Unit 2: What is Software Engineering? · 4 hours

      Read Unit 2: Define software engineering and its goals.. Explain the principles of software engineering.. Complete Activity B and Tutor Marked Assignment..

  2. Week 2Module 1: Basic concept of Software
    • Unit 3: History of Software Engineering · 5 hours

      Read Unit 3: Explain the historical development of software engineering.. Focus on the pioneering era and the software crisis.. Complete Activity C and Tutor Marked Assignment..

  3. Week 3Module 1: Basic concept of Software
    • Unit 4: Software Engineer · 5 hours

      Read Unit 4: Define a software engineer and their tasks.. Explain the technical and functional knowledge required.. Complete Activity D and Tutor Marked Assignment..

  4. Week 4Module 1: Basic concept of Software
    • Unit 5: Software Crisis · 5 hours

      Read Unit 5: Define the software crisis and its manifestations.. Explain the causes and solutions to the crisis.. Complete Activity E and Tutor Marked Assignment..

  5. Week 5Module 2: Software Development
    • Unit 1: Overview of Software Development · 4 hours

      Read Unit 1: Define software development and list its stages.. Understand the different approaches to software development.. Complete Activity F and Tutor Marked Assignment..

  6. Week 6Module 2: Software Development
    • Unit 2: Software Development Life Cycle Model · 6 hours

      Read Unit 2: Define software life cycle model.. Explain the general, waterfall, V-shaped, incremental, and spiral models.. Discuss the requirement and design phases.. Complete Activity G and Tutor Marked Assignment..

  7. Week 7Module 2: Software Development
    • Unit 3: Modularity · 5 hours

      Read Unit 3: Define modularity and differentiate between logical and physical modularity.. Explain the benefits of modular design.. Complete Activity H and Tutor Marked Assignment..

  8. Week 8Module 2: Software Development
    • Unit 4: Pseudo code · 4 hours

      Read Unit 4: Define pseudocode and its guidelines.. Practice writing pseudocode for simple tasks.. Complete Activity I and Tutor Marked Assignment..

  9. Week 9Module 2: Software Development
    • Unit 5: Programming Environment, CASE Tools and Hipo Diagram · 5 hours

      Read Unit 5: Explain programming environments and CASE tools.. Discuss HIPO diagrams and their components.. Complete Activity J and Tutor Marked Assignment..

  10. Week 10Module 3: Implementation and Testing
    • Unit 1: Implementation · 5 hours

      Read Unit 1: Define software implementation and differentiate between error types.. Explain Six Sigma application and major tasks in implementation.. Complete Activity K and Tutor Marked Assignment..

  11. Week 11Module 3: Implementation and Testing
    • Unit 2: Testing Phase · 5 hours

      Read Unit 2: Define software testing and explain testing methods.. Discuss the software testing process and tools.. Complete Activity L and Tutor Marked Assignment..

  12. Week 12Module 3: Implementation and Testing
    • Unit 3: Software Quality Assurance (SQA) · 4 hours

      Read Unit 3: Define Software Quality Assurance (SQA) and explain standards and procedures.. Discuss SQA activities and relationships.. Complete Activity J and Tutor Marked Assignment..

  13. Week 13Module 3: Implementation and Testing
    • Unit 4: Compatibility · 4 hours

      Read Unit 4: Define compatibility testing and explain its usefulness.. Understand browser compatibility testing.. Complete Activity K and Tutor Marked Assignment..

    • Unit 5: Software verification and validation · 4 hours

      Read Unit 5: Define software verification and validation.. Outline the methods of verification and validation.. Complete Activity L and Tutor Marked Assignment..

Preparing for the exam

What to do
  • Create a study schedule allocating specific time for each module and unit.
  • Review all Tutor-Marked Assignments (TMAs) and their solutions.
  • Focus on understanding the different software development lifecycle models and their applications.
  • Practice writing pseudocode for various programming problems.
  • Create concept maps linking the different testing methods and their purposes.
  • Pay close attention to the definitions and applications of software quality assurance principles.
  • Review the historical context of software engineering and the software crisis.
  • Understand the roles and responsibilities of a software engineer.
  • Practice identifying and addressing potential compatibility issues in software development.
  • Review the key concepts of modularity and its benefits in software design.

Questions students ask about this course

What is CIT333 about?

This course provides an understanding of Software Engineering principles and practices. It covers the software development lifecycle, including requirements gathering, design, implementation, testing, and maintenance. Students will learn about various software development models, modularity, and quality assurance techniques. The course also explores the historical context of software engineering and the roles of software engineers in addressing software crises and ensuring compatibility.

How many units does CIT333 have?

CIT333, Software Engineering, has 14 units across 3 modules, over 113 pages of course material. You can read it one unit at a time.

How many credit units is CIT333?

CIT333 carries 2 credit units, at 300 level in Sciences.

Is CIT333 hard?

CIT333 is rated intermediate level, with basic mathematical content. It is mostly theoretical and case study work.

How long does CIT333 take to study?

About 150 hours of study, spread across its 14 units.

How is CIT333 assessed?

CIT333 is assessed by assignments, tutor marked assessments and final examination.

What can I do with CIT333?

Software Developer, Software Engineer, Quality Assurance Engineer, System Analyst and Software Architect.

More courses in Sciences

CHM315

Carbohydrate Chemistry

2 credit units

Open CHM315
ESM304

Research Methods And Field Trip

3 credit units

Open ESM304
CIT341

Data Structures

3 credit units

Open CIT341