SlideShare a Scribd company logo
SIG Architecture & Design Documentation and Communication of a Software Architecture David Meijers February 5, 2009
[ ] February 5, 2009 SIG A&D
Documentation – Introduction (1/2) [ ] February 5, 2009 SIG A&D Siemens Four Views RUP / Kruchten 4+1 Image: Lack of agility
Documentation – Introduction (2/2) This is not about ADL’s (such ACME , Rapide, Wright, Unicon) [ ] February 5, 2009 SIG A&D System simple_cs = { Component client = { Port send-request; }; Component server = { Port receive-request; }; Connector rpc = { Roels { caller, callee}}; Attachments { client.send-request to rpc.caller; server.receive-request to rpc.callee; } }
Stakeholders (1/2) [ ] February 5, 2009 SIG A&D Designers (of interoperating systems) Set of operations provided and required and the protocols for their operation (interface). Requirements Engineers (customer representation) Negotiating and making trade-offs among competing requirements. Managers Basis for: 1) forming development teams corresponding to Identified work assignments, work breakdown structure, planning, allocation of project resources 2) tracking of progress Designers (of constituent parts) Resolve resource contention. Establish performance and other kinds of run-time resource consumption budgets.
Stakeholders (2/2) [ ] February 5, 2009 SIG A&D Architects Reasoning Implementation teams Provide “marching orders”, inviolable constraints (plus exploitable freedoms) on downstream development activities. Testers and integrators Correct black-box behaviour of pieces that must fit together. Quality assurance team Basis for conformance checking (for assurance that implementations have in fact been faithful to architectural prescriptions). Transfer Engineers (or Product line managers) If and by how much a new product family member is out of scope. Maintenance team Starting point for maintenance activities, revealing the effects of change.
Documentation guidelines Write from the reader’s point of view, not the writer’s Avoid unnecessary repetition Avoid ambiguity Use a standard format Record rationale Keep documentation current but not too current Review documentation for fitness of purpose [ ] February 5, 2009 SIG A&D
The Carnegie Mellon approach (1/2) Views and Styles Viewtypes How the system is structured as a set of implementation units (module viewtype) How the system is structured as a set of run-time interacting elements (component-and-connector viewtype) How software structures correspond to system structures (allocation viewtype) [ ] February 5, 2009 SIG A&D
Example: Module viewtype UML notation: Elements Relations Properties (of elements and relations) [ ] February 5, 2009 SIG A&D
The Carnegie Mellon approach (2/2) Styles Patterns of design decisions. Module viewtype: decomposition, layered, generalization Component-and-connector viewtype: shared-data, communicating-processes, client-server, pipe-and-filter Allocation viewtype:   implementation, work assignment, deployment [ ] February 5, 2009 SIG A&D
Example: Implementation style Informal notation: [ ] February 5, 2009 SIG A&D
Process Create  relevant  views Document them Add documentation that applies to more than one view [ ] February 5, 2009 SIG A&D
So, what do we do specific for designers? [ ] February 5, 2009 SIG A&D Software Architecture vs Design What is Design? What is Software Architecture?
What is design? As a verb, design is the activity of making such decisions. ...the resulting decision space may be large and complex. As such, there is a science associated with design (empirical analysis can point us to optimal regions or exact points in this design space) as well as an art (...  degrees of freedom that range beyond an empirical decision  ...). [ ] February 5, 2009 SIG A&D As a noun, design is the named structure or behaviour of a system whose presence resolves or contributes to the resolution of one or more forces on that system. A design thus represents one point in a potential decision space. A design may be singular (representing a leaf decision) or it may be collective (representing a set of other  decisions ). Grady Booch
What is software architecture? "Architecture" is a term that lots of people try to define, with little agreement. There are two common elements: One is the highest-level breakdown of a system into its parts; the other, decisions that are hard to change. Martin Fowler [ ] February 5, 2009 SIG A&D All architecture is design but not all design is architecture. Architecture represents the significant design decisions that shape a system, where significant is measured by cost of change. Grady Booch
No project is the same The role of an architect is highly contextual But, the architect gets to define it Pick the relevant views, the stakeholder will help [ ] February 5, 2009 SIG A&D 
Communication – Introduction Don’t you just hate it when an architecture is stuffed down your throat? Does the architect ever talk to you? Who is the architect anyway? [ ] February 5, 2009 SIG A&D
Communication – Basic Techniques Become a friendlier person Win people to your way of thinking Change people’s attitude and behaviour (as a leader) [ ] February 5, 2009 SIG A&D
Become a friendlier person Don’t criticize, condemn or complain. Give honest and sincere appreciation. Arouse in the other person an eager want. Become genuinely interested in other people. Smile. Remember that a person’s name is to that person the sweetest and most important sound in any language. Be a good listener. Encourage others to talk about themselves. Talk in terms of the other person’s interests. Make the other person feel important. [ ] February 5, 2009 SIG A&D
Win people to your way of thinking The only way to get the best of an argument is to avoid it. Show respect for other’s opinions. Never say, “You’re wrong.” If you are wrong, admit it quickly and emphatically. Begin in a friendly way. Get the other person saying “yes, yes” immediately. Let the other person do a great deal of the talking. Let the other person feel that the idea is his or hers. Try to see things from someone else’s point of view. Be sympathetic with the other person’s ideas and desires. Appeal to the nobler motives. Dramatize your ideas. Throw down a challenge. [ ] February 5, 2009 SIG A&D
Change people’s attitude and behaviour Begin with praise and honest appreciation. Call attention to people’s mistakes indirectly. Talk about your own mistakes before criticizing someone else. Ask questions instead of giving direct orders. Let the other person save face. Praise even the slightest improvement. Give the other person a fine reputation to live up to. Use encouragement.  Make a fault seem easy to correct. Make the other person happy about doing the thing you suggest. [ ] February 5, 2009 SIG A&D
Communication – Software Architecture specific?  Hints: Ivory tower Start early (acceptance) Don’t forget maintenance (don’t stop) [ ] February 5, 2009 SIG A&D
Conclusion Documentation No documentation, no architecture We have seen the process, but still haven’t learned the techniques Communication Work on your communication skills. Information needs to be selected and shared, not just published. [ ] February 5, 2009 SIG A&D
References (1/2) “ Documenting Software Architectures – Views and Beyond”, Paul Clements, et al “ How to win friends & influence people”, Dale Carnegie [ ] February 5, 2009 SIG A&D Minutes of the Software Architect 2008 conference (3 rd -5 th  June in London)
References (2/2) “ The Rational Unified Process – An introduction”, Philippe Kruchten [ ] February 5, 2009 SIG A&D http://www.slideshare.net/DavidMeijers IEEE Standard 1471
Ad

