Software Engineering
- Sciences
- 400 level
- 3 credit units
- 304 pages
- 36 units
This course provides a comprehensive introduction to software engineering principles and practices. It covers the software development lifecycle, including requirements gathering, design, implementation, and testing. Students will learn about various software development models, design strategies, and quality assurance techniques. The course also explores formal methods, software maintenance, and the use of CASE tools to enhance software development processes. Emphasis is placed on creating reliable, efficient, and maintainable software systems.
About this course
- Difficulty
- Intermediate
- Study hours
- 120 hours
- Maths
- Intermediate
- Content
- Theoretical, practical, case study
- Practical work
- Yes
- Assignments
- Tutor marked assignments
- Final examination
What you'll read
The real module and unit structure of CIT432, taken from the course material NOUN publishes.
One paragraph, so you can see how it reads
CIT432 · 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
- Explain the basic concepts of software engineering.
- Describe the software development life cycle and its various models.
- Apply different software design strategies to solve real-world problems.
- Utilize various software testing techniques to ensure software quality.
- Understand and apply formal methods in software development.
- Explain the principles of software maintenance and evolution.
- Use CASE tools to automate software development processes.
What it prepares you for
- Software Engineer
- Software Developer
- Software Tester
- System Analyst
- Software Architect
- Information Technology
- Telecommunications
- Finance
- Healthcare
- Aerospace
- Government
- CASE Tools
- Integrated Development Environments (IDEs)
- Testing Frameworks
- Configuration Management Systems
Where it gets hard
The units students slow down on, and what makes each one heavy.
- MODULE 4: FORMAL METHODS
Unit 2: Introduction to Formal Methods
Requires strong understanding of mathematical logic and set theory to grasp the underlying principles.
- MODULE 4: FORMAL METHODS
Unit 4: Z Notation
Understanding and applying Z notation requires familiarity with mathematical symbols and abstract thinking.
A suggested way through it
13 weeks, about 26 hours in total. Yours will differ.
- Week 1MODULE 1: Basic Concept of Software
Unit 1: Computer Software · 2 hours
Read Unit 1: Understand the definition of computer software and its role in computer systems.. Differentiate between system software, programming software, and application software.. Complete Activity A: Differentiate between hardware and software..
- Week 2MODULE 1: Basic Concept of Software
Unit 2: What is Software Engineering? · 2 hours
Read Unit 2: Define software engineering and its goals.. Explain the sub-disciplines of software engineering.. Complete Activity B: Explain the goals and principles of software engineering..
- Week 3MODULE 1: Basic Concept of Software
Unit 3: History of Software Engineering · 2 hours
Read Unit 3: Trace the historical development of software engineering from 1968 to the present.. Understand the evolution of software engineering in terms of professionalism, impact of women, processes, and cost of hardware.. Complete Activity C: Discuss the current situation of software engineering..
- Week 4MODULE 1: Basic Concept of Software
Unit 4: Software Engineer · 2 hours
Read Unit 4: Define who a software engineer is and their tasks.. Explain the technical and functional knowledge required of a software engineer.. Complete Activity D: Discuss the various tasks of a software engineer..
- Week 5MODULE 1: Basic Concept of Software
Unit 5: Software Crisis · 2 hours
Read Unit 5: Define software crisis and its manifestations.. Explain the causes of the software engineering crisis and potential solutions.. Complete Activity E: Identify the major cause of the software crisis..
- Week 6MODULE 2: Software Development
Unit 1: Overview of Software Development · 2 hours
Read Unit 1: Define software development and list its stages.. Understand the different approaches to software development and their suitability.. Complete Activity F: Discuss factors that determine the choice of approach in software development..
- Week 7MODULE 2: Software Development
Unit 2: Software Development Life Cycle Model · 2 hours
Read Unit 2: Define software life cycle model and explain the general model.. Explain Waterfall, V-Shaped, Incremental, and Spiral Models.. Discuss the requirement and design phases..
- Week 8MODULE 2: Software Development
Unit 3: Modularity · 2 hours
Read Unit 3: Define Modularity and differentiate between logical and physical modularity.. Explain the benefits of modular design and approaches of writing modular programs.. Complete Activity H: Outline the steps to create effective modules..
- Week 9MODULE 2: Software Development
Unit 4: Pseudocode · 2 hours
Read Unit 4: Define Pseudo code and explain general guidelines for writing it.. Study examples of Pseudo codes.. Complete Activity I: Write a pseudo code to find the average of even numbers between 1 and 20..
- Week 10MODULE 2: Software Development
Unit 5: Programming Environment, CASE Tools and Hipo Diagram · 2 hours
Read Unit 5: Explain Programming Environment and discuss CASE Tools.. Explain Hipo Diagrams.. Complete Activity J: Discuss the historical development of Case Tools..
- Week 11MODULE 3: Implementation and Testing
Unit 1: Implementation · 2 hours
Read Unit 1: Define software Implementation and differentiate between the three types of errors.. Explain the application of Six Sigma to Software Implementation Projects.. Complete Activity K: Explain the Major Requirement in Implementation..
- Week 12MODULE 3: Implementation and Testing
Unit 2: Testing Phase · 2 hours
Read Unit 2: Define software testing and explain testing methods.. Explain software testing process and testing tools.. Complete Activity L: Discuss the various testing methods..
- Week 13MODULE 3: Implementation and Testing
Unit 3: Software Quality · 2 hours
Read Unit 3: Define Software Quality Assurance and explain the concept of standards and procedures.. Discuss Software Quality Assurance Activities.. Complete Activity J: Discuss Software Quality Assurance during the Software Acquisition Life Cycle..
Preparing for the exam
- Review all units, focusing on key definitions and concepts.
- Practice applying different software development models to case studies.
- Create concept maps linking SDLC phases and their corresponding activities.
- Practice writing pseudo-code for common algorithms and data structures.
- Study examples of formal specifications and their corresponding implementations.
- Review past TMAs and identify areas of weakness.
- Allocate time for practice questions on software testing techniques.
- Create flashcards for key terminology related to software engineering principles.
- Focus on understanding the trade-offs between different design strategies.
- Practice time management during mock exams to simulate exam conditions.
Questions students ask about this course
What is CIT432 about?
This course provides a comprehensive introduction to software engineering principles and practices. It covers the software development lifecycle, including requirements gathering, design, implementation, and testing. Students will learn about various software development models, design strategies, and quality assurance techniques. The course also explores formal methods, software maintenance, and the use of CASE tools to enhance software development processes. Emphasis is placed on creating reliable, efficient, and maintainable software systems.
How many units does CIT432 have?
CIT432, Software Engineering, has 36 units across 7 modules, over 304 pages of course material. You can read it one unit at a time.
How many credit units is CIT432?
CIT432 carries 3 credit units, at 400 level in Sciences.
Is CIT432 hard?
CIT432 is rated intermediate level, with intermediate mathematical content. It is mostly theoretical, practical and case study work, and it has a practical component.
How long does CIT432 take to study?
About 120 hours of study, spread across its 36 units.
How is CIT432 assessed?
CIT432 is assessed by assignments, tutor marked assignments and final examination.
What can I do with CIT432?
Software Engineer, Software Developer, Software Tester, System Analyst and Software Architect.