Upload
raffaele-garofalo
View
7.839
Download
0
Tags:
Embed Size (px)
DESCRIPTION
These are the slides used for the webinar "Agile Architecture", speaker: Raffaeel Garofalo. Available here:https://vimeo.com/42069572
Citation preview
Agile ArchitectureSoftware Architecture for AgileSpeaker: Raffaele Garofalo (raffaeu)
http://blog.raffaeu.com
Introduction• Software
architecture• Agile development• Agile +
Architecture
Software Architect• The role• Collocation with
Agile
Agile Architecture• Workflow• Team structure• Sample
Agenda
What is Software
Architecture
What is Agile
Development
How they can live
together?
Introduction
What is Software
Architecture
Introduction
Software Architecture is a terminology introduced some years ago in the software development community, which identifies a specific science or art of designing and delivery value.
Software Architecture
“The art or science of designing and delivering valuable technology strategies”
What does it deliver
?
Business Models
Engineering design
Select framework
s and products
Bridges the gap
between business
and technology
What is Agile
Development
Introduction
Agile software development is a group of software development methods based on iterative and incremental development, where requirements and solutions evolve through collaboration between self-organizing, cross-functional teams.
Agile Development
Agile …
TDD
C.I.
Agile Modeling
XP
SCRUM
Kanban
Agile is not only TDD.
PRODUCTBACKLOG
SPRINT BACKLOG
SPRINT BACKLOG
2/4 weeks
FEATURE(s)
SCRUM
How they can live
together?
Introduction
AgileSoftware Architect
ure (MDD)
Agile Architect
ure (AMDD)
Agile Architecture
The Software Architect
The Software Architect in
Agile environment
Golden Rules
The Software Architect role
The Software Architect
The Software Architect role
Software Architect
Create architectural designs from a vision
It looks at current and future design requirements
Takes technical decisions such Platform and Frameworks based on his experience
The Software Architect in
Agile environment
The Software Architect role
Provide information about frameworks and platforms
Provide architectural knowledge during the modeling phase
Interact with the business to communicate the changes and the features with the team
Contribute to development and delivering
Software Architect and Agile
Golden Rules
The Software Architect role
A Software Architect doesn’t have anything special, it is part of the team
In Agile, every member of the team is an active part and so should be the Architect, an active part of a team
Avoid Avory tower built during the design time without involving the developers in the design process. When everything is pre-designed and pre-decided, the frustration grows …
A strict Software Architect will fit better in a big team/project because there will be more space for his ego than in a small team where every member should be able to do everything
Golden rules of Agile Architect
Workflow The Team structure
Sample Agile
architecture
Agile Architecture
Workflow
Agile Architecture
Application overview
Key Hot Spots
Candidate Solution
Key scenarios
Process Workflow
Identify Architecture OBJECTIVES
Process Workflow
Iter: 0
Envision
Estimates
Iter: nModeling
Brainstorm
TDD
The Team
structure
Agile Architecture
Team structure
Sample Agile
architecture
Agile Architecture
Let’s have a look at Visual Studio 2011 and a sample project created using SCRUM and Agile Architectures with the help of Typemock
Sample process
Authentication Use case
Authentication components
Authentication User Interface
Appendix A
Appendix B
Security Scalability Availability
Interoperability Testability Usability