TDDD04 Software Testing

Size: px
Start display at page:

Download "TDDD04 Software Testing"

Transcription

1 TDDD04 Software Testing Lecture Notes 7 March June 2010 Mohsen Torabzadeh-Tari (presenter), (originator) Department of Computer and Information Science Linköping University, Sweden

2 Outline of the Lecture 2 Levels of Testing, Alternative Life Cycle Models Waterfall Spin-Offs Specification-based Life Cycle Models Rapid prototyping life cycle Executable specification System Testing steps Function testing Threads Cause-and-Effect Performance testing Acceptance testing Installation testing

3 Levels of Testing, Alternative Life Cycle Models Waterfall Spin-Offs Specification-based Life Cycle Models Rapid prototyping life cycle Executable specification Cause Effect Graph to Decision Table Generation, Praveen Ranjan Srivastava, Parshad Patel, Siddharth Chatrola,

4 Reflection 4 Mention the drawbacks of waterfall model What is the problem with V-Model? How can we do system testing with rapid protoyping? Compare the waterfall and prototype life-cycle model in terms of risk Give some example of performance testing

5 Traditional Waterfall Model Waterfall model: top-down development and design by functional decomposition. Preliminary design results into a structure of functional components. Software testing: bottom up testing order (unit, integration system). 5 Requirements Specification System Testing Preliminary Design Integration Testing Detailed Design Unit Testing Coding

6 Weaknesses of traditional waterfall model: 6 functional decomposition can only be well done when the system is completely understood. very long separation between requirements specification and a completed system. no opportunity for feedback from the customer Q: is it possible? A: early 1980s, practitioners have devised alternatives

7 Composition 7 Closer to the way people work. Start with something known and understood, then add to it gradually, and may be remove undesired portions analogy : Michelangelo s David; negative sculpture: start with a piece of marble, and chip away all non-david. consequence of mistake (negative sculpture): the whole work must be throw away and restarted. (a museum in Florence, Italy, contains half a dozen such false starts to David) positive sculpture: is often done with a medium like wax. The central shape is approximated, and then wax is either added or removed until the desired shape is attained. consequence of right approximation (positive sculpture): the erroneous part is simply removed and replaced

8 Levels of Testing, Alternative Life Cycle Models Waterfall Spin-Offs Specification-based Life Cycle Models Rapid prototyping life cycle Executable specification

9 Waterfall Spin-Offs Three mainline derivatives of waterfall model: 9 1. Incremental development, 2. Evolutionary development 3. Spiral model each of these involves a series of increments or builds*. the differences among the 3 spin-off models are to how the builds are identified. one advantage common to all these spin-off models is that all yield earlier synthesis which results in earlier customer feedback. within a build, the normal waterfall phases from detailed design through testing occur (system testing is split into two steps: regression and progression testing). * a build is a set of deliverable end user functionality.

10 10 Detailed Design Requirements Specification Coding Preliminary Design Unit Testing Series of Builds Regression testing: ensures that things worked correctly in the previous build still work with the newly added code Integration Testing Progression testing: assumes that regression testing was successful and that the new functionality can be tested Build: a set of deliverable end user functionality. System Testing Regression Testing Progression Testing

11 Levels of Testing, Alternative Life Cycle Models Waterfall Spin-Offs Specification-based Life Cycle Models Rapid prototyping life cycle Executable specification

12 Specification-Based Life Cycle Models: Rapid Prototyping 12 Rapid prototyping: reduces the specification-to-customer-feedback loop to produce very early synthesis. Rather than build a final system, a quick and dirty prototype is built and then used to elicit customer feedback. Depending on the feedback, more prototyping cycles may occur. once the developer and the customer agree, a correct specification will be built. At this point any of the waterfall spin-offs might also be used.

13 Series of Prototypes Preliminary Design Define Prototype Objectives 13 Build Prototype Detailed Design Coding Customer Feedback Unit Testing Rapid prototyping life cycle Integration Testing System Testing

14 Rapid Prototyping 14 Q: Where are the requirements? Is the last prototyp the specification? A: use the prototyping cycles as informationgathering activities, and then produce a requirements specification in a more traditional manner. Q: How are system test cases traced back to the prototype? A: Capture what the customer does with the prototypes, define these as scenarios that are important to the customer, and then use these as system test cases.

15 Rapid Prototyping 15 The main contributation of rapid prototyping is that it brings the operational (or behavioral) viewpoint to the requirements specification phase. Usually, requirements specification techniques emphasize the structure of a system, not its behavior. This is unfortunate, becuse most customers do not care about the structure, and they do care about the behavior.

16 Levels of Testing, Alternative Life Cycle Models Waterfall Spin-Offs Specification-based Life Cycle Models Rapid prototyping life cycle Executable specification

17 Specification-Based Life Cycle Models: Executable specification 17 Executable specification: an extension of rapid prototyping concept. The requirements are specified in an executable format (finite state machines, StateCharts, or Petri nets). The customer executes the specification to observe the intended system behavior and provides feedback.

18 Executable Specification Preliminary Design Define executable specification 18 execute spec Detailed Design Coding Customer Feedback Unit Testing Executable specification Integration Testing System Testing

19 System Testing: Function testing Threads Cause-and-Effect Performance testing Acceptance testing Installation testing

20 System Testing 20 Objective: to ensure that the system does what the customer wants it to do. Customer Developer Requirements definition Requirements specification Functional requirements Nonfunctional requirements

21 21 Component code Unit test Tested components Design Specification Integration test Component code Unit test Tested components Integrated modules

22 Integrated modules System functional requirements Function test Functioning systems Other software requirements Performance test 22 Verified validated software Acceptance test Customer requirements spec. Accepted system Installation test User environment System In Use!

