Architecture in an Agile Organization Managing our Software as a Valuable Asset while Delivering Incrementally Chris Sterling Principal Consultant, Certified Scrum Trainer, and Agile Coach SolutionsIQ Mickey Phoenix Senior Software Development Engineer SolutionsIQ
77
Embed
Architecture in an Agile Organization Managing our Software as a Valuable Asset while Delivering Incrementally Chris Sterling Principal Consultant, Certified.
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Architecture in an Agile OrganizationManaging our Software as a Valuable Asset whileDelivering Incrementally
Chris SterlingPrincipal Consultant, Certified Scrum Trainer, and Agile Coach
SolutionsIQ
Mickey PhoenixSenior Software Development Engineer
• As companies begin to embrace Agile methods, such as Scrum and Extreme Programming (XP), questions about architecture begin to emerge.– How is architecture implemented in an Agile organization? – What is the software architect's role with Agile development? – How should architecture be discussed with business stakeholders?
• Too often, Agile software development methods are tagged as "architecturally weak" or "disconnected from the realities of delivering large systems." However, leading software architects are pushing through the noise to rapidly evolve the Agile architecture discipline.
• This session will focus on the experiences of two experts and the approaches they have taken to better align businesses with architecture goals.
• Presented by:– Chris Sterling, Principal Consultant and Certified Scrum Trainer at SolutionsIQ– Mickey Phoenix, Senior Software Development Engineer at SolutionsIQ
•Practices: techniques, methodologies, procedures, and processes that are used to get the job done
•Guidelines: aim to streamline particular processes according although, by definition, following a guideline is never mandatory. Guidelines are an essential part of the larger process of governance to make delivery more predictable, and presumably of higher quality
• “It will be easy since we worked on the original version” - although we understand the domain we will be fighting with new features, technology, tools, and processes
• “We don’t have any other options” - Refactoring and test automation are potential alternatives to like-to-like migrations.
• Technical Debt includes those internal things that you choose not to do now, but which will impede future development if left undone. This includes deferred refactoring.
• Technical Debt doesn’t include deferred functionality, except possibly in edge cases where delivered functionality is “good enough” for the customer, but doesn’t satisfy some standard (e.g., a UI element that isn’t fully compliant with some UI standard).
•Refactoring: a disciplined technique for restructuring an existing body of code, altering its internal structure without changing its external behavior.*
•Merciless: having or showing no [mercy - showing great kindness toward the distressed]
•Relieve your distressed code through kindness and disciplined restructuring
• Observed that twice as many risk themes are risks of “omission” as are risks of “commission”. That is, risk themes identify decisions or investigations that were never made rather than those that were made and could lead to undesirable consequences.
• No discernible relationship between articulated business and mission goals of a system and risk themes from an ATAM evaluation of that system
• No discernible relationship between domain of system being evaluated and risk themes associated with development of that system
* From “Risk Themes Discovered Through Architecture Evaluations” by Len Bass, Robert Nord, William Wood, and David Zubrow
Proper Architecture Design Provides Value• Software is a business asset and our job is
to produce the greatest Return on Investment (ROI) by delivering high value quickly
Domain-Specific Testing Languages (DSTLs)DSTLs help you keep the core testing tool simple while creating automated test scripts the customer can easily read, verify, and use as requirements- Rand Huso, Senior Software Development Engineer
Narrative Testing: Tools for Story Test-Driven DevelopmentIncrease your customers’ confidence in testing by leveraging script-based
testing Tools and DSTLs to express Story Tests in the user’s own language.- Mickey Phoenix, Senior Software Development Engineer
Panel Discussion: Troubleshooting Distributed Agile Team Projects Leading Agile experts Esther Derby, Hubert Smits, Tamara Sulaiman, Samir
Shahjoin Monica Yap to share their experiences working with distributed Agile teams.- Monica Yap, Engagement Manager, ScrumMaster, Agile Coach
Punctuated Continuity: Using Ritual and Ceremony to Avoid Process FatigueLearn techniques that can be employed to keep repetitive Agile routinesinvigorating, pulled from actual experiences with teams practicing XP and
Scrum. - Michael Tardiff, Agile Team Lead and Coach
Assembling a Real-Time Collaborative Development Platform in the Cloud
• SolutionsIQ CEO demonstrates a whole platform for Agile development featuring mashups of SaaS and open-source tools for development and continuous integration
• Come to the SolutionsIQ booth at Agile 2008– Pick up a free Agile t-shirt, and– Schedule one-on-one sessions with SolutionsIQ speakers
• Visit solutionsiq.com/agile2008 for additional Agile 2008 materials and related content from SolutionsIQ
About SolutionsIQSolutionsIQ offers a full spectrum of services to develop software and fulfill technical talent needs, while improving your Agile knowledge and capabilities. Clients include AT&T (Cingular), Amazon, Corbis, Expedia, Federal Home Loan Bank, InfoSpace, Key Bank, Nike, Nordstrom, Regence Blue Shield, Safeco, US Bank, and Washington State University. A Microsoft Gold Certified Partner, SolutionsIQ is also a member of the Java Community Process, Scrum Alliance, Software Association of Oregon, and Washington Technology Industry Association. Learn more at www.SolutionsIQ.com.