Maar hoe moet het dan?
|
|
- Maurice Nelson
- 8 years ago
- Views:
Transcription
1 Maar hoe moet het dan? Onderzoek naar feedback in interactieve leeromgevingen bij de Faculteit Informatica Johan Jeuring Met bijdragen van Alex Gerdes, Bastiaan Heeren, Josje Lodder, Harrie Passier, Sylvia Stuurman Open Universiteit Nederland Touwdag 2012, Amsterdam November 2012
2 Software technology for learning and teaching The software technology group has worked on interactive learning environments since 2005: The logic tutor Feedback in mathematical learning environments Ask-Elle: a programming tutor for Haskell
3 Demos!
4 Main ideas behind Ask-Elle A teacher specifies model solutions for an exercise, and possibly adapts the feedback Ask-Elle compares possibly partial student solutions against model solutions As long as a student follows a model solution, Ask-Elle can give hints
5 And what if a student makes an error, or takes a step that the tutor doesn t recognize? You have made a, possibly incorrect, step that does not follow the strategy.
6 And what if a student makes an error, or takes a step that the tutor doesn t recognize? You have made a, possibly incorrect, step that does not follow the strategy.
7 Our goals Increase the number of recognized good programs Report more errors, as precisely as possible
8 Report more errors, as precisely as possible Specify the properties a solution should satisfy Test the properties using QuickCheck Express the properties a solution should satisfy as a contract Use contract inference to infer contracts for user-defined functions Use contract checking to report property violations as precisely as possible
9 The problem Write a function that sorts a list sort :: Ord a => [a] -> [a] For example: Data.List> sort [1,2,1,3,2,4] [1,1,2,2,3,4]
10 Sorting: a model solution sort = foldr insert [ ] insert x [ ] = [x] insert x (y : ys) x y = x : y : ys otherwise = y : insert x ys
11 An error in sorting sort = foldr insert [ ] insert x [ ] = [x] insert x (y : ys) x y = y : x : ys otherwise = y : insert x ys
12 Sorting: a property propsort xs = isnondesc (sort xs) isnondesc (x : y : xs) = x y isnondesc (y : xs) isnondesc = True
13 Running QuickCheck main = do quickcheck propsort *Main> main *** Failed! Falsifiable (after...): [0,1] But where is the error?
14 Running QuickCheck main = do quickcheck propsort *Main> main *** Failed! Falsifiable (after...): [0,1] But where is the error?
15 Contracts... Contracts to the rescue.
16 A contracted sort sortc = assert ([true] { zs isnondesc zs }) (λxs sort xs)
17 Blaming blamesort = sortc 0 [0, 1] *** Exception: contract failed: the expression sort is to blame. But where is the error?
18 Blaming blamesort = sortc 0 [0, 1] *** Exception: contract failed: the expression sort is to blame. But where is the error?
19 A more precise location To get a more precise location for the error: replace all functions in the definition of sort by their contracted counterparts.
20 A contracted insert insertc = assert (true { xs isnondesc xs } { xs isnondesc xs }) (λx λxs insert x xs)
21 A contracted foldr foldrc ca cb = assert ((ca cb cb) cb [ca] cb) (λf λe λxs foldr (λa λb f 1 a 2 b) e xs)
22 Blaming II blamesort = sortc 0 [0, 1] *** Exception: contract failed: the expression insert is to blame.
23 But wait In the context of the tutor, we only know the contract for sort A student can implement sort in many different ways We want to infer the contracts for the components of a function
24 The inferring contracts problem: Given A well-typed program A contract for the top-level function determine the contracts for the components of the function.
25 range Write a function which enumerates all numbers contained in a given range. range :: Int Int [Int] For example, range 2 5 gives [2, 3, 4, 5]
26 Some solutions for range range 1 x y = if x y then [x] else x : range 1 (x + 1) y range 2 x y = if y x then [x] else x : range 2 (x + 1) y range 3 x y = if x y then x : range 3 (x + 1) y else [x] range 4 x y = if y x then x : range 4 (x + 1) y else [x] range 5 x y = if x y then x : range 5 (1 + x) y else [x] -- and the 3 variants range 6 x = λy if x y then [x] else x : range 6 (x + 1) y -- and the 7 variants range 7 = λx λy if x y then [x] else x : range 7 (x + 1) y -- and the 7 variants
27 A procedure for determining equality A procedure for determining whether or not two programs are equal is necessarily going to have some limitations But surely each pair of range programs can pass the test How can determine many of these equalities? What program transformations can I specify to steer this procedure?
28 I need a normal form! Remove syntactic sugar Normalization by Evaluation normalizes based on types, so a function of type a b c always has the form λx λy... Normal forms for integer expressions, boolean expressions, string expressions, taking into account algebraic properties of the operators Inlining? let duplicate x = [x, x] in concatmap duplicate concatmap (λx [x, x]) Fusion? map f. map g = map (f. g)
29 The functional programming normal form problem High-level: how can I determine equality of (functional) programs? What is a normal form of a program? What sequence of steps do I use for determining a normal form of a program? How can I influence the computation of a normal form of a program?
30 Conclusions Interesting problems remain to be solved for Ask-Elle: Inferring contracts Normal forms of programs More info: General information: Experiment on-line:
Formal Methods for Software Development
Formal Methods for Software Development Till Mossakowski, Lutz Schröder 20.10.2004 2 Overview of this Lecture MMISS Software Development and Formal Specification Overview of the course Scheinkriterien
More informationASK-ELLE: a Haskell Tutor
ASK-ELLE: a Haskell Tutor Proefschrift ter verkrijging van de graad van doctor aan de Open Universiteit op gezag van de rector magnificus prof. mr. A. Oskamp ten overstaan van een door het College voor
More informationAdvanced Functional Programming (9) Domain Specific Embedded Languages
Advanced Functional Programming (9) Domain Specific Embedded Languages Advanced Functional Programming (9) Domain Specific Embedded Languages, Universiteit Utrecht http://www.cs.uu.nl/groups/st/ February
More information09336863931 : provid.ir
provid.ir 09336863931 : NET Architecture Core CSharp o Variable o Variable Scope o Type Inference o Namespaces o Preprocessor Directives Statements and Flow of Execution o If Statement o Switch Statement
More informationONTOLOGY BASED FEEDBACK GENERATION IN DESIGN- ORIENTED E-LEARNING SYSTEMS
ONTOLOGY BASED FEEDBACK GENERATION IN DESIGN- ORIENTED E-LEARNING SYSTEMS Harrie Passier and Johan Jeuring Faculty of Computer Science, Open University of the Netherlands Valkenburgerweg 177, 6419 AT Heerlen,
More informationTesting and Tracing Lazy Functional Programs using QuickCheck and Hat
Testing and Tracing Lazy Functional Programs using QuickCheck and Hat Koen Claessen 1, Colin Runciman 2, Olaf Chitil 2, John Hughes 1, and Malcolm Wallace 2 1 Chalmers University of Technology, Sweden
More informationCall Arity. Joachim Breitner. Abstract. 1. Introduction. Karlsruhe Institute of Technology breitner@kit.edu
Call Arity Joachim Breitner Karlsruhe Institute of Technology breitner@kit.edu Abstract Higher order combinators in functional programming languages can lead to code that would be considerably more efficient
More informationUNIVERSITY OF LONDON (University College London) M.Sc. DEGREE 1998 COMPUTER SCIENCE D16: FUNCTIONAL PROGRAMMING. Answer THREE Questions.
UNIVERSITY OF LONDON (University College London) M.Sc. DEGREE 1998 COMPUTER SCIENCE D16: FUNCTIONAL PROGRAMMING Answer THREE Questions. The Use of Electronic Calculators: is NOT Permitted. -1- Answer Question
More informationComputer Programming I & II*
Computer Programming I & II* Career Cluster Information Technology Course Code 10152 Prerequisite(s) Computer Applications, Introduction to Information Technology Careers (recommended), Computer Hardware
More informationAnatomy of Programming Languages. William R. Cook
Anatomy of Programming Languages William R. Cook Copyright (C) 2013 2 Chapter 1 Preliminaries Preface What? This document is a series of notes about programming languages, originally written for students
More informationChapter 7: Functional Programming Languages
Chapter 7: Functional Programming Languages Aarne Ranta Slides for the book Implementing Programming Languages. An Introduction to Compilers and Interpreters, College Publications, 2012. Fun: a language
More information[Refer Slide Time: 05:10]
Principles of Programming Languages Prof: S. Arun Kumar Department of Computer Science and Engineering Indian Institute of Technology Delhi Lecture no 7 Lecture Title: Syntactic Classes Welcome to lecture
More informationCenter for Teacher Certification Austin Community College
TAKS Exit Exam 120 Problems to Success in Mathematics Tutors with Vision Project Center for Teacher Certification Austin Community College Abel L. Villarreal, mathematics teacher, learned long ago that
More informationType Classes with Functional Dependencies
Appears in Proceedings of the 9th European Symposium on Programming, ESOP 2000, Berlin, Germany, March 2000, Springer-Verlag LNCS 1782. Type Classes with Functional Dependencies Mark P. Jones Department
More informationArithmetic Coding: Introduction
Data Compression Arithmetic coding Arithmetic Coding: Introduction Allows using fractional parts of bits!! Used in PPM, JPEG/MPEG (as option), Bzip More time costly than Huffman, but integer implementation
More informationWelcome to Introduction to programming in Python
Welcome to Introduction to programming in Python Suffolk One, Ipswich, 4:30 to 6:00 Tuesday Jan 14, Jan 21, Jan 28, Feb 11 Welcome Fire exits Toilets Refreshments 1 Learning objectives of the course An
More informationDATA INPUT METHODS OBJECTIVE QUESTIONS
MODULE 7 DATA INPUT METHODS OBJECTIVE QUESTIONS There are 4 alternative answers to each question. One of them is correct. Pick the correct answer. Do not guess. A key is given at the end of the module
More informationFunctional Programming
FP 2005 1.1 3 Functional Programming WOLFRAM KAHL kahl@mcmaster.ca Department of Computing and Software McMaster University FP 2005 1.2 4 What Kinds of Programming Languages are There? Imperative telling
More informationThe countdown problem
JFP 12 (6): 609 616, November 2002. c 2002 Cambridge University Press DOI: 10.1017/S0956796801004300 Printed in the United Kingdom 609 F U N C T I O N A L P E A R L The countdown problem GRAHAM HUTTON
More information2. Basic Relational Data Model
2. Basic Relational Data Model 2.1 Introduction Basic concepts of information models, their realisation in databases comprising data objects and object relationships, and their management by DBMS s that
More informationMoving from CS 61A Scheme to CS 61B Java
Moving from CS 61A Scheme to CS 61B Java Introduction Java is an object-oriented language. This document describes some of the differences between object-oriented programming in Scheme (which we hope you
More informationWIRIS quizzes web services Getting started with PHP and Java
WIRIS quizzes web services Getting started with PHP and Java Document Release: 1.3 2011 march, Maths for More www.wiris.com Summary This document provides client examples for PHP and Java. Contents WIRIS
More informationData Integrator. Pervasive Software, Inc. 12365-B Riata Trace Parkway Austin, Texas 78727 USA
Data Integrator Event Management Guide Pervasive Software, Inc. 12365-B Riata Trace Parkway Austin, Texas 78727 USA Telephone: 888.296.5969 or 512.231.6000 Fax: 512.231.6010 Email: info@pervasiveintegration.com
More informationSpecial Directions for this Test
1 Spring, 2013 Name: (Please do not write your id number!) COP 4020 Programming Languages I Test on Haskell and Functional Programming Special Directions for this Test This test has 7 questions and pages
More informationFormal Methods for Software Development
Formal Methods for Software Development Till Mossakowski, Lutz Schröder 03./08.11.2004 2 Monadic QuickCheck extension of QuickCheck for monadic (= imperative) programs specifications are equations between
More informationhttp://www.guido.be/intranet/enqueteoverview/tabid/152/ctl/eresults...
1 van 70 20/03/2014 11:55 EnqueteDescription 2 van 70 20/03/2014 11:55 3 van 70 20/03/2014 11:55 4 van 70 20/03/2014 11:55 5 van 70 20/03/2014 11:55 6 van 70 20/03/2014 11:55 7 van 70 20/03/2014 11:55
More informationLecture 12: Abstract data types
Lecture 12: Abstract data types Algebras Abstract data types Encapsulation and information hiding Parameterization Algebras Definition Which kinds of data do we want to discuss? What can we do with it?
More informationCSCE 110 Programming I Basics of Python: Variables, Expressions, and Input/Output
CSCE 110 Programming Basics of Python: Variables, Expressions, and nput/output Dr. Tiffani L. Williams Department of Computer Science and Engineering Texas A&M University Fall 2011 Python Python was developed
More informationAspect-Oriented Programming with Type Classes
Aspect-Oriented Programming with Type Classes Martin Sulzmann School of Computing, National University of Singapore S16 Level 5, 3 Science Drive 2, Singapore 117543 sulzmann@comp.nus.edu.sg Meng Wang School
More informationIntroduction. Mathematics 41P Precalculus: First Semester
Precalculus: First Semester Precalculus is the course that bridges the gap between Algebra 2 and Calculus. A thorough understanding of algebra and trigonometry is essential to success in Calculus and other
More informationThe Needle Programming Language
The Needle Programming Language The Needle Programming Language 1 What is Needle? Needle is an object-oriented functional programming language with a multimethod-based OO system, and a static type system
More informationMapReduce. MapReduce and SQL Injections. CS 3200 Final Lecture. Introduction. MapReduce. Programming Model. Example
MapReduce MapReduce and SQL Injections CS 3200 Final Lecture Jeffrey Dean and Sanjay Ghemawat. MapReduce: Simplified Data Processing on Large Clusters. OSDI'04: Sixth Symposium on Operating System Design
More informationCIS 500 Software Foundations Midterm I, Review Questions
CIS 500 Software Foundations Midterm I, Review Questions Untyped lambda calculus 1. (2 points) We have seen that a linear expression likeλx.λy.xyx is shorthand for an abstract syntax tree that can be drawn
More informationRelational Databases
Relational Databases Jan Chomicki University at Buffalo Jan Chomicki () Relational databases 1 / 18 Relational data model Domain domain: predefined set of atomic values: integers, strings,... every attribute
More informationAspects of Feedback in Intelligent Tutoring Systems for Modeling Education
Aspects of Feedback in Intelligent Tutoring Systems for Modeling Education Proefschrift ter verkrijging van de graad van doctor aan de Open Universiteit op gezag van de rector magnicus prof. mr. A. Oskamp
More informationCS 141: Introduction to (Java) Programming: Exam 1 Jenny Orr Willamette University Fall 2013
Oct 4, 2013, p 1 Name: CS 141: Introduction to (Java) Programming: Exam 1 Jenny Orr Willamette University Fall 2013 1. (max 18) 4. (max 16) 2. (max 12) 5. (max 12) 3. (max 24) 6. (max 18) Total: (max 100)
More informationTracking Load-time Configuration Options
FOSD Meeting 2014 Tracking Load-time Configuration Options Max Lillack 1 SPL or one App to rule them all? Institut für Wirtschaftsinformatik Max Lillack 2 Challenge Apps must handle variability regarding
More informationDomains and Competencies
Domains and Competencies DOMAIN I TECHNOLOGY APPLICATIONS CORE Standards Assessed: Computer Science 8 12 I VII Competency 001: The computer science teacher knows technology terminology and concepts; the
More informationA binary search tree or BST is a binary tree that is either empty or in which the data element of each node has a key, and:
Binary Search Trees 1 The general binary tree shown in the previous chapter is not terribly useful in practice. The chief use of binary trees is for providing rapid access to data (indexing, if you will)
More informationLINKED DATA STRUCTURES
LINKED DATA STRUCTURES 1 Linked Lists A linked list is a structure in which objects refer to the same kind of object, and where: the objects, called nodes, are linked in a linear sequence. we keep a reference
More informationTypes, Polymorphism, and Type Reconstruction
Types, Polymorphism, and Type Reconstruction Sources This material is based on the following sources: Pierce, B.C., Types and Programming Languages. MIT Press, 2002. Kanellakis, P.C., Mairson, H.G. and
More informationMonads for functional programming
Monads for functional programming Philip Wadler, University of Glasgow Department of Computing Science, University of Glasgow, G12 8QQ, Scotland (wadler@dcs.glasgow.ac.uk) Abstract. The use of monads to
More informationA Brief Introduction to MySQL
A Brief Introduction to MySQL by Derek Schuurman Introduction to Databases A database is a structured collection of logically related data. One common type of database is the relational database, a term
More informationDeriving a Relationship from a Single Example
Deriving a Relationship from a Single Example Neil Mitchell ndmitchell@gmail.com Abstract Given an appropriate domain specific language (DSL), it is possible to describe the relationship between Haskell
More informationNumber Factors. Number Factors Number of factors 1 1 1 16 1, 2, 4, 8, 16 5 2 1, 2 2 17 1, 17 2 3 1, 3 2 18 1, 2, 3, 6, 9, 18 6 4 1, 2, 4 3 19 1, 19 2
Factors This problem gives you the chance to: work with factors of numbers up to 30 A factor of a number divides into the number exactly. This table shows all the factors of most of the numbers up to 30.
More informationProducten specifiek voor onderzoekers en professionals
Producten specifiek voor onderzoekers en professionals Termijn Product Universiteit 2011 Journal article on mental models: buoyancy, electricity, biological growth Internal report on the development of
More informationBlame for All. Jeremy G. Siek. Amal Ahmed. Robert Bruce Findler. Philip Wadler. Abstract. 1. Introduction
Blame for All Amal Ahmed Indiana University amal@cs.indiana.edu Robert Bruce Findler Northwestern University robby@eecs.northwestern.edu Jeremy G. Siek University of Colorado at Boulder jeremy.siek@colorado.edu
More informationCourseBuilder Extension ADOBE elearning SUITE 6
CourseBuilder Extension ADOBE elearning SUITE 6 Legal notices Legal notices For legal notices, see http://help.adobe.com/en_us/legalnotices/index.html. iii Contents Chapter 1: Getting Started Overview..............................................................................................................
More informationExecution of A Requirement Model in Software Development
Execution of A Requirement Model in Software Development Wuwei Shen, Mohsen Guizani and Zijiang Yang Dept of Computer Science, Western Michigan University {wwshen,mguizani,zijiang}@cs.wmich.edu Kevin Compton
More informationHome Assignment 4 OCL
Home Assignment 4 OCL This home assignment is about writing formal specifications using the Object Constraint Language. You will exercise formulating conditions/invariants on domain models that go beyond
More informationDATA 301 Introduction to Data Analytics Microsoft Excel VBA. Dr. Ramon Lawrence University of British Columbia Okanagan
DATA 301 Introduction to Data Analytics Microsoft Excel VBA Dr. Ramon Lawrence University of British Columbia Okanagan ramon.lawrence@ubc.ca DATA 301: Data Analytics (2) Why Microsoft Excel Visual Basic
More informationDenotational design with type class morphisms (extended version)
LambdaPix technical report 2009-01, March 2009 (minor revisions February 15, 2011) 1 Denotational design with type class morphisms (extended version) Conal Elliott LambdaPix conal@conal.net Abstract Type
More informationRigorous Software Development CSCI-GA 3033-009
Rigorous Software Development CSCI-GA 3033-009 Instructor: Thomas Wies Spring 2013 Lecture 11 Semantics of Programming Languages Denotational Semantics Meaning of a program is defined as the mathematical
More informationTool-Assisted Unit-Test Generation and Selection Based on Operational Abstractions
Tool-Assisted Unit-Test Generation and Selection Based on Operational Abstractions Tao Xie 1 and David Notkin 2 (xie@csc.ncsu.edu,notkin@cs.washington.edu) 1 Department of Computer Science, North Carolina
More informationChapter 6: Programming Languages
Chapter 6: Programming Languages Computer Science: An Overview Eleventh Edition by J. Glenn Brookshear Copyright 2012 Pearson Education, Inc. Chapter 6: Programming Languages 6.1 Historical Perspective
More informationDecision Logic: if, if else, switch, Boolean conditions and variables
CS 1044 roject 3 Fall 2009 Decision Logic: if, if else, switch, Boolean conditions and variables This programming assignment uses many of the ideas presented in sections 3 through 5 of the Dale/Weems text
More informationQuiz 4 Solutions EECS 211: FUNDAMENTALS OF COMPUTER PROGRAMMING II. 1 Q u i z 4 S o l u t i o n s
Quiz 4 Solutions Q1: What value does function mystery return when called with a value of 4? int mystery ( int number ) { if ( number
More informationKS3 Computing Group 1 Programme of Study 2015 2016 2 hours per week
1 07/09/15 2 14/09/15 3 21/09/15 4 28/09/15 Communication and Networks esafety Obtains content from the World Wide Web using a web browser. Understands the importance of communicating safely and respectfully
More informationApplying quantitative methods to dialect Dutch verb clusters
Applying quantitative methods to dialect Dutch verb clusters Jeroen van Craenenbroeck KU Leuven/CRISSP jeroen.vancraenenbroeck@kuleuven.be 1 Introduction Verb cluster ordering is a well-known area of microparametric
More informationA Quick Overview of Software Engineering. Paul Klint
A Quick Overview of Software Engineering Paul Klint g n i t o qu r o f s ie ch g o t l u o Ap me D pers so wspa ne 2 3 4 Software Engineering is about... Building large software systems Using state-of-the-art
More informationPart A: Data Definition Language (DDL) Schema and Catalog CREAT TABLE. Referential Triggered Actions. CSC 742 Database Management Systems
CSC 74 Database Management Systems Topic #0: SQL Part A: Data Definition Language (DDL) Spring 00 CSC 74: DBMS by Dr. Peng Ning Spring 00 CSC 74: DBMS by Dr. Peng Ning Schema and Catalog Schema A collection
More informationCS 377 Database Systems. Database Design Theory and Normalization. Li Xiong Department of Mathematics and Computer Science Emory University
CS 377 Database Systems Database Design Theory and Normalization Li Xiong Department of Mathematics and Computer Science Emory University 1 Relational database design So far Conceptual database design
More informationEl Dorado Union High School District Educational Services
El Dorado Union High School District Course of Study Information Page Course Title: ACE Computer Programming II (#495) Rationale: A continuum of courses, including advanced classes in technology is needed.
More informationFeedback to T.Verhoeff@TUE.NL Some standard container ADTs
Programming, Block C http://www.win.tue.nl/ wstomv/2ip0/ Lecture 12 Tom Verhoeff Kees Hemerik Technische Universiteit Eindhoven Faculteit Wiskunde en Informatica Software Engineering & Technology Today
More informationStephen Drape. Oxford University Computing Laboratory. with thanks to Jeff Sanders
Stephen Drape Oxford University Computing Laboratory with thanks to Jeff Sanders Obfuscation is a program transformation: Used to make a program "harder to understand" Try to make reverse engineering harder
More informationECE 3401 Lecture 7. Concurrent Statements & Sequential Statements (Process)
ECE 3401 Lecture 7 Concurrent Statements & Sequential Statements (Process) Concurrent Statements VHDL provides four different types of concurrent statements namely: Signal Assignment Statement Simple Assignment
More informationTop Quality Type Error Messages
Top Quality Type Error Messages Top Kwaliteit Typeringsfoutmeldingen (met een samenvatting in het Nederlands) Proefschrift ter verkrijging van de graad van doctor aan de Universiteit Utrecht op gezag van
More informationEfficient representation of integer sets
Efficient representation of integer sets Marco Almeida Rogério Reis Technical Report Series: DCC-2006-06 Version 1.0 Departamento de Ciência de Computadores & Laboratório de Inteligência Artificial e Ciência
More informationTECHNICAL UNIVERSITY OF CRETE DATA STRUCTURES FILE STRUCTURES
TECHNICAL UNIVERSITY OF CRETE DEPT OF ELECTRONIC AND COMPUTER ENGINEERING DATA STRUCTURES AND FILE STRUCTURES Euripides G.M. Petrakis http://www.intelligence.tuc.gr/~petrakis Chania, 2007 E.G.M. Petrakis
More information#820 Computer Programming 1A
Computer Programming I Levels: 10-12 Units of Credit: 1.0 CIP Code: 11.0201 Core Code: 35-02-00-00-030 Prerequisites: Secondary Math I, Keyboarding Proficiency, Computer Literacy requirement Semester 1
More informationData Structures and Algorithms Written Examination
Data Structures and Algorithms Written Examination 22 February 2013 FIRST NAME STUDENT NUMBER LAST NAME SIGNATURE Instructions for students: Write First Name, Last Name, Student Number and Signature where
More informationPoor Man's Type Classes
Poor Man's Type Classes Martin Odersky EPFL IFIP WG2.8 workin roup meetin Boston, July 2006. 1 Goals Type classes are nice. A cottae industry of Haskell prorammers has sprun up around them. Should we add
More informationCRM Rules! User Guide. Version 3.0.2 Prepared October, 2012 By: David L. Carr, President, Visionary Software
CRM Rules! User Guide Version 3.0.2 Prepared October, 2012 By: David L. Carr, President, Visionary Software Table Of Contents Chapter 1: Overview... 5 What s a CRM Rule?... 5 What Can I Do With CRM Rules!?...
More informationA Basic introduction to Microsoft Access
A Basic introduction to Microsoft Access By Ojango J.M.K Department of Animal Sciences, Egerton University, Njoro, Kenya and International Livestock Research Institute, Nairobi, Kenya Ms Access is a database
More informationHow To Create A Table In Sql 2.5.2.2 (Ahem)
Database Systems Unit 5 Database Implementation: SQL Data Definition Language Learning Goals In this unit you will learn how to transfer a logical data model into a physical database, how to extend or
More informationWebSphere Business Monitor
WebSphere Business Monitor Monitor models 2010 IBM Corporation This presentation should provide an overview of monitor models in WebSphere Business Monitor. WBPM_Monitor_MonitorModels.ppt Page 1 of 25
More informationLecture 6. SQL, Logical DB Design
Lecture 6 SQL, Logical DB Design Relational Query Languages A major strength of the relational model: supports simple, powerful querying of data. Queries can be written intuitively, and the DBMS is responsible
More informationPretty-big-step semantics
Pretty-big-step semantics Arthur Charguéraud INRIA October 2012 1 / 34 Motivation Formalization of JavaScript with Sergio Maeis, Daniele Filaretti, Alan Schmitt, Martin Bodin. Previous work: Semi-formal
More informationWhat is Automotive Software Engineering? What is Automotive Software Engineering? What is Automotive Software Engineering?
Process models: Capability Maturity Model Integration (CMMI) Software Process Improvement and Capability Determination (SPICE) V-Model Standards: MISRA-C standard AUTOSAR Configuration management Product
More informationA Theory of Parametric Polymorphism and an Application
Thesis for the Degree of Doctor of Philosophy A Theory of Parametric Polymorphism and an Application A formalisation of parametric polymorphism within and about dependent type-theory, and an application
More informationUnit 4.3 - Storage Structures 1. Storage Structures. Unit 4.3
Storage Structures Unit 4.3 Unit 4.3 - Storage Structures 1 The Physical Store Storage Capacity Medium Transfer Rate Seek Time Main Memory 800 MB/s 500 MB Instant Hard Drive 10 MB/s 120 GB 10 ms CD-ROM
More informationCompiling CAO: from Cryptographic Specifications to C Implementations
Compiling CAO: from Cryptographic Specifications to C Implementations Manuel Barbosa David Castro Paulo Silva HASLab/INESC TEC Universidade do Minho Braga, Portugal April 8, 2014 Grenoble Motivation Developing
More informationFor the next three questions, consider the class declaration: Member function implementations put inline to save space.
Instructions: This homework assignment focuses on basic facts regarding classes in C++. Submit your answers via the Curator System as OQ4. For the next three questions, consider the class declaration:
More informationThomas Jefferson High School for Science and Technology Program of Studies Foundations of Computer Science. Unit of Study / Textbook Correlation
Thomas Jefferson High School for Science and Technology Program of Studies Foundations of Computer Science updated 03/08/2012 Unit 1: JKarel 8 weeks http://www.fcps.edu/is/pos/documents/hs/compsci.htm
More informationThe Relational Model. Ramakrishnan&Gehrke, Chapter 3 CS4320 1
The Relational Model Ramakrishnan&Gehrke, Chapter 3 CS4320 1 Why Study the Relational Model? Most widely used model. Vendors: IBM, Informix, Microsoft, Oracle, Sybase, etc. Legacy systems in older models
More informationDatabase Systems. National Chiao Tung University Chun-Jen Tsai 05/30/2012
Database Systems National Chiao Tung University Chun-Jen Tsai 05/30/2012 Definition of a Database Database System A multidimensional data collection, internal links between its entries make the information
More informationComputer Science at Kent
Computer Science at Kent Transformation in HaRe Chau Nguyen-Viet Technical Report No. 21-04 December 2004 Copyright 2004 University of Kent Published by the Computing Laboratory, University of Kent, Canterbury,
More informationBUSINESS RULES CONCEPTS... 2 BUSINESS RULE ENGINE ARCHITECTURE... 4. By using the RETE Algorithm... 5. Benefits of RETE Algorithm...
1 Table of Contents BUSINESS RULES CONCEPTS... 2 BUSINESS RULES... 2 RULE INFERENCE CONCEPT... 2 BASIC BUSINESS RULES CONCEPT... 3 BUSINESS RULE ENGINE ARCHITECTURE... 4 BUSINESS RULE ENGINE ARCHITECTURE...
More informationDeterministic Discrete Modeling
Deterministic Discrete Modeling Formal Semantics of Firewalls in Isabelle/HOL Cornelius Diekmann, M.Sc. Dr. Heiko Niedermayer Prof. Dr.-Ing. Georg Carle Lehrstuhl für Netzarchitekturen und Netzdienste
More informationMathematics Objective 6.) To recognize the limitations of mathematical and statistical models.
Spring 20 Question Category: 1 Exemplary Educational Objectives Mathematics THECB Mathematics Objective 1.) To apply arithmetic, algebraic, geometric, higher-order thinking, and statistical methods to
More informationThe Set Data Model CHAPTER 7. 7.1 What This Chapter Is About
CHAPTER 7 The Set Data Model The set is the most fundamental data model of mathematics. Every concept in mathematics, from trees to real numbers, is expressible as a special kind of set. In this book,
More informationopalang - Rapid & Secure Web Development
opalang - Rapid & Secure Web Development Syllabus Brief History of Web Development Ideas and Goals The Language itself Community Reason for Development Services and Apps written in OPA Future of OPA OPA
More informationAcknowledgments. About the Author
Acknowledgments About the Author 1: Arrays and Array Manipulation. CREATING AND USING ARRAYS IN VISUAL BASIC Sorting Arrays WORKING WITH SORTED ARRAYS Finding an Element with a Specific Value in a Sorted
More informationWelcome. Maths & SFM & Math Phys
Welcome Maths & SFM & Math Phys @VU Bob Rink Programme director Fetsje Bijma Master coordinator SFM Corrie Quant Master coordinator Mathematics @UvA Lenny Taelman Programme director Hessel Posthuma Master
More information6.080/6.089 GITCS Feb 12, 2008. Lecture 3
6.8/6.89 GITCS Feb 2, 28 Lecturer: Scott Aaronson Lecture 3 Scribe: Adam Rogal Administrivia. Scribe notes The purpose of scribe notes is to transcribe our lectures. Although I have formal notes of my
More informationThe Import & Export of Data from a Database
The Import & Export of Data from a Database Introduction The aim of these notes is to investigate a conceptually simple model for importing and exporting data into and out of an object-relational database,
More informationPOLYTYPIC PROGRAMMING OR: Programming Language Theory is Helpful
POLYTYPIC PROGRAMMING OR: Programming Language Theory is Helpful RALF HINZE Institute of Information and Computing Sciences Utrecht University Email: ralf@cs.uu.nl Homepage: http://www.cs.uu.nl/~ralf/
More informationCS 111 Classes I 1. Software Organization View to this point:
CS 111 Classes I 1 Software Organization View to this point: Data Objects and primitive types Primitive types operators (+, /,,*, %). int, float, double, char, boolean Memory location holds the data Objects
More informationCrash Dive into Python
ECPE 170 University of the Pacific Crash Dive into Python 2 Lab Schedule Ac:vi:es Assignments Due Today Lab 8 Python Due by Oct 26 th 5:00am Endianness Lab 9 Tuesday Due by Nov 2 nd 5:00am Network programming
More information