Not much has been shared and talked about on Architecture as practiced on Agile projects. In fact, there is a concern among organizations small and large in adopting Agile practices/process that they have to abandon architecture in favor of agility. However, from experts we hear about this "emerging design and architecture," but not much explained in a way that dispels the myth around architecture on Agile projects. I would like to show step by step how we have done it on a large government project. (includes workflow automation, transactions, and data warehousing solutions, as well as spans multiple legacy components, and multiple agencies).
The participants will be able understand how architecture evolves on Agile projects and how to manage/guide this evolution of architecture in a way to meet the goals of the project.
73. 21 1st Release Architecture scanned report Scanning App WS-API image Image db1 Controller WS data App 3 App 2 BTOrchestration WS image image FTP App 1 update Broker Image db2 DW unprocessed data data migration data Main App
74. 22 1st Release Recap Reduce data entry time by 50% Reduce architectural risk around infrastructure, Goals Existing system is still the system of records Electronic data capture, not delivery Capabilities OCR accuracy was lower than expected Initial data processing speed went down Result Form redesign should have followed data modeling and scanning technology selection Windows environment for efficient data entry poses different challenge Lessons Learned
75. 23 2nd Release Architecture scanned report Scanning App AzMan Web Client WS-API DB image Image db1 Controller WS data App 3 Workflow BRE App 2 BTOrchestration WS Model image FTP data App 1 update Broker Image db2 DB trigger processed data DW Audit DB Processed data Main App
77. 25 2nd Release Recap Introduce automated workflow for data processing Goals Existing system is still the system of records Automated work management of data entry clerks Capabilities Automated workflow was well received Improved the quality of management of the supervisors Result Too many data validation rules were too restrictive Lack of robust exception handling resulted in premature termination of workflows Lessons Learned
78. 26 3rd Release Architecture scanned report Scanning App AzMan Web Client WS-API DB image Image db1 Controller WS data Report WS App 4 Workflow BRE App 3 BTOrchestration WS Model image FTP App 2 trigger Broker Image db2 DB update processed data DW Audit DB Main App
79. 27 3rd Release Recap Integration with App2 Canned reporting from new DW Goals Main reporting from the new system Complete data entry from the new system Capabilities Reporting time reduced from a few weeks to a few minutes Reports requiring manual check reduced to 70%-80% due to auto acceptance Result Longer processing time at certain steps in the workflow caused user frustration Web service interface to BizTalk was causing timeouts Lessons Learned
80. 28 4th Release Architecture Client App Scanning App AzMan electronic report scanner image scanned report Web Client WS-API DB Image db1 Controller WS data Report WS App 4 Workflow BRE App 3 Req Q Req Q image Model BTOrchestration WS FTP App 2 update Image db2 Broker DB processed data DW Main App Audit DB
82. 30 4th Release Recap Improve response time using asynchronous processing Electronic delivery of reports from the field Goals Direct submission of reports (no scanning) to the system Complete data entry from the new system Capabilities Improved user satisfaction from reduction in response time Reports requiring manual check further reduced to 50%-60% due to auto acceptance Result Lessons Learned Change in workflow caused versionites Accelerate adoption of electronic delivery of reports from the field
83. 31 5th Release Architecture Client App Scanning App AzMan electronic report scanner image scanned report Web Client WS-API DB Image db1 WCF Controller WS data Report WS App 4 BRE App 3 Workflow Req Q Req Q image BTOrchestration WS FTP Model App 2 Image db2 Broker DB update processed data DW Main App Audit DB
84. 32 5th Release Recap Integration with App3 “Revision of Reports” handling Ad-hoc reporting from new DW Goals New system is self-sufficient Asynchronous processing of reports delivered electronically Capabilities Integration with other reporting tools for electronic reporting Old system is ready for sunset Result The definition of “revision of a report” changed (new capability changes business practices) Lessons Learned
91. 35 Recap lessons learned Start with existing architecture standards, identify gaps, and know upcoming changes Influence / introduce new standards to fill the gap in existing architecture Align with upcoming changes to the existing architecture Let architecture evolve top-down (architect is responsible) and bottom-up (team is responsible) Use working “spikes” to determine how to adopt new technologies Manage evolution of architecture in small increments (a.k.arefactor) Document architecture using FAQ style and just-in-time Architecture evolves; when unmanaged, it becomes sprawling.
92. 36 Q&A Guided evolution of architecture improves Agility!
93. 37 Contact Please contact for on-site training/coaching or Webinar: Contact:srayhan@code71.com Blog:http://blog.syedrayhan.com Company:http://www.code71.com Product:http://www.scrumpad.com
Notes de l'éditeur
More technology risks than requirements risks. Requirements were assumed to be have been well understood. Not true.
Natural + Adabase
Identify groups of related requirements and map them to a technology solutionDocument processing technology- OMR and OCR
Electronic data capture at the field (still report is printed and sent on paper)Paper report redesign (add new data, eliminate some old data) => change the existing systemElectronic data capture from the paper report => reduce manual data entry by 50% (OMR accuracy is pretty good, OCR was bad)Define canonical representation of report in XMLExisting system is still the system of records. We extended the existing system to accommodate new data.
Limited release- only to a few users from the data entry team. Only for certain type of reports.
Using the “right tool” for the “right purpose” improves the delivery qualityCapturing edit rules using “if then else”DFD to capture data movement
Introduced a new workflow for electronic submission of reports