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