History - “Science of Design” “design” is at a point like medicine and law in 19th century? transformation of engineering from vocational practice to applied.

Slides:



Advertisements
Similar presentations
ARCHITECTURES FOR ARTIFICIAL INTELLIGENCE SYSTEMS
Advertisements

What is Design?. Engineering design is the communication of a set of rational decisions obtained with creative problem solving for accomplishing certain.
The design process IACT 403 IACT 931 CSCI 324 Human Computer Interface Lecturer:Gene Awyzio Room:3.117 Phone:
AI 授課教師:顏士淨 2013/09/12 1. Part I & Part II 2  Part I Artificial Intelligence 1 Introduction 2 Intelligent Agents Part II Problem Solving 3 Solving Problems.
Presented by: Thabet Kacem Spring Outline Contributions Introduction Proposed Approach Related Work Reconception of ADLs XTEAM Tool Chain Discussion.
© 2005 Prentice Hall6-1 Stumpf and Teague Object-Oriented Systems Analysis and Design with UML.
Decision Making: An Introduction 1. 2 Decision Making Decision Making is a process of choosing among two or more alternative courses of action for the.
C SC 421: Artificial Intelligence …or Computational Intelligence Alex Thomo
Knowledge Acquisitioning. Definition The transfer and transformation of potential problem solving expertise from some knowledge source to a program.
Modeling and Validation Victor R. Basili University of Maryland 27 September 1999.
Writing Good Software Engineering Research Papers A Paper by Mary Shaw In Proceedings of the 25th International Conference on Software Engineering (ICSE),
1 Introduction to System Engineering G. Nacouzi ME 155B.
IACT901 - Module 1 Planning Theory - Scope & Integration ABRS Hong Kong 2004 Penney McFarlane University of Wollongong.
ABET 1 SAYS - Your Senior Design Course Should Include Engineering design is the process of devising a system, component, or process to meet desired needs.
Amirkabir University of Technology, Computer Engineering Faculty, Intelligent Systems Laboratory,Requirements Engineering Course, Dr. Abdollahzadeh 1 Goal.
1 Computer Systems & Architecture Lesson 1 1. The Architecture Business Cycle.
Course Instructor: Aisha Azeem
Requirements Engineering Process – 1
BPT 3113 – Management of Technology
Science and Engineering Practices
1 An introduction to design patterns Based on material produced by John Vlissides and Douglas C. Schmidt.
Science Inquiry Minds-on Hands-on.
* Problem solving: active efforts to discover what must be done to achieve a goal that is not readily attainable.
Systems Engineer An engineer who specializes in the implementation of production systems This material is based upon work supported by the National Science.
Norm Theory and Descriptive Translation Studies
The design process z Software engineering and the design process for interactive systems z Standards and guidelines as design rules z Usability engineering.
Operations Research Models
Unit 2: Engineering Design Process
Chapter 2 The process Process, Methods, and Tools
Chapter 1 Introduction to Simulation
College of Engineering King Saud University Feb 10, 2012
© 2007 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1 A Discipline of Software Design.
Design Science Method By Temtim Assefa.
Dr. Alissa Antle. Concretizing Ideas Transforming theoretically derived ideas to concrete features in a research prototype requires iterative design.
HCI in Software Process Material from Authors of Human Computer Interaction Alan Dix, et al.
SOFTWARE DESIGN.
Model-Driven Analysis Frameworks for Embedded Systems George Edwards USC Center for Systems and Software Engineering
Putting Research to Work in K-8 Science Classrooms Ready, Set, SCIENCE.
Decision Making, Systems, Modeling, and Support
NATURE OF OB Total System Approach Nature of Organisational behaviour
The roots of innovation Future and Emerging Technologies (FET) Future and Emerging Technologies (FET) The roots of innovation Proactive initiative on:
Introduction CS 3358 Data Structures. What is Computer Science? Computer Science is the study of algorithms, including their  Formal and mathematical.
1 Introduction to Software Engineering Lecture 1.
1 Advanced Software Architecture Muhammad Bilal Bashir PhD Scholar (Computer Science) Mohammad Ali Jinnah University.
Software Engineering Prof. Ing. Ivo Vondrak, CSc. Dept. of Computer Science Technical University of Ostrava
The Next Generation Science Standards: 4. Science and Engineering Practices Professor Michael Wysession Department of Earth and Planetary Sciences Washington.
1 CHAPTER 2 Decision Making, Systems, Modeling, and Support.
Applications in Acquisition Decision-Making Process.
K. Ingram (with thanks to A. Seddon) Staffordshire UNIVERSITY School of Computing Introduction to Software System Design.
EENG 4910/4990 Engineering Design Murali Varanasi September 02, 2009.
Software Design Process
Lecture 1 – Operations Research
MODEL-BASED SOFTWARE ARCHITECTURES.  Models of software are used in an increasing number of projects to handle the complexity of application domains.
Computer Science, Algorithms, Abstractions, & Information CSC 2001.
Review of Parnas’ Criteria for Decomposing Systems into Modules Zheng Wang, Yuan Zhang Michigan State University 04/19/2002.
What is Artificial Intelligence?
The Science of Design. What is Design? Science vs. Engineering – Science teaches about natural things where engineering teaches about artificial things.
What’s Ahead for Embedded Software? (Wed) Gilsoo Kim
RULES Patty Nordstrom Hien Nguyen. "Cognitive Skills are Realized by Production Rules"
Banaras Hindu University. A Course on Software Reuse by Design Patterns and Frameworks.
Introduction to Management MGT 101
Engr 691 Special Topics in Engineering Science Software Architecture Spring Semester 2004 Lecture Notes.
Engineering design is the process of devising a system, component, or process to meet desired needs. It is a decision-making process (often iterative),
D10A Metode Penelitian MP-04b Metodologi Penelitian di dalam Ilmu Komputer/Informatika Program Studi S-1 Teknik Informatika FMIPA Universitas.
Lecture 3 Prescriptive Process Models
Object-Oriented Software Engineering Using UML, Patterns, and Java,
Software Quality Engineering
Model-Driven Analysis Frameworks for Embedded Systems
Stephen Hess Dr. Jeffery Heer Discussion for 4/21 CS 376.
Software Design, Software Coding - Are there Distinctions?
Presentation transcript:

