In my work as a software developer, I’m involved in every step of the systems development lifecycle (SDLC). That includes feasibility, analysis, design, development, testing, implementation and maintenance. Most of my day-to-day work revolves around maintenance, but occasionally, I take on new projects. The most exciting and crucial parts of developing are the analysis and design. In fact, the design is based directly on the analysis, so usually I consolidate these two parts of the SDLC into the same step, actively drafting designs as analyses are performed and presented.
Module 4 of this course deals with analysis. In software development, my approach to analysis is almost always the object-oriented approach. It’s critical to understand the objects you’re dealing with and the way they relate to each other. If you neglect part of an object and don’t include it, it can be costly to add it as an afterthought, however, it’s one of the easier problems to rectify. The more difficult lapses in analyses are when a relation isn’t correctly realized or when an object is left out of the model completely. Usually, such mistakes are caught during development, but if they are missed, then there can be terrible consequences when the final product is released. The typical consequence of such a lapse is that the customer discards the product, as it does not suit their needs, and in order to include that missing object or correct that relationship, it usually means a large portion of the program has to be completely rewritten, sometimes even the entire program. Clearly, analysis is no small step.
But where does Human-Computer Interaction come in to play? Obviously the software has to be designed correctly for humans to make use of it, but is that really the job of a human-computer interaction specialist? It seems to me that this is just a programmer’s design obligation. The text was correct in saying that human-computer interaction specialists are usually called in AFTER development to correct problems when it’s too late. I think the reason for that is that it’s not clear where one is needed until it is too late. Why would you hire someone to do someone else’s job you’re already paying? You may argue that it’s two separate jobs, but I think you’ll find most businesses will disagree. I suppose that’s why I’m taking this course, so I know what to look for. Unfortunately it has been less than enlightening so far.
Tuesday, April 15, 2008
Subscribe to:
Posts (Atom)