Software Design, Software Coding - Are there Distinctions?

Slides:



Advertisements
Similar presentations
Pat Langley Computational Learning Laboratory Center for the Study of Language and Information Stanford University, Stanford, California
Advertisements

Instructional Technology vs. Educational Technology
Introduction to Computational Linguistics
What is Design?. Engineering design is the communication of a set of rational decisions obtained with creative problem solving for accomplishing certain.
S Y S T E M S E N G I N E E R I N G.
INTRODUCTION TO MODELING
High Quality Code Why it matters. By Ryan Ruzich.
Computational Artistic Creativity and its Evaluation DAVID C BROWN Computer Science Department WPI, Worcester, MA 01609, USA.
Public Budget As Decision- Making Process  Decision - Making Models:  Incremental Change Model  Satisfying Model  Ideal Rational Model  Stages of.
Comp 205: Comparative Programming Languages Semantics of Imperative Programming Languages denotational semantics operational semantics logical semantics.
Train Control Language Teaching Computers Interlocking By: J. Endresen, E. Carlson, T. Moen1, K. J. Alme, Haugen, G. K. Olsen & A. Svendsen Synthesizing.
CSCI 3 Introduction to Computer Science. CSCI 3 Course Description: –An overview of the fundamentals of computer science. Topics covered include number.
History - “Science of Design” “design” is at a point like medicine and law in 19th century? transformation of engineering from vocational practice to applied.
UNIVERSITY OF SOUTH CAROLINA Department of Computer Science and Engineering CSCE 580 Artificial Intelligence Problem Spaces and Search Fall 2008 Jingsong.
Overview Discrete Mathematics and Its Applications Baojian Hua
Environments through Economics A summary of chapter two of Simon’s The Sciences of the Artificial Brandon Wirick, 10 Jan 2004.
The Science of the Artificial ch. 1 Charles Reid 1/5/2005.
Computing Fundamentals 2 Overview Lecturer: Patrick Browne Room [KA] , Lab [KA] Based on Chapter 19. A Logical approach to Discrete Math.
1 Optimizing Utility in Cloud Computing through Autonomic Workload Execution Reporter : Lin Kelly Date : 2010/11/24.
Describing Syntax and Semantics
Sciences of the Artificial
MTH374: Optimization For Master of Mathematics By Dr. M. Fazeel Anwar Assistant Professor Department of Mathematics, CIIT Islamabad 1.
Knowledge representation
Artificial Intelligence Introductory Lecture Jennifer J. Burg Department of Mathematics and Computer Science.
ARTIFICIAL INTELLIGENCE [INTELLIGENT AGENTS PARADIGM] Professor Janis Grundspenkis Riga Technical University Faculty of Computer Science and Information.
th ICCRTS Command and Control Research is a ”Science of the Artificial” Berndt Brehmer Swedish National Defence College.
 Dr. Syed Noman Hasany 1.  Review of known methodologies  Analysis of software requirements  Real-time software  Software cost, quality, testing.
