Usually software is a solutions for certain problems. Nowadays software is not only can be used locally on a machine but also work on the cloud as subsciption basis. Software is important piece of technology that drives the nation forward.
Now, people want to create a software to solve problem and of course making money, which is good. But people sometime don't understand the process and the steps required to make software, which is bad. And people think with just idea, and some sketch they can might a great software build for them from a software developer.
No you are wrong. But in small cases you might get lucky.
Software for people is what they can see on the screen. Which is the visual design / user interface.
What software can make people feel is the user experience design.
Visual design is usally done by graphic designer. A good graphic designer understand the concept of the platform they want to build, they have experience on various of available software and they can emulate it to become good software.
So here come the software architect. From Wiki, software architect is a software expert who makes high-level design choices and dictates technical standards, including coding standards, tools and platforms.
Usually software architect don't do the visual design, they deal with technical stack. But they might need to use UML, graph, model, structure diagrams or so. It can be a tough job.
iReka Soft Software Architect
Here is what we want to define Software Architect as for ourselves. We are small team, and the projects are not humungous. So Software Architect term to my mind to suit the business what it should do for smaller software development.
The deliverable of software architect is not yet the final product or software but a documents with visual designs, architecture, diagrams and specifications.
iReka Soft Software Architect should combine visual design and software architecture.
Which means he/she can do the concept of the software in visual perspective with using the right user interface for particular platform.
He knows what to looking for for a particular solutions, mark it as a module. And how other modules can be interacts.
Why We need to have Software Architect
The whole idea of having a software architect is for plan. It's so intimidating to jump right into the development, but yes when we get older and more experience, we know sometime the development can be just done, but of course there are a lot more stuff we haven't yet done, but we know where to find it. So by having proper plan, master plan we hope that it will not make the development stuck in the middle of development. Which meetings can be a cure; putting more ideas and changes, thus sometime make the software development ineffective.
Having too much plan is not good as well, but having too little plan is also not good.
So we need to having a good balance of planning of software. It's true on our own software development and also for clients.