23 System Testing: Function testing Threads Cause-and-Effect Performance testing Acceptance testing Installation testing

24 A repetition of earlier lecture: Path-Based Integration

25 Path-Based Integration 25 MM-Path: when a unit executes, some path of source statements is traversed. Suppose that a call goes to another unit along such a path: at that point, control is passed from the calling unit to the called unit, where some other path of source statements is traversed.

26 Example: An MM-Path module A calls module B, which in turn calls module C 26 Source nodes A B C Sink nodes MM path

27 Function testing/thread testing (testing one function at a time) functional requirements 27 Threads: A scenario of normal usage A stimulus/response pair Behavior that results from a sequence of system-level input An interleaved sequence of port input and output events A sequence of MM-Path A sequence of atomic system functions (ASF) (ASF: an atomic system function is an action that is observable at the system level in terms of port input and output events)

28 Example: 3 candidate threads in SATM system 1. Entry of a personal identification number (PIN) (family of stimulus/response pairs): A screen requesting PIN digits 2. An interleaved sequence of digit keystrokes and screen responses 3. The possibility of cancellation by the customer before the full PIN is entered 4. A system disposition: a customer has 3 chances to enter the correct PIN. Once a correct PIN has been entered, the user sees a screen requesting the transition type; otherwise, a screen advises the customer that the ATM card will not be returned, and no access to ATM functions is provided. 2. A simple transaction: ATM Card Entry, PIN entry, select transaction type (deposits, withdraw), present account details (checking or savings, amount), conduct the operation, and report the results (involves the interaction of several ASFs) 3. An ATM session (a sequence of threads) containing two or more simple transactions (interaction among threads)

29 Definitions 29 System Thread: a path from a source ASF to a Sink ASF in the ASF graph of a system. Threads: A sequence of atomic system functions (ASF) (ASF: an atomic system function is an action that is observable at the system level in terms of port input and output events) ASF graph: Given a system defined in terms of atomic system functions (ASFs), the ASF graph of the system is the directed graph in which nodes are ASFs and edges represent sequential flow. Source ASF: an ASF that appears as a source node in the ASF graph of a system (ex in SATM: Card Entry ASF) Sink ASF: an ASF that appears as a sink node in the ASF graph of a system (ex in SATM: session termination)

30 System Testing: Function testing Threads Cause-and-Effect Performance testing Acceptance testing Installation testing

31 Cause-and-Effect-Graph (test case generation from req.) 31 Causes: inputs Effects: outputs and transformations Causes-and-Effect Graph: boolean graph reflecting causes and effects relationships is a formal language into which a natural language specification is translated

32 Basic cause-effect graph symbols 32 a b Identity: if a then b a b c And: if (a and b) then c a b d a b c Or: if (a or b or c) then d Not: if (not a) then b

33 Sample cause-effect graph 35 Student Worksheet

34 Constraint symbols 37 E a b I cause-constraint: at least one of a, b and c must always be true I a b E cause-constraint: at most one of a or b can be true a a c O a R M b b b O cause-constraint: one, and only one, of a and b must be true R cause-constraint: for a to be true, b must be true M effect-constraint: If effect a is true, Effect b is forced to be false

35 Sample cause-effect graph with exclusive constraint 38 Student Worksheet

36 Procedure of generation decision table 40 Causes are Conditions Effects are Actions 1. Select an effect to be present (1) state. 2. Tracing back through the graph, find all combinations of causes (subject to constrains) that will set this effect to Create a column in the decision table for each combination of causes 4. For each combination, determine the states of all other effects and place these in each column.

37 Considerations used when tracing the graph 41 a b x if x is to be 1, do not bother with the situation where a = b = 1 if x is to be 0, enumerate all situations where a = b = 0 a if x is to be 1, enumerate all situations where a = b = c = 1 b c x if x is to be 0, include only one situation where a = b = c = 0. For the states 001, 010, 100, 011, 101, and 110 of a, b, c, include only one situation each

38 Decision table for cause-and effect graph 42 Student Worksheet Test 1 Test 2 Test 3 Test 4 Cause 1 Cause 2 Cause 3 Effect E1 Effect E2 Effect E3

39 45 Student Worksheet Causes: 1. The first five characters of the command Level 2. Effects: 1.

40 Cause-and Effect Graph 47 Student Worksheet

41 Decision table for cause-and effect graph 49 Student Worksheet

42 Sample cause-effect graph (page 455 SE, James F. Peters) 51 Intermediate node C1 or E1 C2 and E2 C3 and and E3 E4 C4 and E5

43 Decision table for cause-and effect graph 52 Test 1 Test 2 Test 3 Test 4 Test 5 Cause X X 1 Cause 2 0 X 1 1 X Cause 3 X Cause 4 X X Effect Effect Effect Effect Effect

44 System Testing: Function testing Threads Cause-and-Effect Performance testing Acceptance testing Installation testing

45 Performance Testing nonfunctional requirements 54 Stress tests Volume tests Configuration tests Compatibility tests Regression tests Security tests Timing tests Environment tests Quality tests Recovery tests Maintenance tests Documentation tests Human factors tests / usability tests

46 Acceptance Testing customers, users need 55 Benchmark test: a set of special test cases Pilot test: everyday working Alpha test: at the developer s site, controlled environment Beta test: at one or more customer site. Parallel test: new system in parallel with previous one

47 Installation Testing users site 56 Acceptance test at developers site installation test at users site otherwise may not be needed!!

48 Summary: Levels of Testing 57 Waterfall Spin-Offs Specification-based Life Cycle Models Rapid prototyping life cycle Executable specification System Testing steps System Testing steps Function testing Threads Cause-and-Effect Performance testing Acceptance testing Installation testing

