Software Development module (AC51002)
This introductory module will provide you with the basic skills required to design and develop software through an understanding of fundamental programming concepts
Semester 2
This introductory module will provide you with the basic skills required to design and develop software through an understanding of fundamental programming concepts. You will also learn to apply these concepts to interesting, realistic problems. Programs will be written using Python. This is a powerful, versatile, and widely used computer programming language.
What you will learn
In this module, you will:
- build the foundational skills to design and develop software
- learn about fundamental programming concepts such as algorithms, data types, variables, control structures, and functions
- learn about object-oriented programming concepts such as objects, classes, and inheritance
- learn how to work with data structures in your programs and data from files on disk
- learn how to use software development tools and packages
By the end of the module you will be able to:
- demonstrate a strong understanding of software development fundamentals
- design and implement software programs to a given specification
- demonstrate an ability to use software development tools and packages
- understand the core concepts of object-oriented programming and its benefits
- build upon valuable experience in software development that will enable you to tackle more advanced concepts in the future
Assignments / assessment
- Software Program 1 (20%)
- Software Program 2 (40%)
- Class Test (40%)
Teaching methods / timetable
You will learn by taking a hands-on approach. Lectures and/or lecture videos will introduce the main concepts to you. You will explore these concepts further during tutorials and/or practical lab sessions. Coursework assignments will be used to consolidate and demonstrate your learning. A Class Test will be used to assess final aspects of your learning for the theoretical and practical elements of the course.
| Week | Topics Covered |
|---|---|
| 1 | Introduction to programming and your first program in Python |
| 2 | Variables and data types |
| 3 | Control structures, e.g., loops and conditional statements |
| 4 | Functions |
| 5 | File input/output |
| 6 | Object-oriented programming |
| 7 | More on object-oriented programming with inheritance, polymorphism and encapsulation |
| 8 | Standard Python data structures, e.g., lists, tuples, sets, and dictionaries |
| 9 | Searching and sorting algorithms in Python |
| 10 | Exploring more of the Python libraries and features |
Courses
This module is available on the following courses: