Come up with a problem that needs solving. This can be a desire that people have that is not being met, or a need that could be met in a more efficient way.
Think about and document the products or services that already meet the desire or need that you are targeting. Think about how they fall short of meeting the need, how they do not meet it directly or how it could be met better. Document your brainstorming so that you can refer to your notes later.
Start brainstorming ideas. During this phase of the project, there are no bad ideas. Just come up with wild and crazy ideas that you think would meet the need that you are aiming at.
Narrow down which ideas are practical. Ask yourself questions about the cost-effectiveness of each, how much they improve on existing alternatives and whether or not they are within your scope to execute.
Start designing and testing. This phase of the process will depend entirely on what field you are in. An engineer may have invented something that they can build with his hands, while a computer scientist might invent something that only exists electronically. Once you think you have a viable idea, you need to jump in and start creating prototypes and see if you really have something.