It seems that there are some businesses that rely heavily on tacit knowledge (“Tacit knowledge,” 2013) to run their IT services. Documentation is seen as non-value added activity (“non value added activity,” 2013). When there is a problem with an application, there is usually a name associated with the application; a go-to person. This approach places a company at-risk. One of the phrases we used to use at one of my places of employment was: “What if Jim gets hit by a bus, or wins a million dollars?”. Exactly. What happens if the person with all the unspoken, undocumented, knowledge about an application (or process) is away from the office, even if it’s for a sick day? Does the business just simply wait for the return of the Oracle? Is the response to customers, “Oh, you’ll have to wait on that financial application to be fixed, Jim is away on vacation”?
If there is one thing that is certain, doing more with less mentality has killed software development. Having a developer / programmer / analyst / tester / technical writer /etc., instead of multiple people to fill each each role, diminishes the overall role the SDLC (software development life cycle) plays in software development and maintenance. It does not mater what approach or methodology you use in getting software modified, there are defined stages in how software gets changed. I must stress software modifications, because new development in most companies is dead. Once the software is developed, it is maintained. Maybe it’s me, but most of what I read today about the various development methodologies focus on new development. Maybe maintenance is implied, but I think that most company leaders see the approaches as related to new development. This is simply not the case. The SDLC applies to change within the software and its related systems, not just new development.