Starting from a customer's request, transmitted by the marketing and management company, architect of software should generate an image, to produce a conceptual specification of the application. Many times, does not start from a clear requirement from a client, but only inferred from a market need.The architect is the one that defines the application from top to bottom. He should understand what is expected from the application, then have to see how the application can be divided into components, which is the role of each component and how they interact with each other. We should not lose sight of any user-interface application. At the end of the chain, the architect must imagine how application can be tested and how to make the final validation of the product before launching. Core responsibilities of this position allow comparison with classical architecture. Just as an architect is designing both the overall design of the "house", and every wall, door or room, with all pipes and wires that pass from one side to the other, software architect should develop its application throughout the project. Unlike programmers, software architect does not write code, but drafted in a standard format documentation containing all product specifications. On this basis, elaborates on the conceptual level modules, the modules and components. Receiving this documentation, engineer or programmer will implement all the specific code.
Software Architecutre is how computer programs interact with each other, what they do "behind closed doors" <how they function>, and how they are built. For example, when you want to open your word processing program, you move your mouse to the icon, double click, and open the program. What you don't see is how the software works with your opperating system.