Recommended

UML Review
UML Review
Zafar Ayub
 
4+1
4+1
Suresh Kumar
 
PhD defense: David Ameller
PhD defense: David Ameller
David Ameller
 
Simon Brown: Software Architecture as Code at I T.A.K.E. Unconference 2015
Simon Brown: Software Architecture as Code at I T.A.K.E. Unconference 2015
Mozaic Works
 
4+1 View Model of Software Architecture
4+1 View Model of Software Architecture
bashcode
 
Software Architectural And Detailed Design Description Template
Software Architectural And Detailed Design Description Template
Arash Sharif
 
Software Architecture Document Final
Software Architecture Document Final
Ali Ahmed
 
Documenting Software Architectures
Documenting Software Architectures
Paulo Gandra de Sousa
 
3.1_Good5Why_CH2MHILL_18June09_LCIDesignForum.pdf
3.1_Good5Why_CH2MHILL_18June09_LCIDesignForum.pdf
Stanley Liu Qiang
 
The Role of the Architect
The Role of the Architect
Jonathan Holloway
 
09 introduction to_modeling
09 introduction to_modeling
Majong DevJfu
 
Thoughts On Architecting V4 2
Thoughts On Architecting V4 2
bmercer
 
Title of PresentationStudent’s nameFeel free to adjust the c.docx
Title of PresentationStudent’s nameFeel free to adjust the c.docx
herthalearmont
 
