Architectural Thinking - What Is Architecture?

  • View
    4.810

  • Download
    0

Embed Size (px)

DESCRIPTION

 

Text of Architectural Thinking - What Is Architecture?

  • Architectural Thinking What is Architecture? Ingo Arnold
  • WHAT Dimension WHAT Fundamental definitions WHY Motivation and requirements WHERE Views and perspectives WHEREBY Means and techniques WHO Roles and organisations HOW Methodologies and processes
  • What do we deal with by the way?
    • We
      • Plan & Define
      • Architect & establish
      • Maintain & operate
    • our Companys Information System
  • What do we deal with by the way?
    • What is a Company Information System?
      • Flight Booking System @ Lufthansa, Germany, mid 60ies
  • What do we deal with by the way?
    • A Company Information System is comprised of ...
      • Processes
  • What do we deal with by the way?
    • A Company Information System is comprised of ...
      • Function points and applications
  • What do we deal with by the way?
    • A Company Information System is comprised of ...
      • Data, Data Structures and Data Containers (Folders, Binders et al)
  • What do we deal with by the way?
    • A Company Information System is comprised of ...
      • Some sorts of technological infrastructure and underpinnings
  • What do we deal with by the way?
    • What has changed is that ...
      • Things have taken off the ground
      • ... and become ...
        • Virtual
        • Clonable
        • Shippable
        • Configurable
        • Investigable
        • Deletable
      • .. far beyond what was possible in the things world of the mid 60ies
  • Architecture is not new
    • The Solution Architect in the 60ies had to arrange processes, data, applications, tools, spaces and other means, fundamental to the given business models
  • Architecture is not new
    • similar to what the Solution Architects have to in 2008
    • ... just the means changed a bit in the meantime
  • Architectural disorientation Why bother?
  • Architectural disorientation
    • What is architecture?
    • What are you expected to do as an architect?
    • How is architecture manifested?
    A tube A brush
  • Architectural disorientation
    • How do you distinguish good from bad architecture?
    • Where and when does architecture occur?
    • Why is architecture to be developed why is it useful?
    • Whereby is architecture developed?
    • Who is responsible for architecture?
    • How do you approach architecture?
    • What do you need to know as an architect?
    • Software is complex and IT is everchanging!
      • If we continued to protect our assets as we did in 16th century,
    Architectural disorientation
    • Software is complex and IT is everchanging!
      • our landscape nowadays would look like this
    Architectural disorientation
    • Software is complex and IT is everchanging!
      • but it does not!
    Architectural disorientation
    • Architecture evolves in its context Barcelona
    Architectural disorientation
    • Architecture evolves in its context Barcelona
    Architectural disorientation
  • All too often reality
    • We start with a wish list.
    • What follows is a concept.
    • A first pilot is implemented.
    • The pilot goes life.
    • Changes are required.
    • To implement the changes we need to deviate from the original concept.
  • All too often reality
    • Software architectecture was created:
    Big Ball of Mud-Pattern In computer programming, Big Ball of Mud is a term for a system or computer program that has no real distinguishable architecture. It usually includes more than one of the other anti-patterns.
  • All too often reality
  • All too often reality Maintaining a shantytown is labor-intensive and requires a broad range of skills. One must be able to improvise repairs with the materials on-hand, and master tasks from roof repair to ad hoc sanitation. However, there is little of the sort of skilled specialization that one sees in a mature economy.
  • All too often reality
  • All too often reality All too many of our systems are, architecturally, little more than shantytowns. Investment in tools and infrastructure is too often inadequate. Tools are usually primitive, and infrastructure such as libraries and frameworks, is undercapitalized. Individual portions of the system grow unchecked, and the lack of infrastructure and architecture allows problems in one part of the system to erode and pollute adjacent portions.
  • Question 4 you
    • What are symptoms of bad architecture?
  • Symptoms of immature architectures
    • Results of analysis phase are not adequately considered.
    • Holistic view of IT-System is missing.
    • Complexity increases and becomes unmanageble.
    • Planning and risk-management becomes difficult.
    • Reuse of expertise as well as system building blocks is difficult.
    • Flexibility, maintainability, interoperability become a problem.
    • Architecture documentation is missing or not up-to-date.
    • Steep learning curve for new staff entering the project.
  • Symptoms of immature architectures
    • Redundancy of code and functionality.
    • Systems building blocks are heavily interdependent.
    • Very long development and change cycles.
  • Symptoms of immature architectures System complexity Architecture relevance
  • What is architecture?
    • Have you ever seen or touched Architecture?
    .. even here ..
  • What is architecture?
    • We believe No ..
    Design-time Perspective System Perspective (Physics)
  • What is architecture?
    • Architecture is an inherent aspect of any system
    • But you cant see nor can you touch it on the system level
    • Architecture is tangible only on the level of models and plans
    • Architecture is mainly about quality .. not functionality
    • Architecture has a mid- to long-term ROI .. you cannot avoid it
    Architecture Perspective (Models & Plans)
  • What is architecture?
    • Architecture of a computer or IT-system is not immediately tangible. Nevertheless does every IT-system have an architecture
    • There are many architecture definitions out there, which are typically comprised of the following aspects:
      • Structure
      • Behaviour and collaboration of architectural building blocks
      • Discipline and methodology
    • Architecture covers everything .. from a systems problem domain analysis phase up to this systems retirement
    • Architecture makes complexity manageable by focussing onto only the substantial aspects of an IT-system
    System People
  • What is architecture?
    • An Architecture defines behavior
  • What is architecture?
    • An Architecture Balances Stakeholder Needs
      • The needs of the end user are