O slideshow foi denunciado.
Utilizamos seu perfil e dados de atividades no LinkedIn para personalizar e exibir anúncios mais relevantes. Altere suas preferências de anúncios quando desejar.

Architecting Agile Businesses: A Guideline for the Business-Oriented Software Architect

115 visualizações

Publicada em

This presentation suggests a method for architecting Agile businesses using the architecture practice at Konga, an African e-commerce company, as a case study. | http://resources.sei.cmu.edu/library/asset-view.cfm?assetID=454566

Publicada em: Tecnologia
  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

Architecting Agile Businesses: A Guideline for the Business-Oriented Software Architect

  1. 1. Architecting Agile Businesses: A Guideline for the Business-Oriented Software Architect Kaine Ugwu SATURN 2016
  2. 2. Kaine Ugwu ● Planning new technology insertion ● Assisting business in formulating clear requirements and making architectural tradeoffs ● Engaging engineering team during development, resolving disputes ● Defining, documenting and communicating the architecture Software Architect Konga Online Shopping Ltd. http://kaine.pro
  3. 3. Presentation Scope ● Architecture-centric methods & patterns overview ● Recommended guidelines for architecting Agile businesses ● Benefits of adopting SOA patterns & ATAM style design peer reviews ● Lessons learned
  4. 4. How do we improve business agility?
  5. 5. Architecture-Centric Methods ● Establishing Requirements - Quality Attribute Workshop (QAW) ● Defining an Architecture - Attribute-Driven Design (ADD) ● Evaluating the Architecture - Architecture Tradeoff and Analysis Method (ATAM) ● Documenting the Architecture - SEI ‘s Views & Beyond Approach (V&B)
  6. 6. Quality Attributes ● Non-functional Requirements ● Significant Influence on the Software Architecture ● They are usually the Architecturally Significant Requirements that require the architects’ attention https://en.wikipedia.org/wiki/List_of_system_quality_attributes
  7. 7. Service-Oriented Architecture “A service-oriented architecture (SOA) is an architectural pattern in computer software design in which application components provide services to other components via a communications protocol, typically over a network. The principles of service-orientation are independent of any vendor, product or technology” - Wikipedia
  8. 8. Figure: Service-Oriented Architecture Pattern
  9. 9. Architecture Tradeoff Analysis Method “The Architecture Tradeoff Analysis Method (ATAM) is a method for evaluating software architectures relative to quality attribute goals. ATAM evaluations expose architectural risks that potentially inhibit the achievement of an organization's business goals” - Software Engineering Institute
  10. 10. Figure: ATAM Conceptual Flow (Software Engineering Institute, CMU)
  11. 11. 1. Don’t like long technical processes. 2. Don’t understand technical jargon. Business People:
  12. 12. We want our software architecture lifecycle processes to be... ● Fast ● Iterative ● In a language business would understand ● Adhere to proven methods ● Get buy in from stakeholders
  13. 13. Recommended Guidelines for Architecting Agile Businesses
  14. 14. ● Represent Business Processes ● Service-Oriented Architecture Pattern ● ATAM Style Design Reviews
  15. 15. Figure: Shopping Cart Requirement Graphical Representation using BPMN
  16. 16. Step 1: Select the scenario to analyze.
  17. 17. Interoperability Figure: Interoperability Concrete Scenario (Konga Shopping Cart)
  18. 18. Step 2: Elicit the architecture approaches Figure: Diagram of the SOA view for the Konga Shopping Cart System
  19. 19. Step 3: Analyze architecture approaches ● If a question cannot be answered, it is identified as a risk ● If the provided answer may violate other scenarios, it is identified as a risk ● If the provided answer is still an open issue, it is identified as a to-do item ● If the provided answer satisfies the reviewers, it is documented as evidence
  20. 20. Step 4: Review results
  21. 21. Benefits of Adopting SOA Patterns & ATAM Style Design Peer Reviews
  22. 22. Benefits of SOA ● Loose Coupling ● Service Re-use ● Higher Availability & Better Scalability ● Ship software faster ← What the business is really concerned about.
  23. 23. Benefits of ATAM Style Design Reviews ● Precise business drivers and quality requirements are gathered ● Includes risk identification & management early in the life-cycle ● Encourages communications among stakeholders ● Conflicting goals are prioritized ● Overall improved architecture practices ● Business and IT alignment
  24. 24. Lessons Learned
  25. 25. Lessons Learned ● Business folks don’t understand technical jargon, use common business language. ● Stakeholder sign-off is extremely important. ● Service discovery is extremely important ● Simplify methods as much as you can
  26. 26. Simplify methods and patterns as much as you can.
  27. 27. “Architecture is architecture is architecture” - John Zachman
  28. 28. Thanks! Kaine Ugwu Software Architect kaine@kaine.pro kaine.ugwu@konga.com www.kaine.pro @kainepro
  29. 29. Questions?