Uml
Uml
Topsy Turvy
 
Principles of guide practices for project
Principles of guide practices for project
prasad673040
 
Contextually-Driven System Architecture Reviews
Contextually-Driven System Architecture Reviews
TechWell
 
OSCON 2007: Open Design, Not By Committee
OSCON 2007: Open Design, Not By Committee
Ted Leung
 
Project Closing Procedure PowerPoint Presentation Slides
Project Closing Procedure PowerPoint Presentation Slides
SlideTeam
 
Software design (SWEBOK3 Knowledge area)
Software design (SWEBOK3 Knowledge area)
Ashikur Rahman
 
Ooad lab manual(original)
Ooad lab manual(original)
dipenpatelpatel
 
Chapter 08
Chapter 08
guru3188
 
eDem 2013 Presentation
eDem 2013 Presentation
Muntazir Mehdi
 
Agile And Open Development
Agile And Open Development
Ross Gardler
 
Feature driven development
Feature driven development
Ruhaim Izmeth
 
International business english (Workshop, part 3) Svitlana Stetsy
International business english (Workshop, part 3) Svitlana Stetsy
Lviv Startup Club
 
Chapter_04.ppt
Chapter_04.ppt
oluobes
 
Design Review Based on Failure Mode (DRBFM) Course
Design Review Based on Failure Mode (DRBFM) Course
Ra'uf Tailony
 
Delivering Results: How Do You Report User Research Findings?
Delivering Results: How Do You Report User Research Findings?
Bob Thomas
 
OpenACC and Open Hackathons Monthly Highlights June 2025
OpenACC and Open Hackathons Monthly Highlights June 2025
OpenACC
 
GenAI Opportunities and Challenges - Where 370 Enterprises Are Focusing Now.pdf
GenAI Opportunities and Challenges - Where 370 Enterprises Are Focusing Now.pdf
Priyanka Aash
 

More Related Content

Similar to Sig A&D - Documentation And Communication (20)

3.1_Good5Why_CH2MHILL_18June09_LCIDesignForum.pdf
3.1_Good5Why_CH2MHILL_18June09_LCIDesignForum.pdf
Stanley Liu Qiang
 
The Role of the Architect
The Role of the Architect
Jonathan Holloway
 
09 introduction to_modeling
09 introduction to_modeling
Majong DevJfu
 
Thoughts On Architecting V4 2
Thoughts On Architecting V4 2
bmercer
 
Title of PresentationStudent’s nameFeel free to adjust the c.docx
Title of PresentationStudent’s nameFeel free to adjust the c.docx
herthalearmont
 
Uml
Uml
Topsy Turvy
 
Principles of guide practices for project
Principles of guide practices for project
prasad673040
 
Contextually-Driven System Architecture Reviews
Contextually-Driven System Architecture Reviews
TechWell
 
OSCON 2007: Open Design, Not By Committee
OSCON 2007: Open Design, Not By Committee
Ted Leung
 
Project Closing Procedure PowerPoint Presentation Slides
Project Closing Procedure PowerPoint Presentation Slides
SlideTeam
 
Software design (SWEBOK3 Knowledge area)
Software design (SWEBOK3 Knowledge area)
Ashikur Rahman
 
Ooad lab manual(original)
Ooad lab manual(original)
dipenpatelpatel
 
Chapter 08
Chapter 08
guru3188
 
eDem 2013 Presentation
eDem 2013 Presentation
Muntazir Mehdi
 
Agile And Open Development
Agile And Open Development
Ross Gardler
 
Feature driven development
Feature driven development
Ruhaim Izmeth
 
International business english (Workshop, part 3) Svitlana Stetsy
International business english (Workshop, part 3) Svitlana Stetsy
Lviv Startup Club
 