49 Reflection 58 Mention the drawbacks of waterfall model What is the problem with V-Model? How can we do system testing with rapid protoyping? Compare the waterfall and prototype life-cycle model in terms of risk Give some example of performance testing

TDDD04: Integration and System level testing. Lena Buffoni

TDDD04: Integration and System level testing. Lena Buffoni TDDD04: Integration and System level testing Lena Buffoni lena.buffoni@liu.se Lecture plan Integration testing System testing Test automation Model-based testing Remember? Testing in the waterfall model

More information

TDDD04 Software Testing

TDDD04 Software Testing TDDD04 Software Testing Lecture Notes 5 March June 2010 Mohsen Torabzadeh-Tari (presenter), (originator) Department of Computer and Information Science Linköping University, Sweden Integration Testing

More information

Information Systems. Software Engineering. MCQ - Part 2

Information Systems. Software Engineering. MCQ - Part 2 Information Systems & Software Engineering MCQ - Part 2 Information Systems & Software Engineering MCQ - Part 2 Changes made to the system to reduce the future system failure chances is called Preventive

More information

Systems Analysis & Design

Systems Analysis & Design Systems Analysis & Design Dr. Ahmed Lawgali Ahmed.lawgali@uob.edu.ly Slide 1 Systems Analysis & Design Course Textbook: Systems Analysis and Design With UML 2.0 An Object-Oriented Approach, Second Edition

More information

Human Computer Interaction Lecture 14. HCI in Software Process. HCI in the software process

Human Computer Interaction Lecture 14. HCI in Software Process. HCI in the software process Human Computer Interaction Lecture 14 HCI in Software Process HCI in the software process Software engineering and the design process for interactive systems Usability engineering Iterative design and

More information

18-642: Software Development Processes

18-642: Software Development Processes 18-642: Software Development Processes 9/6/2017 Coding Is Essentially 0% of Creating Software http://e.ubmelectronics.com/2013embeddedstudy/index.html 2 Old-School Waterfall Development Cycle Bugs SPECIFY

More information

SOFTWARE LIFE-CYCLE PROCESSES From Waterfall to Extreme Programming

SOFTWARE LIFE-CYCLE PROCESSES From Waterfall to Extreme Programming SOFTWARE LIFE-CYCLE PROCESSES From Waterfall to Extreme Programming Slide 1 Lesson Objectives Understand major activities of software projects Understand the place of these in different lifecycle models

More information

Outline of Unified Process

