COMP SCI 7023 - Software Process Improvement

North Terrace Campus - Semester 1 - 2017

This course is a guided study of software process grounded by practical personal experience. All software engineering is based on one or more processes that guide how software is developed with particular time, cost or quality goals. Process improvement aims to learn from current practice and objectively assess potential improvements. This will be explored by practicing a simplified form of the Personal Software Process and studying a number of process related topics drawn from: the goal question metric paradigm; appropriate automation; configuration management; project tracking and control; quality assurance; cost of quality; continuous integration; DevOps; software distribution; Infrastructure, Platform and Software as a Service; leveraging social media and the internet.

  • General Course Information
    Course Details
    Course Code COMP SCI 7023
    Course Software Process Improvement
    Coordinating Unit School of Computer Science
    Term Semester 1
    Level Postgraduate Coursework
    Location/s North Terrace Campus
    Units 3
    Contact Up to 5 hours per week
    Available for Study Abroad and Exchange Y
    Prerequisites COMP SCI 7007
    Course Description This course is a guided study of software process grounded by practical personal experience. All software engineering is based on one or more processes that guide how software is developed with particular time, cost or quality goals. Process improvement aims to learn from current practice and objectively assess potential improvements. This will be explored by practicing a simplified form of the Personal Software Process and studying a number of process related topics drawn from: the goal question metric paradigm; appropriate automation; configuration management; project tracking and control; quality assurance; cost of quality; continuous integration; DevOps; software distribution; Infrastructure, Platform and Software as a Service; leveraging social media and the internet.
    Course Staff

    Course Coordinator: Dr Alfred Fred Brown

    Course Timetable

    The full timetable of all activities for this course can be accessed from Course Planner.

  • Learning Outcomes
    Course Learning Outcomes

    The objectives of this course are:

    • To introduce students to software process improvement,
    • To introduce students to the Software Engineering Institute's Personal Software Process, PSP, and
    • To help students reflect on their own software development process.

    At the end of the course students should be able to,

    1. write essays following the structure of a scientific paper,
    2. articulate a critical view of software process improvement and its significance,
    3. articulate a critical view of the PSP,
    4. articulate a critical view of their own software development process, and
    5. apply a disciplined personal process to their own work.
    University Graduate Attributes

    This course will provide students with an opportunity to develop the Graduate Attribute(s) specified below:

    University Graduate Attribute Course Learning Outcome(s)
    Deep discipline knowledge
    • informed and infused by cutting edge research, scaffolded throughout their program of studies
    • acquired from personal interaction with research active educators, from year 1
    • accredited or validated against national or international standards (for relevant programs)
    1-5
    Critical thinking and problem solving
    • steeped in research methods and rigor
    • based on empirical evidence and the scientific approach to knowledge development
    • demonstrated through appropriate and relevant assessment
    1-5
    Career and leadership readiness
    • technology savvy
    • professional and, where relevant, fully accredited
    • forward thinking and well informed
    • tested and validated by work based experiences
    5
    Self-awareness and emotional intelligence
    • a capacity for self-reflection and a willingness to engage in self-appraisal
    • open to objective and constructive feedback from supervisors and peers
    • able to negotiate difficult social situations, diffuse conflict and engage positively in purposeful debate
    4
  • Learning Resources
    Required Resources
    Textbook:
    A Self-Improvement Process for Software Engineers, Watts S. Humphrey, Addison-Wesley, 2005, ISBN 0321305493.
    Recommended Resources
    A vital source of background reading material can be found in:
    These are both freely available from on-campus and contain a vast wealth of Computer Science research in addition to the more traditional library resources.
    Online Learning

    The programming assignments will be completed in a web based programming environment, SPI Tools. SPI tools requires you to use an up to date web browser with Javacript enabled. A link to SPI tools will be available on the course website.

  • Learning & Teaching Activities
    Learning & Teaching Modes
    The background material is presented using lectures and is reinforced by the programming assignments, essays and personal process review.

    The key learning takes place by practicing the major components of the Personal Software Process, PSP, using the SPI Tools programming environment. SPI tools should assist you to follow the process correctly and includes a mechanism where you can record your personal reflections at the end of writing each program. Personal planning and time management are integral to the PSP and is reflected in the late penalty mechanism.

    The essays provide opportunities to research issues relevant to the practical application of software process improvement in a range of areas, including the PSP. They also require reflection on the significance of the topics covered with respect to the big picture and to your own personal circumstances.
    Workload

    The information below is provided as a guide to assist students in engaging appropriately with the course requirements.

    You are expected to spend 10 hours per week on the course. This includes:
    • attending all scheduled classes,
    • preparation for and review of lectures,
    • background reading for essays,
    • writing essays and the personal process review,
    • completing the 10 programming exercises using SPI tools.
    Learning Activities Summary

    The lecture topics and assignment descriptions are all available on the course website.

    A schedule is available on the course website but specific due dates are only available in each assignment description.

  • Assessment

    The University's policy on Assessment for Coursework Programs is based on the following four principles:

    1. Assessment must encourage and reinforce learning.
    2. Assessment must enable robust and fair judgements about student performance.
    3. Assessment practices must be fair and equitable to students and give them the opportunity to demonstrate what they have learned.
    4. Assessment must maintain academic standards.

    Assessment Summary

    Component 1: Programming Assignments - 20%

    • Up to 10 programs - 2% each
    • Programs 1 to 10 are due by 11.59pm on Friday of weeks 2 to 11 respectively.
    • CBOK* areas: Abstraction, design, programming, systems development.

    Component 2: Personal Process Review - 20%

    • Due by 11.59pm on Sunday at the end of week 13.
    • Hurdle requirement: The personal process review must be based on at least 6 completed programs.
    • CBOK* areas: Professionalism, interpersonal communication, systems development.

    Component 3: Essays - 60%

    • Essay 1 - 10%
      Parts 1 is due by 11.59pm on Friday of week 2.
    • Parts 2 is due by 11.59pm on Friday of week 3.
    • Essay 2 - 20%
      Part 1 is due by 11.59pm on Friday of week 5.
      Part 2 is due by 11.59pm on Friday of week 6.
    • Essay 3 - 30%
      Part 1 is due by 11.59pm on Friday of week 12.
      Part 2 is due by 11.59pm on Friday of week 13.
    • Hurdle requirement: must score 40% of the available marks for Essay 3.
    • CBOK* areas: Interpersonal communication, systems development.

    The programming assignments, essay 1 and essay 2 are formative, essay 3 and the process review are summative.

    *For the CBOK See: https://more.acs.org.au/accreditedcourses-and-jobs

    Assessment Related Requirements
    Hurdle Requirements: If your overall mark for the course is greater than 44 F but, your mark for essay 3 is less than 40% or your personal process review is not based on at least 6 programs, your overall mark for the course will be reduced to 44 F.
    Assessment Detail
    Detailed descriptions of all assessments will be available on the course website.
    Submission

    All essays and the Personal Process Review - Submission, Late Penalties and Feedback

    • All essays and the personal process review must be submitted using the Computer Science Web Submission System.
    • All essays and the personal process review will be submitted to turnitin.com for plagiarism detection.
    • All marks for the essays and the personal process review will be made available in the School of Computer Science Web Submission System.
    • Feedback on the first two essays will be available by appointment with the course coordinator, all students are expected to attend.
    • The maximum mark that can be awarded will reduce by 25% for each day/part day late.
    • Marks in excess of the maximum that can be awarded are discarded.
    • Submissions 4 or more days late will receive 0 marks.
    On-time Mark 1 Day Late 2 Days Late 3 Days Late 4+ Days Late
    25% 25% 25% 25% 0
    50% 50% 50% 25% 0
    75% 75% 50% 25% 0
    100% 75% 50% 25% 0

    Extensions for Assessment Tasks

    Extensions will only be given in exceptional circumstances,

    • evidence must be supplied,
    • you must apply before the due date, and
    • extensions can only be granted by the course coordinator.

    Penalties for Late Submission of Programming Assignments
    If a programming assignment is completed (it has entered the phase Complete):

    • on-time, it will score 2% of the overall mark for the course, or
    • late but prior to submission of the Personal Process Review, it will score 1%,
    • late but after submission of the Personal Process Review, it will score 0% and will not contribute to passing the personal process review hurdle. 

    When a programming assignment is completed late, the due date for the next programming assignment is 11.59pm on Friday of the next teaching week. The same number of weeks extension is then applied to all later programming assignments. Any programming assignment given a due date after week 12 will be considered late regardless of when it is completed.

    Course Grading

    Grades for your performance in this course will be awarded in accordance with the following scheme:

    M10 (Coursework Mark Scheme)
    Grade Mark Description
    FNS   Fail No Submission
    F 1-49 Fail
    P 50-64 Pass
    C 65-74 Credit
    D 75-84 Distinction
    HD 85-100 High Distinction
    CN   Continuing
    NFE   No Formal Examination
    RP   Result Pending

    Further details of the grades/results can be obtained from Examinations.

    Grade Descriptors are available which provide a general guide to the standard of work that is expected at each grade level. More information at Assessment for Coursework Programs.

    Final results for this course will be made available through Access Adelaide.

  • Student Feedback

    The University places a high priority on approaches to learning and teaching that enhance the student experience. Feedback is sought from students in a variety of ways including on-going engagement with staff, the use of online discussion boards and the use of Student Experience of Learning and Teaching (SELT) surveys as well as GOS surveys and Program reviews.

    SELTs are an important source of information to inform individual teaching practice, decisions about teaching duties, and course and program curriculum design. They enable the University to assess how effectively its learning environments and teaching practices facilitate student engagement and learning outcomes. Under the current SELT Policy (http://www.adelaide.edu.au/policies/101/) course SELTs are mandated and must be conducted at the conclusion of each term/semester/trimester for every course offering. Feedback on issues raised through course SELT surveys is made available to enrolled students through various resources (e.g. MyUni). In addition aggregated course SELT data is available.

  • Student Support
  • Policies & Guidelines
  • Fraud Awareness

    Students are reminded that in order to maintain the academic integrity of all programs and courses, the university has a zero-tolerance approach to students offering money or significant value goods or services to any staff member who is involved in their teaching or assessment. Students offering lecturers or tutors or professional staff anything more than a small token of appreciation is totally unacceptable, in any circumstances. Staff members are obliged to report all such incidents to their supervisor/manager, who will refer them for action under the university's student’s disciplinary procedures.

The University of Adelaide is committed to regular reviews of the courses and programs it offers to students. The University of Adelaide therefore reserves the right to discontinue or vary programs and courses without notice. Please read the important information contained in the disclaimer.