Chapter_04.ppt
Chapter_04.ppt
oluobes
 
Design Review Based on Failure Mode (DRBFM) Course
Design Review Based on Failure Mode (DRBFM) Course
Ra'uf Tailony
 
Delivering Results: How Do You Report User Research Findings?
Delivering Results: How Do You Report User Research Findings?
Bob Thomas
 
3.1_Good5Why_CH2MHILL_18June09_LCIDesignForum.pdf
3.1_Good5Why_CH2MHILL_18June09_LCIDesignForum.pdf
Stanley Liu Qiang
 
09 introduction to_modeling
09 introduction to_modeling
Majong DevJfu
 
Thoughts On Architecting V4 2
Thoughts On Architecting V4 2
bmercer
 
Title of PresentationStudent’s nameFeel free to adjust the c.docx
Title of PresentationStudent’s nameFeel free to adjust the c.docx
herthalearmont
 
Principles of guide practices for project
Principles of guide practices for project
prasad673040
 
Contextually-Driven System Architecture Reviews
Contextually-Driven System Architecture Reviews
TechWell
 
OSCON 2007: Open Design, Not By Committee
OSCON 2007: Open Design, Not By Committee
Ted Leung
 
Project Closing Procedure PowerPoint Presentation Slides
Project Closing Procedure PowerPoint Presentation Slides
SlideTeam
 
Software design (SWEBOK3 Knowledge area)
Software design (SWEBOK3 Knowledge area)
Ashikur Rahman
 
Ooad lab manual(original)
Ooad lab manual(original)
dipenpatelpatel
 
Chapter 08
Chapter 08
guru3188
 
eDem 2013 Presentation
eDem 2013 Presentation
Muntazir Mehdi
 
Agile And Open Development
Agile And Open Development
Ross Gardler
 
Feature driven development
Feature driven development
Ruhaim Izmeth
 
International business english (Workshop, part 3) Svitlana Stetsy
International business english (Workshop, part 3) Svitlana Stetsy
Lviv Startup Club
 
Chapter_04.ppt
Chapter_04.ppt
oluobes
 
Design Review Based on Failure Mode (DRBFM) Course
Design Review Based on Failure Mode (DRBFM) Course
Ra'uf Tailony
 
Delivering Results: How Do You Report User Research Findings?
Delivering Results: How Do You Report User Research Findings?
Bob Thomas
 

Recently uploaded (20)

OpenACC and Open Hackathons Monthly Highlights June 2025
OpenACC and Open Hackathons Monthly Highlights June 2025
OpenACC
 
GenAI Opportunities and Challenges - Where 370 Enterprises Are Focusing Now.pdf
GenAI Opportunities and Challenges - Where 370 Enterprises Are Focusing Now.pdf
Priyanka Aash
 
" How to survive with 1 billion vectors and not sell a kidney: our low-cost c...
" How to survive with 1 billion vectors and not sell a kidney: our low-cost c...
Fwdays
 
The Future of Technology: 2025-2125 by Saikat Basu.pdf
The Future of Technology: 2025-2125 by Saikat Basu.pdf
Saikat Basu
 
The Future of Product Management in AI ERA.pdf
The Future of Product Management in AI ERA.pdf
Alyona Owens
 
Techniques for Automatic Device Identification and Network Assignment.pdf
Techniques for Automatic Device Identification and Network Assignment.pdf
Priyanka Aash
 
Security Tips for Enterprise Azure Solutions
Security Tips for Enterprise Azure Solutions
Michele Leroux Bustamante
 
10 Key Challenges for AI within the EU Data Protection Framework.pdf
10 Key Challenges for AI within the EU Data Protection Framework.pdf
Priyanka Aash
 
Securing AI - There Is No Try, Only Do!.pdf
Securing AI - There Is No Try, Only Do!.pdf
Priyanka Aash
 
AI Agents and FME: A How-to Guide on Generating Synthetic Metadata
AI Agents and FME: A How-to Guide on Generating Synthetic Metadata
Safe Software
 
