310 likes | 326 Views
Explore the challenges, strategies, and guidelines for successfully transforming legacy applications into modern, competitive systems. Learn from industry experts and avoid common pitfalls to ensure a smooth transition. The Zachman Framework provides a structured approach to analyze and manage application transformation projects effectively. Discover the step-by-step methodology and tools for a successful transformation journey in the digital era. 8
E N D
Building CompetitiveApplications Application Transformation
Agenda • Current Challenges • OpenEdge Reference Architecture • Application Transformation • Challenges and Guidelines • The Zachman Framework • The Application Transformation Approach • Next Steps
Transformation The Musée d'Orsay • From 17th century gardens • To 18th century hotel • To 19th century railway station • To 21st century art museum http://www.musee-orsay.fr
Application Transformation “Describes the process of applying changes to the form, design, and/or function” of a legacy application William Ulrich (2002) Legacy Systems – Transformation Strategies
OpenEdge Transformation Resources Method for transforming applications • Provide a fully documented methodology • Supplement the methodology with tools, templates, and samples • Assist partners with their application transformation efforts Providing assistance in evolving to modern methods, enabling you to deliver more competitive applications
OpenEdge Transformation Resources • Standardized methodology for Progress • Collection of tools, papers, and information on moving applications forward • Reflection of experiences and efforts from the entire Progress community • Not a silver bullet, nor a red button!
How do you Transform an Application? Just start coding, right? Legacy Application Modern Application
Words of Wisdom Its a different world “You cannot solve the problems of the present with the solutions that produced them.” Einstein
Transformation Challenges • Monolithic design • Thousands of programs, and lines of code • Inconsistent standards • Complex dependencies • Functional fragmentation • Elusive system semantics • Redundancy, little reuse • Brittle to enhancement or change • Lack of documentation • Lack of transformation tools
Why Transformation Projects Fail Adapted from Bergey, Smith, Tilley, Weiderman, and Woods, Why Reengineering Projects Fail (CMU/SEI-99-TR-010). Carnegie-Mellon Software Engineering Institute • Flawed or incomplete transformation strategy • Relying on technical expertise alone • Inadequately trained people tied to old technologies • “We know our application inside-out!” • Little time spent gathering or validating requirements • Architecture is not the primary consideration • No recognition of a distinctive transformation process • Inadequate planning and weak resolve to follow plans • Lack of long-term commitment from management • Management predetermines technical decisions
Guidelines for Transformation Success Adapted from Bergey, Smith, Tilley, Weiderman, and Woods, Why Reengineering Projects Fail (CMU/SEI-99-TR-010). Carnegie-Mellon Software Engineering Institute • Formulate a complete and coherent strategy • Technical expertise and disciplined management • Invest in training people on new technology • Invest in learning what you don’t know • Gather and validate requirements with customers • Architecture is the foundation • Establish an appropriate transformation process • Invest in planning and discipline to execute plans • Commit to transformation as a long-term investment • Technical decisions based on proper analysis
Context Conceptual Logical Design Physical Design Implementation Deployment A Model to Make Sense of Chaos… What, how, where, who, when & why? Data (what & where ?) Function (how?) People (who?) Network (where?) Time (when?) Motivation (why?) Adapted from John Zachman, The Zachman Framework, Zachman Institute for Framework Advancment
Zachman Framework Adapted from John Zachman, The Zachman Framework, Zachman Institute for Framework Advancment
Zachman Framework Simply a mental model • Application Transformation projects carry a significant level of risk… …which must be managed and mitigated by gathering complete and accurate information through a methodical process of discovery and analysis • The Zachman Framework helps to identify and analyze areas that are relevant to a given application transformation scenario
You Need a Model for Transformation Modern Application Legacy Application Context Context Redesign Abstract Conceptual Conceptual Logical Design Logical Design Build & Test Analyze & Model Physical Design Physical Design & Harvest Concrete Implementation Implementation Deployment Deployment
Application Transformation Approach Phase 1 Transformation Assessment Phase 2 Analysis & Modeling Phase 3 Redesign & Harvesting Phase 4 Build & Test
In iterative process to transform your application Application Transformation Approach Project Planning & Management Engagement Commitment Redesign & Harvesting Awareness Transformation Assessment Analysis & Modeling Build & Test Transformation Continues Capability Gap Fulfillment
Mentoring Monitoring TechnicalEmpowerment Spot Mentoring Transformation is an Iterative Process 1st Iteration 2nd Iteration Nth Iteration ApplicationPartner …
Phase 1 – Transformation Assessment • Formulate an effective application transformation plan that aligns with business goals • Current business position, business goals, and business strategy • Overview of legacy application including new functional and non-functional requirements • Assessments of the current infrastructure • Technology, people and skills, processes, and organizational capability
Phase 2 – Analysis & Modeling • Capture and develop a set of models to represent the form and function of the legacy application • Compile an inventory of physical legacy artifacts which may feasibly be harvested for reuse
Phase 3 – Redesign & Harvest • Transform the models captured from the legacy system into models for the target application • Extract and rework the physical legacy artifacts listed in the harvest inventory
Phase 4 – Build & Test • Build and test a new, modern application using the redesigned models and the harvested legacy components
“It is not the strongest of the species that survives, nor the most intelligent, but the one that responds to change.” Charles Darwin
Key benefits Application Transformation Approach • Formalized approach • Industry standards • Architecture-centric • Combines management and technology • Reduced risk • Enhanced quality • Expanded capabilities • Organizational learning • Applications aligned with business goals
Benefits of a Competitive Application • Greater marketability • Greater sales penetration • Higher revenue • Enhanced business agility • Enhanced organizational capability • Improved efficiencies / reduced overheads • Greater profitability
Recommended Reading • Books • Software Architecture in Practice • ISBN 0-321-15495-9 • Documenting Software Architectures • ISBN 0-201-70372-6 • Legacy Systems • ISBN 0-13-044927-X • Modernizing Legacy Systems • ISBN 0-321-11884-7
Review and Discussion Application transformation • Challenges and Guidelines • The Zachman Framework • The Application Transformation Approach
Agenda • Current Challenges • OpenEdge Reference Architecture • Application Transformation • Next Steps
Next Steps • Start NOW • Business plan • Application roadmap, using the Reference Architecture • Get to the current environment (Progress Version 9) • Training • Plan, Plan, Plan • Get comfortable with the OpenEdge Reference Architecture • Read presentation • Attend Seminars / Classes • Training • Skills Assessment – create education plan • Non-Progress training may be needed • Commit to training your people • Willing to ‘invest in themselves’ • Understand it’s not a short process, must stay committed
Summary & Close Gartner Article Top View, 17 February 2004 “Enterprises will use SOBAs to gain a competitive advantage. They will be able to combine application functions at more-granular levels in more-innovative approaches than previously feasible” Charles Abrams
Whiteboard Discussion Customer implementations etc