No Silver Bullet by Frederick P.
Brooks, Jr has many fair points, though seemingly none revolutionary.
I agree that the nature of software means that a sure-fire way to
complete every software project seems unlikely. The complexity, need
for change, and variety of all software required seems too vast,
especially with changing hardware and the variety of hardware. I also
agree that high level programming languages did a huge amount for
software development – it reduces labor time and complexity.
While object orientated programming
does help in terms of design, I do not personally feel having a class
hierarchy greatly aids the whole field of software engineering. While
it does aid in the complexity of the craft, there are other factors
that simply outweigh the advantages it gives. Similarly, I do not
feel that artificial intelligence is going to make software
engineering really easy – at least not in the near future. There
are still great strides left to be taken to get the AI field to
smaller accomplishments – solving something like easy software
engineering development seems far off. I feel similarly about
automatic programming.
In Kode Vicious' Cherry-Picking and the
Scientific Method I agree that preparation for thins such as mergers
is more important than trudging through old code for diamonds in the
rough. Doing so seems like a much better use of time and will lead to
more efficiency. Similarly, any time any bugs are to be fixed I think
good documentation is in good practice – that way, if nothing else,
you can always backtrack if your fixes have unexpected consequences,
or someone wants proof that you have been working on something
specifically.
Software Analytics by Tim Menzies and
Thomas Zimmerman proved to be an interesting read. This was due to
the fact that I had previously heard of and conceived the field, but
had not actually read anything about it previously. I definitely find
software analytics techniques necessary with all the data available
today – it would be impossible to search through it all with
humans, and would more than likely prompt many mistakes. The article
also supports the idea that the “silver bullet” for software
engineering is not likely to pop up, as even they state that what you
learn from one experience may not apply to a different one. The
article also reassures job security when they state that having a
huge amount of processing power is useless without good scientists
behind it – something I would assume that most people would think.
It seems out of the three articles that
this one describes a subject that may encounter legal issues the
most, depending on what type of data is being worked on and where it
comes from. With recent scandals such as the NSA debacle and the
companies related, this field may be greatly affected if legislation
is passed to alter what is allowed. I must admit though, the
predictions for software analytics in 2020 seemed a bit generic and
lack luster.
No comments:
Post a Comment