I would like to have a better understanding of the entire cycle of developing software. From conception to deployment and maintenance.
I hate to say it, but Google would have got you a much faster answer than this site. I just typed in "Software life cycle" into google, and there are many great articles.
Conception, that is, the early engineering work is your most most important and should be longest and most intense period.
Any fool can sit down and start writing code and what comes out is usually called spaghetti code, meaning a tangled mess.
You need to sit down, work out specifically what the customer wants. LISTEN to the customer, write it down. Work it through on paper. Present a realist cost analysis of what the customer is asking for.
Once the customer sees a realist cost analysis (don't tamper it down because you will almost always go over anyways) he may change his mind and cut back. Non-technical customers rarely realize the actual cost of development.
Make mock ups of the screens and a diagram board of how the program works...scenario out each step and option to see how the logic will need to be formed.
Work and rework and rework you database tables, on paper.
You need to think through a 90% solution on paper before you lay down even 1 line of code.
It varies for every type of software and market. First find the market before you develop the product.
Don't stop taking massive action.
Best of Luck,
Michael T. Irvin
My books are available exclusively through Amazon Books. Check out my book "Copywriting Blackbook of Secrets"
Copywriting, Startups, Internet Entrepreneur, Online Marketing, Making Money