CapCut Pro Crack For PC Latest Version {Fully Unlocked} 2025
CapCut Pro Crack For PC Latest Version {Fully Unlocked} 2025
pcprocore
 
WebdriverIO & JavaScript: The Perfect Duo for Web Automation
WebdriverIO & JavaScript: The Perfect Duo for Web Automation
digitaljignect
 
Using the SQLExecutor for Data Quality Management: aka One man's love for the...
Using the SQLExecutor for Data Quality Management: aka One man's love for the...
Safe Software
 
AI vs Human Writing: Can You Tell the Difference?
AI vs Human Writing: Can You Tell the Difference?
Shashi Sathyanarayana, Ph.D
 
"Database isolation: how we deal with hundreds of direct connections to the d...
"Database isolation: how we deal with hundreds of direct connections to the d...
Fwdays
 
Connecting Data and Intelligence: The Role of FME in Machine Learning
Connecting Data and Intelligence: The Role of FME in Machine Learning
Safe Software
 
Securing Account Lifecycles in the Age of Deepfakes.pptx
Securing Account Lifecycles in the Age of Deepfakes.pptx
FIDO Alliance
 
UserCon Belgium: Honey, VMware increased my bill
UserCon Belgium: Honey, VMware increased my bill
stijn40
 
Python Conference Singapore - 19 Jun 2025
Python Conference Singapore - 19 Jun 2025
ninefyi
 
Quantum AI Discoveries: Fractal Patterns Consciousness and Cyclical Universes
Quantum AI Discoveries: Fractal Patterns Consciousness and Cyclical Universes
Saikat Basu
 
OpenACC and Open Hackathons Monthly Highlights June 2025
OpenACC and Open Hackathons Monthly Highlights June 2025
OpenACC
 
GenAI Opportunities and Challenges - Where 370 Enterprises Are Focusing Now.pdf
GenAI Opportunities and Challenges - Where 370 Enterprises Are Focusing Now.pdf
Priyanka Aash
 
" How to survive with 1 billion vectors and not sell a kidney: our low-cost c...
" How to survive with 1 billion vectors and not sell a kidney: our low-cost c...
Fwdays
 
The Future of Technology: 2025-2125 by Saikat Basu.pdf
The Future of Technology: 2025-2125 by Saikat Basu.pdf
Saikat Basu
 
The Future of Product Management in AI ERA.pdf
The Future of Product Management in AI ERA.pdf
Alyona Owens
 
Techniques for Automatic Device Identification and Network Assignment.pdf
Techniques for Automatic Device Identification and Network Assignment.pdf
Priyanka Aash
 
Security Tips for Enterprise Azure Solutions
Security Tips for Enterprise Azure Solutions
Michele Leroux Bustamante
 
10 Key Challenges for AI within the EU Data Protection Framework.pdf
10 Key Challenges for AI within the EU Data Protection Framework.pdf
Priyanka Aash
 
Securing AI - There Is No Try, Only Do!.pdf
Securing AI - There Is No Try, Only Do!.pdf
Priyanka Aash
 
AI Agents and FME: A How-to Guide on Generating Synthetic Metadata
AI Agents and FME: A How-to Guide on Generating Synthetic Metadata
Safe Software
 
CapCut Pro Crack For PC Latest Version {Fully Unlocked} 2025
CapCut Pro Crack For PC Latest Version {Fully Unlocked} 2025
pcprocore
 
WebdriverIO & JavaScript: The Perfect Duo for Web Automation
WebdriverIO & JavaScript: The Perfect Duo for Web Automation
digitaljignect
 
Using the SQLExecutor for Data Quality Management: aka One man's love for the...
Using the SQLExecutor for Data Quality Management: aka One man's love for the...
Safe Software
 
AI vs Human Writing: Can You Tell the Difference?
AI vs Human Writing: Can You Tell the Difference?
Shashi Sathyanarayana, Ph.D
 
