Presentation on theme: "Bill Malkin Software Engineering and Architecture Joint Technical Program."— Presentation transcript:
Bill Malkin Software Engineering and Architecture Joint Technical Program
Bill Malkin Software Engineering and Architecture Joint Technical Program Bill Malkin MACS MIEAust ACS IT Architecture SIG Consunet, DSTO 31 years in IT 9 years Java BE(Civil) GradDipCompSts MEngSc(SysEng)
Bill Malkin Software Engineering and Architecture Joint Technical Program The Roles and Responsibilities of Engineers and Architects in the Software Construction Industry
Bill Malkin A Word From Our Sponsors Australian Computer Society Engineers Australia (previously the Institution of Engineers, Australia) ITEE College Information, Telecommunications and Electronic Engineering NCSWE (with ACS representation) National Committee on Software Engineering SESA Systems Engineering Society of Australia ASWEC (sponsored by both the ACS and EA) Australian Software Engineering Conference ( Adelaide 2012?)
Bill Malkin Professional Bodies - Software Engineering Australian Computer Society Engineers Australia Joint Board in Software Engineering ITEE* College Nat Comm on Software Engineering (NCSWE) Aust Software Engineering Conference ASWEC *ITEE Information, Telecommunications and Electronics Engineering Software Eng and Architecture JTP
Bill Malkin Australian Computer Society Australian Institute of Architects Joint Board ??? Joint Conference ??? Professional Bodies - Software Architecture Software Eng and Architecture JTP
Bill Malkin Engineers Australia Architectural Engineers Professional Bodies – Software Architecture Naval Architects Requirements Engineering Software Architects Australian Computer Society ?
Bill Malkin International Association of Software Architects The IASA provides information and education to practicing IT and Enterprise Architects. However, judging by their website, it seems to be aimed more at Enterprise Architects(?)
Bill Malkin Australian Institute of Architects SA Chapter address – 100 Pirie Street. No sub-categories as is the case with Engineers Australia Architectural design practices and principles cannot be applied in a field other than building/landscaping?
Bill Malkin Design Institute of Australia The DIA defines a designer as – a business professional that develops solutions to commercial needs that require the balancing of technical, commercial, human and aesthetic requirements.
Bill Malkin Building Architects design in the physical world. Software Architects design in the virtual world. Software Architecture
Bill Malkin Software Engineers and Architects – Who needs ‘ em?!
Bill Malkin Question 1 Does a large building construction project really need a Building (Civil) Engineer?
Bill Malkin Answer No But, with a Building (Civil) Engineer, the construction of the building is “ more likely ” to be successful in terms of: Cost Time Reliability Maintainability
Bill Malkin Question 2 Does a large software construction project really need a Software Engineer?
Bill Malkin Answer No But, with a Software Engineer, the construction of the application is “ more likely ” to be successful in terms of: Cost Time Reliability Maintainability
Bill Malkin Question 3 Does a large building construction project really need a Building Architect?
Bill Malkin No But, with a Building Architect, the outcome of the construction project is “ more likely ” to be successful in meeting the client's expectations in terms of the building's: Look and feel on both the macro and micro scale. Ability to perform the function for which it was built. Answer
Bill Malkin Question 4 Does a large software construction project really need a Software Architect?
Bill Malkin No But, with a Software Architect, the outcome of the construction project is “ more likely ” to be successful in meeting the client's expectations in terms of the application's: Look and feel on both the macro and micro scale. Ability to perform the function for which it was built. Answer
Bill Malkin General Understanding 1. Software Engineers are people who develop software within the Defence industry. 2. Software Engineers are people who develop software that implement complex algorithms. 3. Other.
Bill Malkin wikipedia Software engineering is a profession and field of study dedicated to designing, implementing, and modifying software so that it is of higher quality, more affordable, maintainable, and faster to build.
Bill Malkin IEEE Computer Society ’ s Software Engineering Body of Knowledge Software Engineering is the application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software, and the study of these approaches; that is, the application of engineering to software.
Bill Malkin General Understanding 1.Software Architects have excellent business analysis skills and general technical skills. (Solutions Architect) 2.Software Architects have excellent technical skills and general business analysis skills. (Technical Architect) 3.Other.
Bill Malkin Wikipedia* The software architecture of a program or computing system is the structure or structures of the system, which comprise software components, the externally visible properties of those components, and the relationships between them. Documenting software architecture facilitates communication between stakeholders, documents early decisions about high-level design, and allows reuse of design components and patterns between projects. *Bass, Clements, Kazmann 2003
Bill Malkin Differences between Building Construction and Software Construction Buildings: Visible to all. Can collapse and kill people. Require tradespeople and labourers. Require materials. Easier to see progress. Static, not dynamic. Cannot be backed-up or duplicated.
Bill Malkin Buildings: Must conform to relevant statute laws, local council by-laws, safety regulations, etc. Key personnel must be appropriately certified. Position titles mean something, eg Site Engineer, Clerk of Works, Architect, Site Foreman... Differences between Building Construction and Software Construction
Bill Malkin Parallels between Building Construction and Software Construction Software engineering* is a profession and field of study dedicated to designing, implementing, and modifying software so that it is of higher quality, more affordable, maintainable, and faster to build. Civil engineering* is a professional engineering discipline that deals with the design, construction and maintenance of the physical and naturally built environment. (*wikipedia)
Bill Malkin Parallels between Building Construction and Software Construction
Bill Malkin Parallels between Building Construction and Software Construction ? They both have architects and engineers working in partnership. Does this only happen in building construction and software construction?
Bill Malkin Software Architects Include Solutions Architects Functional Architects Business Architects Application Architects Business Analysts Application Designers Systems Architects?
Bill Malkin Software Architects Do Not Include Enterprise Architects Infrastructure Architects Network Architects Computer Architects Systems Architects?
Bill Malkin Software Engineers Include Systems Analysts Application & Maint Programmers Commercial – Complex database/ simple algorithms Technical – Simple database/ complex algorithms Test, Configuration Management, Version Management, Implementation Engineers
Bill Malkin Software Engineers Do Not Include * Participants in a software development process who, in order to make the process a success, do not need an in depth understanding of a.The Software Development Life Cycle. b.Software Development Principles. c.Software Development Technologies. * me
Bill Malkin Difference between Engineers and Architects Architect Responsible for Form and Function, ie the Look and Feel, the Functional Requirements and the High Level Design. Very close relationship with client. Requires excellent communication skills. Requires only basic technical skills. More art than science?
Bill Malkin Difference between Engineers and Architects Engineer: Responsible for Reliability and Maintainability, therefore the detailed design and the construction. Very close relationship with construction staff. Requires excellent technical skills. More science than art.
Bill Malkin Conclusions The Roles and Responsibilities of Software Engineers and Software Architects a)Software Architects focus on the client, and are responsible for the form and function of the application. b)Software Engineers focus on the technology, and are responsible for the reliability and maintainability of the application. (a) What, and (b) How
Bill Malkin Thanks Mandy Watson (Branch Manager ACS) Tim Browne (EA, CEO Innodev) Bruce Haines (Chair ITEE) Jeff Walsh (Dep Pres EA) Caroline Argent (Exec Dir EA) Paul Godden (Tech Prog Co-ord EA) Kuba Kabacinski (CEO Consunet)