COMP1531

Week 10 - Guest Lecture 2

Software Management Tools & Industry

What have you learnt in COMP1531?

Why does it matter?

COMP1531 Project

Why do we teach?

  • Iterative approach to implementing software (Iterations 0-3)
  • Code reviews (merge requests reviews)
  • Collaboration with other software engineers (Standups)
  • Documentation (Code / Application)
  • Continuous Integration / Continuous Development
  • GitLab issue board (Management Tools)

Are any of these concepts actually important in industry?

My Background

  • Graduated with Computer Science in 2023
  • Tutoring at CSE since 2022
  • Student project (UNSW Redback Racing) as a Software Engineer
  • FullStack Engineer at Atlassian since 2024

Why use Software Management Tools?

We have already seen usages through GitLab Issues

  • Project planning
  • Tracking evolution / completion
  • Scheduling and responsibility of tasks
  • Documentation

 

Benefits of more complicated project management tools:

  • Scrum and Kanban Boards
  • Backlog management
  • Automations
  • Analytics and analysis reports
  • DevOps and CI/CD Integration

Jira + Confluence

  • Collaboration tool
  • Knowledge base home
  • Documentation

University Context

Confluence and Jira are utilised in the following courses:

  • SENG2021
  • SENG3011
  • COMP3900

Project Management

UNSW Redback Racing

  • 150 Students
  • 7 Technical Departments
  • 3 Business Departments
  • Operations + Executive Team
  • ~11 Months to build a new car

A lot of people

Organization and time management is important!

Jira Software

Scrum - Timeline

Jira Software

Scrum - Back log

Issues/Tickets not in the current sprint or 'backlog' of tech debt

Jira Software

Scrum - Active Sprints

Current work being completed and their status

Jira Software

Issues / Stories / Epics

Epics: Large body of work, generally an individual project

Jira Software

Issues / Stories / Epics

Stories: Requirements from an end user

Jira Software

Issues / Stories / Epics

Issues: Smaller individual work item, part of a larger project

Jira

Could be used to track non-technical stuff as well

Great visibility

Confluence

Single source of knowledge, historical decisions, onboarding documentation

My Team @ Atlassian

  • Platform Team
    • Creating reusable components, tools, services and experiences used by products
  • TWG Bandicoots (aka Linking Platform & Experiences)
  • 20 member team
    • 15 engineers, 1 PM, 2 Designers, 2 Managers

Projects in Big Teams

We are a team of 20+ people

How do we work together?

Projects in Big Teams

Software Rituals in Industry

Agile Development

Agile development is based on an iterative approach to developing software. Quite a popular method software teams adopt

 

Similar to project iterations, teams generally adopt short time boxed periods called sprints.

 

Rituals are meetings that occur during the sprint that help facilitate collaboration.

Software Rituals in Industry

My example of a sprint every 2 weeks

Backlog Grooming

Keep backlog up to date, and plan for future sprints

Retrospectives

Review how the last sprint went, look at whats good and implement improvements

Code Reviews in Industry

Pull Request / Merge Request Reviews

Code Reviews in Industry

Pull Request / Merge Request Reviews

CI/CD in Industry

Developer Operations (DevOps)

Q&A

Atlassian / Industry

COMP1531 Week 10 Lecture 2

By kuroson

COMP1531 Week 10 Lecture 2

  • 37