Outline of Unified Process Outline of Unified Process Koichiro OCHIMIZU School of Information Science JAIST Schedule(3/3) March 12 13:00 Unified Process and COMET 14:30 Case Study of Elevator Control System (problem definition,

More information

VO Software Engineering

VO Software Engineering Administrative Issues Univ.Prof. Dr. Peter Auer Chair for Information Technology Email: auer@unileoben.ac.at Lecture Thursday 10:15 11:45 Project Lab Montag 16:00 19:00 Literature Helmut Balzert, Lehrbuch

More information

CMSC 435: Software Engineering Section 0201

CMSC 435: Software Engineering Section 0201 CMSC 435: Software Engineering Section 0201 Atif M. Memon (atif@cs.umd.edu) 4115 A.V.Williams building Phone: 301-405-3071 Office hours Tu.Th. (11:00am-1:00pm) Don t wait, don t hesitate, do communicate!!

More information

Administrivia. Added 20 more so far. Software Process. Only one TA so far. CS169 Lecture 2. Start thinking about project proposal

Administrivia. Added 20 more so far. Software Process. Only one TA so far. CS169 Lecture 2. Start thinking about project proposal Administrivia Software Process CS169 Lecture 2 Added 20 more so far Will limit enrollment to ~65 students Only one TA so far Start thinking about project proposal Bonus points for proposals that will be

More information

Requirements and Design Overview

Requirements and Design Overview Requirements and Design Overview Robert B. France Colorado State University Robert B. France O-1 Why do we model? Enhance understanding and communication Provide structure for problem solving Furnish abstractions

More information

The requirements engineering process

The requirements engineering process 3 rd Stage Lecture time: 8:30-12:30 AM Instructor: Ali Kadhum AL-Quraby Lecture No. : 5 Subject: Software Engineering Class room no.: Department of computer science Process activities The four basic process

More information

Reducing the costs of rework. Coping with change. Software prototyping. Ways to Cope with change. Benefits of prototyping

Reducing the costs of rework. Coping with change. Software prototyping. Ways to Cope with change. Benefits of prototyping Coping with change Change is inevitable in all large software projects. Business changes lead to new and changed system requirements New technologies open up new possibilities for improving implementations

More information

Systems Analysis and Design

Systems Analysis and Design Systems Analysis and Design Michael Brydon Summer 2003 Slide 1 Introduction to the Course Course structure Lectures: material from the Dennis text Labs: in-lab assignments, demonstrations, and consulting

More information

Software Engineering Lifecycles. Controlling Complexity

Software Engineering Lifecycles. Controlling Complexity Software Engineering Lifecycles Class url:http://laser.cs.umass.edu/courses/cs320.spring11/ Controlling Complexity Separation of Concerns Planning Ahead Do a little work now to make later work easier The

More information

HCI in the software process

HCI in the software process chapter 6 HCI in the software process HCI in the software process Software engineering and the process for interactive systems Usability engineering Iterative and prototyping Design rationale the software

More information

HCI in the software. chapter 6. HCI in the software process. The waterfall model. the software lifecycle

HCI in the software. chapter 6. HCI in the software process. The waterfall model. the software lifecycle HCI in the software process chapter 6 HCI in the software process Software engineering and the process for interactive systems Usability engineering Iterative and prototyping Design rationale the software

More information

1. i. What are the 3 major components of a information system and show their relationship input output

1. i. What are the 3 major components of a information system and show their relationship input output Higher National Diploma in Information Technology First Year, Second semesterexamination-2011 IT2005: System Analysis and Design Answer Script No. of pages: 11 1. i. What are the 3 major components of

More information

Software Development Chapter 1

Software Development Chapter 1 Software Development Chapter 1 1. Introduction Software Applications are increasingly used to tackle problems that concern everyday life : Automatic Bank tellers Airline reservation systems Air traffic

More information

Steps in Using COMET/UML

Steps in Using COMET/UML SWE 621: Software Modeling and Architectural Design Lecture Notes on Software Design Lecture 5- Finite State Machines and Statecharts Hassan Gomaa Dept of Computer Science George Mason University it Fairfax,

More information

Types of Software Testing: Different Testing Types with Details

Types of Software Testing: Different Testing Types with Details Types of Software Testing: Different Testing Types with Details What are the different Types of Software Testing? We, as testers are aware of the various types of Software Testing such as Functional Testing,

More information

Second. Incremental development model

Second. Incremental development model 3 rd Stage Lecture time: 8:30 AM-2:30 PM Instructor: Ali Kadhum AL-Quraby Lecture No. : 4 Subject: Software Engineering Class room no.: Department of computer science Second. Incremental development model

More information

Chapter 4 Objectives

Chapter 4 Objectives Chapter 4 Objectives Eliciting requirements from the customers Modeling requirements Reviewing requirements to ensure their quality Documenting requirements for use by the design and test teams 4.1 The

More information

Human Computer Interaction Lecture 06 [ HCI in Software Process ] HCI in the software process

Human Computer Interaction Lecture 06 [ HCI in Software Process ] HCI in the software process Human Computer Interaction Lecture 06 [ HCI in Software Process ] Imran Ihsan Assistant Professor www.imranihsan.com aucs.imranihsan.com HCI06 - HCI in Software Process 1 HCI in the software process Software

More information

SOFTWARE REQUIREMENTS ENGINEERING LECTURE # 7 TEAM SKILL 2: UNDERSTANDING USER AND STAKEHOLDER NEEDS REQUIREMENT ELICITATION TECHNIQUES-IV

SOFTWARE REQUIREMENTS ENGINEERING LECTURE # 7 TEAM SKILL 2: UNDERSTANDING USER AND STAKEHOLDER NEEDS REQUIREMENT ELICITATION TECHNIQUES-IV 1 SOFTWARE REQUIREMENTS ENGINEERING LECTURE # 7 TEAM SKILL 2: UNDERSTANDING USER AND STAKEHOLDER NEEDS REQUIREMENT ELICITATION TECHNIQUES-IV 12 th June, 2013 Instructor Information 2 Course Instructor:

More information

SE420 - Software Quality Assurance

SE420 - Software Quality Assurance SE420 - Software Quality Assurance http://dilbert.com/strips/comic/2006-01-29/ Lecture 3 Unit Testing, Part-2 January 21, 2019 Sam Siewert Reminders Assignment #2 Posted Thursday [Unit Re-Use] Explore

More information

Software Life Cycle. Main issues: Discussion of different life cycle models Maintenance or evolution

Software Life Cycle. Main issues: Discussion of different life cycle models Maintenance or evolution Software Life Cycle Main issues: Discussion of different life cycle models Maintenance or evolution Introduction software development projects are large and complex a phased approach to control it is necessary

More information

Testing Theory. Agenda - What will you learn today? A Software Life-cycle Model Which part will we talk about today? Theory Lecture Plan

Testing Theory. Agenda - What will you learn today? A Software Life-cycle Model Which part will we talk about today? Theory Lecture Plan heory Lecture Plan 2 esting heory Lecture 8 Software Engineering DDC88/DDC93 autumn 28 Department of Computer and Information Science Linköping University, Sweden L - Course Introduction and Overview L2

More information

Software Testing part II (white box) Lecturer: Giuseppe Santucci

Software Testing part II (white box) Lecturer: Giuseppe Santucci Software Testing part II (white box) Lecturer: Giuseppe Santucci 4. White box testing White-box (or Glass-box) testing: general characteristics Statement coverage Decision coverage Condition coverage Decision

More information

Modern Methods in Software Engineering. Testing.

Modern Methods in Software Engineering. Testing. Modern Methods in Software Engineering Testing www.imit.kth.se/courses/2g1522 Literature used Text book Chapter 11 Introduction Content Terminology Types of errors Dealing with errors Component Testing

More information

Software Process. Software Process

Software Process. Software Process Software Process What is SW process? Definition, Development, Support phases Process models: Waterfall Prototyping Spiral, Incremental & iterative (best practices) UP process model What is it? How does

More information

SE 2730 Final Review

SE 2730 Final Review SE 2730 Final Review 1. Introduction 1) What is software: programs, associated documentations and data 2) Three types of software products: generic, custom, semi-custom Why is semi-custom product more

More information

DOWNLOAD PDF SIXTY MILESTONES OF PROGRESS,

DOWNLOAD PDF SIXTY MILESTONES OF PROGRESS, Chapter 1 : About Your Privacy on this Site Sixty Milestones of Progress, Ladd and Tilton Bank, Portland, Oregon by Martin E. Fitzgerald Myers' Perpetual Calendar and Reference Book A Compendium of Calendars,

More information

Software Engineering (CSC 4350/6350) Rao Casturi