History - “Science of Design” “design” is at a point like medicine and law in 19th century? transformation of engineering from vocational practice to applied science WWII entry of “systems theory” –emergence becomes a topic emergence - cannot predict behavior of new combinations of “known” elements

What do Designers Do? transform a current world into a more desirable one –use descriptive principles history has brought us deep specialization? –produce normative results what “design” is all about “systems” context for customers (dual to specialization?) how do we actually get beyond the current state of the art? –“design” itself is not “owned” by any specialization - it is about social needs (?) the task of joining function, form, methodology, and context (Taylor)

Other Opinions on Design Cross, reporting on a number of studies in design, argues that design is quite different from science. While scientists focus on the problem, on discovering the rule that is operating, designers focus on the solution, on achieving the desired result. –He concludes that design is ultimately a series of personal choices based on a sense of what is "right." A design process provides a framework in which the decisions can be made (Rowland) The decisions made during the design process involve a balancing act among these four components: –Goals –Resources, which are the materials3⁄4 both physical and intellectual3⁄4 available to present information. – Design techniques, which are the strategies for achieving the goals using the resources available. – Constraints, which are outside influences that limit the use of resources and strategies to achieve a goal (Carliner, 1995).

Brian Marick on Science of Design My position is that one Science of Design should be a science of people doing design... more akin to anthropology or social studies of scientific practice than to physics... A successful research program would win the Jolt software productivity award as well as help someone gain tenure.

