I ask this because yesterday is my first meeting with the customer in which she tells me what she is doing now Is (by hand) and what it is, what the new web-app should finally do.
I wonder, what I have to do during this shows me the steps of this process. Do I recognize usage cases and model them directly? Do I describe the procedure in Prasa? How do I describe / transcribe a model from the real world, which is then the basis for the code?
What is the best practice for you to start with new development? any suggestion?
Manage processes and expectations about all this and much more to do with technical mistake (IMHO) with most customers - especially with small consultations - that is, they have a fixed price contract (potentially being billed with support T & amp; M: Time and materials). They do this as risk management practice, so it makes sense.
The problem is that they are paying for less risk in three ways:
- You pay premium for less risk. This is a basic principle that is equally true in software development because it is in financial markets;
- The developer can be so much exposed that the cost increases astronomically, which is the benefit of the right non (okay, it gives the benefit to the developer unless things are seriously wrong, Which they almost always do); And
- If you forget the deliverables and acceptable criteria, develop a specification and spend so much time in formalism that you forget to do so, instead of just writing $ 300k, instead of writing 300 page word documents, you Know, some coding.
This helps to make the end result more expensive for the client, demativating for the developer (who wants to write 300 page word docs? Really!) And this is actually the client Any delay is happening (thus increasing the risk of crawling the scope is increasing, which is directly proportional to the length of the project).
Both parties are often provided with fast service from T & M's perspective, prototype method with regular delivery or performance of the client does not exceed 4-6 weeks. It leads to managing the expectations, if the client is looking at something, it puts them easily and you have to get along with the job (rather than pending time in meetings going to the Gantt chart).
So what do you have to try to go to your client for a bachelor's degree (step of the child) where they can see what they are getting, how it develops and this Participates in the process. The result is fast and cheap at the end (with sharing risk weight to both parties).
One thing that many developers also forget is that they are like royal subjects in 15th century France. They may have privileges, even money and many opportunities, but they work in the joy of the King (or the queen), which can be cut off on a wave. This means that the customer ultimately uses the power and you, as the developer, are present to simplify your life and not in other ways.
If the client wants a pink and green website developed in Kokobol, they get on the boss's iPhone on a virtual Wax / VMS server that runs on the railway. Now you can use your expertise and experience to understand and explain them, which is not a good idea, but eventually if they want you to have two choices: to give them or to walk.
Many developers who think what they should have, should not be given them, not what they demand. big mistake. A part of the process is to open the communication channel with the customer so that you do not go out of any tangent thinking (or decide what they want) when they are hoping to be completely different.
Even a small software development project can easily run in 6 figures. This is usually a big investment that is paying for it.