By Temtim Assefa November 2013 DESIGN SCIENCE METHOD.
Artificial Intelligence: Introduction Department of Computer Science & Engineering Indian Institute of Technology Kharagpur.
Theory of Programming Languages Introduction. What is a Programming Language? John von Neumann (1940’s) –Stored program concept –CPU actions determined.
Computer Science 210 Computer Organization Course Introduction.
L&I SCI 110: Information science and information theory Instructor: Xiangming(Simon) Mu Sept. 9, 2004.
Introduction to Artificial Intelligence CS 438 Spring 2008.
A Constraint Language Approach to Grid Resource Selection Chuang Liu, Ian Foster Distributed System Lab University of Chicago
The Science of Design. What is Design? Science vs. Engineering – Science teaches about natural things where engineering teaches about artificial things.
College of Computer Science, SCU Computer English Lecture 1 Computer Science Yang Ning 1/46.
By: Nelson Webster. Algorithm Engineers Algorithm engineers study the effectiveness and efficiency of procedures of solving problems on a computer.
CMPB454 ARTIFICIAL INTELLIGENCE (AI) CHAPTER 1.1 Background Information CHAPTER 1.1 Background Information Instructor: Alicia Tang Y. C.
Engineering design is the process of devising a system, component, or process to meet desired needs. It is a decision-making process (often iterative),
Computing & Information Sciences Kansas State University Wednesday, 04 Oct 2006CIS 490 / 730: Artificial Intelligence Lecture 17 of 42 Wednesday, 04 October.
D10A Metode Penelitian MP-04b Metodologi Penelitian di dalam Ilmu Komputer/Informatika Program Studi S-1 Teknik Informatika FMIPA Universitas.
Computing & Information Sciences Kansas State University Friday, 13 Oct 2006CIS 490 / 730: Artificial Intelligence Lecture 21 of 42 Friday, 13 October.
Herbert Simon.
Introduction to Artificial Intelligence Heshaam Faili University of Tehran.
Knowledge Representation Part I Ontology Jan Pettersen Nytun Knowledge Representation Part I, JPN, UiA1.
Certification of Reusable Software Artifacts
Problem Representation and Problem-solving Strategies.
Artificial Intelligence
Algorithms and Problem Solving
Steps in the Decision-Making Process
Ontology From Wikipedia, the free encyclopedia
N-Way Model Merging CSC2125 Project
RESEARCH APPROACH.
Introduction Hamdy A. Taha, Operations Research: An introduction, 8th Edition Mjdah Al Shehri.
System Design Basics IB Computer Science.
Knowledge Basis for Design Steve Frezza, Ph. D., C.S.D.P.
Knowledge Representation
Game Playing in AI by: Gaurav Phapale 05 IT 6010
Computer Science 210 Computer Organization
What is Pattern Recognition?
Stephen Hess Dr. Jeffery Heer Discussion for 4/21 CS 376.
Engineering design is the process of devising a system, component, or process to meet desired needs. It is a decision-making process in which the basic.
Artificial Intelligence Lecture 2: Foundation of Artificial Intelligence By: Nur Uddin, Ph.D.
Utility-Function based Resource Allocation for Adaptable Applications in Dynamic, Distributed Real-Time Systems Presenter: David Fleeman {
EA C461 – Artificial Intelligence Introduction
Introduction Hamdy A. Taha, Operations Research: An introduction, 8th Edition Mjdah Al Shehri.
Modeling and Analysis Tutorial
by Herbert A. Simon 유광용, 송경희 기술혁신세미나
Computer Science 210 Computer Organization
Presentation transcript:

Software Design, Software Coding - Are there Distinctions? “Design” Revisited Software Design, Software Coding - Are there Distinctions? From Herb Simon’s work

Design Definition - Herb Simon Science describes natural things Engineering teaches how to make artifacts that have desired properties (how to design)

“The artificial world is centered precisely on this interface between the inner and outer environments; it is concerned with attaining goals by adapting the former to the latter. The proper study of those who are concerned with the artificial is the way in which that adaptation of means to environments is brought about - and central to that is the process of design itself.”

Design Definition (again) The natural sciences are concerned with how things are. Design is concerned with how things ought to be, with devising artifacts to attain goals.

Design is about “normative” “should’s” and predicate logics (descriptive) won’t suffice modal (normative) logics exist, but are not helpful? What do designers do? look at process of OPTIMIZATION

Maximize utility - standard optimization problem - to maximize a function subject to constraints how do we do this using predicate logic????? construct sets of possible worlds consider the possible worlds that meet the constraints of the outer environment; then find the particular world in the set that meets the remaining constraints of the goal and maximizes the utility function

Central Topics for the Curriculum: Science of Design The Evaluation of Designs Theory of evaluation: utility theory, statistical decision theory Computational methods: Algorithms for choosing optimal alternatives Algorithms and heuristics for choosing satisfactory alternatives

The Formal Logic of Design The Search for Alternatives imperative and declarative logics The Search for Alternatives Heuristic search: factorization and means-ends analysis Allocation of resources for search

Theory of Structure and Design Organization: hierarchic systems Representation of Design Problems