• Education Board

    Co-Chair
      Elizabeth Hawthorne  
      Christine  Stephenson  
    Past Chair
      Jane Prey  
      Mehran  Sahami  
    Member-at-Large
      Diana Burley  
      Michelle  Craig  
      Alison  Derbenwick Miller  
      Paul  Leidig  
      Andrew  McGettrick  
      Briana  Morrison  
      Fay Cobb  Payton  
      Mihaela  Sabin  
      Cara  Tang  
      R.  Venkatesh  
    CSTA, ex officio
      Jake Baskin  
    D&I Council Liaison
      Lisa Smith
  • Education Advisory Committee

    ACM India Representative
      Abhiram Ranade  
      R.  Venkatesh  
    Member
      Thomas Cortina  
      Leigh Ann  Delyser  
      Daryl  Detrick
      Judith  Gal-Ezer  
      Christina  Gardner-Mccune  
      Michael  Goldweber  
      Steven  Gordon  
      David  Joyner  
      Amruth  Kumar  
      Alvaro  Monge  
      Tamara  Pearson  
      Chris  Piech  
      Susan  Reiser  
      Christian  Servin  
      Olivier  St-Cyr  
      Peter  Thiemann  
      Jodi  Tims  
      Cindy  Tucker  
      Ellen  Walker  
      Andrew  Williams  
      Pat  Yongpradit  
      Aimin  Zhu
      Stuart  Zweben  
    CSAB Representative
      Paul Leidig  
    Chair, Committee for Computing Education in Community Colleges
      Cara Tang  
    Headquarters Liaison
      Yan Timanovsky  
    Advisor
      Alison Clear  
      Robert  Schnabel  
    SIGCSE Representative
      Mary Anne Egan  

Learning Path: Software Architecture Fundamentals—Architecture Techniques

Software architecture encompasses a broad range of concepts and requires a true multidiscipline approach to planning and implementation. But there are essential basic practices that you need to know and apply to your designs. In this fourth in a series of six learning paths focused on software architecture fundamentals, your hosts, Neal Ford and Mark Richards, help you to explore the core techniques of being a software architect. You begin by looking at methods for architecture refactoring—making internal changes to your design without affecting its functionality. You then look at how to use checklists to make your teams more effective, how to interact with your project’s stakeholders and other architects, certification programs (and their pros and cons), and what Continuous Delivery (CD) means to you as an architect. Along the way, you'll learn important techniques for developing your career as an architect. As with every learning path in this series, you’ll use a real-world problem (called “katas,” or exercises) to assess your progress.

Featured Resource: Learning Path: Software Architecture Fundamentals—Architecture Techniques