00:00:00
in the module one uh we have talked
00:00:02
about introduction to software
00:00:04
engineering and then we talk about
00:00:06
different types of the software
00:00:07
development life cycle in real world
00:00:09
scenarios we often talk about how can we
00:00:12
effectively deliver the most viable
00:00:14
products to the customer the clients or
00:00:17
the end users today we're going to have
00:00:18
an interview with Cliff uh Ashford who
00:00:21
is uh the director role he has been
00:00:23
experienced in the IT industry for 36
00:00:26
years hello Cliff uh very nice to meet
00:00:28
you could you please introduce yourself
00:00:30
absolutely nice to meet you too um my
00:00:32
name is Cliff Ashford as you see I'm a
00:00:34
director here at mon University in the E
00:00:37
Solutions area which is our ICT function
00:00:40
I look after the area called edas that's
00:00:42
Enterprise data and academic Services
00:00:45
which essentially means all the
00:00:47
Enterprise systems such as finance and
00:00:49
HR and other Central systems all of the
00:00:51
information systems um as well as all
00:00:54
the academic systems for supporting um
00:00:56
teaching and research and assessment so
00:00:59
Moodle for example oh okay I see thank
00:01:01
you and then uh can you talk about like
00:01:04
uh what what is happening in the past
00:01:06
yeah previously we often use the
00:01:08
waterfall software development style but
00:01:10
now we move to uh agile so at that time
00:01:14
uh how how the waterfall works here can
00:01:16
you briefly talk about that can yeah so
00:01:18
when I graduated from University in
00:01:21
1988 uh waterfall was the only way to do
00:01:24
things that's right you you plan things
00:01:27
well in advanc you did things
00:01:28
sequentially you work through all the
00:01:30
requirements all the analysis all the
00:01:31
design all the development all the QA
00:01:34
all the delivery yeah that's right we
00:01:36
did that for 100% of projects um Summit
00:01:39
works really well if you know exactly
00:01:41
what you're going to deliver at the end
00:01:43
of it it can work remarkably well okay
00:01:46
um if you are if the business is moving
00:01:49
at the time and changing there's a very
00:01:52
good chance of waterfall you'll produce
00:01:53
something that they no longer need um oh
00:01:56
that's right yeah yes which is never
00:01:58
popular you do
00:02:00
um so from that point of view it was it
00:02:03
was very useful to me when the the new
00:02:06
philosophy of agile came along because
00:02:08
it gave us a second way to deal with
00:02:09
things we didn't have to do everything
00:02:12
the same way yeah that's right um I was
00:02:15
very glad to adopt it because originally
00:02:17
the waterfall projects in the 1990s a
00:02:20
lot of them failed oh you would deliver
00:02:23
it but it's not what people wanted and
00:02:26
they didn't impl it that's right that's
00:02:28
why hi nowadays we we focus on what is
00:02:31
the the value that uh we want to deliver
00:02:33
yeah what do the customer want yeah yes
00:02:36
to keep in mind what value you're trying
00:02:38
to deliver rather than just get to the
00:02:40
end of a delivery yeah that's right
00:02:42
that's right yeah that's the key Point
00:02:44
yeah it's it's been really interesting
00:02:47
when it came on board because the agile
00:02:49
process
00:02:50
is deceptively difficult waterfall it's
00:02:54
quite simple to understand that's right
00:02:56
agile is not simple to understand it is
00:02:57
flexible it is undefined yeah it's about
00:03:00
the concept yeah it is yeah that's right
00:03:03
keeping in I say keeping in mind the
00:03:05
outcomes you're trying to achieve
00:03:07
keeping people remembering it's not
00:03:09
about the mechanics of the process it's
00:03:11
about understanding what you're trying
00:03:13
to achieve at the end of this and why
00:03:16
the method helps you achieve what you
00:03:18
want to really what it does is maintains
00:03:22
um agility of course but that's the
00:03:25
ability to change direction rapidly if
00:03:27
you see that the business has already
00:03:28
moved on from what you're trying to do
00:03:31
it's very good at resolving poorly
00:03:34
understood problems you know you want to
00:03:36
solve something you're not sure how so
00:03:39
the agile process lets you find your way
00:03:40
towards the solution whereas waterfall
00:03:44
You' think you have the right solution
00:03:46
and you bet on that solution being
00:03:48
correct and you just go for it yeah I
00:03:50
see I see so are you part of the the the
00:03:54
transformation process as well like uh
00:03:56
how I just uh am just curious like how
00:03:58
do you convince the the senior people
00:04:00
role uh to uh trans uh transform uh to
00:04:05
change from waterfall to the hi process
00:04:07
yeah it is it is difficult because again
00:04:10
business understands waterfall they
00:04:12
understand project management they
00:04:14
understand gun charts they can see why
00:04:16
you do things
00:04:17
sequentially to change that methodology
00:04:19
to say we're going to have meetings
00:04:21
every two weeks with you okay we're
00:04:23
going to discuss what you want to do and
00:04:25
yeah that's right uh we will educate you
00:04:27
as you educate us through the process
00:04:29
that's quite uncomfortable for people
00:04:31
and it depends upon trust and most of
00:04:33
the time actually they don't they have
00:04:34
no idea as well what do they want no
00:04:36
they don't it's it's very unfamiliar to
00:04:38
them yeah it's it's much easier the
00:04:41
second project you do than the first one
00:04:42
the first one's quite hard once once
00:04:44
they've been through it the first time
00:04:46
they understand the value of it and then
00:04:47
move forward okay um okay it's I suppose
00:04:51
that big thing is it can't just sit in
00:04:53
the it space the the business has to be
00:04:55
part of the agile process as well and
00:04:58
that's asking a lot m people um everyone
00:05:01
has full calendars everyone's busy and
00:05:03
then all of a sudden I come along and
00:05:04
say we want to have a standup meeting we
00:05:06
want to have this meeting every two
00:05:08
weeks want to have that meeting it's a
00:05:10
big commitment I see I see but it pays
00:05:13
off it's it's night and day I see and
00:05:16
I'm pretty sure that uh right now at
00:05:18
monach University we use uh hii as well
00:05:21
so right now how many products that you
00:05:23
over see at the moment what is the size
00:05:25
of the team how many people within the
00:05:27
department yeah okay so my department
00:05:30
idas we have something like 150 people
00:05:33
150 people it's it's a large function
00:05:35
and it's only part of the overall it
00:05:37
function of University um the university
00:05:41
has something in the order of 1 1200
00:05:44
systems I look after no I've never
00:05:46
counted them recently um it's something
00:05:49
like 120 systems 120 system that's huge
00:05:53
yeah there's a lot going on and all of
00:05:55
these are evolving and changing all the
00:05:56
time they all have to be secure they all
00:05:58
have to deliver what the university
00:06:00
needs continually that's right so it's
00:06:02
it's a constant piece of work yeah we
00:06:05
generally use two flavors of our gel so
00:06:08
if we're looking after the operational
00:06:10
systems we we essentially use Canan okay
00:06:13
Canan so the work is coming in we're
00:06:15
keeping the system running we're making
00:06:16
sure that the backups happen making sure
00:06:18
that any problems get resolved um minor
00:06:21
fixes upgrades all of those things go
00:06:23
through with Canan if we're doing
00:06:25
something new or a major step change for
00:06:28
something will use something closer to
00:06:30
scrum okay and we will stand up a team
00:06:33
specifically for it a multi-disciplinary
00:06:35
team with a scrum master who will come
00:06:37
in um that will then work with the
00:06:40
business about it so if it's a new
00:06:42
product as I say or Moodle for example
00:06:45
we just took Moodle from version 3.9 to
00:06:48
version 4.1 essentially we rebuilt it
00:06:51
from scratch so we we ran that as Nel
00:06:54
program because a lot of the things we
00:06:56
wanted to do we weren't entirely sure
00:06:59
what we wanted to do so we had to work
00:07:01
with our academics with our students to
00:07:02
say okay can we try this can we try that
00:07:04
is this the right thing to do what's the
00:07:06
most important thing to do I see and
00:07:08
what we ended up with is not what we
00:07:11
started with at the start of the Year
00:07:12
okay because everyone learns yeah yeah
00:07:14
yeah I see so it worked really well I
00:07:18
believe everyone seems very happy with
00:07:19
it's gone well that's the pattern we use
00:07:21
on most
00:07:22
things but we still do waterfall okay so
00:07:27
if we buy a large system off the shelf
00:07:29
something that's commodity um you know
00:07:31
what it's got to do it's the same in any
00:07:33
industry how you'd use that system you
00:07:35
know what your outcome is going to be at
00:07:37
the end of it you understand what you're
00:07:38
trying to achieve that's a very
00:07:40
waterfall piece yes and it's partly
00:07:43
because it's a multi-year piece of work
00:07:45
partly because we know what we're going
00:07:46
to do partly because the vendors have to
00:07:49
work that way because they have to stand
00:07:50
up large resources to work with us as
00:07:52
well so that would have requirements and
00:07:55
design and a big G chart that stretches
00:07:57
over several years right
00:07:59
it might have little agile projects
00:08:01
around the side of it that overlap with
00:08:04
it but the core of it would be waterfall
00:08:05
still okay okay I see I understand yeah
00:08:09
and then what do when you uh run the hi
00:08:13
uh process that kind of thing what are
00:08:15
the biggest challenge or yeah behind the
00:08:18
hi yeah process so AEL as I say was
00:08:22
designed for small software companies to
00:08:25
to develop a single product that's what
00:08:27
they were trying to do um is huge yes
00:08:30
and some of the other places I've worked
00:08:32
are huge so we um I'm trying to think
00:08:36
how many people we have in University
00:08:37
it's hard to count the people in
00:08:38
University but it's something like
00:08:39
15,000 people there's many departments
00:08:41
many things going on many parallel
00:08:43
pieces of work so when you take agile
00:08:46
and apply it to something like Mish you
00:08:49
have to tune it for the local
00:08:50
environment you can't just take an agile
00:08:52
book off the shelf and go we'll follow
00:08:54
this yeah that's right doesn't work um
00:08:57
so we introduced an to Monash I think
00:09:00
about eight years ago eight years ago M
00:09:02
we used a thing called safe which is the
00:09:04
scaled agile framework which is designed
00:09:06
to work on large organizations and help
00:09:09
prioritize between different competing
00:09:11
streams of
00:09:12
work um because just because they're all
00:09:14
separate agile teams doesn't mean they
00:09:16
can all go live at the same time and
00:09:18
there are not dependencies between them
00:09:20
so that's what it
00:09:21
handles um we ran with safe until about
00:09:24
two years ago and then we dropped safe
00:09:26
because we knew enough ourselves about
00:09:29
how to do like a monach version of safe
00:09:33
okay so we reimagined it the local cont
00:09:37
context yeah what was key was that
00:09:40
prioritization across the organization
00:09:42
um so the it function here I have 150
00:09:45
people there's a few other departments
00:09:47
that have 100 or 150 people we have to
00:09:49
work with each other we have to make
00:09:51
sure the network works at the right time
00:09:53
and we do the right work on the firewall
00:09:55
and that when we're building one of our
00:09:57
systems we also the integ and we pull
00:10:00
things up in the mobile app there's lots
00:10:01
of dependencies around these things so
00:10:04
we have representatives from each of the
00:10:06
areas who meet twice a week to discuss
00:10:09
priorities so we work on two weekly
00:10:11
Sprints we're all synchronized on two
00:10:13
weekly Sprints and we make sure that
00:10:15
we're synchronized about what goes into
00:10:17
the next Sprint yeah so that we're not
00:10:18
holding one of the other areas up yeah
00:10:21
so that's a level on top of normal AG
00:10:23
that we had to implement at the
00:10:24
University to allow us to make sure that
00:10:27
we were not tripping up over each other
00:10:29
as we Ru these projects through right I
00:10:32
see and I think uh there are um I'm sure
00:10:34
there are lots of challenges behind but
00:10:36
also there are lots of benefit as well
00:10:38
so after implementing the hii framework
00:10:41
for over eight years now yeah what do
00:10:43
you see as a the the main benefits there
00:10:46
of this well I think it's one of the
00:10:48
things I should ask the university to
00:10:49
answer
00:10:50
because it our delivery rate has
00:10:53
increased markedly at the University we
00:10:56
we were seen this too slow and
00:10:57
responding to changes at University
00:10:59
Andel was brought in to speed that up um
00:11:03
nothing happens overnight in any
00:11:04
organization but it is I believe we're
00:11:07
much faster and much more responsive to
00:11:08
the needs of the University now and
00:11:10
we're again delivering things people
00:11:11
want rather than things people wanted
00:11:13
three years ago right right right I see
00:11:16
okay and uh I'm pretty sure when we run
00:11:20
the software development uh process over
00:11:22
the years we want to uh improve things
00:11:25
as well think about the cmmi mat capab
00:11:29
that kind of thing yeah so how do you uh
00:11:33
have you think about how can we improve
00:11:34
the hi process over time as well what do
00:11:36
you do yeah to improve it well we have
00:11:38
refined it and we've worked it several
00:11:41
times we at times we tried to make one
00:11:44
process fit everybody um other times we
00:11:48
introduce a version of scrum band so
00:11:49
parand prob scrum in the end we decided
00:11:53
that it's separating them works better
00:11:56
ah um for a while we were sort of
00:12:00
bending some of the rules of our jaile
00:12:02
as well with a bit of overlap between
00:12:03
the teams and we stopped doing that
00:12:05
right um we use product managers so we
00:12:08
have a product manager will be
00:12:10
responsible for several of the things at
00:12:12
University so we'd have a product
00:12:13
manager for Moodle for example and
00:12:15
generally a few of the other Educational
00:12:17
Systems that sit around
00:12:19
Moodle at one time we would have a scrum
00:12:22
team and have more than one product
00:12:23
manager that was a bad idea yeah because
00:12:27
then they're fighting over the response
00:12:29
um so now for any given team there's a
00:12:32
single product manager and if there's
00:12:34
other things coming in they negotiate
00:12:35
outside of the team okay okay we also
00:12:37
have a couple of other roles we have
00:12:39
service delivery manager okay which is
00:12:41
something you wouldn't have in the soft
00:12:42
Warehouse yeah and their job is to
00:12:45
maintain the existing service okay and
00:12:47
because you're always having to so it's
00:12:49
more of the uh infrastructure that kind
00:12:50
of thing yep the infrastructure the
00:12:52
upgrades um if there's a new Cyber
00:12:54
threat arises we have to do some work on
00:12:56
a lot of those things even just
00:12:57
negotiating the the price
00:13:00
a lot of those things fall the service
00:13:02
delivery manager and a lot of time they
00:13:04
need the team to do some work as well so
00:13:07
they're negotiating with the product
00:13:08
manager over what happens in any given
00:13:11
Sprint yeah and there's a third piece
00:13:14
which people forget about yeah there's a
00:13:17
continuous Improvement piece we want to
00:13:19
do with the team our developers need to
00:13:20
get better at development they need to
00:13:22
move towards devox a quality assurance
00:13:25
people need to get better at quality
00:13:26
insurance less manual more automation
00:13:29
our business analysts need to get better
00:13:30
at their skills Etc so each of these
00:13:33
areas are trying to improve their
00:13:35
personal
00:13:36
discipline and some of the things they
00:13:38
will do then have to fit into how the
00:13:40
team runs so when we developed devops
00:13:43
internally it took us a long time to get
00:13:45
to a develop situation you do have to do
00:13:47
some work on the systems so yes the
00:13:50
product manager is listening to the
00:13:52
business saying we need to do this work
00:13:53
Service delivery manager is listening to
00:13:55
the vendor saying we need to upgrade on
00:13:57
the the second July but we're also going
00:14:00
well we have to do these things for
00:14:02
devops and we need some time to fit that
00:14:04
into our delivery as well so every
00:14:06
Sprint is a is a competition of three
00:14:08
different things about how much capacity
00:14:10
you give to each of those three areas in
00:14:12
a Sprint what do you get the most value
00:14:14
right yeah I see thank you so much yeah
00:14:17
and uh so probably um is there anything
00:14:21
else that you want to inspire and uh the
00:14:23
the the student to become a great
00:14:25
software engineer yeah um yeah I mean I
00:14:29
I see it as a profession and people
00:14:31
should be professional this isn't about
00:14:33
box ticking it's caring about doing your
00:14:35
job really well understanding it keeping
00:14:38
yourself educated it moves faster than
00:14:41
ever these days yeah exactly so with the
00:14:44
new AI things as well everything
00:14:46
generative AI sh activity it will
00:14:49
transform and uh affect the software
00:14:51
industry a lot completely changes the
00:14:53
job so to to not take that into account
00:14:57
you're instantly left behind um I spent
00:15:00
a lot of time on my career making sure
00:15:02
I'm always up to date I'm always
00:15:04
checking my ideas it's easy to use
00:15:07
something you did a few years ago to try
00:15:08
and solve a problem now and sometimes it
00:15:11
might be right but sometimes you're
00:15:12
already behind the time you need to
00:15:14
learn better tools you need to keep up
00:15:16
to date that's vitally important I rely
00:15:19
on all of my teams advising me about
00:15:22
this because if I'm saying do this and
00:15:24
no no that's how we' have done it 10
00:15:26
years ago we need to do it this way boss
00:15:28
that that's really important and being
00:15:30
able to have that conversation feedback
00:15:32
to me where we're going um keeping in
00:15:36
touch with external areas don't get
00:15:38
siloed make sure you're part of external
00:15:40
organizations make sure you read
00:15:41
continually about this as I say it's
00:15:43
forever changing um don't get stuck on
00:15:46
any tools as well everybody likes their
00:15:49
favorite tools but again things change
00:15:50
so fast be ready to move right um
00:15:54
flexibility is the key so it's like
00:15:56
agile with a small e is what you have to
00:15:59
be as an individual otherwise you get
00:16:01
left
00:16:02
behind so professionalism the words
00:16:05
thank you thank you so much yeah
00:16:07
professionalism communication learning
00:16:09
they are all important skill set for the
00:16:11
student yeah so thank you so much uh
00:16:13
Cliff yeah and I think today uh the
00:16:16
student have learned a lot from you yeah
00:16:18
really appreciate
00:16:27
pleasure