Skip navigation
The Australian National University

Software Construction COMP2100

Learning outcomes & Assessment relationship matrix

Homeworks ; Assignment 1 Mid Semester Exam ;Final Exam ( practical 30%, theory 30%)assignment 2
1: Construct and modify
to construct and modify small to medium scale computer programs
  1. apply all aspects of software construction for a representative variety of small to medium scale object-oriented programs up to around 300 lines of code containing up to 7 classes
  2. apply elementary notions of software quality criteria to critique and improve existing medium scale software
  3. to make modifications (including source code design, implementation, and testing) within a moderate-sized Java program system (103 (1000) to 104 (10,000) lines of code), given a documented specification, design and implementation of the system, with goals of correctness (through testing) and quality of construction
  4. to have elementary or better competence with standard software development tools and methods: text editor, compiler, integrated software development environment, command line scripting, automated build tools, version control, unit test design, code review
  5. to use and analyse a personal software process in constructing small computer programs
Y Y Y
2: Abstraction
to compare several forms of abstraction in object-oriented software design and construction:
inheritance, generic types, polymorphism, procedural abstraction, abstract recursive data structures (including abstract syntax trees), related software design patterns
and to apply them appropriately in constructing programs.
Y Y Y
3: Knowledge resources
to be familiar with common programming knowledge resources to find, understand, and apply online manuals and tutorials for software tools, programming language components, and software libraries
Y Y
4: Principles and practice of software construction tools
to describe the underlying principles of three major aspects of software construction and to apply the appropriate tools:
  1. version control (using the Subversion tool)
  2. unit testing (using the JUnit tool)
  3. automatic build process (using the Make or Ant tool)
Y Y Y Y
5: Reading knowledge of UML class diagrams as a design notation. Y

Responsible Officer:  JavaScript must be enabled to display this email address. / Page Contact:  JavaScript must be enabled to display this email address.