Technical Software Development
Unit code: HIT3181
| Credit points | 12.5 Credit Points |
| Duration | 1 semester or equivalent |
| Contact hours | 48 hours |
| Campus | Hawthorn, Sarawak |
| Prerequisites | HIT2080 Introduction to Programming or HES1300 Robotics and Mechatronics Project 1 |
| Corequisites | Nil |
Related course(s)
A unit of study in the Bachelor of Computing (Network Design and Security), Bachelor of Engineering (Telecommunication and Network Engineering), Bachelor of Engineering (Telecommunication and Network Engineering)/ Bachelor of Science (Computer Science and Software Engineering), Bachelor of Science (Information Technology) and Bachelor of Science (Computer Science and Software Engineering).Aims and objectives
This unit of study aims to develop the basic skills, both in understanding the underlying domains and in understanding the fundamentals of the programming process itself, required for programming scientific and engineering applications. This understanding includes what constitutes a “good” program and what an algorithm is. In particular, this unit is concerned with when to apply a specific solution approach, how to manage program complexity, and how to maintain healthy software solutions for scientific and engineering
problems.
Learning Outcomes
problems.
Learning Outcomes
After successfully completing this unit, you should be able to:
- Apply function decomposition, modularization, and object-oriented software development techniques in order to create maintainable programs.
- Interpret the tradeoffs and issues involved in the requirements, design, and implementation with respect to a given problem.
- Assess and compare the impact of algorithms on program performance and resource consumption.
- Design, implement, evaluate, and apply unit testing and documentation strategies to programs.
- Design and implement a sustainable code base for scientific and engineering problems.
Swinburne Engineering Competencies for this Unit of Study
This Unit of Study will contribute to you attaining the following Swinburne Engineering Competencies:
- Basic Science: Proficiently applies concepts, theories and techniques of the relevant natural and physical sciences.
- Maths and IT as Tools: Proficiently uses relevant mathematics and computer and information science concepts as tools.
- Discipline Specific: Proficiently applies advanced technical knowledge of the specific discipline within that context.
- Professional Practice: Appreciates the principles of professional engineering practice in a sustainable context.
- Engineering Methods: Applies engineering methods in practical applications.
- Problem Solving: Systematically uses engineering methods in solving complex problems.
- Design: Systematically uses engineering methods in design.
- Project Management: Systematically uses engineering methods in conducting and managing projects.
- Communication: Demonstrates effective communication to professional and wider audiences.
- Information Management: Demonstrates seeking, using, assessing and managing information.
References
Gary Bronson: C++ for Engineers and Scientists, 3rd Edition
Stanley B. Lippman, Josée Lajoie, and Barbara E. Moo: C++ Primer. 4th Edition
Stanley B. Lippman, Josée Lajoie, and Barbara E. Moo: C++ Primer. 4th Edition
Nicolai M. Josuttis: The C++ Standard Library - A Tutorial and Reference
Gary J. Bronson: Program Development and Design Using C++, 3rd Edition
Kenneth H. Rosen: Discrete Mathematics and Its Applications
