bill malkin software engineering and architecture joint technical program
Post on 01-Apr-2015
218 Views
Preview:
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 CollegeInformation, Telecommunications and Electronic Engineering
NCSWE (with ACS representation)National Committee on Software Engineering
SESASystems Engineering Society of Australia
ASWEC (sponsored by both the ACS and EA) Australian Software Engineering Conference (Adelaide 2012?)
Bill MalkinProfessional Bodies -
Software Engineering
AustralianComputerSociety
EngineersAustralia
Joint Boardin SoftwareEngineering
ITEE*College
Nat Comm on Software
Engineering(NCSWE)
Aust Software
EngineeringConference
ASWEC*ITEE Information, Telecommunications and Electronics Engineering
Software Eng and Architecture JTPSoftware Eng and Architecture JTP
Bill Malkin
AustralianComputerSociety
AustralianInstitute ofArchitects
Joint Board???
???
???
JointConference
???
Professional Bodies -Software Architecture
Software Eng and Architecture JTP
Bill Malkin
EngineersAustralia
ArchitecturalEngineers
Professional Bodies –Software Architecture
NavalArchitects
RequirementsEngineering
SoftwareArchitects
AustralianComputerSociety
?
Bill MalkinInternational 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 MalkinSoftware 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 aSoftware 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 aBuilding 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 aSoftware 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 MalkinIEEE 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 MalkinDifferences between
Building Construction andSoftware 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 betweenBuilding Construction and
Software Construction
Bill MalkinParallels between
Building Construction andSoftware 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 MalkinParallels between
Building Construction andSoftware Construction
Bill MalkinParallels between
Building Construction andSoftware 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 MalkinSoftware 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 EngineersDo 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 MalkinDifference 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 communicationskills.
Requires only basic technical skills. More art than science?
Bill MalkinDifference 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 MalkinConclusions
The Roles and Responsibilities ofSoftware Engineers andSoftware 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
ThanksMandy 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)
top related