Software Engineering (CSC 4350/6350) Rao Casturi Software Engineering (CSC 4350/6350) Rao Casturi Testing Software Engineering -CSC4350/6350 - Rao Casturi 2 Testing What is testing? Process of finding the divergence between the expected behavior of the

More information

Integration and Testing. Uses slides from Lethbridge & Laganiere, 2001

Integration and Testing. Uses slides from Lethbridge & Laganiere, 2001 Integration and Testing Uses slides from Lethbridge & Laganiere, 2001 Testing phases: V model Requirements Acceptance Testing Specifications System Testing Design Integration Testing Detailed Design Unit

More information

Software Engineering Fall 2015 (CSC 4350/6350) TR. 5:30 pm 7:15 pm. Rao Casturi 11/10/2015

Software Engineering Fall 2015 (CSC 4350/6350) TR. 5:30 pm 7:15 pm. Rao Casturi 11/10/2015 Software Engineering Fall 2015 (CSC 4350/6350) TR. 5:30 pm 7:15 pm Rao Casturi 11/10/2015 http://cs.gsu.edu/~ncasturi1 Class announcements Final Exam date - Dec 1 st. Final Presentations Dec 3 rd. And

More information

Software Prototyping Animating and demonstrating system requirements. Uses of System Prototypes. Prototyping Benefits

Software Prototyping Animating and demonstrating system requirements. Uses of System Prototypes. Prototyping Benefits Software Prototyping Animating and demonstrating requirements Ian Sommerville 1995/2000 (Modified by Spiros Mancoridis 1999) Software Engineering, 6th edition. Chapter 8 Slide 1 Uses of System Prototypes

More information

Introduction to Software Engineering

Introduction to Software Engineering Introduction to Software Engineering Gérald Monard Ecole GDR CORREL - April 16, 2013 www.monard.info Bibliography Software Engineering, 9th ed. (I. Sommerville, 2010, Pearson) Conduite de projets informatiques,

More information

VETRI VINAYAHA COLLEGE OF ENGINEERING AND TECHNOLOGY DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING

VETRI VINAYAHA COLLEGE OF ENGINEERING AND TECHNOLOGY DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING VETRI VINAYAHA COLLEGE OF ENGINEERING AND TECHNOLOGY DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING CS6403 SOFTWARE ENGINEERING II year/ IV sem CSE (Regulation 2013) UNIT 1- SOFTWARE PROCESS AND PROJECT

More information

COSC 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 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 information

THE BENEFITS OF MODEL-BASED ENGINEERING IN PRODUCT DEVELOPMENT FROM PCB TO SYSTEMS MENTOR GRAPHICS

THE BENEFITS OF MODEL-BASED ENGINEERING IN PRODUCT DEVELOPMENT FROM PCB TO SYSTEMS MENTOR GRAPHICS THE BENEFITS OF MODEL-BASED ENGINEERING IN PRODUCT DEVELOPMENT FROM PCB TO SYSTEMS MENTOR GRAPHICS P C B D E S I G N W H I T E P A P E R w w w. m e n t o r. c o m Simulation models are often used to help

More information

Software Engineering Fall 2014

Software Engineering Fall 2014 Software Engineering Fall 2014 (CSC 4350/6350) Mon.- Wed. 5:30 pm 7:15 pm ALC : 107 Rao Casturi 11/10/2014 Final Exam date - Dec 10 th? Class announcements Final Presentations Dec 3 rd. And Dec 8 th. Ability

More information

Level: M.Ed. Credit Hour: 3 (2+1) Semester: Second Teaching Hour: 80(32+48)

Level: M.Ed. Credit Hour: 3 (2+1) Semester: Second Teaching Hour: 80(32+48) Course Title: Software Engineering Course No. : ICT Ed 528 Nature of course: Theoretical + Practical Level: M.Ed. Credit Hour: 3 (2+1) Semester: Second Teaching Hour: 80(32+48) 1. Course Description The

More information

Lecture 9 Requirements Engineering II

Lecture 9 Requirements Engineering II Lecture 9 Requirements Engineering II Software Engineering ITCS 3155 Fall 2008 Dr. Jamie Payton Department of Computer Science University of North Carolina at Charlotte September 23, 2008 Announcements

More information

CS350 Lecture 2 Requirements Engineering. Doo-Hwan Bae

CS350 Lecture 2 Requirements Engineering. Doo-Hwan Bae CS350 Lecture 2 Requirements Engineering Doo-Hwan Bae bae@se.kaist.ac.kr Contents Overview of Requirements Engineering OO Analysis: Domain modeling, Use-case, sequence, class Structured Analysis: Dataflow

More information

Refresher: Lifecycle models. Lecture 22: Moving into Design. Analysis vs. Design. Refresher: different worlds. Analysis vs. Design.

Refresher: Lifecycle models. Lecture 22: Moving into Design. Analysis vs. Design. Refresher: different worlds. Analysis vs. Design. Analysis vs. Design Why the distinction? Design Processes Logical vs. Physical Design System vs. Detailed Design Architectures System Architecture Software Architecture Architectural Patterns (next lecture)

More information

User-Centered Development

User-Centered Development Software Lifecycle CS470 User-Centered Development User-centered development refers to a design process for creating a system that meets the needs of the user Users should be included in the design process

More information

CS SOFTWARE ENGINEERING QUESTION BANK SIXTEEN MARKS

CS SOFTWARE ENGINEERING QUESTION BANK SIXTEEN MARKS DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING CS 6403 - SOFTWARE ENGINEERING QUESTION BANK SIXTEEN MARKS 1. Explain iterative waterfall and spiral model for software life cycle and various activities

