<?xml version="1.0" encoding="UTF-8"?>
<CourseUnit xmlns="http://www.manchester.ac.uk/CUICourseUnitDetails" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.manchester.ac.uk/CUICourseUnitDetails.xsd">
  <UnitCode Applicant="Y" Label="Unit code" Student="Y">
    <Code>COMP33312</Code>
  </UnitCode>
  <UnitTitle Applicant="Y" Label="Unit title" Student="Y">
    <Title>Agile Software Pipelines</Title>
  </UnitTitle>
  <MaxUnits Applicant="Y" Label="Credit rating" Student="Y">
    <Units>10</Units>
  </MaxUnits>
  <TeachingPeriods Applicant="Y" Label="Teaching period(s)" Student="Y">
    <Period>Semester 2</Period>
  </TeachingPeriods>
  <AcademicCareer Applicant="Y" Label="Academic career" Student="Y">
    <Value>Undergraduate</Value>
  </AcademicCareer>
  <UnitLevel Applicant="Y" Label="Unit level" Student="Y">
    <Level>Level 3</Level>
  </UnitLevel>
  <StaffList Applicant="Y" Label="Teaching staff" RoleLabel="Course Unit Role" Student="Y">
    <StaffMember>
      <Name>Suzanne Embury</Name>
      <Role>Unit coordinator</Role>
    </StaffMember>
  </StaffList>
  <OfferedBy Applicant="Y" Label="Offered by" Student="Y">
    <OrganisationList>
      <Organisation>
        <OrgName></OrgName>
      </Organisation>
    </OrganisationList>
    <GroupList>
      <Group>
        <GroupName></GroupName>
      </Group>
    </GroupList>
    <FheqLevels>
      <FheqLevel>
        <LevelNumber>1</LevelNumber>
        <LevelName>FHEQ level (Framework for Higher Education Qualifications) ' Last part of a Bachelors ' </LevelName>
      </FheqLevel>
    </FheqLevels>
    <Ects>
      <MaxUnits>European Credit Transfer &amp; Accumulation System Rating :   5.0</MaxUnits>
    </Ects>
  </OfferedBy>
  <MarketingOverview Applicant="Y" Label="Marketing Course unit overview" Student="">
    <Content>&lt;p&gt;&lt;span style="font-size:10pt"&gt;&lt;span style="font-family:&amp;quot;Times New Roman&amp;quot;,serif"&gt;&lt;span style="font-size:11.0pt"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,sans-serif"&gt;&lt;span style="color:black"&gt;&lt;span style="layout-grid-mode:line"&gt;The approach to software development known as &amp;ldquo;agile software engineering&amp;rdquo; is now well established within the industry as the most reliable and cost-effective in all but a handful of rarely occurring circumstances.&amp;nbsp; Agile approaches emphasise the early and frequent delivery of releasable software artefacts to the client, combined with disciplined but flexible approaches to project progress tracking, to the continuous and active collection of feedback on the success (or otherwise) of the work done so far and to the creation of high-quality code bases that are easy and safe to change. &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size:10pt"&gt;&lt;span style="font-family:&amp;quot;Times New Roman&amp;quot;,serif"&gt;&lt;span style="font-size:11.0pt"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,sans-serif"&gt;&lt;span style="color:black"&gt;&lt;span style="layout-grid-mode:line"&gt;In an agile project, the first usable executable artefacts will be created very early in the project&amp;rsquo;s lifetime and may be in active use while other parts of the required functionality are still in various stages of development.&amp;nbsp; New and changed functionality is delivered incrementally at short intervals throughout the duration of the project, blurring the distinction between the development and the operational project phases.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size:10pt"&gt;&lt;span style="font-family:&amp;quot;Times New Roman&amp;quot;,serif"&gt;&lt;span style="font-size:11.0pt"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,sans-serif"&gt;&lt;span style="color:black"&gt;&lt;span style="layout-grid-mode:line"&gt;While the human processes used to manage and carry out agile software engineering are highly iterative, the artefacts produced by the processes are increasingly viewed as passing through one or more linear &amp;ldquo;pipelines&amp;rdquo;, on their journey to deployment and use in the end-user environment.&amp;nbsp; New models for the delivery of software (such as continuous delivery) depend upon a carefully configured technical pipeline as much as they do upon effective and efficient human design and feedback processes.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size:10pt"&gt;&lt;span style="font-family:&amp;quot;Times New Roman&amp;quot;,serif"&gt;&lt;span style="font-size:11.0pt"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,sans-serif"&gt;&lt;span style="color:black"&gt;&lt;span style="layout-grid-mode:line"&gt;In this course unit, we will examine how the combination of these iterative human processes and technical development and delivery pipelines is used to create software that provides real value and return on investment for clients and end-users, while also being of sufficiently high quality to allow frequent and sometimes substantial changes throughout the software&amp;rsquo;s lifetime.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;</Content>
  </MarketingOverview>
  <UnitOverview Applicant="" Label="Course unit overview" Student="Y">
    <Content>&lt;p&gt;&lt;span style="font-size:10pt"&gt;&lt;span style="font-family:&amp;quot;Times New Roman&amp;quot;,serif"&gt;&lt;span style="font-size:11.0pt"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,sans-serif"&gt;&lt;span style="color:black"&gt;&lt;span style="layout-grid-mode:line"&gt;The approach to software development known as &amp;ldquo;agile software engineering&amp;rdquo; is now well established within the industry as the most reliable and cost-effective in all but a handful of rarely occurring circumstances.&amp;nbsp; Agile approaches emphasise the early and frequent delivery of releasable software artefacts to the client, combined with disciplined but flexible approaches to project progress tracking, to the continuous and active collection of feedback on the success (or otherwise) of the work done so far and to the creation of high-quality code bases that are easy and safe to change. &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size:10pt"&gt;&lt;span style="font-family:&amp;quot;Times New Roman&amp;quot;,serif"&gt;&lt;span style="font-size:11.0pt"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,sans-serif"&gt;&lt;span style="color:black"&gt;&lt;span style="layout-grid-mode:line"&gt;In an agile project, the first usable executable artefacts will be created very early in the project&amp;rsquo;s lifetime and may be in active use while other parts of the required functionality are still in various stages of development.&amp;nbsp; New and changed functionality is delivered incrementally at short intervals throughout the duration of the project, blurring the distinction between the development and the operational project phases.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size:10pt"&gt;&lt;span style="font-family:&amp;quot;Times New Roman&amp;quot;,serif"&gt;&lt;span style="font-size:11.0pt"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,sans-serif"&gt;&lt;span style="color:black"&gt;&lt;span style="layout-grid-mode:line"&gt;While the human processes used to manage and carry out agile software engineering are highly iterative, the artefacts produced by the processes are increasingly viewed as passing through one or more linear &amp;ldquo;pipelines&amp;rdquo;, on their journey to deployment and use in the end-user environment.&amp;nbsp; New models for the delivery of software (such as continuous delivery) depend upon a carefully configured technical pipeline as much as they do upon effective and efficient human design and feedback processes.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size:10pt"&gt;&lt;span style="font-family:&amp;quot;Times New Roman&amp;quot;,serif"&gt;&lt;span style="font-size:11.0pt"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,sans-serif"&gt;&lt;span style="color:black"&gt;&lt;span style="layout-grid-mode:line"&gt;In this course unit, we will examine how the combination of these iterative human processes and technical development and delivery pipelines is used to create software that provides real value and return on investment for clients and end-users, while also being of sufficiently high quality to allow frequent and sometimes substantial changes throughout the software&amp;rsquo;s lifetime.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;</Content>
  </UnitOverview>
  <Aims Applicant="Y" Label="Aims" Student="Y">
    <Content>&lt;p&gt;&lt;span style="font-size:10pt"&gt;&lt;span style="font-family:&amp;quot;Times New Roman&amp;quot;,serif"&gt;&lt;span style="font-size:11.0pt"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,sans-serif"&gt;&lt;span style="color:black"&gt;&lt;span style="layout-grid-mode:line"&gt;The unit aims to:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;span style="font-size:10pt"&gt;&lt;span style="font-family:&amp;quot;Times New Roman&amp;quot;,serif"&gt;&lt;span style="font-size:11.0pt"&gt;&lt;span style="font-family:&amp;quot;Calibri&amp;quot;,sans-serif"&gt;&lt;span style="color:black"&gt;&lt;span style="layout-grid-mode:line"&gt;Provide you with a working understanding of software pipelines, their use in the development, delivering and operation of software systems, and the iterative and incremental human processes through which they are managed.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;</Content>
  </Aims>
  <LearningOutcomes Applicant="Y" Label="Learning outcomes" Student="Y">
    <Content>&lt;ul&gt;	&lt;li&gt;&lt;p&gt;&lt;span style="font-size:10pt"&gt;&lt;span style="font-family:&amp;quot;Times New Roman&amp;quot;,serif"&gt;&lt;span style="font-size:11.0pt"&gt;&lt;span style="font-family:&amp;quot;Microsoft Sans Serif&amp;quot;,sans-serif"&gt;Explain how agile approaches to software development compare with earlier &amp;ldquo;big up-front&amp;rdquo; approaches, and how modern software development pipelines complement the iterative, agile approach to delivering value to clients and users in a predictable way.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/li&gt;	&lt;li&gt;&lt;p&gt;&lt;span style="font-size:10pt"&gt;&lt;span style="font-family:&amp;quot;Times New Roman&amp;quot;,serif"&gt;&lt;span style="font-size:11.0pt"&gt;&lt;span style="font-family:&amp;quot;Microsoft Sans Serif&amp;quot;,sans-serif"&gt;Select and apply a variety of agile practices for planning and tracking progress on software projects, and for coordinating the movement of the developed artefacts through software pipelines, to maximise the value delivered by the resulting software and the return on investment for the client.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/li&gt;	&lt;li&gt;&lt;p&gt;&lt;span style="font-size:10pt"&gt;&lt;span style="font-family:&amp;quot;Times New Roman&amp;quot;,serif"&gt;&lt;span style="font-size:11.0pt"&gt;&lt;span style="font-family:&amp;quot;Microsoft Sans Serif&amp;quot;,sans-serif"&gt;Explain the vital role of feedback in the management of agile projects. Select and apply a variety of feedback-oriented practices (such as peer review and retrospectives) to identify and correct problematics aspects of team behaviour.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/li&gt;	&lt;li&gt;&lt;p&gt;&lt;span style="font-size:10pt"&gt;&lt;span style="font-family:&amp;quot;Times New Roman&amp;quot;,serif"&gt;&lt;span style="font-size:11.0pt"&gt;&lt;span style="font-family:&amp;quot;Microsoft Sans Serif&amp;quot;,sans-serif"&gt;Select and apply a variety of practices for the management of software quality in agile software projects, with particular emphasis on the key role of software testing pipelines in managing the complexity of modern projects.&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/li&gt;	&lt;li&gt;&lt;p&gt;&lt;span style="font-size:11.0pt"&gt;&lt;span style="font-family:&amp;quot;Microsoft Sans Serif&amp;quot;,sans-serif"&gt;Explain the concept of DevOps and its role in agile software projects. Design simple software delivery and management pipelines that ensure the long-term generation of value to the clients and users of the systems created by the projects.&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;/li&gt;&lt;/ul&gt;</Content>
  </LearningOutcomes>
  <Knowledge Applicant="Y" Label="Knowledge and understanding" Student="Y">
    <Content></Content>
  </Knowledge>
  <IntellectualSkills Applicant="Y" Label="Intellectual skills" Student="Y">
    <Content></Content>
  </IntellectualSkills>
  <PracticalSkills Applicant="Y" Label="Practical skills" Student="Y">
    <Content></Content>
  </PracticalSkills>
  <TransferableSkills Applicant="Y" Label="Transferable skills and personal qualities" Student="Y">
    <Content></Content>
  </TransferableSkills>
  <EmployabilitySkillsList Applicant="Y" Label="Employability skills" Student="Y">
    <Skill>
      <SkillId></SkillId>
      <SkillDescription></SkillDescription>
    </Skill>
  </EmployabilitySkillsList>
  <Syllabus Applicant="Y" Label="Syllabus" Student="Y">
    <Content></Content>
  </Syllabus>
  <TeachingMethods Applicant="Y" Label="Teaching and learning methods" Student="Y">
    <Content>&lt;p&gt;Learning and teaching processes will be tailored to the specific topics being covered each week, and will consist of a mixture of:&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;Workshops allowing discussion of and practice in applying key ideas.&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;Face-to-face and online interactive group activities, including (where feasible) the use of coaching games used in industry for teaching agile development.&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;Online reading material, case studies and videos.&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;&lt;p&gt;Self-paced TA supported working exercises (to be carried out synchronously or asynchronously as appropriate to the topic being taught).&lt;br/&gt;&amp;nbsp;&lt;/p&gt;</Content>
  </TeachingMethods>
  <AssessmentMethods Applicant="Y" Label="Assessment methods" Student="Y">
    <IntroText> </IntroText>
    <Method>
      <MethodId>1</MethodId>
      <MethodName>Written exam</MethodName>
      <MethodWeight>100%</MethodWeight>
    </Method>
  </AssessmentMethods>
  <FeedbackMethods Applicant="Y" Label="Feedback methods" Student="Y">
    <Content>&lt;p&gt;&lt;strong&gt;Assessment Task:&lt;/strong&gt; Examination &amp;nbsp;&amp;nbsp;&lt;br/&gt;&lt;strong&gt;Length:&lt;/strong&gt; 2 hours&amp;nbsp;&lt;br/&gt;&lt;strong&gt;How and when feedback is provided: &lt;/strong&gt;Through post-exam feedback sessions&amp;nbsp;&lt;br/&gt;&lt;br/&gt;&lt;strong&gt;Assessment Task:&lt;/strong&gt; Self-tests&amp;nbsp;&lt;br/&gt;&lt;strong&gt;Length:&lt;/strong&gt; 2.5 hours&amp;nbsp;&lt;br/&gt;&lt;strong&gt;How and when feedback is provided: &lt;/strong&gt;Automatically on demand through Blackboard&amp;nbsp;&lt;br/&gt;&lt;br/&gt;&lt;strong&gt;Assessment Task:&lt;/strong&gt; Group activities&amp;nbsp;&lt;br/&gt;&lt;strong&gt;Length: &lt;/strong&gt;2.5 hours&amp;nbsp;&lt;br/&gt;&lt;strong&gt;How and when feedback is provided:&lt;/strong&gt; Group discussion and staff feedback when the activity is performed&amp;nbsp;&lt;/p&gt;</Content>
  </FeedbackMethods>
  <RequirementsList Applicant="Y" Label="Pre/co-requisites" Student="Y">
    <Requirement>
      <UnitCode>COMP23311</UnitCode>
      <UnitTitle>Software Engineering 1</UnitTitle>
      <RequirementType>Pre-Requisite</RequirementType>
      <Description>Compulsory</Description>
    </Requirement>
    <Requirement>
      <UnitCode>COMP23412</UnitCode>
      <UnitTitle>Software Engineering 2</UnitTitle>
      <RequirementType>Pre-Requisite</RequirementType>
      <Description>Compulsory</Description>
    </Requirement>
    <AdditionalRequirement>COMP33312 pre-requisites are COMP23311 and COMP23412</AdditionalRequirement>
  </RequirementsList>
  <AcademicPrograms Applicant="Y" Label="Academic programmes" Student="Y">
    <AcademicProgram>
      <Program></Program>
      <Plan></Plan>
      <Level></Level>
      <Requirement></Requirement>
    </AcademicProgram>
  </AcademicPrograms>
  <FreeChoice Applicant="Y" Label="Available as a free choice unit?" Student="Y">
    <Content>N</Content>
  </FreeChoice>
  <Accreditation Applicant="Y" Label="Accreditation" Student="Y">
    <Content></Content>
  </Accreditation>
  <RecommendedReading Applicant="Y" Label="Recommended reading" Student="Y">
    <Content></Content>
  </RecommendedReading>
  <StudyHours Applicant="Y" Label="Study hours" Student="Y">
    <IntroText> </IntroText>
    <ScheduledHours Applicant="Y" Label="Scheduled activity hours" Student="Y">
      <ActivityHours>
        <ActivityType>Assessment written exam</ActivityType>
        <Hours>2</Hours>
      </ActivityHours>
      <ActivityHours>
        <ActivityType>Practical classes &amp; workshops</ActivityType>
        <Hours>22</Hours>
      </ActivityHours>
    </ScheduledHours>
    <PlacementHours Applicant="Y" Label="Placement hours" Student="Y">
      <ActivityHours>
        <ActivityType></ActivityType>
        <Hours>0</Hours>
      </ActivityHours>
    </PlacementHours>
    <TotalHours Applicant="Y" Label="Independent study hours" Student="Y">
      <Hours>76</Hours>
    </TotalHours>
  </StudyHours>
  <Notes Applicant="Y" Label="Additional notes" Student="Y">
    <Content></Content>
  </Notes>
</CourseUnit>
