Workshop 1a: Software Measurement. Dietmar Pfahl
|
|
- Charles Marsh
- 5 years ago
- Views:
Transcription
1 Software Economics Fall 2015 Workshop 1a: Software Measurement Dietmar Pfahl (based on slides by Marlon Dumas & Anton Litvinenko)
2 Main Message Software measures can be misleading, so Either you don t use them Or you better know what they mean and how to use them.
3 Definitions: Measurement and Measure Scale & Unit Measurement: Measurement is the process through which values (e.g., numbers) are assigned to attributes of entities of the real world. Measure: A measure is the mathematical function that defines how an attribute of an entity (or rather object = instance of an entity) is mapped to a value. Source: Sandro Morasca, Software Measurement, in Handbook of Software Engineering and Knowledge Engineering - Volume 1: Fundamentals (refereed book), pp , Knowledge Systems Institute, Skokie, IL, USA, 2001, ISBN: X. MTAT / Lecture 07 / Dietmar Pfahl 2015 A Size Measure Entity: Program Attribute: Size B 4 e * 3 d * 2 c * 1 b * 0 a * LOC (lines of code) oduction/levels_of_measurement.html
4 Software Measure is a measure of anything directly related to software or its production Often, Software Metric is used as synonym for Software Measure, although metric has a specific meaning in Maths (e.g. triangle inequality) 4
5 Software Metrics in Context Software Product Size Complexity Design quality (External) product quality Software Project Quality Activity Size (effort, cost) 5
6 Lines Of Code (LOC) Product Size ???? 6
7 Lines Of Code 7
8 Lines Of Code Summary Accurate, easy to measure How to interpret... Empty lines Comments Several statements on one line Language dependent Doesn't take into account complexity Useful? 8
9 McCabe's Cyclomatic Complexity Complexity of a program Number of linearly independent paths through a function Usually calculated using the flow graph V(G) = e n + 2p e num of edges, n num of vertices, p num of connected components of the flow graph V(G) = d + 1 d num of decision (branching) points Works only for single component analysis (not several connected components; i.e. p = 1 above) 9
10 McCabe's Cyclomatic Complexity 10
11 McCabe's Cyclomatic Complexity 2: System.out.println(" "); for (Client c : clients) 4-5: System.out.println(c.getId() + " " + c.getfirstname()); e = 7 n = 6 p = 1 V(G) = 3 if (clients.size() == 0) 8: System.out.println("\tNothing"); 10: System.out.println(" "); 11
12 Cyclomatic Complexity Summary Automated (available in any modern IDE) Related to testing notions V(G) is an upper bound for the branch coverage Each control structure was evaluated both to true and false V(G) is a lower bound for the path coverage All linearly independent paths were executed Related to maintainability and defects V(G) > 10 Probability of defects rises But to be used with care: N. Nagappan, T. Ball, A. Zeller, Mining metrics to Predict Component Failures. ICSE'
13 Exercise Calculate McCabe's cyclomatic complexity of the following code snippet: 13
14 private void drawselectclientdialog() { List<Client> allclients = domaincontroller.loadallclients(); List<String> clients = new ArrayList<String>(); for (Client client: allclients) { clients.add(client.getid() + ". " + client.getfirstname()); } String selectedclient = (String)JOptionPane.showInputDialog( this, Translations.getString("main.chooseCustomer"), Translations.getString("main.chooseCustomer"), JOptionPane.OK_CANCEL_OPTION, null, clients.toarray(), 0); Client currentclient = null; try { if (selectedclient!= null) { currentclient = domaincontroller.getclientbyid( Long.parseLong(selectedClient. split(" ")[0].replaceAll("\\.",""))); } } catch(numberformatexception e) { log.error("failed to parse client id," + " probably no client was selected"); } if (currentclient!= null) { log.info("client " + currentclient.getfirstname() + " with ID=" + currentclient.getid() + " got selected."); } else { log.info("no client selected"); } model.setcurrentclient(currentclient); } MC = d + 1 = = 5 14
15 Software Metrics Software Product Size Complexity Design quality (External) product quality Software Project Quality Activity Size (effort, cost) 15
16 Coupling Coupling between object classes (CBO) Number of classes referenced by a given class (FanOut) Lack of cohesion in methods (LCOM) Number of method pairs that do not share instance variables minus number of methods that share at least one instance variable By convention, LCOM is said to be zero if the above definition gives a negative number 16
17 Coupling Example... CBO =? 17
18 Coupling Example... CBO = 1 (one other class referenced) 18
19 (Lack of) Cohesion Example LCOM = 1 2 =
20 public PersonDetails { private String _firstname; private String _surname; private String _street; private String _city; (Lack of) Cohesion Example } public PersonDetails() {} public setname(string f, String s) { _firstname = f; _surname = s; } public setaddress(string st, String c) { _street = st; _city = c; } public void printaddress() { System.out.println(_street); System.out.println(_city); } public void printname() { System.out.println(_firstname + " " + _surname); } LCOM =? 20
21 (Lack of) Cohesion Example 6 2 = 8 2 =
22 public PersonDetails { private String _firstname; private String _surname; private String _street; private String _city; (Lack of) Cohesion Example } public PersonDetails() {} public setname(string f, String s) { _firstname = f; _surname = s; } public setaddress(string st, String c) { _street = st; _city = c; } public void printaddress() { System.out.println(_street); System.out.println(_city); } public void printname() { System.out.println(_firstname + " " + _surname); } LCOM =? 22
23 Product Quality Metrics Not just about number of bugs/defects Many different models and checklists McCall's Quality Model, FRUPS, ISO 9126 Functionality, reliability, usability, portability, Cannot be measured directly must be measured via other metrics (indirect metrics) Cf. course Software Quality & Standards 23
24 Software Metrics Software Product Size Complexity Design quality (External) product quality Software Project Quality Activity Size (effort, cost) 24
25 Project Quality Metric: Defect Efficiency Ratio Efficiency of quality assurance procedures How many defects were delivered to customer DER = D before / (D before + D after ) D before defects found before delivery D after defects found after delivery What would be an ideal situation? 25
26 Observation "as the number of detected errors in a piece of software increases the probability of the existing of more undetected errors also increases" Glenford Myers, 1976 Bugs tend to cluster as you find a bug you should stop and write more tests for components where you have found a bug 28
27 Project Activity Metrics: Code Churn Amount of code changed in the software during the period of time Churned LOC number of added, modified and deleted lines of code Churn Count number of changes made to a file Files Churned number of changed files 29
28 Applications of Code Churn Metrics Overview of activity and productivity Increase in relative code churn metrics increase in defect density Number of defects per line of code Vulnerable files have higher code churn metrics Vulnerability instance of violation of the security policy Question: Is Productivity additive? (Hint: The Mythical Man Month) 30
29 Time & Effort: (Person-)Hours One (person-)hour of ideal engineering Team specific How many perfect (person-)hours in a work day? Relative measure of time and effort How many ideal engineering (person-)hours required to complete the feature Applied early Manual and subjective 31
30 Story Points Generalization of a perfect person-hour Relative measure of effort required to complete the feature Used to calculate Velocity (Productivity): Changes over time Team specific Applied early Manual and subjective 32
31 Function Points Will be covered during next week s workshop Length Size Complexity Functionality 33
32 Acknowledgments Some material inspired by or extracted from: C. Lange, Metrics in software architecting M. Gökmen, Software process and project metrics C. Martin, OO Quality design metrics E. Tempero, E. Mendes, COMPSCI 702: Software Measurement - The CK Metrics
33 Homework: Assignment 3 Details can be found here (course wiki):
34 Home Reading David Longstreet Function Point Manual 36
MTAT Software Engineering
MTAT.03.094 Software Engineering Lecture 14: Measurement Dietmar Pfahl Fall 2015 email: dietmar.pfahl@ut.ee Schedule of Lectures Week 01: Introduction to SE Week 02: Requirements Engineering I Week 03:
More informationMTAT Software Engineering Management
MTAT.03.243 Software Engineering Management Lecture 07: SPI & Measurement Part A Dietmar Pfahl Spring 2015 email: dietmar.pfahl@ut.ee Announcement ATI Career Day Friday Announcement Industry Guest Lecture
More informationQuality Management of Software and
Quality Management of Software and Systems Software Measurement Prof. Dr. Liggesmeyer, 1 Motivation Measurement When you can measure what you are speaking about, and express it in numbers, you know something
More informationPath Testing and Test Coverage. Chapter 9
Path Testing and Test Coverage Chapter 9 Structural Testing Also known as glass/white/open box testing Structural testing is based on using specific knowledge of the program source text to define test
More informationPath Testing and Test Coverage. Chapter 9
Path Testing and Test Coverage Chapter 9 Structural Testing Also known as glass/white/open box testing Structural testing is based on using specific knowledge of the program source text to define test
More informationSoftware Measurement. Mark Micallef
Software Measurement Mark Micallef mmica01@um.edu.mt Brief Course Overview Introduction to Measurement Theory Measurement as applied Software Examples of Various Metrics, Measures and Indicators Introduction
More informationTheory of Computer Science
Theory of Computer Science E1. Complexity Theory: Motivation and Introduction Malte Helmert University of Basel May 18, 2016 Overview: Course contents of this course: logic How can knowledge be represented?
More informationTheory of Computer Science. Theory of Computer Science. E1.1 Motivation. E1.2 How to Measure Runtime? E1.3 Decision Problems. E1.
Theory of Computer Science May 18, 2016 E1. Complexity Theory: Motivation and Introduction Theory of Computer Science E1. Complexity Theory: Motivation and Introduction Malte Helmert University of Basel
More informationExtensibility Patterns: Extension Access
Design Patterns and Frameworks Dipl.-Medieninf. Christian Piechnick INF 2080 christian.piechnick@tu-dresden.de Exercise Sheet No. 5 Software Technology Group Institute for SMT Department of Computer Science
More informationFeedback. The Lost Art Of Agile. (v2)
Feedback The Lost Art Of Agile (v2) Software development has a history of loosing feedback Why Lost? - Waterfall The implementation described above is risky and invites failure. Winston Royce, 1970 Why
More informationCSE507. Introduction. Computer-Aided Reasoning for Software. Emina Torlak courses.cs.washington.edu/courses/cse507/17wi/
Computer-Aided Reasoning for Software CSE507 courses.cs.washington.edu/courses/cse507/17wi/ Introduction Emina Torlak emina@cs.washington.edu Today What is this course about? Course logistics Review of
More informationWeighted Stability Index (WSI) Metric Model Mike Libassi Intel Corp 8/11/99
Weighted Stability Index (WSI) Metric Model Mike Libassi Intel Corp 8/11/99 Abstract Methods, such as McCabe's Cyclomatic Complexity, have proven that complexity is a reliable predictor of defects. Although
More informationCH 59 SQUARE ROOTS. Every positive number has two square roots. Ch 59 Square Roots. Introduction
59 CH 59 SQUARE ROOTS Introduction W e saw square roots when we studied the Pythagorean Theorem. They may have been hidden, but when the end of a right-triangle problem resulted in an equation like c =
More informationRequirements Validation. Content. What the standards say (*) ?? Validation, Verification, Accreditation!! Correctness and completeness
Requirements Validation Requirements Management Requirements Validation?? Validation, Verification, Accreditation!! Check if evrything is OK With respect to what? Mesurement associated with requirements
More informationAnnouncements. CompSci 102 Discrete Math for Computer Science. Chap. 3.1 Algorithms. Specifying Algorithms
CompSci 102 Discrete Math for Computer Science Announcements Read for next time Chap. 3.1-3.3 Homework 3 due Tuesday We ll finish Chapter 2 first today February 7, 2012 Prof. Rodger Chap. 3.1 Algorithms
More informationIndicators of Structural Stability of Object-Oriented Designs: A Case Study
Indicators of Structural Stability of Object-Oriented Designs: A Case Study Mahmoud O. Elish and David Rine Department of Computer Science George Mason University Fairfax, VA 22030, USA {melish,drine}@gmu.edu
More informationCOURSE INTRODUCTION & COURSE OVERVIEW
week 1 COURSE INTRODUCTION & COURSE OVERVIEW topics of the week Instructor introduction Students introductions Course logistics Course objectives Definition of GIS The story of GIS introductions Who am
More informationMeasuring lateness. Definition of Measurement (Fenton)
When you can measure what you are speaking about, and express it in numbers, you know something about it; but when you cannot measure it, when you cannot express it in numbers, your knowledge is of a meagre
More informationJust-in-Time-Teaching and other gadgets. Richard Cramer-Benjamin Niagara University
Just-in-Time-Teaching and other gadgets Richard Cramer-Benjamin Niagara University http://faculty.niagara.edu/richcb The Class MAT 443 Euclidean Geometry 26 Students 12 Secondary Ed (9-12 or 5-12 Certification)
More informationAbstract Machine for Software Process Models
Abstract Machine for Software Process Models Finite State Machine for SPM Waterfall Incremental Spiral Extreme Programming (XP) Scrum Generalized Abstract Machine for SPM Problem set: objectives with colors
More informationChapter 10 Retrospective on Unit Testing
Chapter 10 Retrospective on Unit The Test Method Pendulum Code-based Spec-based Path Dataflow Slice Decision Table Boundary Equivalence Value Class Low Semantic Content High Semantic Content Low Semantic
More information7 Distances. 7.1 Metrics. 7.2 Distances L p Distances
7 Distances We have mainly been focusing on similarities so far, since it is easiest to explain locality sensitive hashing that way, and in particular the Jaccard similarity is easy to define in regards
More informationPreptests 55 Answers and Explanations (By Ivy Global) Section 4 Logic Games
Section 4 Logic Games Questions 1 6 There aren t too many deductions we can make in this game, and it s best to just note how the rules interact and save your time for answering the questions. 1. Type
More informationCSE332: Data Structures & Parallelism Lecture 2: Algorithm Analysis. Ruth Anderson Winter 2019
CSE332: Data Structures & Parallelism Lecture 2: Algorithm Analysis Ruth Anderson Winter 2019 Today Algorithm Analysis What do we care about? How to compare two algorithms Analyzing Code Asymptotic Analysis
More informationB490 Mining the Big Data
B490 Mining the Big Data 1 Finding Similar Items Qin Zhang 1-1 Motivations Finding similar documents/webpages/images (Approximate) mirror sites. Application: Don t want to show both when Google. 2-1 Motivations
More informationMEASURING THE COMPLEXITY AND IMPACT OF DESIGN CHANGES
Presentation Paper Bio Return to Main Menu P R E S E N T A T I O N W4 Wednesday, March 8, 2000 11:00AM MEASURING THE COMPLEXITY AND IMPACT OF DESIGN CHANGES Mike Libassi Intel Corporation International
More informationNon-Interactive Zero Knowledge (II)
Non-Interactive Zero Knowledge (II) CS 601.442/642 Modern Cryptography Fall 2017 S 601.442/642 Modern CryptographyNon-Interactive Zero Knowledge (II) Fall 2017 1 / 18 NIZKs for NP: Roadmap Last-time: Transformation
More informationSoftware organizations spend a disproportionate amount of
IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, VOL. XX, NO. XX, XXX 2016 1 The Use of Summation to Aggregate Software Metrics Hinders the Performance of Defect Prediction Models Feng Zhang, Ahmed E. Hassan,
More informationMagnetostatics: Part 1
Magnetostatics: Part 1 We present magnetostatics in comparison with electrostatics. Sources of the fields: Electric field E: Coulomb s law. Magnetic field B: Biot-Savart law. Charge Current (moving charge)
More informationIntroduction to Computer Programming
Introduction to Computer Programming Lecture 01 Software engineering is a field of engineering, for designing and writing programs for computers or other electronic devices. A software engineer, or programmer,
More informationExam: 4 hour multiple choice. Agenda. Course Introduction to Statistics. Lecture 1: Introduction to Statistics. Per Bruun Brockhoff
Course 02402 Lecture 1: Per Bruun Brockhoff DTU Informatics Building 305 - room 110 Danish Technical University 2800 Lyngby Denmark e-mail: pbb@imm.dtu.dk Agenda 1 2 3 4 Per Bruun Brockhoff (pbb@imm.dtu.dk),
More informationCh. 3 Equations and Inequalities
Ch. 3 Equations and Inequalities 3.1 Solving Linear Equations Graphically There are 2 methods presented in this section for solving linear equations graphically. Normally I would not cover solving linear
More information2. Introduction to commutative rings (continued)
2. Introduction to commutative rings (continued) 2.1. New examples of commutative rings. Recall that in the first lecture we defined the notions of commutative rings and field and gave some examples of
More informationSocial Choice and Networks
Social Choice and Networks Elchanan Mossel UC Berkeley All rights reserved Logistics 1 Different numbers for the course: Compsci 294 Section 063 Econ 207A Math C223A Stat 206A Room: Cory 241 Time TuTh
More informationECEN 651: Microprogrammed Control of Digital Systems Department of Electrical and Computer Engineering Texas A&M University
ECEN 651: Microprogrammed Control of Digital Systems Department of Electrical and Computer Engineering Texas A&M University Prof. Mi Lu TA: Ehsan Rohani Laboratory Exercise #4 MIPS Assembly and Simulation
More informationE23: Hotel Management System Wen Yunlu Hu Xing Chen Ke Tang Haoyuan Module: EEE 101
E23: Hotel Management System Author: 1302509 Zhao Ruimin 1301478 Wen Yunlu 1302575 Hu Xing 1301911 Chen Ke 1302599 Tang Haoyuan Module: EEE 101 Lecturer: Date: Dr.Lin December/22/2014 Contents Contents
More informationCSE507. Course Introduction. Computer-Aided Reasoning for Software. Emina Torlak
Computer-Aided Reasoning for Software CSE507 courses.cs.washington.edu/courses/cse507/14au/ Course Introduction Emina Torlak emina@cs.washington.edu Today What is this course about? Course logistics Review
More informationAlan Bundy. Automated Reasoning LTL Model Checking
Automated Reasoning LTL Model Checking Alan Bundy Lecture 9, page 1 Introduction So far we have looked at theorem proving Powerful, especially where good sets of rewrite rules or decision procedures have
More informationBlack-Box Testing Techniques III
Black-Box Testing Techniques III Software Testing and Verification Lecture 6 Prepared by Stephen M. Thebaut, Ph.D. University of Florida Another Cause-Effect Example: Symbol Table Storage Specification
More informationToday s Menu. Administrativia Two Problems Cutting a Pizza Lighting Rooms
Welcome! L01 Today s Menu Administrativia Two Problems Cutting a Pizza Lighting Rooms Administrativia Course page: https://www.cs.duke.edu/courses/spring13/compsci230/ Who we are: Instructor: TA: UTAs:
More informationAuthor Entropy vs. File Size in the GNOME Suite of Applications
Brigham Young University BYU ScholarsArchive All Faculty Publications 2009-01-01 Author Entropy vs. File Size in the GNOME Suite of Applications Jason R. Casebolt caseb106@gmail.com Daniel P. Delorey routey@deloreyfamily.org
More informationCS5371 Theory of Computation. Lecture 7: Automata Theory V (CFG, CFL, CNF)
CS5371 Theory of Computation Lecture 7: Automata Theory V (CFG, CFL, CNF) Announcement Homework 2 will be given soon (before Tue) Due date: Oct 31 (Tue), before class Midterm: Nov 3, (Fri), first hour
More informationStatistical Debugging. Ben Liblit, University of Wisconsin Madison
Statistical Debugging Ben Liblit, University of Wisconsin Madison Bug Isolation Architecture Program Source Predicates Sampler Compiler Shipping Application Top bugs with likely causes Statistical Debugging
More informationAn Experimental Investigation on the Innate Relationship between Quality and Refactoring
An Experimental Investigation on the Innate Relationship between Quality and Refactoring Gabriele Bavota 1, Andrea De Lucia 2, Massimiliano Di Penta 3, Rocco Oliveto 4, Fabio Palomba 2 1 Free University
More informationCSCI 2670 Introduction to Theory of Computing
CSCI 267 Introduction to Theory of Computing Agenda Last class Reviewed syllabus Reviewed material in Chapter of Sipser Assigned pages Chapter of Sipser Questions? This class Begin Chapter Goal for the
More informationLAB 4: FORCE AND MOTION
Lab 4 - Force & Motion 37 Name Date Partners LAB 4: FORCE AND MOTION A vulgar Mechanik can practice what he has been taught or seen done, but if he is in an error he knows not how to find it out and correct
More informationEECS 70 Discrete Mathematics and Probability Theory Fall 2015 Walrand/Rao Final
EECS 70 Discrete Mathematics and Probability Theory Fall 2015 Walrand/Rao Final PRINT Your Name:, (last) SIGN Your Name: (first) PRINT Your Student ID: CIRCLE your exam room: 220 Hearst 230 Hearst 237
More information1. In Activity 1-1, part 3, how do you think graph a will differ from graph b? 3. Draw your graph for Prediction 2-1 below:
PRE-LAB PREPARATION SHEET FOR LAB 1: INTRODUCTION TO MOTION (Due at the beginning of Lab 1) Directions: Read over Lab 1 and then answer the following questions about the procedures. 1. In Activity 1-1,
More informationSoftware Testing Lecture 5. Justin Pearson
Software Testing Lecture 5 Justin Pearson 2017 1 / 34 Covering Logical Expressions Logic expression show up in many situations Covering logical expressions have a long history, many are the covering criteria
More informationVariable. Peter W. White Fall 2018 / Numerical Analysis. Department of Mathematics Tarleton State University
Newton s Iterative s Peter W. White white@tarleton.edu Department of Mathematics Tarleton State University Fall 2018 / Numerical Analysis Overview Newton s Iterative s Newton s Iterative s Newton s Iterative
More informationFault Tolerant Computing CS 530 Software Reliability Growth. Yashwant K. Malaiya Colorado State University
Fault Tolerant Computing CS 530 Software Reliability Growth Yashwant K. Malaiya Colorado State University 1 Software Reliability Growth: Outline Testing approaches Operational Profile Software Reliability
More informationGreat Theoretical Ideas in Computer Science. Lecture 5: Cantor s Legacy
15-251 Great Theoretical Ideas in Computer Science Lecture 5: Cantor s Legacy September 15th, 2015 Poll Select the ones that apply to you: - I know what an uncountable set means. - I know Cantor s diagonalization
More informationCopyright, Nick E. Nolfi MPM1D9 Unit 6 Statistics (Data Analysis) STA-1
UNIT 6 STATISTICS (DATA ANALYSIS) UNIT 6 STATISTICS (DATA ANALYSIS)... 1 INTRODUCTION TO STATISTICS... 2 UNDERSTANDING STATISTICS REQUIRES A CHANGE IN MINDSET... 2 UNDERSTANDING SCATTER PLOTS #1... 3 UNDERSTANDING
More information2.5 Compound Inequalities
Section.5 Compound Inequalities 89.5 Compound Inequalities S 1 Find the Intersection of Two Sets. Solve Compound Inequalities Containing and. Find the Union of Two Sets. 4 Solve Compound Inequalities Containing
More informationMANAGING INFORMATION. On the Complexity of Requirements Flow-down. An Integrate white paper
MANAGING INFORMATION On the Complexity of Requirements Flow-down An Integrate white paper On the Complexity of Requirements Flow-down Structures An Integrate white paper On the Complexity of Requirements
More informationPHYSICS 212 LABORATORY MANUAL CALVIN COLLEGE
PHYSICS 212 LABORATORY MANUAL CALVIN COLLEGE 2003 Physics 212 Calvin College Variables and Fair Tests (adapted from Physics 113 lab manual) Suppose I wanted to determine whether being in darkness would
More informationMathematics Background
For a more robust teacher experience, please visit Teacher Place at mathdashboard.com/cmp3 Patterns of Change Through their work in Variables and Patterns, your students will learn that a variable is a
More informationComputational Integer Programming. Lecture 2: Modeling and Formulation. Dr. Ted Ralphs
Computational Integer Programming Lecture 2: Modeling and Formulation Dr. Ted Ralphs Computational MILP Lecture 2 1 Reading for This Lecture N&W Sections I.1.1-I.1.6 Wolsey Chapter 1 CCZ Chapter 2 Computational
More informationOn the Relationship Between Change Coupling and Software Defects
On the Relationship Between Change Coupling and Software Defects Marco D Ambros, Michele Lanza, Romain Robbes REVEAL @ Faculty of Informatics - University of Lugano, Switzerland Abstract Change coupling
More informationResearch Article An Empirical Study of Social Networks Metrics in Object-Oriented Software
Hindawi Publishing Corporation Advances in Software Engineering Volume 2010, Article ID 729826, 21 pages doi:10.1155/2010/729826 Research Article An Empirical Study of Social Networks Metrics in Object-Oriented
More informationCSCB63 Winter Week10 - Lecture 2 - Hashing. Anna Bretscher. March 21, / 30
CSCB63 Winter 2019 Week10 - Lecture 2 - Hashing Anna Bretscher March 21, 2019 1 / 30 Today Hashing Open Addressing Hash functions Universal Hashing 2 / 30 Open Addressing Open Addressing. Each entry in
More informationMAS221 Analysis Semester Chapter 2 problems
MAS221 Analysis Semester 1 2018-19 Chapter 2 problems 20. Consider the sequence (a n ), with general term a n = 1 + 3. Can you n guess the limit l of this sequence? (a) Verify that your guess is plausible
More informationRobust Programs with Filtered Iterators
Robust Programs with Filtered Iterators Jiasi Shen, Martin Rinard MIT EECS & CSAIL 1 Standard Scenario Input file Program Output 2 Structured Input Units Input Input unit Input unit Input unit unit Program
More informationPhysics 210 Q ( PHYSICS210BRIDGE ) My Courses Course Settings
1 of 10 9/7/2012 1:11 PM Logged in as Julie Alexander, Instructor Help Log Out Physics 210 Q1 2012 ( PHYSICS210BRIDGE ) My Courses Course Settings Course Home Assignments Roster Gradebook Item Library
More informationMath 1320, Section 10 Quiz IV Solutions 20 Points
Math 1320, Section 10 Quiz IV Solutions 20 Points Please answer each question. To receive full credit you must show all work and give answers in simplest form. Cell phones and graphing calculators are
More informationFactory method - Increasing the reusability at the cost of understandability
Factory method - Increasing the reusability at the cost of understandability The author Linkping University Linkping, Sweden Email: liuid23@student.liu.se Abstract This paper describes how Bansiya and
More informationChap 4. Software Reliability
Chap 4. Software Reliability 4.2 Reliability Growth 1. Introduction 2. Reliability Growth Models 3. The Basic Execution Model 4. Calendar Time Computation 5. Reliability Demonstration Testing 1. Introduction
More informationARE CISQ RELIABILITY MEASURES PRACTICAL? A RESEARCH PERSPECTIVE. Johannes Bräuer, Reinhold Plösch, Manuel Windhager TAIC PART 2017, Tokyo
ARE CISQ RELIABILITY MEASURES PRACTICAL? A RESEARCH PERSPECTIVE Johannes Bräuer, Reinhold Plösch, Manuel Windhager TAIC PART 2017, Tokyo WHAT TO EXPECT? Motivation for measuring reliability CISQ Standard
More informationMathematics 1104B. Systems of Equations and Inequalities, and Matrices. Study Guide. Text: Mathematics 11. Alexander and Kelly; Addison-Wesley, 1998.
Adult Basic Education Mathematics Systems of Equations and Inequalities, and Matrices Prerequisites: Mathematics 1104A, Mathematics 1104B Credit Value: 1 Text: Mathematics 11. Alexander and Kelly; Addison-Wesley,
More informationWeek 7 Algebra 1 Assignment:
Week 7 Algebra 1 Assignment: Day 1: Chapter 3 test Day 2: pp. 132-133 #1-41 odd Day 3: pp. 138-139 #2-20 even, 22-26 Day 4: pp. 141-142 #1-21 odd, 25-30 Day 5: pp. 145-147 #1-25 odd, 33-37 Notes on Assignment:
More informationMathematics Enhancement Programme
UNIT 9 Lesson Plan 1 Perimeters Perimeters 1 1A 1B Units of length T: We're going to measure the lengths of the sides of some shapes. Firstly we need to decide what units to use - what length-units do
More informationUse of the ISO Quality standards at the NMCAs Results from questionnaires taken in 2004 and 2011
Use of the ISO 19100 Quality standards at the NMCAs Results from questionnaires taken in 2004 and 2011 Eurogeographics Quality Knowledge Exchange Network Reference: History Version Author Date Comments
More informationGeosciences Data Digitize and Materialize, Standardization Based on Logical Inter- Domain Relationships GeoDMS
Geosciences Data Digitize and Materialize, Standardization Based on Logical Inter- Domain Relationships GeoDMS Somayeh Veiseh Iran, Corresponding author: Geological Survey of Iran, Azadi Sq, Meraj St,
More informationIntroduction to Mathematical Programming IE406. Lecture 21. Dr. Ted Ralphs
Introduction to Mathematical Programming IE406 Lecture 21 Dr. Ted Ralphs IE406 Lecture 21 1 Reading for This Lecture Bertsimas Sections 10.2, 10.3, 11.1, 11.2 IE406 Lecture 21 2 Branch and Bound Branch
More informationA Note on the Complexity of Network Reliability Problems. Hans L. Bodlaender Thomas Wolle
A Note on the Complexity of Network Reliability Problems Hans L. Bodlaender Thomas Wolle institute of information and computing sciences, utrecht university technical report UU-CS-2004-001 www.cs.uu.nl
More informationEssential Statistics. Gould Ryan Wong
Global Global Essential Statistics Eploring the World through Data For these Global Editions, the editorial team at Pearson has collaborated with educators across the world to address a wide range of subjects
More informationPart 4 out of 5 DFA NFA REX. Automata & languages. A primer on the Theory of Computation. Last week, we showed the equivalence of DFA, NFA and REX
Automata & languages A primer on the Theory of Computation Laurent Vanbever www.vanbever.eu Part 4 out of 5 ETH Zürich (D-ITET) October, 12 2017 Last week, we showed the equivalence of DFA, NFA and REX
More informationSoftware Quality. Introduction " Martin Glinz. Chapter 1. Department of Informatics!
Department of Informatics! Martin Glinz Software Quality Chapter 1 Introduction " 2014-2016 Martin Glinz. All rights reserved. Making digital or hard copies of all or part of this work for educational,
More informationMidterm Exam Information Theory Fall Midterm Exam. Time: 09:10 12:10 11/23, 2016
Midterm Exam Time: 09:10 12:10 11/23, 2016 Name: Student ID: Policy: (Read before You Start to Work) The exam is closed book. However, you are allowed to bring TWO A4-size cheat sheet (single-sheet, two-sided).
More information6.080 / Great Ideas in Theoretical Computer Science Spring 2008
MIT OpenCourseWare http://ocw.mit.edu 6.080 / 6.089 Great Ideas in Theoretical Computer Science Spring 2008 For information about citing these materials or our Terms of Use, visit: http://ocw.mit.edu/terms.
More information, p 1 < p 2 < < p l primes.
Solutions Math 347 Homework 1 9/6/17 Exercise 1. When we take a composite number n and factor it into primes, that means we write it as a product of prime numbers, usually in increasing order, using exponents
More informationData Structures and Algorithms
Data Structures and Algorithms P. Healy CS1-08 Computer Science Bldg. tel: 202727 patrick.healy@ul.ie Autumn 2018-2019 Outline 1 2 3 4 Outline 1 2 3 4 Lectures, Labs and Tutes Lecture Hours: Mon. 15h00
More informationSolving and Graphing Inequalities Joined by And or Or
Solving and Graphing Inequalities Joined by And or Or Classwork 1. Zara solved the inequality 18 < 3x 9 as shown below. Was she correct? 18 < 3x 9 27 < 3x 9 < x or x> 9 2. Consider the compound inequality
More informationVehicle Scheduling for Accessible. Transportation Systems
Beauchamp 1 2 Furkan Enderer 3 Mounira Groiez 1 Nadia Lahrichi 1 Mehdi Mahnam 1 Odile Marcotte 4 Sofiane Soualah 5 6 1 École Polytechnique 2 UQAM 3 Concordia University 4 CRM and UQAM 5 Université de Montréal
More informationShow that the following problems are NP-complete
Show that the following problems are NP-complete April 7, 2018 Below is a list of 30 exercises in which you are asked to prove that some problem is NP-complete. The goal is to better understand the theory
More information1 Descriptions of Function
Wide-Area Wind Generation Forecasting 1 Descriptions of Function All prior work (intellectual property of the company or individual) or proprietary (non-publicly available) work should be so noted. 1.1
More informationPHY 111L Activity 2 Introduction to Kinematics
PHY 111L Activity 2 Introduction to Kinematics Name: Section: ID #: Date: Lab Partners: TA initials: Objectives 1. Introduce the relationship between position, velocity, and acceleration 2. Investigate
More informationCSC236 Week 11. Larry Zhang
CSC236 Week 11 Larry Zhang 1 Announcements Next week s lecture: Final exam review This week s tutorial: Exercises with DFAs PS9 will be out later this week s. 2 Recap Last week we learned about Deterministic
More informationContext-Aware Statistical Debugging
Context-Aware Statistical Debugging From Bug Predictors to Faulty Control Flow Paths Lingxiao Jiang and Zhendong Su University of California at Davis Outline Introduction Context-Aware Statistical Debugging
More informationSection 7.1 Objective 1: Solve Quadratic Equations Using the Square Root Property Video Length 12:12
Section 7.1 Video Guide Solving Quadratic Equations by Completing the Square Objectives: 1. Solve Quadratic Equations Using the Square Root Property. Complete the Square in One Variable 3. Solve Quadratic
More informationCS 301. Lecture 17 Church Turing thesis. Stephen Checkoway. March 19, 2018
CS 301 Lecture 17 Church Turing thesis Stephen Checkoway March 19, 2018 1 / 17 An abridged modern history of formalizing algorithms An algorithm is a finite, unambiguous sequence of steps for solving a
More informationThe Gram-Schmidt Process
The Gram-Schmidt Process How and Why it Works This is intended as a complement to 5.4 in our textbook. I assume you have read that section, so I will not repeat the definitions it gives. Our goal is to
More informationMath 308 Midterm Answers and Comments July 18, Part A. Short answer questions
Math 308 Midterm Answers and Comments July 18, 2011 Part A. Short answer questions (1) Compute the determinant of the matrix a 3 3 1 1 2. 1 a 3 The determinant is 2a 2 12. Comments: Everyone seemed to
More informationCOMPSCI 611 Advanced Algorithms Second Midterm Exam Fall 2017
NAME: COMPSCI 611 Advanced Algorithms Second Midterm Exam Fall 2017 A. McGregor 15 November 2017 DIRECTIONS: Do not turn over the page until you are told to do so. This is a closed book exam. No communicating
More informationWeb GIS: Architectural Patterns and Practices. Shannon Kalisky Philip Heede
Web GIS: Architectural Patterns and Practices Shannon Kalisky Philip Heede Web GIS Transformation of the ArcGIS Platform Desktop Apps Server GIS Web Maps Web Scenes Layers Web GIS Transformation of the
More informationLecture 4: Perfect Secrecy: Several Equivalent Formulations
Cryptology 18 th August 015 Lecture 4: Perfect Secrecy: Several Equivalent Formulations Instructor: Goutam Paul Scribe: Arka Rai Choudhuri 1 Notation We shall be using the following notation for this lecture,
More informationOctober 16, Geometry, the Common Core, and Proof. John T. Baldwin, Andreas Mueller. The motivating problem. Euclidean Axioms and Diagrams
October 16, 2012 Outline 1 2 3 4 5 Agenda 1 G-C0-1 Context. 2 Activity: Divide a line into n pieces -with string; via construction 3 Reflection activity (geometry/ proof/definition/ common core) 4 mini-lecture
More informationData Mining Prof. Pabitra Mitra Department of Computer Science & Engineering Indian Institute of Technology, Kharagpur
Data Mining Prof. Pabitra Mitra Department of Computer Science & Engineering Indian Institute of Technology, Kharagpur Lecture 21 K - Nearest Neighbor V In this lecture we discuss; how do we evaluate the
More informationMath 147 Lecture Notes: Lecture 12
Math 147 Lecture Notes: Lecture 12 Walter Carlip February, 2018 All generalizations are false, including this one.. Samuel Clemens (aka Mark Twain) (1835-1910) Figures don t lie, but liars do figure. Samuel
More information1 Propositional Logic
CS 2800, Logic and Computation Propositional Logic Lectures Pete Manolios Version: 384 Spring 2011 1 Propositional Logic The study of logic was initiated by the ancient Greeks, who were concerned with
More information