Personal and professional development activities software developers should pursue to become software architects are:
i) Different ways of thinking about design and interacting with systems and stakeholders. (McBride, M. R., 2007)
ii) The delivery of software solution in iterations. (McBride, M. R., 2007)
iii) A servant’s heart. (McBride, M. R., 2007)
iv) Learn how the design elements are combined in practice. (McBride, M. R., 2007)
v) Gain significant amount of experience and understanding of both the problem domain and the technology involved in the solution as well as overall hands-on experience. (McBride, M. R., 2007)
vi) Seek the counsel of project and domain managers, technical leads, individual designers, and key customers. (McBride, M. R., 2007)
vii) Consult key works or references and actively devote time, effort, and thought to building their own. (McBride, M. R., 2007)
viii) Continuously learn and develop skills to restock their ‘toolkit’. (McBride, M. R., 2007)
2) Pseudocode and flow charts are useful components in the software development process because pseudocode is used to outline a program before translating it into proper syntax. This helps in the initial planning of a program, by creating the logical framework and sequence of the code. Flow charts are a visual representation of program flow showing actions and their order. (Carnegie Mellon Robotics Academy, n.d.)
3) The most important characteristics of computer programming are readability, reliability and robustness.
Computer programming needs to be reliable in order to serve its purpose effectively.
Robustness is important as this determines how well a program anticipates problems. (Wikipedia, 2011)
4) The components of computer programming are variables, arithmetic operators, conditionals, control flow and looping. All these components are necessary.
Conditionals are a fundamental part of computer programming as they allow the program to "make decisions" based on information.
Variables are also an important part of programming as they hold information.
(Teachme C, 2009)
‘References’
McBride, M. R. (2007, May). The Software Architect. Communications of the ACM, 50(5), 75, pgs 75-81
Carnegie Mellon Robotics Academy (Ct) Pseudocode & Flow Charts (n.d.) Retrieved from http://www.robotc.net/vex_full/reference/hp_pseudo_flow.pdf, pgs 1-2
Wikipedia (Ct) Computer programming (2011, Sept) Retrieved from http://en.wikipedia.org/wiki/Computer_programming
Teachme C (Ct) The Basic Components of Computer Programming (2009) Retrieved from http://www.teach-me-c.com/blog/5-basic-components-computer-programming