Presentation on theme: "21 February 2007 Creating an IT Production Architecture function (the forgotten architecture) Dennis Adams a s s o c i a t e s Management and Infrastructure."— Presentation transcript:
21 February 2007 Creating an IT Production Architecture function (the forgotten architecture) Dennis Adams a s s o c i a t e s Management and Infrastructure SIG Meeting Dennis Adams 21st February 2007
21 February 2007 Introduction - Some searching questions Is IT an engineering discipline? If so, how come we get so many things wrong so frequently? Why does such as large percentage of projects go wrong? Why are the costs of IT so huge? How do we handle the huge legacy of applications we are expected to look after, without being swamped? Are there ways we can guarantee better quality of code deployed into live? I don’t have any answers … but I do have some ideas… One key is ARCHITECTURE
21 February 2007 Topics to cover Development and Production - two different cultures What is "Production-worthiness"? - Definition. How to assess applications for Production Worthiness Building the relationships between Production and Development Production Architecture in the Context of Enterprise Architecture. Establishing Production Standards. Building Applications for the "Long Term"
21 February 2007 The Cost of Poor Application Performance Top 2,000 European businesses spending more than three million working hours every year trying to get to the root of poor applications performance (equates to €250m). 25 per cent of ICT directors and managers admit they do not know all of the ways in which their corporate networks are being used. Coleman Parkes research January 2004
21 February 2007 Nightmares “This project assumes that the Wide-Area Network Bandwidth is infinite” Response time should be 0.2 seconds in all cases. The number of users is undefined. Because of the slow speed of the database, the project will develop an in-house cache mechanism for static data, with integral cache contention and refresh mechanisms.
21 February 2007 The changing IT APPLICATION LANDSCAPE Mainframe Departmental Computing Client/Server Applications N-Tier Applications Message-Oriented Middleware Composite Applications linked together by a Service-Oriented Architecture: Enterprise Service Bus.
21 February 2007 Changes in APPLICATION DEVELOPMENT Tools: –Text Editors –4GL Intelligent Editors –Integrated Development Environments (IDEs) –Sophisticated Debugging –Integrated Test Environments –Design/Develop/Deploy Environments (Eclipse) Techniques: –Waterfall –Prototyping –Iterative Development As Development has become more complex, so too have Deployment and Production.
21 February 2007 DEPLOYMENT into IT PRODUCTION IT Development IT Production
21 February 2007 IT Department Production Teams Development Teams Create New Applications Support Existing Applications
21 February 2007 The two different sides of IT IT Development –Business Functionality –Speed of Delivery –Cost of Development –Development Projects may take months –Creating Competitive Advantage and ROI for the Business IT Production –Reliability, Resilience –Stability, Scalability –Cost of Support & Maintenance –Production Support may be required over many years. –Delivering Day-to-Day Competitive Advantage and ROI for the Business IT Development and IT Production think and act differently.
21 February 2007 Enterprise Architecture and Production Architecture Enterprise Architecture is charged with taking a “helicopter view” of what is being developed and managed in the enterprise. Goals: Deliver successful applications. Deliver business benefit. Applications that Work. An Enterprise Architecture Approach, properly implemented, should be able to address the needs of both Development and Production
21 February 2007 IT ProductionIT DevelopmentBusiness Production Architecture - Organisational Context Project Manager Application Architects Infrastructure Architects Business Analysts Application Developers Client / Service Managers Technical Teams Business Sponsor Business Users Business Sales and Operations Security / Availability / Capacity Planning Project Manager
21 February 2007 Some Architectural Frameworks TOGAF ( http://www.togaf.org )http://www.togaf.org –Enterprise Architecture framework (“bits and bytes”) –Architecture Vision => Business Architecture => Data => Application => Technology => Solution –Emphasises the importance of Architecture Board & Governance. –Has a formal certification exam. ZACHMAN ( http://www.zifa.com )http://www.zifa.com –Systems Architecture Viewpoint –6 basic questions (What, How, Where, Who, When, Why) –5 stakeholders (Planner, Owner, Designer, Builder, Subcontractor) RUP & ERUP ( http://www.ibm.com )http://www.ibm.com –Iterative Software Development processes owned by IBM –Inception => Elaboration => Construction => Transition –Developed into the AGILE Unified Process
21 February 2007 IT Production “touch points” in Development TASKSP1P2P3P4P5P6P7 Project Launch Requirements Gathering Design Options Build Integrate Deploy DEFINE FUNCTIONAL AND NON-FUNCTIONAL REQUIREMENTS GO LIVE
21 February 2007 Question for the Audience What makes a project successful in PRODUCTION?
21 February 2007 In some cases, the choice of Technology for a new Application can be driven by Developers’ Choice: –Useful Development Tools ? –Design and Development Features ? –Familiarity ? –The desire to try out the latest technology ? Result: Applications whose Development costs may be Low, but the Support Costs may be high (even prohibitive). Defining IT Production Standards can redress this balance. Standards can contribute to controlling Costs of Maintenance & Support Simplicity = Economies of Scale in Support Why PRODUCTION STANDARDS are IMPORTANT
21 February 2007 PRODUCTION-READY: Defined Scalability –As the workload increases, how much additional hardware etc. is required? Expandability –Can be adapted to possible future requirements? Reliability –Deliver results consistently & repeat ably, irrespective of changed circumstances ? Stability –Able run unattended for long periods of time without intervention? Resilience –Able to recover quickly from a failure of one or more components of the overall system?
21 February 2007 PRODUCTION-READY: Defined (2) Backup –Able to respond to the failure of all components of the system? Recovery –Able to restore the system to a known state at a specific period of time? Security –Are Users authenticated and Authorized, and non-users Isolated? Monitoring –Able to pro-actively identify any changes in the behavior of the system? –Able to extract time-series data to model the long-term behavior?" Management –How easy is it to amend or adjust the configuration of the application, and it's environmental behavior? Supportability –able to be supported at a reasonable cost?
21 February 2007 Production-Readiness Suitability Assessment
IS a Solution PRODUCTION-READY? “ Simplicity remains one of SOAP's primary design goals as evidenced by SOAP's lack of various distributed system features such as security, routing, and reliability to name a few. ” Understanding SOAP Aaron Skonnard MSDN, March 2003 http://msdn.microsoft.com/library/default.asp?url=/library/ en-us/dnsoap/html/understandsoap.asp
21 February 2007 INTERFACING PROCESSES Initiation Build Deploy Support Service Desk Problem Change Release Configuration Standards Handover R & D Incident
21 February 2007 Establishing Standards for future Projects Establish a Production Architecture role –Define Production Readiness Criteria –Engage with Development –Publish Technology “menu” of Production Standards Developers and Business need to understand that these Standards represent the optimum support costs for Applications. Engage with Developers at Project Initiation. Configuration Baselines affect charge-back Template SLAs should reflect these Standards Establish processes for amending these Standards Choice of Standards should depend upon whether or not a Technology is “Production-Ready”
21 February 2007 TIME COST Design Develop Test / Deploy Production Taking the Long Term View
21 February 2007 Clear Architecture Governance Validation Procedures Choice of “best of breed” technologies Standards
21 February 2007 Questions ? Dennis Adams a s s o c i a t e s
21 February 2007 WORKSHOP: Assessing A Product Chose Background: You are working as an Oracle DBA in the IT Production division of a medium-size organization. The company is considering how best to implement High Availability (HA) for Oracle databases. Cost is not an issue (!) Two options have been considered: Oracle RAC Oracle Dataguard Conduct a Production Suitability Assessment to determine which is the better choice from an IT Production perspective.
21 February 2007 Creating an IT Production Architecture function (the forgotten architecture) Dennis Adams a s s o c i a t e s Management and Infrastructure SIG Meeting Dennis Adams 21st February 2007 http://www.dennisadams.net/event200702oracle.htm