More information

Specifying and Prototyping

Specifying and Prototyping Contents Specifying and Prototyping M. EVREN KIYMAÇ 2008639030 What is Specifying? Gathering Specifications Specifying Approach & Waterfall Model What is Prototyping? Uses of Prototypes Prototyping Process

More information

Incremental development A.Y. 2018/2019

Incremental development A.Y. 2018/2019 Incremental development A.Y. 2018/2019 Incremental development Interleaves the activities of specification, development, and validation. The system is developed as a series of versions (increments), with

More information

Rapid Application Development [RAD]

Rapid Application Development [RAD] Rapid Application Development [RAD] RAD In Solution Delivery,, Beyond Prototypes www.lytecube.com Author: Girish Bellalcheru CTO, Lytecube.com Abstract Rapid application development has traditionally been

More information

Software Testing Interview Question and Answer

Software Testing Interview Question and Answer Software Testing Interview Question and Answer What is Software Testing? A process of analyzing a software item to detect the differences between existing and required conditions (i.e., defects) and to

More information

VANCOUVER Chapter Study Group. BABOK Chapter 9 Techniques

VANCOUVER Chapter Study Group. BABOK Chapter 9 Techniques VANCOUVER Chapter Study Group BABOK Chapter 9 Techniques May 27, 2015 David Ghotbi, CBAP Agenda Chapter 8 Review Pop Quiz Break Chapter 9 Review Pop Quiz Q & A 2 Chapter 9 Techniques Techniques: Alter

More information

Introduction to Software Engineering

Introduction to Software Engineering Chapter 1 Introduction to Software Engineering Content 1. Introduction 2. Components 3. Layered Technologies 4. Generic View of Software Engineering 4. Generic View of Software Engineering 5. Study of

More information

Human-Computer Interaction. CA357 Lecture 7 More on Prototyping

Human-Computer Interaction. CA357 Lecture 7 More on Prototyping Human-Computer Interaction CA357 Lecture 7 More on Prototyping Overview By the end of the session, you should be aware of: Design Importance of prototyping Low fidelity vs High fidelity prototyping Why

More information

History of object-oriented approaches

History of object-oriented approaches Prof. Dr. Nizamettin AYDIN naydin@yildiz.edu.tr http://www.yildiz.edu.tr/~naydin Object-Oriented Oriented Systems Analysis and Design with the UML Objectives: Understand the basic characteristics of object-oriented

More information

Bridge Course On Software Testing

