1 / 29

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. Creating an IT Production Architecture function (the forgotten architecture). Dennis Adams 21st February 2007. Introduction - Some searching questions. Is IT an engineering discipline?

fionan
Download Presentation

Creating an IT Production Architecture function (the forgotten architecture)

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Dennis Adams a s s o c i a t e s Management and Infrastructure SIG Meeting Creating an IT Production Architecture function(the forgotten architecture) Dennis Adams 21st February 2007

  2. 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

  3. 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"

  4. 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

  5. Nightmares 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. “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.

  6. 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.

  7. 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 Changes in APPLICATION DEVELOPMENT As Development has become more complex, so too have Deployment and Production.

  8. DEPLOYMENT into IT PRODUCTION IT Development IT Production

  9. IT Department Development Teams Production Teams Create New Applications Support Existing Applications

  10. 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.

  11. 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

  12. Production Architecture - Organisational Context Business IT Development IT Production Business Sales and Operations Client / Service Managers Business Sponsor Business Analysts Technical Teams Security / Availability / Capacity Planning Business Users Application Developers Application Architects Infrastructure Architects Project Manager Project Manager Project Manager

  13. Some Architectural Frameworks • TOGAF ( 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 ) • 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 ) • Iterative Software Development processes owned by IBM • Inception => Elaboration => Construction => Transition • Developed into the AGILE Unified Process

  14. IT Production “touch points” in Development DEFINE FUNCTIONAL AND NON-FUNCTIONAL REQUIREMENTS GO LIVE

  15. What makes a project successful in PRODUCTION? Question for the Audience

  16. Why PRODUCTION STANDARDS are IMPORTANT • 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

  17. Production-Readiness Criteria

  18. 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?

  19. 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?

  20. Production-Readiness Suitability Assessment

  21. 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

  22. INTERFACING PROCESSES R & D Configuration Initiation Build Release Standards Change AGILE Problem Deploy Handover Incident Support Service Desk

  23. 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”

  24. Taking the Long Term View Test / Deploy Develop COST Design Production TIME

  25. Standards Choice of “best of breed” technologies Validation Procedures Clear Architecture Governance

  26. Dennis Adams a s s o c i a t e s Questions ?

  27. 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.

  28. Dennis Adams a s s o c i a t e s Management and Infrastructure SIG Meeting Creating an IT Production Architecture function(the forgotten architecture) Dennis Adams 21st February 2007 http://www.dennisadams.net/event200702oracle.htm

More Related