Why this text
Todays business environment depends heavily on IT. IT is what drives almost every part of our society. IT itself has become an industry that constantly renews itself as new and improved systems and applications are being developed. Lifestyles have changed dramaticaly due to the ubiquitous nature of internet and communication devices.Al this is a result of many many projects and initiatives that started from the first DIY computer and modem accesible databases to the current technology push of PDA´s and social networking sites. This text is about the steps that make up this journey to the information society, be they great or small. The essence of each step is and has been man.
The nature of software development
The applications we use have once been developed in a software development process. Writing software is like writing an interactive adventure story containing all possible plot twists and turns. Recently a larger part became the visual and interaction part of the software. Development suites now enable the developer to start with a toolbox and parts that can be 'stitched' together in a way that makes the application more recognizable, predictable and understandable to the user. If we see the excell workbook as the interface. the developers are often only really challenged by what formula go in the cells.It is evident that this requires e certain type of personality. It requires a person that can focus on detail, on the mechanisms between details. It requires a person that is not driven mad by the restrictions and limits of the code, but that can think in terms of constructs of elements to achieve the purpose.
This text aim to outline some pitfalls and common misunderstandings as well as guiding principles for prospective IT project owners.
Don't be a perfectionist
In the mind of the owner of the project, the end result may differ from what was promised or agreed upon. The layout of a page may be different or the name of a field may be incorrect. The fist intuition of many porject owners is to hold the developer to implement the requirements to the letter. When we are not even talking about a difference in the intepretation of the requirements it is still wise to evaluate whether the deviation breaks the functionality and blocks the owner from getting the benefits of the software, or that it doesn't'.Although the required change may seem small, it always means a number of steps should be executed. First the error must be identified and if necessary reproduced by the developers. Then an appropriate solution needs to be thought of. Then a developer needs to be available that can fix the error. Then this developer needs to be allocated to do that. Then the developer needs to be succesfull and not create new errors as a result of his actions. Finally the owner needs to confirm he is satisfied with the result.
Especially when developers have been assigned to new tasks the time it takes to immerse themselves in your project again, or the time some inexperienced developer needs to do so is an added cost. There is a certain fatigue that strikes developers when they are asked to go back to their work and fix small
Don't listen to the salesman
I have seen many cases in which one could say a sales strategy had worked perfectly. A product of module that the developers had on offer was perfetly placed with the customer as a solution to an existing problem, or even presented as a wise thingto do in light of other concerns (security, future proofing etc.).It turns out the new functionality is not needed, doesn't work as promised or creates a new problem that you will need the development company for. What went wrong here?
An example was a company that aquired a new search engine with special properties. The properties where presented as unique and well fitted to the challenges the company was facing. Once delivered the search engine was found to work different than f.i. google. The main response of the project owner was that the project had been presented as a good idea by the development company. The development company was seen as an impartial partner and advisor.
It is very understandable this occurs because often a development company will perform multiple projects for the
Use what you have seen workin with with someone else
If there is any way to avoid a software development process do it. This means you look in the market place and especially with companis like your own for software and systems that are in use and functioning well, that approximate your requirements.If you find examples of working software there is a sanity check on the developing company and talk to them about the functionality. You can then discuss this in your own company to see whether the reuqired changes in the opration will be accepted. Finally the developing company can install the software as is on your systems.
Be ware this is also a business model in som cases, where the money is made by making slight changes to the setup of a standard system. The changing process usually cost a couple of weeks and invloves a consultant making the adjustments at a fixed daily rate. Either avoid this by requireing no changes from an implementation seen elsewhere, or be very carefull not to tax the abilities of the consultant. Make sure you have the consultant in house, that you have time to communicate with him or her, and that the workprocess is structured and the results are tested. Calculate a wide margin over the initial budget if this business model is used.
Adopt systems in fases
Be close to the team
Know the company
Use moscow
Use timeboxing
The intention
Most projects are started because of business benefits. If the project is initiated by a government body then there might be a social interest that is served, for example services towards the lees mobile, blind or deaf. Also the benefots of saving time and making life easier for citizens is good reason to start a project.In some cases the intetion for a project can only be traced back to a sales representative or consultant that suggested possible benenfits form initiating it. Other reasons may be to bring political status to its initiator, to spend budget or to keep some people working on something.
What came before
The
The Team
There is a whole community of tech savy developers that want to have fun and create new functionality for profit or just for the fun of bringing this to the world. The kind of drive found with these people is the kind of drive alle software developers would like to evoke or harness in their developers. This text is not about the creativly driven fun loving developers. If you find them in your project make sure you keep them.
The intention of a project, translated in a stated goal
There are no comments on this page. [Add comment]