Bridge Course On Software Testing G. PULLAIAH COLLEGE OF ENGINEERING AND TECHNOLOGY Accredited by NAAC with A Grade of UGC, Approved by AICTE, New Delhi Permanently Affiliated to JNTUA, Ananthapuramu (Recognized by UGC under 2(f) and 12(B)

More information

SOFTWARE LIFE-CYCLE MODELS 2.1

SOFTWARE LIFE-CYCLE MODELS 2.1 SOFTWARE LIFE-CYCLE MODELS 2.1 Outline Software development in theory and practice Software life-cycle models Comparison of life-cycle models 2.2 Software Development in Theory Ideally, software is developed

More information

Connecting with Computer Science Chapter 13 Review: Chapter Summary:

Connecting with Computer Science Chapter 13 Review: Chapter Summary: Connecting with Computer Science Chapter 13 Review: Chapter Summary: Software engineering involves many different steps to create an application that meets end user s needs. The process of building an

More information

Quote by Bruce Sterling, from: A Software Testing Primer, Nick Jenkins

Quote by Bruce Sterling, from: A Software Testing Primer, Nick Jenkins Software Testing Why Test? Quote by Bruce Sterling, from: A Software Testing Primer, Nick Jenkins https://www.typemock.com/software-bugs-infographic A bug found at design time costs ten times less to fix

More information

QUESTION BANK UNIT 1 SOFTWARE PROCESS AND PROJECT MANAGEMENT Part A

QUESTION BANK UNIT 1 SOFTWARE PROCESS AND PROJECT MANAGEMENT Part A QUESTION BANK UNIT 1 SOFTWARE PROCESS AND PROJECT MANAGEMENT Part A 1. What is software engineering?[apr MAY 2010] Software engineering is a discipline in which theories, methods and tools are applied

More information

Advanced VLSI Design Prof. Virendra K. Singh Department of Electrical Engineering Indian Institute of Technology Bombay

Advanced VLSI Design Prof. Virendra K. Singh Department of Electrical Engineering Indian Institute of Technology Bombay Advanced VLSI Design Prof. Virendra K. Singh Department of Electrical Engineering Indian Institute of Technology Bombay Lecture 40 VLSI Design Verification: An Introduction Hello. Welcome to the advance

More information

(c) Addison Wesley Chapter 3. ! Interviewing customers and domain experts. ! Questionnaires. ! Observation. ! Study of documents and software systems

(c) Addison Wesley Chapter 3. ! Interviewing customers and domain experts. ! Questionnaires. ! Observation. ! Study of documents and software systems MACIASZEK, L.A. (2001): Analysis and System Design. Developing Information Systems with UML, Addison Wesley elicitation Domain Expert Customer Chapter 3 Determination Domain Knowledge Business Analyst

More information

SFU CMPT week 11

SFU CMPT week 11 SFU CMPT-363 2004-2 week 11 Manuel Zahariev E-mail: manuelz@cs.sfu.ca Based on course material from Arthur Kirkpatrick, Alissa Antle and Paul Hibbits July 21, 2004 1 Analytic Methods Advantages can be

More information

MA651 Topology. Lecture 4. Topological spaces 2

MA651 Topology. Lecture 4. Topological spaces 2 MA651 Topology. Lecture 4. Topological spaces 2 This text is based on the following books: Linear Algebra and Analysis by Marc Zamansky Topology by James Dugundgji Fundamental concepts of topology by Peter

More information

The software lifecycle and its documents

The software lifecycle and its documents The software lifecycle and its documents Supplementary material for Software Architecture course B. Meyer, May 2006 Lifecycle models Origin: Royce, 1970, Waterfall model Scope: describe the set of processes

More information

Software Engineering Theory. Lena Buffoni (slides by Kristian Sandahl/Mariam Kamkar) Department of Computer and Information Science

Software Engineering Theory. Lena Buffoni (slides by Kristian Sandahl/Mariam Kamkar) Department of Computer and Information Science Software Engineering Theory Lena Buffoni (slides by Kristian Sandahl/Mariam Kamkar) Department of Computer and Information Science 2015-09-20 Title/Lecturer SEPTEMBER 20, 2016 2 Requirement formalization

More information

Towards an Integrated System Model for Testing and Verification

Towards an Integrated System Model for Testing and Verification Towards an Integrated System Model for Testing and Verification Benjamin Hummel and Peter Braun MiSE 2008 Domain Development of controller software for production machines Special case of mechatronic system

More information

SRM ARTS AND SCIENCE COLLEGE SRM NAGAR, KATTANKULATHUR

SRM ARTS AND SCIENCE COLLEGE SRM NAGAR, KATTANKULATHUR SRM ARTS AND SCIENCE COLLEGE SRM NAGAR, KATTANKULATHUR 603203 DEPARTMENT OF COMPUTER SCIENCE & APPLICATIONS QUESTION BANK (2017-2018) Course / Branch : M.Sc-CST Semester / Year : Even / II Subject Name

More information

Test Automation. 20 December 2017

Test Automation. 20 December 2017 Test Automation 20 December 2017 The problem of test automation Testing has repetitive components, so automation is justified The problem is cost-benefit evaluation of automation [Kaner] Time for: test

More information

CSE332: Data Abstractions Lecture 19: Mutual Exclusion and Locking

CSE332: Data Abstractions Lecture 19: Mutual Exclusion and Locking CSE332: Data Abstractions Lecture 19: Mutual Exclusion and Locking James Fogarty Winter 2012 Including slides developed in part by Ruth Anderson, James Fogarty, Dan Grossman Banking Example This code is

More information

Design, prototyping and construction

Design, prototyping and construction Overview Design, prototyping and construction Prototyping and construction Conceptual design Physical design Generating prototypes Tool support What is a prototype? Why prototype? A prototype is a small-scale

More information

COMP6471 WINTER User-Centered Design

COMP6471 WINTER User-Centered Design COMP6471 WINTER 2003 User-Centered Design Instructor: Shahriar Ameri, Ph.D. Student: Pedro Maroun Eid, ID# 5041872. Date of Submission: Monday, March 10, 2003. (Week 9) Outline Outline... 2 ABSTRACT...3

More information

CPS352 Lecture - The Transaction Concept

CPS352 Lecture - The Transaction Concept Objectives: CPS352 Lecture - The Transaction Concept Last Revised March 3, 2017 1. To introduce the notion of a transaction and the ACID properties of a transaction 2. To introduce the notion of the state

More information

Certified Tester Foundation Level(CTFL)

Certified Tester Foundation Level(CTFL) Certified Tester Foundation Level(CTFL) ISTQB : International Software Testing Qualifications Board Heading: The International Software Testing Qualifications Board (ISTQB) is an internationally recognized

More information

*ANSWERS * **********************************

*ANSWERS * ********************************** CS/183/17/SS07 UNIVERSITY OF SURREY BSc Programmes in Computing Level 1 Examination CS183: Systems Analysis and Design Time allowed: 2 hours Spring Semester 2007 Answer ALL questions in Section A and TWO

More information

Formal Specification and Verification

Formal Specification and Verification Formal Specification and Verification Introduction to Promela Bernhard Beckert Based on a lecture by Wolfgang Ahrendt and Reiner Hähnle at Chalmers University, Göteborg Formal Specification and Verification:

More information

Lecture 6: Requirements Engineering

Lecture 6: Requirements Engineering Lecture 6: Requirements Engineering Software System Design and Implementation ITCS/ITIS 6112/8112 001 Fall 2008 Dr. Jamie Payton Department of Computer Science University of North Carolina at Charlotte

More information

Learn Well Technocraft

Learn Well Technocraft -This course includes Manual Testing aspects plus basic automation testing tools. The content included in the syllabus is sufficient for clearing the ISTQB certification. Note: We have combo course and

More information

Software Engineering

Software Engineering Software Engineering 0 Software design process or life cycle called Software Engineering 0 that addresses the management and technical issues of the development of software systems. 0 The software life

More information

RE Process. Lawrence Chung Department of Computer Science The University of Texas at Dallas

RE Process. Lawrence Chung Department of Computer Science The University of Texas at Dallas 1 RE Process Lawrence Chung Department of Computer Science The University of Texas at Dallas 2 RE Process: What is a Process? Given input, transforms it into output Consist of a set of activities Process

More information

Darshan Institute of Engineering & Technology for Diploma Studies Rajkot Unit-1

Darshan Institute of Engineering & Technology for Diploma Studies Rajkot Unit-1 Failure Rate Darshan Institute of Engineering & Technology for Diploma Studies Rajkot Unit-1 SOFTWARE (What is Software? Explain characteristics of Software. OR How the software product is differing than

More information

1 Visible deviation from the specification or expected behavior for end-user is called: a) an error b) a fault c) a failure d) a defect e) a mistake

