How is software architecture different from project management?

Summary

An oft repeated question posted on the career development forum on www.questpond.com, the official web site of Shivprasad Koirala, the detailed reply made by the forum members evoked a good response from the readers.

By Bhavanesh Asar

Yes, S/W architecture and project management are two different things.S/W architecture is complete technical work which deals in designing of software functionality while project management is a task which deals in managing resources (software, hardware, and humanware) and accounting their use. Technical success of the project depends on S/W architect and over all project success depends on Project Manager. S/W architect is also a resource under a project manager but technical success of project as said before depends on him.

By Sainath Sherigar, PMP

You have asked a very good question - which I believe most people at your level of experience ask some time or the other.

Adding to what Bhavanesh has already mentioned, separating the role of a PM and an architect becomes necessary in big projects involving at least 20-25 resources. Handing project deadlines, gathering requirements, client interaction, allocating resources - people & hardware assets, handling project budgets, handling stake holders (people for whom the software is being made), etc is the primary responsibility of the PM.

A PM needs to possess what can be called "helicopter vision" - the ability to keep the entire project on track. Truly successful PMs are also excellent leaders and masters in man management.

A S/W architect needs to have both "tunnel vision" with respect to the hard core technical aspects of a project, whether something is technically feasible or not, if the solution architecture being adopted is correct. He also needs to have "helicopter vision" - is the project scalable, can it handle a bigger user base in future (Kapil is the best guy to speak on this)

I would urge you to take inventory of your own skill sets before finalizing which career path to opt for. The questions below might help:

For Software Architecture:

  • Are you technically strong?
  • Do you enjoy resolving technical issues in a project?
  • Do you keep exploring new technologies when they are in their Beta stage itself?
  • Do you enjoy coding?
  • Do you possess an investigative/exploring mindset?
  • Do you possess good software engineering knowledge (for ex. design patterns, best practices in S/W development,etc) or have a strong interest in the same?
  • For Project Management:

  • Are you good in planning? (very important)
  • Are you a good communicator?
  • Are you a good leader? (Test yourself - how many people voluntarily accept your advice, approach you for solving their problems. The key word here is "voluntary”, without any reporting hierarchy in between)
  • Are you a good negotiator?
  • Do you like the challenge of handling people (many people underestimate this skill set)?
  • Can you take total responsibility for the success/failure of a project?
  • Do you possess good domain knowledge?
  • The S/W architects role is still evolving in India - of late this has picked up a lot of momentum. But I would suggest that you honestly evaluate where your interests and skills stand.

    True success can come only when both the HEAD (ability to do something) and HEART (genuine interest in an area) are in sync. Don't get swayed by titles like "Manager”,” Architect" - find your strong area and push forward. All the best.

    By Kapil Siddharth

    PM is one manages Man, Material, Money (budget) and Time (Schedule).Architect looks into the technical aspect- how is the system to be built, foundation framework, communication between different components, data storage (database) and lot of other technical feasibilities. WEB DEVELOPMENT itself is a very big area for Architecting. Web Applications are used by millions of people so when you start building these web applications and thinking of solutions to keep them running you are entering into arena of architecting...How is your web application deployed? Is there a load balancer needed? Is there session failover needed? How can I give my application be 24x7 availability? If 1000 users are added can my web application survive the load? So if you are leading and managing the team -work allocation and managing their schedule then your are in for PM.If you are asking more of 2nd answer then you are in for architect.

    By Shivprasad Koirala

    Nothing to add more, Sainath and Bhavanesh has covered it all. But yes its a right time to take a decision and stick to it. It should not fluctuate after 5 years. For instance you walk on the architecture path and then see PM's have a good salary and your goals fluctuate.

    Feedback

    Was it worth investing your time in reading this article? Please let us know.

    Sainath Sherigar – email: sainath.sherigar@gmail.com or blog me at ugaininfo.blogspot.com
    Shivprasad Koirala – email:shiv_koirala@yahoo.com or blog him on computerauthor.blogspot.com
    Kapil Siddharth - email:kapilsiddharth@hotmail.com
    Bhavanesh Asar - email:ba0021@yahoo.com