Thursday, August 22, 2013

Homework 2 - Software Engineering - CSCI 362-001

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