"Database isolation: how we deal with hundreds of direct connections to the d...
"Database isolation: how we deal with hundreds of direct connections to the d...
Fwdays
 
Connecting Data and Intelligence: The Role of FME in Machine Learning
Connecting Data and Intelligence: The Role of FME in Machine Learning
Safe Software
 
Securing Account Lifecycles in the Age of Deepfakes.pptx
Securing Account Lifecycles in the Age of Deepfakes.pptx
FIDO Alliance
 
UserCon Belgium: Honey, VMware increased my bill
UserCon Belgium: Honey, VMware increased my bill
stijn40
 
Python Conference Singapore - 19 Jun 2025
Python Conference Singapore - 19 Jun 2025
ninefyi
 
Quantum AI Discoveries: Fractal Patterns Consciousness and Cyclical Universes
Quantum AI Discoveries: Fractal Patterns Consciousness and Cyclical Universes
Saikat Basu
 
Ad

Sig A&D - Documentation And Communication

  • 1. SIG Architecture & Design Documentation and Communication of a Software Architecture David Meijers February 5, 2009
  • 2. [ ] February 5, 2009 SIG A&D
  • 3. Documentation – Introduction (1/2) [ ] February 5, 2009 SIG A&D Siemens Four Views RUP / Kruchten 4+1 Image: Lack of agility
  • 4. Documentation – Introduction (2/2) This is not about ADL’s (such ACME , Rapide, Wright, Unicon) [ ] February 5, 2009 SIG A&D System simple_cs = { Component client = { Port send-request; }; Component server = { Port receive-request; }; Connector rpc = { Roels { caller, callee}}; Attachments { client.send-request to rpc.caller; server.receive-request to rpc.callee; } }
  • 5. Stakeholders (1/2) [ ] February 5, 2009 SIG A&D Designers (of interoperating systems) Set of operations provided and required and the protocols for their operation (interface). Requirements Engineers (customer representation) Negotiating and making trade-offs among competing requirements. Managers Basis for: 1) forming development teams corresponding to Identified work assignments, work breakdown structure, planning, allocation of project resources 2) tracking of progress Designers (of constituent parts) Resolve resource contention. Establish performance and other kinds of run-time resource consumption budgets.
  • 6. Stakeholders (2/2) [ ] February 5, 2009 SIG A&D Architects Reasoning Implementation teams Provide “marching orders”, inviolable constraints (plus exploitable freedoms) on downstream development activities. Testers and integrators Correct black-box behaviour of pieces that must fit together. Quality assurance team Basis for conformance checking (for assurance that implementations have in fact been faithful to architectural prescriptions). Transfer Engineers (or Product line managers) If and by how much a new product family member is out of scope. Maintenance team Starting point for maintenance activities, revealing the effects of change.
  • 7. Documentation guidelines Write from the reader’s point of view, not the writer’s Avoid unnecessary repetition Avoid ambiguity Use a standard format Record rationale Keep documentation current but not too current Review documentation for fitness of purpose [ ] February 5, 2009 SIG A&D
  • 8. The Carnegie Mellon approach (1/2) Views and Styles Viewtypes How the system is structured as a set of implementation units (module viewtype) How the system is structured as a set of run-time interacting elements (component-and-connector viewtype) How software structures correspond to system structures (allocation viewtype) [ ] February 5, 2009 SIG A&D
  • 9. Example: Module viewtype UML notation: Elements Relations Properties (of elements and relations) [ ] February 5, 2009 SIG A&D
  • 10. The Carnegie Mellon approach (2/2) Styles Patterns of design decisions. Module viewtype: decomposition, layered, generalization Component-and-connector viewtype: shared-data, communicating-processes, client-server, pipe-and-filter Allocation viewtype: implementation, work assignment, deployment [ ] February 5, 2009 SIG A&D
  • 11. Example: Implementation style Informal notation: [ ] February 5, 2009 SIG A&D
  • 12. Process Create relevant views Document them Add documentation that applies to more than one view [ ] February 5, 2009 SIG A&D
  • 13. So, what do we do specific for designers? [ ] February 5, 2009 SIG A&D Software Architecture vs Design What is Design? What is Software Architecture?
  • 14. What is design? As a verb, design is the activity of making such decisions. ...the resulting decision space may be large and complex. As such, there is a science associated with design (empirical analysis can point us to optimal regions or exact points in this design space) as well as an art (... degrees of freedom that range beyond an empirical decision ...). [ ] February 5, 2009 SIG A&D As a noun, design is the named structure or behaviour of a system whose presence resolves or contributes to the resolution of one or more forces on that system. A design thus represents one point in a potential decision space. A design may be singular (representing a leaf decision) or it may be collective (representing a set of other decisions ). Grady Booch
  • 15. What is software architecture? "Architecture" is a term that lots of people try to define, with little agreement. There are two common elements: One is the highest-level breakdown of a system into its parts; the other, decisions that are hard to change. Martin Fowler [ ] February 5, 2009 SIG A&D All architecture is design but not all design is architecture. Architecture represents the significant design decisions that shape a system, where significant is measured by cost of change. Grady Booch
  • 16. No project is the same The role of an architect is highly contextual But, the architect gets to define it Pick the relevant views, the stakeholder will help [ ] February 5, 2009 SIG A&D 
  • 17. Communication – Introduction Don’t you just hate it when an architecture is stuffed down your throat? Does the architect ever talk to you? Who is the architect anyway? [ ] February 5, 2009 SIG A&D
  • 18. Communication – Basic Techniques Become a friendlier person Win people to your way of thinking Change people’s attitude and behaviour (as a leader) [ ] February 5, 2009 SIG A&D
  • 19. Become a friendlier person Don’t criticize, condemn or complain. Give honest and sincere appreciation. Arouse in the other person an eager want. Become genuinely interested in other people. Smile. Remember that a person’s name is to that person the sweetest and most important sound in any language. Be a good listener. Encourage others to talk about themselves. Talk in terms of the other person’s interests. Make the other person feel important. [ ] February 5, 2009 SIG A&D
  • 20. Win people to your way of thinking The only way to get the best of an argument is to avoid it. Show respect for other’s opinions. Never say, “You’re wrong.” If you are wrong, admit it quickly and emphatically. Begin in a friendly way. Get the other person saying “yes, yes” immediately. Let the other person do a great deal of the talking. Let the other person feel that the idea is his or hers. Try to see things from someone else’s point of view. Be sympathetic with the other person’s ideas and desires. Appeal to the nobler motives. Dramatize your ideas. Throw down a challenge. [ ] February 5, 2009 SIG A&D
  • 21. Change people’s attitude and behaviour Begin with praise and honest appreciation. Call attention to people’s mistakes indirectly. Talk about your own mistakes before criticizing someone else. Ask questions instead of giving direct orders. Let the other person save face. Praise even the slightest improvement. Give the other person a fine reputation to live up to. Use encouragement. Make a fault seem easy to correct. Make the other person happy about doing the thing you suggest. [ ] February 5, 2009 SIG A&D
  • 22. Communication – Software Architecture specific? Hints: Ivory tower Start early (acceptance) Don’t forget maintenance (don’t stop) [ ] February 5, 2009 SIG A&D
  • 23. Conclusion Documentation No documentation, no architecture We have seen the process, but still haven’t learned the techniques Communication Work on your communication skills. Information needs to be selected and shared, not just published. [ ] February 5, 2009 SIG A&D
  • 24. References (1/2) “ Documenting Software Architectures – Views and Beyond”, Paul Clements, et al “ How to win friends & influence people”, Dale Carnegie [ ] February 5, 2009 SIG A&D Minutes of the Software Architect 2008 conference (3 rd -5 th June in London)
  • 25. References (2/2) “ The Rational Unified Process – An introduction”, Philippe Kruchten [ ] February 5, 2009 SIG A&D http://www.slideshare.net/DavidMeijers IEEE Standard 1471