Work of William Fiscus III.

Monday, October 5, 2015



    According to Tanmay Chakrabarty,  A software development process is a structure imposed on the development of a software product.” (Chakrabarty, 1st paragraph)  The following are the steps of the software development process in order: Gathering requirements, planning, modeling or organizing, tools or techniques, implementation, testing, deployment, and updating.  After seeing how many steps there are involved in creating a successful program my first thought is, is it necessary to complete every step of the process?  I’m eager to create a program and be able to say I made it.  I’m pretty sure the answer is of course every step is necessary.

    After researching where the most time spent as a program developer occurs, I found the following answer: “Understanding code is by far the activity at which professional developers spend most of their time.” (Hallam, 2015) Specifically Hallam describes his time spent in the following areas: 

New Code:                         2%
Modifying Existing Code:     20%
Understanding Code:         78%

     In another article, Phil Johnson states, the following which makes me tend to believe programmers in fact do spend the most time understanding code:

“While some bugs can be quickly found and squashed, others can be maddeningly elusive and can lead to many lost hours of good development time, not to mention a bit of a coder’s sanity.” (Johnson, 2015, 1st paragraph)

   Going back to Chakrabarty’s steps, understanding code and debugging must fit in the testing phase.  If I had to guess, the majority of time spent by coders most likely varies from developer to developer, and project to project.  For example, a solo developer who writes programs for small online enhancement reasons (such as a hacker, creating a password cracker or a chat room scroller) is more than likely not putting the amount of detail and preparation into their projects as say Peter Hallam of Microsoft (who works on the coding for the C# compiler).  I do however agree that all of Chakrabarty’s steps are equally important in the outcome of the program, and do understand that in the real world choices will have to be made as to which of these steps you choose to dedicate your time to.


References
Chakrabarty, T. (n.d.). Explain the steps of software development. - Computer Programming. Retrieved October 5, 2015, from http://tanmayonrun.blogspot.com/2013/01/explain-steps-of-software-development.html
Hallam, P. (2006, January 4). Peter Hallam's WebLog. Retrieved October 5, 2015, from http://blogs.msdn.com/b/peterhal/archive/2006/01/04/509302.aspx
Johnson, P. (2015, September 17). The terrible 10: Programmers' biggest frustrations. Retrieved October 5, 2015, from http://www.itworld.com/article/2984536/development/the-terrible-10-programmers-biggest-frustrations.html#slide4

1 comment :

  1. Hello. I am the Chakrabarty from your post, however the way quoted me, I don't think that was needed. The post that you have read was a noted answer for the question, I was a student back then, used to publish the notes I make for other students to have a guide. Books, internet - are the sources from where I used to gather and create my notes for the exam.

    Currently working as a Sr. Web Developer in the PHP platform for the last 6 years, and also domain of that blog has changed to https://www.onlineclassnotes.com

    And from my experience of the last 6 years, I spend most of the time in the implementation and testing/fixing phases. A lot of things finalized in the Planning and Modeling phases takes a log more time than expected in the implementation phase. Along with these, when client changes the requirements in the middle of the project, nightmare takes place in the daylight.

    ReplyDelete

William Fiscus III 2015. Powered by Blogger.

Popular Posts