CISC327 - So*ware Quality Assurance
|
|
- Amy Bryan
- 5 years ago
- Views:
Transcription
1 CISC327 - So*ware Quality Assurance Lecture 8 Introduc<on to Systema<c Tes<ng, part 1 CISC J.R. Cordy, S. Grant, J.S. Bradbury, J. Dunfield
2 Introduc<on to Systema<c Tes<ng Outline Today we begin a thorough look at so*ware tes<ng Defini<ons: What is so*ware tes<ng? Role of specifica<ons Levels of tes<ng: unit, integra<on, system, acceptance
3 What is Tes<ng? Tes<ng is the process of execu<ng so*ware in a controlled manner to answer a ques<on: "Does the so*ware behave as specified?" Implies that we have a specifica<on* Possibly that the tests are the specifica<on Or implies that we have some property we wish to test for independently of the specifica<on e.g., "All paths in the code are reachable, no dead code" Tes<ng is o*en associated with the words valida<on and verifica<on * compare h[p:// a- great- ar<st- in- just- 10- seconds- andi- mcclure- michael- brough/
4 What is Systema<c Tes<ng? An explicit discipline or procedure (a system) for choosing and crea<ng test cases execu<ng the tests and documen<ng the results evalua<ng the results, possibly automa<cally deciding when we are done (enough tes<ng)
5 What is Systema<c Tes<ng? Because in general it is impossible to ever test completely, each systema<c method chooses a par<cular point of view and tests only from that point of view (the test criterion) e.g., test only that every decision (if statement) can be executed either way
6 Verifica(on vs. Valida<on Verifica<on The checking or tes<ng of so*ware (or anything else) for conformance and consistency with a given specifica<on Answers the ques<on "are we doing the job right?" Tes<ng is most useful in verifica<on, although it is just one part of it Inspec<on, measurement, analysis and formal methods are also important
7 Verifica<on vs. Valida(on Valida<on The process of checking that what has been specified is what the user actually wanted Answers the ques<on "are we doing the right job?" Valida<on usually involves mee<ngs, reviews, and discussions to check that what has been specified is what was intended Tes<ng is less useful in valida<on, although it can have a role
8 Valida<on vs. Verifica<on Verifica<on Check that the so*ware meets its stated func<onal and non- func<onal requirements Valida<on More general than verifica<on, ensure that the so*ware meets the customer's expecta<ons Requirements specifica<ons do not always reflect the real wishes or needs of system customers and users
9 Tes<ng vs. Debugging Debugging is not Tes<ng Debugging is the process of analyzing and loca<ng bugs when the so*ware does not behave as expected Tes<ng plays the much more comprehensive role of methodically searching for and exposing bugs, not just fixing those that happen to show up by playing with the so*ware Debugging therefore supports tes<ng but cannot replace it However, no amount of tes<ng is guaranteed to find all bugs (except possibly exhaus<ve tes<ng, where prac<cal)
10 Exhaus(ve Tes(ng vs. Occasionally you can test exhaus<vely: Let s write all the tests for a NAND ( not AND or Sheffer stroke ) opera<on Tests are just the same as the specifica<on (truth table): A B A NAND B true true false true false true false true true false false true Only 4 possible combina<ons of A and B, so 4 test cases
11 Exhaus<ve Tes<ng vs. Most so*ware, even most individual methods, can t be exhaus<vely tested Examples: There are infinitely many integers Even a 32- bit integer (small these days) has ~4 billion possible values Strings: way too many strings to test Compilers are an extreme case: the set of possible inputs to a C compiler is the set of all C programs (and many almost C programs, e.g. programs with syntax errors)
12 The Role of Specifica<ons The Need for Specifica<on Valida<on and verifica<on ac<vi<es, such as tes<ng, cannot be meaningful unless we have a specifica<on for the so*ware The so*ware we are building could be a single module or class, or could be an en<re system Depending on the size of the project and the development methods, specifica<ons can range from a single page to a complex hierarchy of interrelated documents
13 Levels of Specifica<on Three Levels Specifica<ons of large systems usually contain at least three levels of so*ware specifica<on documents 1. Func<onal specifica<ons (or requirements) 2. Design specifica<ons 3. Detailed design specifica<ons
14 Levels of Specifica<on 1) Func<onal specifica<ons (requirements) Give a precise descrip<on of the required behaviour (func<onality) of the system Describe what the so*ware should do, not how it should do it May also describe constraints on how this can be achieved Example: When the user chooses the "Exit" menu item, bring up the "Save" dialog if the current document has not been saved, otherwise terminate the program
15 Levels of Specifica<on 2) Design specifica<ons Describe the architecture of the design to implement the func<onal specifica<on Describe the components of the so*ware and how they are to relate to one another Example: A UML diagram and associated documenta<on describing the rela<onship between a document object and a spelling checker
16 Levels of Specifica<on 3) Detailed design specifica<ons Describe how each component of the architecture, down to the individual code units, is to be implemented Example: A detailed descrip<on of the Document object, including the data structures used to store the informa<on, rela<onships with other objects, and so on
17 Levels of Tes<ng Corresponding Test Levels Given the hierarchy of specifica<ons, it is usual to structure tes<ng into three (or more) corresponding levels 3) (detailed design) Unit Tes<ng 2) (design specifica<ons) Integra(on Tes<ng 1) (func<onal specifica<ons) System Tes<ng To these levels, we usually add: 0) Acceptance Tes<ng
18 Levels of Tes<ng Corresponding Test Levels 3) Unit tes<ng addresses the verifica<on that individual components of the architecture meet their detailed design specifica<on 2) Integra(on tes<ng (a.k.a. component tes<ng) verifies that the groups of units corresponding to architectural elements of the design specifica<on can be integrated to work as a whole
19 Levels of Tes<ng Corresponding Test Levels 1) System tes<ng verifies that the integrated total product has the func<onality specified in the func<onal specifica<on 0) Acceptance tes<ng, in which the actual customers validate that the so*ware meets their real inten<ons as well as what has been func<onally specified, and accept the result
20 An Integral Task: Tests as Goals Once each level of specifica<on is wri[en, the next step is to write the tests for that level XP speeds this by making the tests themselves the specifica<on It is important that the tests be designed without knowledge of the so*ware implementa<on In XP, before implementa<on Otherwise we are tempted to simply test the so*ware for what it actually does, not what it should do
21 Using Tests Evalua<ng Tests Within each level of tes<ng, once the tests have been applied, test results are evaluated If a problem is encountered, then either: a) the tests are wrong: the tests are revised and applied again, or b) the soeware is wrong: the so*ware is fixed and the tests are applied again In either case, the tests are applied again, and so on, un<l no more problems are found, at which point development can proceed to the next level of tes<ng
22 Tests Don't Die! Test Evolu<on Tes<ng does not end when the so*ware is accepted by the customer Tests must be repeated, modified and extended to ensure that no exis<ng func<onality has been broken, and that any new func<onality is implemented according to the revised specifica<ons and design
23 Tests Don't Die! Test Evolu<on Maintenance of the tests for a system is a major part of the effort to maintain and evolve a so*ware system while retaining a high level of quality To make this con<nual tes<ng prac<cal, automa<on plays a large role in so*ware tes<ng methods
24 Summary Introduc<on to Tes<ng Tes<ng addresses primarily the verifica<on that so*ware meets its specifica<ons Without some kind of specifica<on, we cannot test Tes<ng is done at several levels, corresponding to the levels of func<onal, design, and detailed specifica<ons in reverse order Tes<ng is not finished at acceptance, it remains for the life of the so*ware system
25 Summary References Sommerville, ch. 8, "So*ware Tes<ng" The So*ware Test Page (on the web)
CISC327 - So*ware Quality Assurance
CISC327 - So*ware Quality Assurance Lecture 12 Black Box Tes?ng CISC327-2003 2017 J.R. Cordy, S. Grant, J.S. Bradbury, J. Dunfield Black Box Tes?ng Outline Last?me we con?nued with black box tes?ng and
More informationCISC327 - So*ware Quality Assurance
CISC327 - So*ware Quality Assurance Lecture 12 Black Box Tes?ng CISC327-2003 2017 J.R. Cordy, S. Grant, J.S. Bradbury, J. Dunfield Black Box Tes?ng Outline Last?me we con?nued with black box tes?ng and
More informationCISC327 - So*ware Quality Assurance
CISC327 - So*ware Quality Assurance Lecture 19 Regression Tes?ng CISC327-2003- 2017 J.R. Cordy, S. Grant, J.S. Bradbury, J. Dunfield Regression Tes?ng Today we look at regression tes?ng Purpose of regression
More informationCOSC 310: So*ware Engineering. Dr. Bowen Hui University of Bri>sh Columbia Okanagan
COSC 310: So*ware Engineering Dr. Bowen Hui University of Bri>sh Columbia Okanagan 1 Admin A2 is up Don t forget to keep doing peer evalua>ons Deadline can be extended but shortens A3 >meframe Labs This
More informationFounda'ons of So,ware Engineering. Lecture 11 Intro to QA, Tes2ng Claire Le Goues
Founda'ons of So,ware Engineering Lecture 11 Intro to QA, Tes2ng Claire Le Goues 1 Learning goals Define so;ware analysis. Reason about QA ac2vi2es with respect to coverage and coverage/adequacy criteria,
More informationCISC327 - So*ware Quality Assurance. Lecture 13 Black Box Unit
CISC327 - So*ware Quality Assurance Lecture 13 Black Box Unit Tes@ng Black Box Unit Tes@ng Black box method tes@ng Test harnesses Role of code- level specifica@ons (asser@ons) Automa@ng black box unit
More informationL7: Tes(ng. Smoke tes(ng. The test- vee Black- box vs. white- box tes(ng Tes(ng methods. Four levels of tes(ng. Case study
Smoke tes(ng L7: Tes(ng The test- vee Black- box vs. white- box tes(ng Tes(ng methods Matrix test Step- by- step test Automated test scripts Four levels of tes(ng Debugging Unit tes?ng Integra?on tes?ng
More informationA formal design process, part 2
Principles of So3ware Construc9on: Objects, Design, and Concurrency Designing (sub-) systems A formal design process, part 2 Josh Bloch Charlie Garrod School of Computer Science 1 Administrivia Midterm
More informationcsc444h: so(ware engineering I matt medland
csc444h: so(ware engineering I matt medland matt@cs.utoronto.ca http://www.cs.utoronto.ca/~matt/csc444 tes2ng top- 10 infrastructure source code control including other types of testing reproducible builds
More informationFounda'ons of So,ware Engineering. Sta$c analysis (1/2) Claire Le Goues
Founda'ons of So,ware Engineering Sta$c analysis (1/2) Claire Le Goues 1 Two fundamental concepts Abstrac'on. Elide details of a specific implementa$on. Capture seman$cally relevant details; ignore the
More informationPreliminary ACTL-SLOW Design in the ACS and OPC-UA context. G. Tos? (19/04/2016)
Preliminary ACTL-SLOW Design in the ACS and OPC-UA context G. Tos? (19/04/2016) Summary General Introduc?on to ACS Preliminary ACTL-SLOW proposed design Hardware device integra?on in ACS and ACTL- SLOW
More informationCISC327 - So*ware Quality Assurance
CISC327 - So*ware Quality Assurance Lecture 23 Code Inspec
More informationArchitectural Requirements Phase. See Sommerville Chapters 11, 12, 13, 14, 18.2
Architectural Requirements Phase See Sommerville Chapters 11, 12, 13, 14, 18.2 1 Architectural Requirements Phase So7ware requirements concerned construc>on of a logical model Architectural requirements
More informationSo#ware Test and Analysis
So#ware Test and Analysis Luciano Baresi Politecnico di Milano Leonardo Mariani (University of Milano Bicocca) Mo=va=ons So#ware systems permeate (almost) every aspect of our life So#ware is buggy In 2002
More informationAutoma'c Test Genera'on
Automa'c Test Genera'on First, about Purify Paper about Purify (and PurifyPlus) posted How do you monitor reads and writes: insert statements before and a?er reads, writes in code can s'll be done with
More informationModel-Based Testing. (DIT848 / DAT261) Spring Lecture 3 White Box Testing - Coverage
Model-Based Testing (DIT848 / DAT261) Spring 2017 Lecture 3 White Box Testing - Coverage Gerardo Schneider Dept. of Computer Science and Engineering Chalmers University of Gothenburg Some slides based
More informationObject Oriented Design (OOD): The Concept
Object Oriented Design (OOD): The Concept Objec,ves To explain how a so8ware design may be represented as a set of interac;ng objects that manage their own state and opera;ons 1 Topics covered Object Oriented
More informationWhat were his cri+cisms? Classical Methodologies:
1 2 Classifica+on In this scheme there are several methodologies, such as Process- oriented, Blended, Object Oriented, Rapid development, People oriented and Organisa+onal oriented. According to David
More informationLecture 2. White- box Tes2ng and Structural Coverage (see Amman and Offut, Chapter 2)
Lecture 2 White- box Tes2ng and Structural Coverage (see Amman and Offut, Chapter 2) White- box Tes2ng (aka. Glass- box or structural tes2ng) An error may exist at one (or more) loca2on(s) Line numbers
More informationModel Transforma.on. Krzysztof Czarnecki Genera.ve So:ware Development Lab University of Waterloo, Canada gsd.uwaterloo.ca
Model Transforma.on Krzysztof Czarnecki Genera.ve So:ware Development Lab University of Waterloo, Canada gsd.uwaterloo.ca Modeling Wizards Summer School, Oct. 1, 2010, Oslo, Norway What is model transforma.on?
More informationAutomated System Analysis using Executable SysML Modeling Pa8erns
Automated System Analysis using Executable SysML Modeling Pa8erns Maged Elaasar* Modelware Solu
More informationFounda'ons of So,ware Engineering. Process: Agile Prac.ces Claire Le Goues
Founda'ons of So,ware Engineering Process: Agile Prac.ces Claire Le Goues 1 Learning goals Define agile as both a set of itera.ve process prac.ces and a business approach for aligning customer needs with
More informationDiscrete Processes
FRTN20 Market-Driven Systems Marknadsstyrda System FRTN20 Lecture 2: Discrete Produc@on 1 Discrete Produc@on Processes General Characteris@cs of discrete produc@on processes: Discon@nuous produc@on of
More informationChunking: An Empirical Evalua3on of So7ware Architecture (?)
Chunking: An Empirical Evalua3on of So7ware Architecture (?) Rachana Koneru David M. Weiss Iowa State University weiss@iastate.edu rachana.koneru@gmail.com With participation by Audris Mockus, Jeff St.
More informationProofs about Programs
Proofs about Programs Program Verification (Rosen, Sections 5.5) TOPICS Program Correctness Preconditions & Postconditions Program Verification Assignment Statements Conditional Statements Loops Composition
More informationCISC So*ware Quality Assurance
CISC 327 - So*ware Quality Assurance Lecture 29b Web Applica>on Security CISC327-2003 2017 J.R. Cordy, S. Grant, J.S. Bradbury, J. Dunfield Outline Web Applica>on Security SQL Injec>on Parameter Manipula>on
More informationIntroduction to Software Testing Chapter 5.1 Syntax-based Testing
Introduction to Software Testing Chapter 5.1 Syntax-based Testing Paul Ammann & Jeff Offutt http://www.cs.gmu.edu/~offutt/ softwaretest/ Ch. 5 : Syntax Coverage Four Structures for Modeling Software Graphs
More informationLecture 2. White- box Tes2ng and Structural Coverage (see Amman and Offut, Chapter 2)
Lecture 2 White- box Tes2ng and Structural Coverage (see Amman and Offut, Chapter 2) White- box Tes2ng (aka. Glass- box or structural tes2ng) An error may exist at one (or more) loca2on(s) Line numbers
More informationEvaluating and Improving Software Usability
Evaluating and Improving Software Usability 902 : Thursday, 9:30am - 10:45am Philip Lew www.xbosoft.com Understand, Evaluate and Improve 2 Agenda Introduc7on Importance of usability What is usability?
More informationF.P. Brooks, No Silver Bullet: Essence and Accidents of Software Engineering CIS 422
The hardest single part of building a software system is deciding precisely what to build. No other part of the conceptual work is as difficult as establishing the detailed technical requirements...no
More informationLeveraging User Session Data to Support Web Applica8on Tes8ng
Leveraging User Session Data to Support Web Applica8on Tes8ng Authors: Sebas8an Elbaum, Gregg Rotheermal, Srikanth Karre, and Marc Fisher II Presented By: Rajiv Jain Outline Introduc8on Related Work Tes8ng
More informationSIS Logic Synthesis System
SIS Logic Synthesis System Luigi Di Guglielmo Davide Bresolin Tiziano Villa University of Verona Dep. Computer Science Italy Introduc>on Logic Synthesis performs the transla>on from a high level descrip>on
More informationDesign Principles & Prac4ces
Design Principles & Prac4ces Robert France Robert B. France 1 Understanding complexity Accidental versus Essen4al complexity Essen%al complexity: Complexity that is inherent in the problem or the solu4on
More informationJava. Package, Interface & Excep2on
Java Package, Interface & Excep2on Package 2 Package Java package provides a mechanism for par55oning the class name space into more manageable chunks Both naming and visibility control mechanism Define
More informationComputer Programming-I. Developed by: Strawberry
Computer Programming-I Objec=ve of CP-I The course will enable the students to understand the basic concepts of structured programming. What is programming? Wri=ng a set of instruc=ons that computer use
More informationSo#ware Tes+ng Made Easy
So#ware Tes+ng Made Easy Common Sense Tips and Sugges+ons Robert McLay and Doug James April 8, 2014 Overview A Bit of Context Tips and Sugges+ons References and Final Thoughts You re busy. You might wonder
More informationSo#ware Tes+ng. See also Sommerville, Chapter 8 Amman and Offut, Introduc)on to So,ware Tes)ng, Cambridge University Press, 2008.
So#ware Tes+ng See also Sommerville, Chapter 8 Amman and Offut, Introduc)on to So,ware Tes)ng, Cambridge University Press, 2008. Tes+ng Most basic form of post- hoc SQA Helps define program func+onality
More informationIntelligent Systems Knowledge Representa6on
Intelligent Systems Knowledge Representa6on SCJ3553 Ar6ficial Intelligence Faculty of Computer Science and Informa6on Systems Universi6 Teknologi Malaysia Outline Introduc6on Seman6c Network Frame Conceptual
More informationHow to sleep *ght and keep your applica*ons running on IPv6 transi*on. The importance of IPv6 Applica*on Tes*ng
How to sleep *ght and keep your applica*ons running on IPv6 transi*on The importance of IPv6 Applica*on Tes*ng About this presenta*on It presents a generic methodology to test the IPv6 func*onality of
More informationJosh Bloch Charlie Garrod Darya Melicher
Principles of So3ware Construc9on: Objects, Design, and Concurrency Part 1: Introduc9on Course overview and introduc9on to so3ware design Josh Bloch Charlie Garrod Darya Melicher 1 So3ware is everywhere
More informationCSE Opera,ng System Principles
CSE 30341 Opera,ng System Principles Lecture 5 Processes / Threads Recap Processes What is a process? What is in a process control bloc? Contrast stac, heap, data, text. What are process states? Which
More informationSystem Modeling Environment
System Modeling Environment Requirements, Architecture and Implementa
More informationClinical Metadata A complete metadata and project management solu6on. October 2017 Andrew Ndikom and Liang Wang
A complete metadata and project management solu6on. October 2017 Andrew Ndikom and Liang Wang 1 Agenda How is metadata currently managed within the industry? Five key problems with current approaches.
More informationSQLite with a Fine-Toothed Comb. John Regehr Trust-in-So1 / University of Utah
SQLite with a Fine-Toothed Comb John Regehr Trust-in-So1 / University of Utah Feasible states for a system we care about No execu
More informationChapter 8 Software Testing. Chapter 8 So-ware tes0ng
Chapter 8 Software Testing 1 Topics covered ² Introduction to testing ² Stages for testing software system are: Development testing Release testing User testing ² Test-driven development as interleave
More informationCMPSC 24: Lecture 1 So4ware Development Process
CMPSC 24: Lecture 1 So4ware Development Process Divyakant Agrawal Department of Computer Science UC Santa Barbara Syllabus and other course informaion hjp://www.cs.ucsb.edu/~agrawal/spring2010/ cmpsc24.html
More informationInterac(ve Form: Inspec(on methods. Eva Ragnemalm, IDA
Interac(ve Form: Inspec(on methods Eva Ragnemalm, IDA 2 Interac(ve form 1 Select an informa2on kiosk or machine Describe it s purpose, content and form Perform a cogni(ve walkthrough describe the result
More informationFaster Splunk App Cer=fica=on with Splunk AppInspect
Copyright 2016 Splunk Inc. Faster Splunk App Cer=fica=on with Splunk AppInspect Andy Nortrup Product Manager, Splunk Grigori Melnik Director, Product Management, Splunk Disclaimer During the course of this
More informationProgramming Environments
Programming Environments There are several ways of crea/ng a computer program Using an Integrated Development Environment (IDE) Using a text editor You should use the method you are most comfortable with.
More informationCS 101: Computer Programming and Utilization
CS 101: Computer Programming and Utilization Jul-Nov 2017 Umesh Bellur (cs101@cse.iitb.ac.in) Lecture 14: Object Oritented Programming and Classes About These Slides Based on Chapter 18 of the book An
More informationModel- Based Security Tes3ng with Test Pa9erns
Model- Based Security Tes3ng with Test Pa9erns Julien BOTELLA (Smartes5ng) Jürgen GROSSMANN (FOKUS) Bruno LEGEARD (Smartes3ng) Fabien PEUREUX (Smartes5ng) Mar5n SCHNEIDER (FOKUS) Fredrik SEEHUSEN (SINTEF)
More informationBackground. IBM sold expensive mainframes to large organiza<ons. Monitor sits between one or more OSes and HW
Virtual Machines Background IBM sold expensive mainframes to large organiza
More informationDesign pa*erns. Based on slides by Glenn D. Blank
Design pa*erns Based on slides by Glenn D. Blank Defini6ons A pa#ern is a recurring solu6on to a standard problem, in a context. Christopher Alexander, a professor of architecture Why would what a prof
More informationReview. Asser%ons. Some Per%nent Ques%ons. Asser%ons. Page 1. Automated Tes%ng. Path- Based Tes%ng. But s%ll need to look at execu%on results
Review Asser%ons Computer Science 521-621 Fall 2011 Prof. L. J. Osterweil Material adapted from slides originally prepared by Prof. L. A. Clarke Dynamic Tes%ng Execute program on real data and compare
More informationCrowdCode: A Platform for Crowd Development
CrowdCode: A Platform for Crowd Development Thomas D. LaToza 1, Eric Chiquillo 1, 2, W. Ben Towne 3, Christian M. Adriano 1, André van der Hoek 1 1 University of California, Irvine 2 Zynga 3 Carnegie Mellon
More informationDebugging. BBM Introduc/on to Programming I. Hace7epe University Fall Fuat Akal, Aykut Erdem, Erkut Erdem, Vahid Garousi
Debugging BBM 101 - Introduc/on to Programming I Hace7epe University Fall 2015 Fuat Akal, Aykut Erdem, Erkut Erdem, Vahid Garousi Slides based on material prepared by Ruth Anderson, Michael Ernst and Bill
More informationCS 521/621 Course Overview: Sta5c and Dynamic Analyses
CS 521/621 Course Overview: Sta5c and Dynamic Analyses Last 5me What did we talk about? Why is it important to study soeware engineering? Just like cars US automobile industry used to be very complacent
More informationLaboratory 5: Implementing Loops and Loop Control Strategies
Laboratory 5: Implementing Loops and Loop Control Strategies Overview: Objectives: C++ has three control structures that are designed exclusively for iteration: the while, for and do statements. In today's
More informationCDISC Migra+on. PhUSE 2010 Berlin. 47 of the top 50 biopharmaceu+cal firms use Cytel sofware to design, simulate and analyze their clinical studies.
CDISC Migra+on PhUSE 2010 Berlin 47 of the top 50 biopharmaceu+cal firms use Cytel sofware to design, simulate and analyze their clinical studies. Source: The Pharm Exec 50 the world s top 50 pharmaceutical
More informationLaboratory- Clinical Communica1ons LCC Profile
Laboratory- Clinical Communica1ons LCC Profile IHE Laboratory Domain College of American Pathologists Jim Harrison, Univ. of Virginia The Problem The tradi1onal order- result paradigm does not include
More informationCSc 120. Introduc/on to Computer Programming II. 02: Problem Decomposi1on and Program Development. Adapted from slides by Dr.
CSc 120 Introduc/on to Computer Programming II Adapted from slides by Dr. Saumya Debray 02: Problem Decomposi1on and Program Development A common student lament "I have this big programming assignment.
More informationJUnit tes)ng. Elisa Turrini
JUnit tes)ng Elisa Turrini Automated Tes)ng Code that isn t tested doesn t work Code that isn t regression tested suffers from code rot (breaks eventually) If it is not automated it is not done! Boring
More informationConfigura)on Management Founda)ons. Leonardo Gresta Paulino Murta
Configura)on Management Founda)ons Leonardo Gresta Paulino Murta leomurta@ic.uff.br Configura)on Item Hardware or so@ware aggrega)on subject to configura)on management Examples: CM plan Requirement Engineering
More informationPrinciples of So3ware Construc9on. A formal design process, part 2
Principles of So3ware Construc9on Design (sub- )systems A formal design process, part 2 Josh Bloch Charlie Garrod School of Computer Science 1 Administrivia Midterm exam Thursday Review session Wednesday,
More informationDesign and Debug: Essen.al Concepts Numerical Conversions CS 16: Solving Problems with Computers Lecture #7
Design and Debug: Essen.al Concepts Numerical Conversions CS 16: Solving Problems with Computers Lecture #7 Ziad Matni Dept. of Computer Science, UCSB Announcements We are grading your midterms this week!
More informationAdvanced Topics in MNIT. Lecture 1 (27 Aug 2015) CADSL
Compiler Construction Virendra Singh Computer Architecture and Dependable Systems Lab Department of Electrical Engineering Indian Institute of Technology Bombay http://www.ee.iitb.ac.in/~viren/ E-mail:
More informationProgram Verification (Rosen, Sections 5.5)
Program Verification (Rosen, Sections 5.5) TOPICS Program Correctness Preconditions & Postconditions Program Verification Assignments Composition Conditionals Loops Proofs about Programs Why study logic?
More informationIntegra(ng an Online Configura(on Checker with Exis(ng Management Systems: Applica(on to CIM/WBEM Environments
Integra(ng an Online Configura(on Checker with Exis(ng Management Systems: Applica(on to CIM/WBEM Environments Ludi Akue, Emmanuel Lavinal, Thierry Desprats, Michelle Sibilla University of Toulouse IRIT
More informationBuild Your Own ASP.NET 4 Website Using C# & VB. Chapter 1: Introducing ASP.NET and the.net Pla;orm
Build Your Own ASP.NET 4 Website Using C# & VB Chapter 1: Introducing ASP.NET and the.net Pla;orm Outlines IntroducIon What is ASP.NET? Advantages of ASP.NET Installing the Required SoOware WriIng your
More informationCOSC 121: Computer Programming II. Dr. Bowen Hui University of Bri?sh Columbia Okanagan
COSC 121: Computer Programming II Dr. Bowen Hui University of Bri?sh Columbia Okanagan 1 A1 Posted over the weekend Two ques?ons (s?ll long ques?ons) Review of main concepts from COSC 111 Prac?ce coding
More informationPrinciples of Programming Languages
Principles of Programming Languages h"p://www.di.unipi.it/~andrea/dida2ca/plp- 14/ Prof. Andrea Corradini Department of Computer Science, Pisa Introduc;on to Hakell Lesson 27! 1 The origins: ML programming
More informationWhy is it important to study sofware engineering?
Last 6me CS 521/621 Course Overview: Sta6c and Dynamic Analyses What did we talk about? Why is it important to study soware engineering? Just like cars US automobile industry used to be very complacent
More informationHomework 1 Simple code genera/on. Luca Della Toffola Compiler Design HS15
Homework 1 Simple code genera/on Luca Della Toffola Compiler Design HS15 1 Administra1ve issues Has everyone found a team- mate? Mailing- list: cd1@lists.inf.ethz.ch Please subscribe if we forgot you 2
More informationCONTAINERIZING JOBS ON THE ACCRE CLUSTER WITH SINGULARITY
CONTAINERIZING JOBS ON THE ACCRE CLUSTER WITH SINGULARITY VIRTUAL MACHINE (VM) Uses so&ware to emulate an en/re computer, including both hardware and so&ware. Host Computer Virtual Machine Host Resources:
More informationA Func'onal Introduc'on. COS 326 David Walker Princeton University
A Func'onal Introduc'on COS 326 David Walker Princeton University Thinking Func'onally In Java or C, you get (most) work done by changing something temp = pair.x; pair.x = pair.y; pair.y = temp; commands
More informationDesign and Debug: Essen.al Concepts CS 16: Solving Problems with Computers I Lecture #8
Design and Debug: Essen.al Concepts CS 16: Solving Problems with Computers I Lecture #8 Ziad Matni Dept. of Computer Science, UCSB Outline Midterm# 1 Grades Review of key concepts Loop design help Ch.
More informationAgenda. Address vs. Value Consider memory to be a single huge array. Review. Pointer Syntax. Pointers 9/9/12
Agenda CS 61C: Great Ideas in Computer Architecture Introduc;on to C, Part II Instructors: Krste Asanovic Randy H. Katz hep://inst.eecs.berkeley.edu/~cs61c/f12 Review Pointers Administrivia Arrays Technology
More informationData Quality Assessment Recommendations
Data Quality Assessment Recommendations Steering Commi,ee Mee.ng, August 19-20, 2014 Bethesda, MD Meredith Nahm Zozus, PhD Assoc. Director, Clinical Research Informa6cs Duke Transla6onal Medicine Ins6tute
More information{HEADSHOT} In this lesson, we will look at the process that enables to leverage this source of real- world tes;ng data.
{HEADSHOT} Despite our best efforts, even a9er extensive tes;ng, we as so9ware developers rarely put out bug- free code. In this lesson, we will look at a type of debugging technique used throughout the
More informationIntegrating Selenium with Confluence and JIRA
Integrating Selenium with Confluence and JIRA Open Source Test Management within Confluence, Automation of Selenium, Reporting, and Traceability Andrew Lampitt, Co-Founder Sanjiva Nath, CEO and Founder
More informationObject Oriented Programming. Feb 2015
Object Oriented Programming Feb 2015 Tradi7onally, a program has been seen as a recipe a set of instruc7ons that you follow from start to finish in order to complete a task. That approach is some7mes known
More informationCSc 120. Introduction to Computer Programming II. 14: Stacks and Queues. Adapted from slides by Dr. Saumya Debray
CSc 120 Introduction to Computer Programming II Adapted from slides by Dr. Saumya Debray 14: Stacks and Queues linear data structures 2 Linear data structures A linear data structure is a collec6on of
More informationAutomated UI tests for Mobile Apps. Sedina Oruc
Automated UI tests for Mobile Apps Sedina Oruc What I ll be covering Ø Basics Ø What are UI tests? Ø The no@on of Emulator and Simulator Ø What are our challenges? Ø PlaForm specific UI tes@ng frameworks
More informationCS 61C: Great Ideas in Computer Architecture Strings and Func.ons. Anything can be represented as a number, i.e., data or instruc\ons
CS 61C: Great Ideas in Computer Architecture Strings and Func.ons Instructor: Krste Asanovic, Randy H. Katz hdp://inst.eecs.berkeley.edu/~cs61c/sp12 Fall 2012 - - Lecture #7 1 New- School Machine Structures
More informationCS: Formal Methods in Software Engineering
CS:5810 Formal Methods in So7ware Engineering Sets and Rela
More informationRaceMob: Crowdsourced Data Race Detec,on
RaceMob: Crowdsourced Data Race Detec,on Baris Kasikci, Cris,an Zamfir, and George Candea School of Computer & Communica3on Sciences Data Races to shared memory loca,on By mul3ple threads At least one
More informationCrea?ng Cloud Apps with Oracle Applica?on Builder Cloud Service
Crea?ng Cloud Apps with Oracle Applica?on Builder Cloud Service Shay Shmeltzer Director of Product Management Oracle Development Tools and Frameworks @JDevShay hpp://blogs.oracle.com/shay This App you
More informationStream and Complex Event Processing Discovering Exis7ng Systems: esper
Stream and Complex Event Processing Discovering Exis7ng Systems: esper G. Cugola E. Della Valle A. Margara Politecnico di Milano gianpaolo.cugola@polimi.it emanuele.dellavalle@polimi.it Univ. della Svizzera
More informationSept 26, 2016 Sprenkle - CSCI Documentation is a love letter that you write to your future self. Damian Conway
Objec,ves Javadocs Inheritance Ø Final methods, fields Abstract Classes Interfaces Sept 26, 2016 Sprenkle - CSCI209 1 JAVADOCS Documentation is a love letter that you write to your future self. Damian
More informationAlignment and Image Comparison
Alignment and Image Comparison Erik Learned- Miller University of Massachuse>s, Amherst Alignment and Image Comparison Erik Learned- Miller University of Massachuse>s, Amherst Alignment and Image Comparison
More informationInstructor: Randy H. Katz hap://inst.eecs.berkeley.edu/~cs61c/fa13. Fall Lecture #7. Warehouse Scale Computer
CS 61C: Great Ideas in Computer Architecture Everything is a Number Instructor: Randy H. Katz hap://inst.eecs.berkeley.edu/~cs61c/fa13 9/19/13 Fall 2013 - - Lecture #7 1 New- School Machine Structures
More informationDesign Pa*erns. Philippe Collet. Master 1 IFI Interna3onal h8p://dep3nfo.unice.fr/twiki/bin/view/minfo/soeeng1213. P.
Design Pa*erns Philippe Collet Master 1 IFI Interna3onal 2012-2013 h8p://dep3nfo.unice.fr/twiki/bin/view/minfo/soeeng1213 P. Collet 1 Agenda Introduc3on First example Principles and classifica3on Presenta3on
More informationMo#va#ng the OO Way. COMP 401, Fall 2017 Lecture 05
Mo#va#ng the OO Way COMP 401, Fall 2017 Lecture 05 Arrays Finishing up from last #me Mul#dimensional Arrays Mul#dimensional array is simply an array of arrays Fill out dimensions lef to right. int[][]
More informationThrough Python. "Nel mezzo del cammin di nostra vita mi ritrovai per una selva oscura..." Dante Alighieri
Through Python "Nel mezzo del cammin di nostra vita mi ritrovai per una selva oscura..." Dante Alighieri Syllabus Variables vs object Float representa2on The importance of syntax operator overloading built-in
More informationModifying an Exis.ng Commercial Product for Cryptographic Module Evalua.on
Modifying an Exis.ng Commercial Product for Cryptographic Module Evalua.on ICMC16 O?awa, Canada 18-20 May 2016 Presented by Alan Gornall Introduc.on I provide cer.fica.on support to my clients: compliance
More informationCon$nuous Integra$on Development Environment. Kovács Gábor
Con$nuous Integra$on Development Environment Kovács Gábor kovacsg@tmit.bme.hu Before we start anything Select a language Set up conven$ons Select development tools Set up development environment Set up
More informationHistory of Java. Java was originally developed by Sun Microsystems star:ng in This language was ini:ally called Oak Renamed Java in 1995
Java Introduc)on History of Java Java was originally developed by Sun Microsystems star:ng in 1991 James Gosling Patrick Naughton Chris Warth Ed Frank Mike Sheridan This language was ini:ally called Oak
More informationCORPORATE PRESENTATION
CORPORATE PRESENTATION Background on device detec/on (1/2) Identifying the capabilities of a device accessing web contents has been an extensively explored issue in the past years, in particular in the
More informationJosh Bloch Charlie Garrod Darya Melicher
Principles of So3ware Construc9on: Objects, Design, and Concurrency Part 42: Concurrency Introduc9on to concurrency Josh Bloch Charlie Garrod Darya Melicher 1 Administrivia Homework 5 team sign-up deadline
More informationGENG2140 Lecture 4: Introduc4on to Excel spreadsheets. A/Prof Bruce Gardiner School of Computer Science and SoDware Engineering 2012
GENG2140 Lecture 4: Introduc4on to Excel spreadsheets A/Prof Bruce Gardiner School of Computer Science and SoDware Engineering 2012 Credits: Nick Spadaccini, Chris Thorne Introduc4on to spreadsheets Used
More information