Learning objectives and assessment ================================== Learning objectives ------------------- .. rubric:: Development skills #. Approaches for working in teams. #. Designing a working library for specific technical requirements. #. Working to a realistic project specification. #. Effective use of version control. #. Devising tests. .. rubric:: Programming skills #. Reinforcement of skills developed in Michaelmas Term. #. Introduction to user modules and multi-file library implementations. #. Working with user-defined objects. Assessment guidelines --------------------- The following points will be used in assessing your implementation. Markers will want to view your Git log. .. rubric:: Code #. Programs should execute without error. #. Interfaces should conform to the specification in the :ref:`Deliverables`. #. Programs should be correct. #. Clarity and structure of the implementations. #. Appropriate re-use of functions. .. rubric:: Documentation and process #. Documentation of the library (both docstrings and comments in the code). #. Unit tests. #. Effective use of version control (commits of small steps with clear messages). #. Balance of work within the team (as shown by the Git log). #. Use of continuous integration.