An Analyst is a specific profession, a kind of Developer, whose primary function is to
deep examine a specific area. They describe and Research a lot of topics, decide what tools may be good for what Projects (as there is no silver bullet), describe use cases, set up priorities, describe not only the Projects that will be coded but also other possible Projects. The latter is simply because such descriptions may attract people and some of them may have proper skills and motivation to do what the current Developers cannot or consider to hard to implement by their own efforts.
An Analysts formulates requirements (capabilities of the system) and defines specification of the system (e.g. user interface, business process, domain model). These information is further used by Programmists for Development of the information system.