Michael Jackson on Design Science Problem world for software is likely heterogeneous Our Specs rely on different assumptions about problem world properties –possibly conflicting assumptions? Software Structure must impl. some approx to the conjunction of the indiv. software specs –while ensuring most critical functionality is most reliable

Jackson Normal design –standard forms to meet standard needs experience, social training, or objective? Radical design –delivers new product forms to meet new demands immaturity of software (lack of experience,..) versatility of computers (general purpose machine is “new” to humanity)

Jackson Science of software design: –explicate properties of decomp and composition –investigate reqts, specs and assumptions about problem worlds and software components –support appropriate tradeoff anaylsis My question - –is this about design of “software” or design of products via software or….using software

John Knight weighs in Interplay between software design and system design 1.software be viewed as system component –subject to all influences that affect system design 2.software itself must affect system design –if software is to provide system safety services –must be shown to function correctly in ANY feasible system state –overall safety goals of the system have to be shown to be met with all practical limitations inherent in any software development

Walt Scacchi Open source the very best road to study design iterative development incremental release peer review –continuous distributed testing and profiling community building –standards –information exposure (vs. information hiding)

Some Views of “Design” “devising courses of action aimed at changing existing situations into preferred ones” (Simon) “initiating change in man-made things” (Jones) “the process of inventing physical things which display new physical order, organization, form, in response to function” (Alexander) “a reflective conversation with the materials of a design situation” (Schon) “creating complex sociotechnical systems that help workers adapt to the changing and uncertain demands of their job” (Rasmussen)

Simon’s Topics in “Design Science” A Theory of evaluation Computational methods Formal logic of design Search mechanisms Representation theory

Theory of Evaluation To go beyond the state of the art –a constructive task but not ad-hoc? –create a search-space of alternatives we WANT constraints –(not the usual response) –need a theory of utility a situated theory –need statistical decision theory to give us our “satisficing” decisions

Computational Methods How to find “optimal” alternatives? –linear programming –control theory –dynamic programming How to find satisficing alternatives? –algorithms and heuristics for satisficing

Formal Logic of Design and Search Mechanisms Design alternatives must be synthesized Logic of search –what path should I try next? search for sufficient, not necessary actions for attaining goals –“generator-test” cycle - create the alternatives variety in solution space may be desirable in itself: the process might be important too –for the knowledge it generates »an “evolutionary” process involving a satisficing utility function?

Theory of Representation Problem: design of complex artifacts –requires skills of diverse “designers” satellite example - software engineers, materials engineers, power engineers, lawyers, network engineers, marketers… bounded rationality “symmetry of ignorance” (Rittel): –knowledge of each is needed (separate knowledge) –each is ignorant of what the other has to contribute (common to all)

Think: Representation of Problems in Design Space For mathematics, a “solution” is a transformation in representation of the problem. (Simon) – the software process ? Notations for expressing design? –DfDfA (Young) consider programming languages –develop techniques to detect errors –develop notations to make the error idiom less likely –develop notations to make the particular error unexpressable »analysis is replaced by synthesis! –what are the underlying principles at work?

Design and Life Fragmentation (specialization) of disciplines –science and non-science –science and engineering and liberal arts … BUT, “design” as a commonality? –music is possibly oldest of sciences of artificial (design) formal pattern important contacts with inner environment outer environment - problems of composition as “design” –search for alternatives, evaluation –“rules of thumb” –representation problems

Breadth of “design” as an activity Is it nearly universal? –problem solving in general Can a musician speak with a physician and a software engineer about the “design” activity? –I have experienced this, have you?

Software My old definition: “the static representation of a dynamic process to be instantiated to satisfy a human need” Simon says that “designers of design processes” –have had to be explicit as never before about what is involved in creating a design and what takes place when the creation is going on.

Software do we agree on this as a good abstraction descriptive of what we do in software engineering? designing static processes to be instantiated as a dynamic process (at run time) in order to solve another design problem who has done similar things before? –lawyers? urban planners? is there a good analogy to negligence law?