All hat, no answers Some issues related to the evaluation of architecture John Wroclawski USC/ISI NSF FIA Meeting March 19, 2013.

Slides:



Advertisements
Similar presentations
HOlistic Platform Design for Smart Buildings
Advertisements

An Integrated, Distributed Traffic Control Strategy for Future Internet An Integrated, Distributed Traffic Control Strategy for Future Internet H. Che.
Brief-out: Isolation Working Group Topic discussion leader: Ken Birman.
1 Mata Architecture for the Future Network APAN2008 January Myung-Ki SHIN, ETRI
Multi-Access Services in Heterogeneous Wireless Networks Kameswari Chebrolu, Ramesh R. Rao Abstract Today's wireless world is characterized by heterogeneity.
Universidade do Minho A Framework for Multi-Class Based Multicast Routing TNC 2002 Maria João Nicolau, António Costa, Alexandre Santos {joao, costa,
ARCHITECTURES FOR ARTIFICIAL INTELLIGENCE SYSTEMS
Three fun things to work on in your spare time John Wroclawski USC/ISI.
Internet Protocols Steven Low CS/EE netlab.CALTECH.edu October 2004 with J. Doyle, L. Li, A. Tang, J. Wang.
Layering and the network layer CS168, Fall 2014 Sylvia Ratnasamy
Cs/ee 143 Communication Networks Chapter 6 Internetworking Text: Walrand & Parekh, 2010 Steven Low CMS, EE, Caltech.
Lecture # 2 : Process Models
Chapter 2 Modeling the Process and Life Cycle Shari L. Pfleeger
Chapter 2 – Software Processes Lecture 1 1Chapter 2 Software Processes.
Software Process Models
Software Modeling SWE5441 Lecture 3 Eng. Mohammed Timraz
Decisional Guidance for Computer based Decision support A Review by Cheickna Sylla Spring ‘97.
Software Engineering for Real- Time: A Roadmap H. Kopetz. Technische Universitat Wien, Austria Presented by Wing Kit Hor.
Chapter 6 The Process of Interaction Design Presented by: Kinnis Gosha, Michael McGill, Jamey White, and Chiao Huang.
CS 268: Future Internet Architectures Ion Stoica May 1, 2006.
The Design Philosophy of the DARPA Internet Protocols D. D. Clark.
Rethinking Traffic Management: Using Optimization Decomposition to Derive New Architectures Jennifer Rexford Princeton University Jiayue He, Ma’ayan Bresler,
1 GENI: Global Environment for Network Innovations Jennifer Rexford On behalf of Allison Mankin (NSF)
Cross Layer Design in Wireless Networks Andrea Goldsmith Stanford University Crosslayer Design Panel ICC May 14, 2003.
Tussle in cyberspace: Defining tomorrow ’ s internet D.Clark, J.Wroclawski, K.Sollins & R.Braden Presented by: Ao-Jan Su (Slides in courtesy of: Baoning.
Future Research Directions Jennifer Rexford Advanced Computer Networks Tuesdays/Thursdays 1:30pm-2:50pm.
1 Introduction to System Engineering G. Nacouzi ME 155B.
Rethinking Internet Traffic Management: From Multiple Decompositions to a Practical Protocol Jiayue He Princeton University Joint work with Martin Suchara,
CS 268: Future Internet Architectures Ion Stoica May 6, 2003.
Software Architecture in Practice
COMP 350: Object Oriented Analysis and Design Lecture 2
Multipath Protocol for Delay-Sensitive Traffic Jennifer Rexford Princeton University Joint work with Umar Javed, Martin Suchara, and Jiayue He
Building a Strong Foundation for a Future Internet Jennifer Rexford ’91 Computer Science Department (and Electrical Engineering and the Center for IT Policy)
Architectural Design Establishing the overall structure of a software system Objectives To introduce architectural design and to discuss its importance.
COGNITIVE RADIO FOR NEXT-GENERATION WIRELESS NETWORKS: AN APPROACH TO OPPORTUNISTIC CHANNEL SELECTION IN IEEE BASED WIRELESS MESH Dusit Niyato,
DR. AHMAD SHAHRUL NIZAM ISHA
Introduction to RUP Spring Sharif Univ. of Tech.2 Outlines What is RUP? RUP Phases –Inception –Elaboration –Construction –Transition.
Chapter 2 The process Process, Methods, and Tools
DaVinci: Dynamically Adaptive Virtual Networks for a Customized Internet Jennifer Rexford Princeton University With Jiayue He, Rui Zhang-Shen, Ying Li,
Tussel in Cyberspace Based on Slides by I. Stoica.
© 2007 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1 A Discipline of Software Design.
Team Skill 6: Building the Right System From Use Cases to Implementation (25)
Network Layer4-1 Chapter 4: Network Layer Chapter goals: r understand principles behind network layer services: m network layer service models m forwarding.
Role-Based Guide to the RUP Architect. 2 Mission of an Architect A software architect leads and coordinates technical activities and artifacts throughout.
SOFTWARE DESIGN.
Design and Implementation of a Multi-Channel Multi-Interface Network Chandrakanth Chereddi Pradeep Kyasanur Nitin H. Vaidya University of Illinois at Urbana-Champaign.
Tussle in cyberspace: Defining tomorrow’s internet D.Clark, J.Wroclawski, K.Sollins, R.Braden Presenter: Baoning Wu.
Network Architecture: Design Philosophies IS250 Spring 2010 John Chuang
ECE 4450:427/527 - Computer Networks Spring 2015 Dr. Nghi Tran Department of Electrical & Computer Engineering Lecture 2: Overview of Computer Network.
Tag Switching Architecture Overview Qingfeng Zhuge Fangxia Li Xin Jiang.
© 2012 xtUML.org Bill Chown – Mentor Graphics Model Driven Engineering.
Virtual Data Grid Architecture Ewa Deelman, Ian Foster, Carl Kesselman, Miron Livny.
Chapter 10 Analysis and Design Discipline. 2 Purpose The purpose is to translate the requirements into a specification that describes how to implement.
Thinking Architecturally An information theory and complex system viewpoint.
An Introduction to Software Engineering
Doc.: IEEE /0617r0 Submission May 2008 Tony Braskich, MotorolaSlide 1 Refining the Security Architecture Date: Authors:
Developing a Framework In Support of a Community of Practice in ABI Jason Newberry, Research Director Tanya Darisi, Senior Researcher
Review of Parnas’ Criteria for Decomposing Systems into Modules Zheng Wang, Yuan Zhang Michigan State University 04/19/2002.
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 4 Slide 1 Software Processes.
Incentives Alignment Whitepaper Progress since Athens.
February 19, February 19, 2016February 19, 2016February 19, 2016 Azusa, CA Sheldon X. Liang Ph. D. Software Engineering in CS at APU Azusa Pacific.
1 Architecture and Behavioral Model for Future Cognitive Heterogeneous Networks Advisor: Wei-Yeh Chen Student: Long-Chong Hung G. Chen, Y. Zhang, M. Song,
Systems Architectures System Integration & Architecture.
The Software Lifecycle Stuart Faulk. Definition Software Life Cycle: evolution of a software development effort from concept to retirement Life Cycle.
Process 4 Hours.
Model-Driven Analysis Frameworks for Embedded Systems
ECE 4450:427/527 - Computer Networks Spring 2017
Chapter 2 Software Processes
Presentation transcript:

All hat, no answers Some issues related to the evaluation of architecture John Wroclawski USC/ISI NSF FIA Meeting March 19, 2013

NSF : An evaluation plan… Guide and inform your work (feedback) Explain to and convince others Advance the field – a {hard, transformational} research area in itself. Why think about this?

Architecture high level design principles that guide the technical development of a system, especially the engineering of its protocols and algorithms Two distinct levels: A specification of system modularity, functional decomposition, interface locations and definitions, etc. – the what. A set of fundamental structuring principles that drive the choices of the first bullet – the why.

Architecture versus System versus Prototype

System A realized instantiation of a design, that meets specific requirements Well studied discipline - multiple design approaches: Waterfall… Requirements analysis Detailed system engineering Detailed component engineering Construction.. Agile… Some evaluation criteria: Meets Requirements Performance Lifecycle Cost … DesignDeployDesignDeployDesignDeploy

Prototype A partial system development focusing on key components or issues Proof of concept Learn whats missing Expose ideas and convince others Test key system functions quickly … Some (meta?) evaluation criteria Focused on the key open questions Learn what you need to Not misleading Leverage existing resources Quick turnaround (See Craig Partridges comments in summary from last meeting)

Observation Design objectives, and hence evaluation processes, are significantly different for each of these things. All are useful. But: need to tease them apart. Need to discuss each separately.

Network * Architecture Basic technical requirements and properties Coordination and evolution in time – multiple, evolving technologies and uses Coordination in space – multiple independent implementers Evaluation *or maybe Internet… Distinction between requirements / properties of the architecture and requirements /properties of a system. Many systems can share one architecture

Diversion - Elegance Architects talk about it a lot. Means what? One view – economy of mechanism, minimalist, clean Another view (or maybe not..): structural principles intuitively apparent – architecture conveys understanding, not just rules. Feels like it makes sense. Why does this matter? Guidance for evolution in space and time. An evaluation point: are the architectures structuring principles clear, intuitive, and apparent?

Diversion – Architectural Decay The textbook Internet: E2E arguments – fate sharing, scalability, evolvability, fault tolerance,… Layering – protocol reuse, narrow waist, ubiquitous spanning layer,… Forwarding/routing split – universal high-performance mechanism vs flexible and evolvable policy The reality: Address translation, firewalls, deep packet inspection, header rewriting, protocol converting gateways, STUN, TURN, ICE, CATS, DOGS, and who-all knows what. A goal: self-reinforcing architectures Orthogonality, tussle management, clear & minimal fixed points, active countermeasures? An evaluation point: stabilizing strategy & mechanisms..

Evaluation Step 1: Clarify the proposed architecture – separate from system and prototype Step 2: Identify and execute evaluation strategies

Evaluation Strategies Today, we have basically two. Socratic discourse Build it, achieve success, and wait 30 years In fact, this – particularly the first – has worked rather better than my snide tone might suggest With the right structure and context, people have demonstrated good ability to reason about architectural principles Telephone vs IP – strengths of each ATM QoS vs IP QoS – a clear lesson in simplicity, coordination in space, and more Discussion point: Can we foster this structure and context? How?

Evaluation Strategies II Still, we would like more. Lets talk about two: 1. … 2. … 3. Moving towards Theoretical Frameworks – increased rigor and more structured understanding 4. Experimental Research – contrasted with prototype deployment

Theoretical Frameworks We do not today have a theory of architecture – (very) far from it But – there are glimmers. From Game theory Optimization theory Various bits of economics … A possible synthesis principle for increased architectural evaluability (among other benefits…): Choose modularities with intent to bring emerging theory into scope Allows evaluation of sub-architectures using these tools

An example: Theoretically Derived Architectural Modularity Network resource allocation formulated as global optimization problem Primal-dual decomposition generates a set of dual problems/algorithms/modules: Local (except scheduling) Tied together through congestion prices (sub)-system architecture traceable to theoretically provable optimality.. Utility function U_s{x_s} (strictly concave function of the sending rates) Applications Congestion control Routing Scheduling Channel Cross-layer interaction in form of congestion prices (cost per unit flow of sending data along a link to a destination ) Optimal Cross-Layer Congestion Control, Routing, and Scheduling Design in Ad Hoc Wireless Networks. Lijun Chen, Steven H. Low, Mung Chiang, John C. Doyle (Caltech and Princeton)

Experimental Research …as distinct from prototype construction and deployment Focus on Worst case experiments Intentional perturbation Accelerated evolution Comparison (implies repeatability?) Given current state of the art, likely to involve simulation of key system components, modeling of users, etc.

Takeaway Points 1. Clarify the domain – Architecture vs System vs Prototype Each domain both requires and deserves separate evaluation 2. Clarify the architecture – both underlying principles and resulting structure 3. Mixed mode evaluation for a still-empirical discipline Evaluate through discourse Evaluate through analysis Evaluate through experiment Driven by reasoning Driven by increasing rigor