3rd Design: Software Architecture or: Do we have time for that?
If I had to summarize my experience with most of the
professors in my college career, it would be with the phrase: “I know you think
it’s unnecessary, but one day design will save your life”. It’s funny because,
for most of the 8 semesters I have been at this school, most of the students (including
me) have thought about the longsome and “boring” job that is the process of
establishing high-level decisions and general schematics for software projects.
I now think that this activity is vital and can save a lot of time, effort and
tears. The bad news, it’s one of those things that I had to live in order to
learn.
Last semester, I was working on one of the famous
i-semesters. Our task was to build a webpage that allowed registered users to
see content according to their preferences and current skill level. When we
started working and a teacher asked us to make several diagrams and split all
of the responsibilities into modules, we all took it as another homework that
we just “completed”, with much pain and laziness. However, as time went on and
we realized that we had no idea of how to continue or if there were any errors
on most of our code, those first designs helped us a lot. They helped us
realize what was unnecessary or out of scope. With those documents we were able
to save a lot of time and complete the project, although we had to redesign
them around 3 times.
I think the chapter and its overall contents are very clear
and highlight the importance of using design as a means of achieving our goals
in an efficient way. However, I know that because I have lived it. If I read
this book around one or two years ago, I think that I would have dismissed most
of its content without much thought. I think that life and real projects can be
the best teacher for that kind of knowledge.
Comentarios
Publicar un comentario