1 Visible deviation from the specification or expected behavior for end-user is called: a) an error b) a fault c) a failure d) a defect e) a mistake Sample ISTQB examination 1 Visible deviation from the specification or expected behavior for end-user is called: a) an error b) a fault c) a failure d) a defect e) a mistake 2 Regression testing should

More information

Software Processes. Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 4 Slide 1

Software Processes. Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 4 Slide 1 Software Processes Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 4 Slide 1 Objectives To introduce software process models To describe three generic process models and when they may be

More information

Development of Integrated Hard- and Software Systems: Tasks and Processes

Development of Integrated Hard- and Software Systems: Tasks and Processes TECHNISCHE UNIVERSITÄT ILMENAU Development of Integrated Hard- and Software Systems: Tasks and Processes Integrated Communication Systems http://www.tu-ilmenau.de/iks General Development Tasks Analysis

More information

Development of Integrated Hard- and Software Systems: Tasks and Processes

Development of Integrated Hard- and Software Systems: Tasks and Processes TECHNISCHE UNIVERSITÄT ILMENAU Development of Integrated Hard- and Software Systems: Tasks and Processes Integrated Hard- and Software Systems http://www.tu-ilmenau.de/ihs System Development Poor Process

More information

Usability & UX testing

Usability & UX testing Usability & UX testing 10. Integrating & planning usability testing in development (case study) User-centred design ISO 9241-210 : Human-centred design for interactive systems Meets Requirements 5. Usability

More information

Algorithms, Probability, and Computing Midterm Exam HS17

Algorithms, Probability, and Computing Midterm Exam HS17 Institute of Theoretical Computer Science Mohsen Ghaffari, Angelika Steger, David Steurer, Emo Welzl, Peter Widmayer Algorithms, Probability, and Computing Midterm Exam HS17 Candidate First name:...................................................

More information

Product. e ss. P roc. so get the right requirements. Garbage in garbage out,

Product. e ss. P roc. so get the right requirements. Garbage in garbage out, If software is simply for automation, what would a washing machine be like? 1 RE Process Lawrence Chung Department of Computer Science The University of Texas at Dallas 2 RE Process: What is a Process?

More information

ISTQB Advanced Level (CTAL)

ISTQB Advanced Level (CTAL) ISTQB Advanced Level (CTAL) 2012 Syllabus - Overview Mike Smith Chairman, Advanced Level Working Group (ALWG) December 2012 Contents 1 2 3 4 5 6 Introduction to ISTQB CTAL 2012: What s changed? CTAL 2012:

More information

Agile Development

Agile Development Agile Development 12-04-2013 Many flavors: Waterfall, Spiral Rapid Application Development (DSDM) Xtreme Programming (XP, an agile methodology) Usability Engineering Model, Star Iteration is done throughout

More information

System Development Life Cycle Methods/Approaches/Models

System Development Life Cycle Methods/Approaches/Models Week 11 System Development Life Cycle Methods/Approaches/Models Approaches to System Development System Development Life Cycle Methods/Approaches/Models Waterfall Model Prototype Model Spiral Model Extreme

More information

DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING CS SOFTWARE ENGINEERING

DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING CS SOFTWARE ENGINEERING DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING CS 6403 - SOFTWARE ENGINEERING QUESTION BANK TWO MARKS UNIT I SOFTWARE PROCESS AND PROJECT MANAGEMENT 1. What is software engineering? Software engineering

More information

Topic: Software Verification, Validation and Testing Software Engineering. Faculty of Computing Universiti Teknologi Malaysia

Topic: Software Verification, Validation and Testing Software Engineering. Faculty of Computing Universiti Teknologi Malaysia Topic: Software Verification, Validation and Testing Software Engineering Faculty of Computing Universiti Teknologi Malaysia 2016 Software Engineering 2 Recap on SDLC Phases & Artefacts Domain Analysis

More information

Tonight s Agenda. CSC340: Requirements Engineering. Course Objectives. Requirements Engineering. Software Engineering. What is Software Engineering?

Tonight s Agenda. CSC340: Requirements Engineering. Course Objectives. Requirements Engineering. Software Engineering. What is Software Engineering? Tonight s Agenda CSC340: Engineering Jennifer Campbell Lecturer Part 1 Introduction to course content Course information Changes to the SE courses/program Part 2 What are requirements? CSC340 University

More information

Process Models. Projects Process. Common Process Models. Typical Student Process Model. Waterfall Model

Process Models. Projects Process. Common Process Models. Typical Student Process Model. Waterfall Model Process Models A process model specifies a general process, usually as a set of stages This model will be suitable for a class of projects i.e. a model provides generic structure of the process that can

More information

User Experience Metric (UXM) and Index of Integration (IoI): Measuring Impact of HCI Activities

User Experience Metric (UXM) and Index of Integration (IoI): Measuring Impact of HCI Activities User Experience Metric (UXM) and Index of Integration (IoI): Measuring Impact of HCI Activities Anirudha Joshi, Industrial Design Centre, IIT Bombay Design 1 Sanjay Tripathi, Tech Mahindra Ltd. Outsourced

More information

Lesson 12: Order and Compare with Benchmarks

Lesson 12: Order and Compare with Benchmarks Lesson 12: Order and Compare with Benchmarks Objective By the end of the lesson, students will be able to order and compare fractions with like and unlike denominators, using the definition for equivalent

More information

Lecture 8 Requirements Engineering

Lecture 8 Requirements Engineering Lecture 8 Requirements Engineering Software Engineering ITCS 3155 Fall 2008 Dr. Jamie Payton Department of Computer Science University of North Carolina at Charlotte September 18, 2008 Lecture Overview

More information