SlideShare a Scribd company logo
1
Overview
Functional Testing
Boundary Value Testing (BVT)
Boundary Value Analysis
Robustness Testing
Worst Case Testing
Special Value Testing
Equivalence Class Testing
Weak Equivalence Class Testing
Strong Equivalence Class Testing
Traditional Equivalence Class testing
Decision Table Based testing
Decision Tables
Technique
Examples
2
Decision Tables - General
Decision tables are a precise yet compact way to
model complicated logic. Decision tables, like if-
then-else and switch-case statements, associate
conditions with actions to perform. But, unlike the
control structures found in traditional
programming languages, decision tables can
associate many independent conditions with
several actions in an elegant way.
“http://en.wikipedia.org/wiki/Decision_table”
3
Decision Tables - Usage
• Decision tables make it easy to observe that all possible
conditions are accounted for.
• Decision tables can be used for:
– Specifying complex program logic
– Generating test cases (Also known as logic-based testing)
• Logic-based testing is considered as:
– structural testing when applied to structure (i.e. control flowgraph
of an implementation).
– functional testing when applied to a specification.
4
Decision Tables - Structure
Conditions - (Condition stub) Condition Alternatives –
(Condition Entry)
Actions – (Action Stub) Action Entries
• Each condition corresponds to a variable, relation or predicate
• Possible values for conditions are listed among the condition
alternatives
• Boolean values (True / False) – Limited Entry Decision Tables
• Several values – Extended Entry Decision Tables
• Don’t care value
• Each action is a procedure or operation to perform
• The entries specify whether (or in what order) the action is to be
performed

Recommended for you

Object Oriented Analysis and Design
Object Oriented Analysis and DesignObject Oriented Analysis and Design
Object Oriented Analysis and Design

This document provides an overview of object-oriented analysis and design. It defines key terms and concepts in object-oriented modeling like use cases, class diagrams, states, sequences. It describes developing requirements models using use cases and class diagrams. It also explains modeling object behavior through state and sequence diagrams and transitioning analysis models to design.

information systems design
Threads .ppt
Threads .pptThreads .ppt
Threads .ppt

This document discusses threads and multithreading in operating systems. A thread is a flow of execution through a process with its own program counter, registers, and stack. Multithreading allows multiple threads within a process to run concurrently on multiple processors. There are three relationship models between user threads and kernel threads: many-to-many, many-to-one, and one-to-one. User threads are managed in userspace while kernel threads are managed by the operating system kernel. Both have advantages and disadvantages related to performance, concurrency, and complexity.

Data Models
Data ModelsData Models
Data Models

A data model is a set of concepts that define the structure of data in a database. The three main types of data models are the hierarchical model, network model, and relational model. The hierarchical model uses a tree structure with parent-child relationships, while the network model allows many-to-many relationships but is more complex. The relational model - which underlies most modern databases - uses tables with rows and columns to represent data, and relationships are represented by values in columns.

data modelhierarchical modelnetwork model
5
• To express the program logic we can use a limited-entry
decision table consisting of 4 areas called the condition
stub, condition entry, action stub and the action entry:
Rule1 Rule2 Rule3 Rule4
Condition
1
Yes Yes No No
Condition
2
Yes X No X
Condition
3
No Yes No X
Condition
4
No Yes No Yes
Action1 Yes Yes No No
Action2 No No Yes No
Action3 No No No Yes
Condition
stub
Action stub
Action Entry
Condition entry
6
• We can specify default rules to indicate the action to be
taken when none of the other rules apply.
• When using decision tables as a test tool, default rules and
their associated predicates must be explicitly provided.
Rule5 Rule6 Rule7 Rule8
Condition1 X No Yes Yes
Condition2 X Yes X No
Condition3 Yes X No No
Condition4 No No Yes X
Default
action
Yes Yes Yes Yes
7
Decision Table - Example
Conditions
Printer does not print Y Y Y Y N N N N
A red light is flashing Y Y N N Y Y N N
Printer is unrecognized
Y N Y N Y N Y N
Actions
Heck the power cable X
Check the printer-computer cable X X
Ensure printer software is installed X X X X
Check/replace ink X X X X
Check for paper jam X X
Printer Troubleshooting
8
Decision Table Example

Recommended for you

Recovery system
Recovery systemRecovery system
Recovery system

This document discusses recovery systems in relational database management. It covers failure classification, storage structures, log-based recovery using deferred and immediate database modification, shadow paging, checkpoints, and the ARIES recovery algorithm. Log-based recovery uses write-ahead logging and redo/undo operations to recover transactions and ensure atomicity and consistency after failures. Checkpoints improve recovery efficiency by limiting the log records that need to be processed.

Er model ppt
Er model pptEr model ppt
Er model ppt

The document discusses the entity relationship (ER) model used for conceptual database design. It describes the key components of an ER diagram including entities represented as rectangles, attributes described as ovals, and relationships shown as diamonds. Different types of relationships are also defined such as one-to-one, one-to-many, many-to-one, and many-to-many. The ER model provides a way to design and visualize the entities, attributes, and relationships within a database in a simple diagram.

SE_Lec 07_UML CLASS DIAGRAM
SE_Lec 07_UML CLASS DIAGRAMSE_Lec 07_UML CLASS DIAGRAM
SE_Lec 07_UML CLASS DIAGRAM

The class diagram shows the key classes and relationships in a school information modeling system. The main classes are School, Department, Subject, Student, and Instructor. A school has departments and a department offers subjects. A student can enroll in up to 5 subjects and an instructor can teach up to 3 subjects. An instructor is assigned to one or more departments. The class diagram also shows the relationships between these classes such as a student attending a school and taking subjects, and an instructor teaching subjects.

9
Decision Table Development
Methodology
1. Determine conditions and values
2. Determine maximum number of rules
3. Determine actions
4. Encode possible rules
5. Encode the appropriate actions for each rule
6. Verify the policy
7. Simplify the rules (reduce if possible the number
of columns)
10
Decision Tables - Usage
• The use of the decision-table model is applicable when :
– the specification is given or can be converted to a decision table .
– the order in which the predicates are evaluated does not affect the
interpretation of the rules or resulting action.
– the order of rule evaluation has no effect on resulting action .
– once a rule is satisfied and the action selected, no other rule need be
examined.
– the order of executing actions in a satisfied rule is of no consequence.
• The restrictions do not in reality eliminate many potential applications.
– In most applications, the order in which the predicates are evaluated is
immaterial.
– Some specific ordering may be more efficient than some other but in
general the ordering is not inherent in the program's logic.
11
Decision Tables - Issues
• Before using the tables, ensure:
– rules must be complete
• every combination of predicate truth values plus
default cases are explicit in the decision table
– rules must be consistent
• every combination of predicate truth values results
in only one action or set of actions
12
Processes
• These lectures all relate to processes:
– Describing, analyzing, developing, modifying,
documenting,…
• Types of processes include:
– Decision processes
– Data flow & manipulation processes, …
• Specific approaches depend on internal
needs & practices, standards
• “A process model is a formal way of
representing how a business operates”

Recommended for you

Deadlock ppt
Deadlock ppt Deadlock ppt
Deadlock ppt

This document discusses deadlocks, including the four conditions required for a deadlock, methods to avoid deadlocks like using safe states and Banker's Algorithm, ways to detect deadlocks using wait-for graphs and detection algorithms, and approaches to recover from deadlocks such as terminating processes or preempting resources.

Operating system 02 os as an extended machine
Operating system 02 os as an extended machineOperating system 02 os as an extended machine
Operating system 02 os as an extended machine

Functions performed by the operating systems: Managing the hardware resources of the computer Providing the user-interface components Providing a platform for software developers to write applications

vaibhav khannaoperating system
Interaction Modeling
Interaction ModelingInteraction Modeling
Interaction Modeling

Interaction modeling describes how objects in a system interact and communicate through message passing. It uses several UML diagrams including use case diagrams, sequence diagrams, activity diagrams, and collaboration diagrams. A use case diagram shows relationships between actors and use cases, while a sequence diagram depicts the temporal order of messages exchanged between objects to complete a scenario. An activity diagram models system workflows and dependencies between activities. A collaboration diagram displays message flows between objects to achieve a particular task.

object oriented programminginteraction modeloopj
13
Flow charts
• There are several standards – just be
consistent
• Manual methods vs. automated tools
– Visio, PowerPoint, etc.
• Waves of fashion / variety of uses
– Programming
– Documenting processes
– Multi-user settings
– General documentation of all sorts
14
Flow chart techniques
• Basic symbols
– Terminator
– Process
– Decision
– Predefined process
– On-page connector
– Connector
T e r m in a t o r
P r o c e s s
D e c is io n
P r e d e f in e d
P r o c e s s
1
Y e s
N o
T h is c a llo u t
p o in t s t o a
c o n n e c t o r
15
Flowchart guidelines
1. Top to bottom, left to right on the page
2. Activity being flowcharted should be defined
carefully and made clear to reader
3. Identity start and end
4. Use “one-verb” (verb-noun) descriptions
– Examples: “prepare statement,” “file record”
1. Keep steps in proper sequence
2. Observe scope & range of activity; branches
should be on separate pages
3. Use standard symbols; lines should NOT cross
– Use cross-overs only if necessary; keep lines straight
1. No blind alleys or endless loops
What is UML and Why we use UML?
1997: UML 1.0, 1.1
1996: UML 0.9 & 0.91
1995: Unified Method 0.8
Other methods
Booch ‘91
Booch ‘93 OMT - 2
OMT - 1
Year Version
2003: UML 2.0
2001: UML 1.4
1999: UML 1.3

Recommended for you

Analysis modeling & scenario based modeling
Analysis modeling &  scenario based modeling Analysis modeling &  scenario based modeling
Analysis modeling & scenario based modeling

The document discusses requirements modeling and analysis modeling in software engineering. It provides information on: 1) The different types of models that can be created during requirements modeling, including requirements models, design models, scenario-based models, data models, class-based models, flow-oriented models, and behavioral models. 2) The purposes of requirements modeling, which include representing customer requirements, gaining a better understanding of the system, and providing information to help with system design and development. 3) Key principles of requirements modeling, such as representing the information, functional, and behavioral domains of the system and partitioning models in a layered/hierarchical way. 4) Specific modeling techniques like scenario-based modeling, data

scenario based modelinganalysis modelingsoftware engineering
DeadLock in Operating-Systems
DeadLock in Operating-SystemsDeadLock in Operating-Systems
DeadLock in Operating-Systems

Deadlocks-An Unconditional Waiting Situation in Operating System. We must make sure of This concept well before understanding deep in to Operating System. This PPT will understands you to get how the deadlocks Occur and how can we Detect, avoid and Prevent the deadlocks in Operating Systems.

deadlocksdeadlock avoidancedeadlock prevention
process creation OS
process creation OSprocess creation OS
process creation OS

This document provides an overview of processes and process management in operating systems. It discusses how processes are created using fork() and how a new program can be run using exec(). The fork() system call duplicates the calling process, while exec() replaces the current process memory with a new program. The parent process id and child process id are returned and wait() is used by the parent to wait for a child process to terminate.

How to use UML diagrams to
design software system?
• Types of UML Diagrams:
 Use Case Diagram
 Class Diagram
 Sequence Diagram
 Collaboration Diagram
 State Diagram
This is only a subset of diagrams … but are most widely used
Use-Case Diagrams
• A use-case diagram is a set of use cases
• A use case is a model of the interaction between
 External users of a software product (actors) and
 The software product itself
 More precisely, an actor is a user playing a specific role
• describing a set of user scenarios
• capturing user requirements
• contract between end user and software developers
Use-Case Diagrams
Library System
Borrow
Order Title
Fine Remittance
Client
Employee
Supervisor
Boundary
Actor
Use Case
Use-Case Diagrams
• Actors: A role that a user plays with respect to the system, including human
users and other systems. e.g., inanimate physical objects (e.g. robot); an
external system that needs some information from the current system.
• Use case: A set of scenarios that describing an interaction between a user
and a system, including alternatives.
• System boundary: rectangle diagram representing the boundary between
the actors and the system.

Recommended for you

Object Modeling Techniques
Object Modeling TechniquesObject Modeling Techniques
Object Modeling Techniques

This ppt covers the object modeling techniques. It has four topics: object model, dynamic model, functional model and the relationship between these models.

Database Normalization 1NF, 2NF, 3NF, BCNF, 4NF, 5NF
Database Normalization 1NF, 2NF, 3NF, BCNF, 4NF, 5NFDatabase Normalization 1NF, 2NF, 3NF, BCNF, 4NF, 5NF
Database Normalization 1NF, 2NF, 3NF, BCNF, 4NF, 5NF

The document discusses normalization in database design. Normalization is the process of organizing data to avoid redundancy and dependency. It involves splitting tables and restructuring relationships between tables. The document outlines various normal forms including 1NF, 2NF, 3NF, BCNF, 4NF and 5NF and provides examples to illustrate how to normalize tables to conform to each form.

databasenormalizationdatabase normalization
Requirements engineering for agile methods
Requirements engineering for agile methodsRequirements engineering for agile methods
Requirements engineering for agile methods

In systems engineering and software engineering, requirements analysis encompasses those tasks that go into determining the needs or conditions to meet for a new or altered product or project, taking account of the possibly conflicting requirements of the various stakeholders, analyzing, documenting, validating and managing software or system requirements.

engineeringmethodrequirement
Use-Case Diagrams
• Association:
communication between an actor and a use case; Represented by a solid line.
• Generalization: relationship between one general use case and a special use
case (used for defining special alternatives) Represented by a line with a
triangular arrow head toward the parent use case.
Use-Case Diagrams
Extend: a dotted line labeled <<extend>> with
an arrow toward the base case. The extending
use case may add behavior to the base use
case. The base class declares “extension
points”.
Include: a dotted line labeled <<include>>
beginning at base use case and ending with an
arrows pointing to the include use case. The
include relationship occurs when a chunk of
behavior is similar across more than one use
case. Use “include” in stead of copying the
description of that behavior.
<<include>>
Use-Case Diagrams
Figure 16.12
The McGraw-Hill Companies, 2005
Use-Case Diagrams
• Both Make Appointment
and Request Medication
include Check Patient
Record as a subtask
(include)
• The extension point is
written inside the base
case Pay bill; the
extending class Defer
payment adds the
behavior of this extension
point. (extend)
• Pay Bill is a parent use
case and Bill Insurance
is the child use case.
(generalization)
(TogetherSoft, Inc)

Recommended for you

Object oriented analysis
Object oriented analysisObject oriented analysis
Object oriented analysis

Object oriented analysis emphasizes investigating the problem domain to identify relevant objects and their relationships. The key goals are to define relevant classes and their attributes, operations, relationships, and behaviors through iterative refinement. Various analysis methods take different approaches, but generally involve use case modeling, class modeling, and behavior modeling.

Overview of UML Diagrams
Overview of UML DiagramsOverview of UML Diagrams
Overview of UML Diagrams

UML (Unified Modeling Language) is a standard modeling language used to specify, visualize, and document software systems. It uses graphical notations to model structural and behavioral aspects of a system. Common UML diagram types include use case diagrams, class diagrams, sequence diagrams, and state diagrams. Use case diagrams model user interactions, class diagrams show system entities and relationships, sequence diagrams visualize object interactions over time, and state diagrams depict object states and transitions. UML aims to simplify the complex process of software design through standardized modeling.

unified modelling languagesoftware engineeringuml diagrams
Decision Table Training Session
Decision Table Training SessionDecision Table Training Session
Decision Table Training Session

The document discusses decision tables, which are a testing technique that lists causes and effects in a matrix format. It provides steps for creating a decision table, including listing causes, calculating combinations, filling out the table, reducing combinations, checking covered combinations, and adding effects. It also includes an exercise and proposed solution for creating a decision table for a mailing campaign targeting customers with different types, lines, and credit ratings.

Instances and Schemas
• Similar to types and variables in
programming languages
• Schema – the logical structure of the
database (e.g., set of customers and
accounts and the relationship between
them)
• Instance – the actual content of the database
at a particular point in time
Data Independence
• Ability to modify a schema definition in
one level without affecting a schema
definition in the other levels.
• The interfaces between the various levels
and components should be well defined so
that changes in some parts do not seriously
influence others.
• Two levels of data independence
– Physical data independence
– Logical data independence
Data Models
• A collection of tools for describing:
– Data
– Data relationships
– Data semantics
– Data constraints
• Object-based logical models
– Entity-relationship model
– Object-oriented model
– Semantic model
– Functional model
• Record-based logical models
– Relational model (e.g., SQL/DS, DB2)
– Network model
– Hierarchical model (e.g., IMS)
Entity-Relationship Model
Example of entity-relationship model
customer accountdepositor
social-security customer-street
customer-name
account-number
balancecustomer-city

Recommended for you

Test design techniques
Test design techniquesTest design techniques
Test design techniques

This document discusses various test design techniques, including static design techniques like equivalence partitioning and boundary value analysis, which divide input data into partitions and test boundary values. Dynamic techniques like pairwise testing are also explained, which test interactions between pairs of factors. Exploratory testing involves writing test cases during execution to explore a system creatively. Examples are provided for each technique. The advantages of using techniques like easier test reproduction and transferability are highlighted. A variety of materials on software testing are listed for further reference.

Test design techniques
Test design techniquesTest design techniques
Test design techniques

This document discusses various white box and black box software testing techniques. It covers topics like equivalence partitioning, boundary value analysis, basis path testing, control structure testing, program technique testing, and mutation testing. Specific techniques like partitioning input domains into equivalence classes based on conditions and selecting test cases at boundaries are explained through examples.

software testingsoftware
Test design techniques
Test design techniquesTest design techniques
Test design techniques

The document summarizes a series of talks on software testing. The talks will cover the different stages of the test life cycle, including: decomposing the system into independent units; building tests for formal models; establishing testability through test harnesses; automating tests using frameworks; and including tests in continuous integration. The document then provides more details about the second talk on building tests for formal models and describes the use of formal models in test design techniques.

test software test_design
Relational Model
Example of tabular data in the relational model:
name ssn street city account-number
Johnson 192-83-7465 Alma Palo Alto A-101
Smith 019-28-3746 North Rye A-215
Johnson 192-83-7465 Alma Palo Alto A-201
Jones 321-12-3123 Main Harrison A-217
Smith 019-28-3746 North Rye A-201
account-number balance
A-101 500
A-201 900
A-215 700
A-217 750

More Related Content

What's hot

Operating System: Deadlock
Operating System: DeadlockOperating System: Deadlock
Operating System: Deadlock
InteX Research Lab
 
3 Level Architecture
3 Level Architecture3 Level Architecture
3 Level Architecture
Adeel Rasheed
 
Uml class-diagram
Uml class-diagramUml class-diagram
Uml class-diagram
ASHOK KUMAR PALAKI
 
Object Oriented Analysis and Design
Object Oriented Analysis and DesignObject Oriented Analysis and Design
Object Oriented Analysis and Design
Haitham El-Ghareeb
 
Threads .ppt
Threads .pptThreads .ppt
Threads .ppt
meet darji
 
Data Models
Data ModelsData Models
Data Models
RituBhargava7
 
Recovery system
Recovery systemRecovery system
Recovery system
lalithambiga kamaraj
 
Er model ppt
Er model pptEr model ppt
Er model ppt
Pihu Goel
 
SE_Lec 07_UML CLASS DIAGRAM
SE_Lec 07_UML CLASS DIAGRAMSE_Lec 07_UML CLASS DIAGRAM
SE_Lec 07_UML CLASS DIAGRAM
Amr E. Mohamed
 
Deadlock ppt
Deadlock ppt Deadlock ppt
Deadlock ppt
Sweetestangel Kochar
 
Operating system 02 os as an extended machine
Operating system 02 os as an extended machineOperating system 02 os as an extended machine
Operating system 02 os as an extended machine
Vaibhav Khanna
 
Interaction Modeling
Interaction ModelingInteraction Modeling
Interaction Modeling
Hemant Sharma
 
Analysis modeling & scenario based modeling
Analysis modeling &  scenario based modeling Analysis modeling &  scenario based modeling
Analysis modeling & scenario based modeling
Benazir Fathima
 
DeadLock in Operating-Systems
DeadLock in Operating-SystemsDeadLock in Operating-Systems
DeadLock in Operating-Systems
Venkata Sreeram
 
process creation OS
process creation OSprocess creation OS
process creation OS
Kiran Kumar Thota
 
Object Modeling Techniques
Object Modeling TechniquesObject Modeling Techniques
Object Modeling Techniques
Shilpa Wadhwani
 
Database Normalization 1NF, 2NF, 3NF, BCNF, 4NF, 5NF
Database Normalization 1NF, 2NF, 3NF, BCNF, 4NF, 5NFDatabase Normalization 1NF, 2NF, 3NF, BCNF, 4NF, 5NF
Database Normalization 1NF, 2NF, 3NF, BCNF, 4NF, 5NF
Oum Saokosal
 
Requirements engineering for agile methods
Requirements engineering for agile methodsRequirements engineering for agile methods
Requirements engineering for agile methods
Syed Zaid Irshad
 
Object oriented analysis
Object oriented analysisObject oriented analysis
Object oriented analysis
Mahesh Bhalerao
 
Overview of UML Diagrams
Overview of UML DiagramsOverview of UML Diagrams
Overview of UML Diagrams
Manish Kumar
 

What's hot (20)

Operating System: Deadlock
Operating System: DeadlockOperating System: Deadlock
Operating System: Deadlock
 
3 Level Architecture
3 Level Architecture3 Level Architecture
3 Level Architecture
 
Uml class-diagram
Uml class-diagramUml class-diagram
Uml class-diagram
 
Object Oriented Analysis and Design
Object Oriented Analysis and DesignObject Oriented Analysis and Design
Object Oriented Analysis and Design
 
Threads .ppt
Threads .pptThreads .ppt
Threads .ppt
 
Data Models
Data ModelsData Models
Data Models
 
Recovery system
Recovery systemRecovery system
Recovery system
 
Er model ppt
Er model pptEr model ppt
Er model ppt
 
SE_Lec 07_UML CLASS DIAGRAM
SE_Lec 07_UML CLASS DIAGRAMSE_Lec 07_UML CLASS DIAGRAM
SE_Lec 07_UML CLASS DIAGRAM
 
Deadlock ppt
Deadlock ppt Deadlock ppt
Deadlock ppt
 
Operating system 02 os as an extended machine
Operating system 02 os as an extended machineOperating system 02 os as an extended machine
Operating system 02 os as an extended machine
 
Interaction Modeling
Interaction ModelingInteraction Modeling
Interaction Modeling
 
Analysis modeling & scenario based modeling
Analysis modeling &  scenario based modeling Analysis modeling &  scenario based modeling
Analysis modeling & scenario based modeling
 
DeadLock in Operating-Systems
DeadLock in Operating-SystemsDeadLock in Operating-Systems
DeadLock in Operating-Systems
 
process creation OS
process creation OSprocess creation OS
process creation OS
 
Object Modeling Techniques
Object Modeling TechniquesObject Modeling Techniques
Object Modeling Techniques
 
Database Normalization 1NF, 2NF, 3NF, BCNF, 4NF, 5NF
Database Normalization 1NF, 2NF, 3NF, BCNF, 4NF, 5NFDatabase Normalization 1NF, 2NF, 3NF, BCNF, 4NF, 5NF
Database Normalization 1NF, 2NF, 3NF, BCNF, 4NF, 5NF
 
Requirements engineering for agile methods
Requirements engineering for agile methodsRequirements engineering for agile methods
Requirements engineering for agile methods
 
Object oriented analysis
Object oriented analysisObject oriented analysis
Object oriented analysis
 
Overview of UML Diagrams
Overview of UML DiagramsOverview of UML Diagrams
Overview of UML Diagrams
 

Viewers also liked

Decision Table Training Session
Decision Table Training SessionDecision Table Training Session
Decision Table Training Session
nazeer pasha
 
Test design techniques
Test design techniquesTest design techniques
Test design techniques
Oksana
 
Test design techniques
Test design techniquesTest design techniques
Test design techniques
Manindra Simhadri
 
Test design techniques
Test design techniquesTest design techniques
Test design techniques
Gregory Solovey
 
Test design techniques: Structured and Experienced-based techniques
Test design techniques: Structured and Experienced-based techniquesTest design techniques: Structured and Experienced-based techniques
Test design techniques: Structured and Experienced-based techniques
Khuong Nguyen
 
Design Test Case Technique (Equivalence partitioning And Boundary value analy...
Design Test Case Technique (Equivalence partitioning And Boundary value analy...Design Test Case Technique (Equivalence partitioning And Boundary value analy...
Design Test Case Technique (Equivalence partitioning And Boundary value analy...
Ryan Tran
 
DFD, Decision Table, Decision Chart, Structure Charts
DFD, Decision Table, Decision Chart, Structure ChartsDFD, Decision Table, Decision Chart, Structure Charts
DFD, Decision Table, Decision Chart, Structure Charts
SOuvagya Kumar Jena
 
Test design techniques
Test design techniquesTest design techniques
Test design techniques
Pragya Rastogi
 
Test design techniques
Test design techniquesTest design techniques
Test design techniques
Bipul Roy Bpl
 
Podprogram
PodprogramPodprogram
Podprogram
LidiKashka
 
LW_brochure_lq_NL
LW_brochure_lq_NLLW_brochure_lq_NL
LW_brochure_lq_NL
Tapio Pekelharing
 
헝셩그룹 -900270- 알고리즘 기업분석 보고서
헝셩그룹 -900270- 알고리즘 기업분석 보고서헝셩그룹 -900270- 알고리즘 기업분석 보고서
헝셩그룹 -900270- 알고리즘 기업분석 보고서
알고리즘 기업분석 컨설팅-알기컨,algikeon
 
Auto Retrato_Suzely_Paranaíba
Auto Retrato_Suzely_ParanaíbaAuto Retrato_Suzely_Paranaíba
Auto Retrato_Suzely_Paranaíba
Suzely
 
Proyecto de alejandra
Proyecto de alejandraProyecto de alejandra
Taller Remedial de Matemáticas
Taller Remedial de MatemáticasTaller Remedial de Matemáticas
Taller Remedial de Matemáticas
Juliho Castillo
 
Tutorial de Popplet
Tutorial de PoppletTutorial de Popplet
Tutorial de Popplet
Laura Elena Reyes
 
One Try India – Non Profit Organization
One Try India – Non Profit OrganizationOne Try India – Non Profit Organization
One Try India – Non Profit Organization
Onetryindia
 
Animes muy girly
Animes muy girly Animes muy girly
Animes muy girly
Elizabeth Fernandez
 
EquivalencePartition
EquivalencePartitionEquivalencePartition
EquivalencePartition
swornim nepal
 
Production schedule and resources
Production schedule and resources Production schedule and resources
Production schedule and resources
Emily Shaw
 

Viewers also liked (20)

Decision Table Training Session
Decision Table Training SessionDecision Table Training Session
Decision Table Training Session
 
Test design techniques
Test design techniquesTest design techniques
Test design techniques
 
Test design techniques
Test design techniquesTest design techniques
Test design techniques
 
Test design techniques
Test design techniquesTest design techniques
Test design techniques
 
Test design techniques: Structured and Experienced-based techniques
Test design techniques: Structured and Experienced-based techniquesTest design techniques: Structured and Experienced-based techniques
Test design techniques: Structured and Experienced-based techniques
 
Design Test Case Technique (Equivalence partitioning And Boundary value analy...
Design Test Case Technique (Equivalence partitioning And Boundary value analy...Design Test Case Technique (Equivalence partitioning And Boundary value analy...
Design Test Case Technique (Equivalence partitioning And Boundary value analy...
 
DFD, Decision Table, Decision Chart, Structure Charts
DFD, Decision Table, Decision Chart, Structure ChartsDFD, Decision Table, Decision Chart, Structure Charts
DFD, Decision Table, Decision Chart, Structure Charts
 
Test design techniques
Test design techniquesTest design techniques
Test design techniques
 
Test design techniques
Test design techniquesTest design techniques
Test design techniques
 
Podprogram
PodprogramPodprogram
Podprogram
 
LW_brochure_lq_NL
LW_brochure_lq_NLLW_brochure_lq_NL
LW_brochure_lq_NL
 
헝셩그룹 -900270- 알고리즘 기업분석 보고서
헝셩그룹 -900270- 알고리즘 기업분석 보고서헝셩그룹 -900270- 알고리즘 기업분석 보고서
헝셩그룹 -900270- 알고리즘 기업분석 보고서
 
Auto Retrato_Suzely_Paranaíba
Auto Retrato_Suzely_ParanaíbaAuto Retrato_Suzely_Paranaíba
Auto Retrato_Suzely_Paranaíba
 
Proyecto de alejandra
Proyecto de alejandraProyecto de alejandra
Proyecto de alejandra
 
Taller Remedial de Matemáticas
Taller Remedial de MatemáticasTaller Remedial de Matemáticas
Taller Remedial de Matemáticas
 
Tutorial de Popplet
Tutorial de PoppletTutorial de Popplet
Tutorial de Popplet
 
One Try India – Non Profit Organization
One Try India – Non Profit OrganizationOne Try India – Non Profit Organization
One Try India – Non Profit Organization
 
Animes muy girly
Animes muy girly Animes muy girly
Animes muy girly
 
EquivalencePartition
EquivalencePartitionEquivalencePartition
EquivalencePartition
 
Production schedule and resources
Production schedule and resources Production schedule and resources
Production schedule and resources
 

Similar to Decision table

Management Information system
Management Information systemManagement Information system
Management Information system
Cochin University
 
Requirement analysis and specification, software engineering
Requirement analysis and specification, software engineeringRequirement analysis and specification, software engineering
Requirement analysis and specification, software engineering
Rupesh Vaishnav
 
Requirement analysis and UML modelling in Software engineering
Requirement analysis and UML modelling in Software engineeringRequirement analysis and UML modelling in Software engineering
Requirement analysis and UML modelling in Software engineering
snehalkulkarni74
 
Presentation Use Case Diagram and Use Case Specification.pptx
Presentation Use Case Diagram and Use Case Specification.pptxPresentation Use Case Diagram and Use Case Specification.pptx
Presentation Use Case Diagram and Use Case Specification.pptx
azida3
 
Use case modeling
Use case modelingUse case modeling
Use case modeling
Wajahat Hasnain
 
SE_RE-II-CH5 (3).pdf
SE_RE-II-CH5 (3).pdfSE_RE-II-CH5 (3).pdf
SE_RE-II-CH5 (3).pdf
AZKANAAZ1
 
unit2.pptx
unit2.pptxunit2.pptx
unit2.pptx
ssuser6109b1
 
System Simulation and Modelling with types and Event Scheduling
System Simulation and Modelling with types and Event SchedulingSystem Simulation and Modelling with types and Event Scheduling
System Simulation and Modelling with types and Event Scheduling
BootNeck1
 
Use case modeling & analysis v 1
Use case modeling & analysis v 1Use case modeling & analysis v 1
Use case modeling & analysis v 1
JIGAR MAKHIJA
 
conversion-gate02.pptx
conversion-gate02.pptxconversion-gate02.pptx
conversion-gate02.pptx
NouraBaccar1
 
Chapter 4.pptx
Chapter 4.pptxChapter 4.pptx
Chapter 4.pptx
zaaakditte
 
Lab 3 Introduction to the UML - how to create a use case diagram
Lab 3 Introduction to the UML - how to create a use case diagramLab 3 Introduction to the UML - how to create a use case diagram
Lab 3 Introduction to the UML - how to create a use case diagram
Farah Ahmed
 
3. 1 req elicitation
3. 1 req elicitation3. 1 req elicitation
3. 1 req elicitation
Ashenafi Workie
 
Soft requirement
Soft requirementSoft requirement
Soft requirement
Rishav Upreti
 
5(re dfd-erd-data dictionay)
5(re dfd-erd-data dictionay)5(re dfd-erd-data dictionay)
5(re dfd-erd-data dictionay)
randhirlpu
 
Use case diagrams
Use case diagramsUse case diagrams
Use case diagrams
Fajar Baskoro
 
Use case diagrams
Use case diagramsUse case diagrams
Use case diagrams
mohamed tahoon
 
Requirement Engineering.pdf
Requirement Engineering.pdfRequirement Engineering.pdf
Requirement Engineering.pdf
Muhammad Imran
 
Operations Research
Operations ResearchOperations Research
Operations Research
Dr T.Sivakami
 
Ch07
Ch07Ch07

Similar to Decision table (20)

Management Information system
Management Information systemManagement Information system
Management Information system
 
Requirement analysis and specification, software engineering
Requirement analysis and specification, software engineeringRequirement analysis and specification, software engineering
Requirement analysis and specification, software engineering
 
Requirement analysis and UML modelling in Software engineering
Requirement analysis and UML modelling in Software engineeringRequirement analysis and UML modelling in Software engineering
Requirement analysis and UML modelling in Software engineering
 
Presentation Use Case Diagram and Use Case Specification.pptx
Presentation Use Case Diagram and Use Case Specification.pptxPresentation Use Case Diagram and Use Case Specification.pptx
Presentation Use Case Diagram and Use Case Specification.pptx
 
Use case modeling
Use case modelingUse case modeling
Use case modeling
 
SE_RE-II-CH5 (3).pdf
SE_RE-II-CH5 (3).pdfSE_RE-II-CH5 (3).pdf
SE_RE-II-CH5 (3).pdf
 
unit2.pptx
unit2.pptxunit2.pptx
unit2.pptx
 
System Simulation and Modelling with types and Event Scheduling
System Simulation and Modelling with types and Event SchedulingSystem Simulation and Modelling with types and Event Scheduling
System Simulation and Modelling with types and Event Scheduling
 
Use case modeling & analysis v 1
Use case modeling & analysis v 1Use case modeling & analysis v 1
Use case modeling & analysis v 1
 
conversion-gate02.pptx
conversion-gate02.pptxconversion-gate02.pptx
conversion-gate02.pptx
 
Chapter 4.pptx
Chapter 4.pptxChapter 4.pptx
Chapter 4.pptx
 
Lab 3 Introduction to the UML - how to create a use case diagram
Lab 3 Introduction to the UML - how to create a use case diagramLab 3 Introduction to the UML - how to create a use case diagram
Lab 3 Introduction to the UML - how to create a use case diagram
 
3. 1 req elicitation
3. 1 req elicitation3. 1 req elicitation
3. 1 req elicitation
 
Soft requirement
Soft requirementSoft requirement
Soft requirement
 
5(re dfd-erd-data dictionay)
5(re dfd-erd-data dictionay)5(re dfd-erd-data dictionay)
5(re dfd-erd-data dictionay)
 
Use case diagrams
Use case diagramsUse case diagrams
Use case diagrams
 
Use case diagrams
Use case diagramsUse case diagrams
Use case diagrams
 
Requirement Engineering.pdf
Requirement Engineering.pdfRequirement Engineering.pdf
Requirement Engineering.pdf
 
Operations Research
Operations ResearchOperations Research
Operations Research
 
Ch07
Ch07Ch07
Ch07
 

More from jeebala

ED PPT.pptx
ED PPT.pptxED PPT.pptx
ED PPT.pptx
jeebala
 
humanrightsandduties-150805163042-lva1-app6891.pptx
humanrightsandduties-150805163042-lva1-app6891.pptxhumanrightsandduties-150805163042-lva1-app6891.pptx
humanrightsandduties-150805163042-lva1-app6891.pptx
jeebala
 
TWOMARKPOMQ&A.doc
TWOMARKPOMQ&A.docTWOMARKPOMQ&A.doc
TWOMARKPOMQ&A.doc
jeebala
 
pom.doc
pom.docpom.doc
pom.doc
jeebala
 
Intro BA.pptx
Intro BA.pptxIntro BA.pptx
Intro BA.pptx
jeebala
 
Attitude
AttitudeAttitude
Attitude
jeebala
 
Imc study materials
Imc study materialsImc study materials
Imc study materials
jeebala
 

More from jeebala (7)

ED PPT.pptx
ED PPT.pptxED PPT.pptx
ED PPT.pptx
 
humanrightsandduties-150805163042-lva1-app6891.pptx
humanrightsandduties-150805163042-lva1-app6891.pptxhumanrightsandduties-150805163042-lva1-app6891.pptx
humanrightsandduties-150805163042-lva1-app6891.pptx
 
TWOMARKPOMQ&A.doc
TWOMARKPOMQ&A.docTWOMARKPOMQ&A.doc
TWOMARKPOMQ&A.doc
 
pom.doc
pom.docpom.doc
pom.doc
 
Intro BA.pptx
Intro BA.pptxIntro BA.pptx
Intro BA.pptx
 
Attitude
AttitudeAttitude
Attitude
 
Imc study materials
Imc study materialsImc study materials
Imc study materials
 

Recently uploaded

Delegation Inheritance in Odoo 17 and Its Use Cases
Delegation Inheritance in Odoo 17 and Its Use CasesDelegation Inheritance in Odoo 17 and Its Use Cases
Delegation Inheritance in Odoo 17 and Its Use Cases
Celine George
 
How to Configure Time Off Types in Odoo 17
How to Configure Time Off Types in Odoo 17How to Configure Time Off Types in Odoo 17
How to Configure Time Off Types in Odoo 17
Celine George
 
How to Create Sequence Numbers in Odoo 17
How to Create Sequence Numbers in Odoo 17How to Create Sequence Numbers in Odoo 17
How to Create Sequence Numbers in Odoo 17
Celine George
 
Split Shifts From Gantt View in the Odoo 17
Split Shifts From Gantt View in the  Odoo 17Split Shifts From Gantt View in the  Odoo 17
Split Shifts From Gantt View in the Odoo 17
Celine George
 
NLC English 7 Consolidation Lesson plan for teacher
NLC English 7 Consolidation Lesson plan for teacherNLC English 7 Consolidation Lesson plan for teacher
NLC English 7 Consolidation Lesson plan for teacher
AngelicaLubrica
 
L1 L2- NLC PPT for Grade 10 intervention
L1 L2- NLC PPT for Grade 10 interventionL1 L2- NLC PPT for Grade 10 intervention
L1 L2- NLC PPT for Grade 10 intervention
RHODAJANEAURESTILA
 
The basics of sentences session 10pptx.pptx
The basics of sentences session 10pptx.pptxThe basics of sentences session 10pptx.pptx
The basics of sentences session 10pptx.pptx
heathfieldcps1
 
Bedok NEWater Photostory - COM322 Assessment (Story 2)
Bedok NEWater Photostory - COM322 Assessment (Story 2)Bedok NEWater Photostory - COM322 Assessment (Story 2)
Bedok NEWater Photostory - COM322 Assessment (Story 2)
Liyana Rozaini
 
2024 KWL Back 2 School Summer Conference
2024 KWL Back 2 School Summer Conference2024 KWL Back 2 School Summer Conference
2024 KWL Back 2 School Summer Conference
KlettWorldLanguages
 
The basics of sentences session 9pptx.pptx
The basics of sentences session 9pptx.pptxThe basics of sentences session 9pptx.pptx
The basics of sentences session 9pptx.pptx
heathfieldcps1
 
The membership Module in the Odoo 17 ERP
The membership Module in the Odoo 17 ERPThe membership Module in the Odoo 17 ERP
The membership Module in the Odoo 17 ERP
Celine George
 
No, it's not a robot: prompt writing for investigative journalism
No, it's not a robot: prompt writing for investigative journalismNo, it's not a robot: prompt writing for investigative journalism
No, it's not a robot: prompt writing for investigative journalism
Paul Bradshaw
 
eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
siemaillard
 
Webinar Innovative assessments for SOcial Emotional Skills
Webinar Innovative assessments for SOcial Emotional SkillsWebinar Innovative assessments for SOcial Emotional Skills
Webinar Innovative assessments for SOcial Emotional Skills
EduSkills OECD
 
NAEYC Code of Ethical Conduct Resource Book
NAEYC Code of Ethical Conduct Resource BookNAEYC Code of Ethical Conduct Resource Book
NAEYC Code of Ethical Conduct Resource Book
lakitawilson
 
Chapter-2-Era-of-One-party-Dominance-Class-12-Political-Science-Notes-2 (1).pptx
Chapter-2-Era-of-One-party-Dominance-Class-12-Political-Science-Notes-2 (1).pptxChapter-2-Era-of-One-party-Dominance-Class-12-Political-Science-Notes-2 (1).pptx
Chapter-2-Era-of-One-party-Dominance-Class-12-Political-Science-Notes-2 (1).pptx
Brajeswar Paul
 
Principles of Roods Approach!!!!!!!.pptx
Principles of Roods Approach!!!!!!!.pptxPrinciples of Roods Approach!!!!!!!.pptx
Principles of Roods Approach!!!!!!!.pptx
ibtesaam huma
 
How to Install Theme in the Odoo 17 ERP
How to  Install Theme in the Odoo 17 ERPHow to  Install Theme in the Odoo 17 ERP
How to Install Theme in the Odoo 17 ERP
Celine George
 
Unlocking Educational Synergy-DIKSHA & Google Classroom.pptx
Unlocking Educational Synergy-DIKSHA & Google Classroom.pptxUnlocking Educational Synergy-DIKSHA & Google Classroom.pptx
Unlocking Educational Synergy-DIKSHA & Google Classroom.pptx
bipin95
 

Recently uploaded (20)

Delegation Inheritance in Odoo 17 and Its Use Cases
Delegation Inheritance in Odoo 17 and Its Use CasesDelegation Inheritance in Odoo 17 and Its Use Cases
Delegation Inheritance in Odoo 17 and Its Use Cases
 
How to Configure Time Off Types in Odoo 17
How to Configure Time Off Types in Odoo 17How to Configure Time Off Types in Odoo 17
How to Configure Time Off Types in Odoo 17
 
How to Create Sequence Numbers in Odoo 17
How to Create Sequence Numbers in Odoo 17How to Create Sequence Numbers in Odoo 17
How to Create Sequence Numbers in Odoo 17
 
Split Shifts From Gantt View in the Odoo 17
Split Shifts From Gantt View in the  Odoo 17Split Shifts From Gantt View in the  Odoo 17
Split Shifts From Gantt View in the Odoo 17
 
NLC English 7 Consolidation Lesson plan for teacher
NLC English 7 Consolidation Lesson plan for teacherNLC English 7 Consolidation Lesson plan for teacher
NLC English 7 Consolidation Lesson plan for teacher
 
“A NOSSA CA(U)SA”. .
“A NOSSA CA(U)SA”.                      .“A NOSSA CA(U)SA”.                      .
“A NOSSA CA(U)SA”. .
 
L1 L2- NLC PPT for Grade 10 intervention
L1 L2- NLC PPT for Grade 10 interventionL1 L2- NLC PPT for Grade 10 intervention
L1 L2- NLC PPT for Grade 10 intervention
 
The basics of sentences session 10pptx.pptx
The basics of sentences session 10pptx.pptxThe basics of sentences session 10pptx.pptx
The basics of sentences session 10pptx.pptx
 
Bedok NEWater Photostory - COM322 Assessment (Story 2)
Bedok NEWater Photostory - COM322 Assessment (Story 2)Bedok NEWater Photostory - COM322 Assessment (Story 2)
Bedok NEWater Photostory - COM322 Assessment (Story 2)
 
2024 KWL Back 2 School Summer Conference
2024 KWL Back 2 School Summer Conference2024 KWL Back 2 School Summer Conference
2024 KWL Back 2 School Summer Conference
 
The basics of sentences session 9pptx.pptx
The basics of sentences session 9pptx.pptxThe basics of sentences session 9pptx.pptx
The basics of sentences session 9pptx.pptx
 
The membership Module in the Odoo 17 ERP
The membership Module in the Odoo 17 ERPThe membership Module in the Odoo 17 ERP
The membership Module in the Odoo 17 ERP
 
No, it's not a robot: prompt writing for investigative journalism
No, it's not a robot: prompt writing for investigative journalismNo, it's not a robot: prompt writing for investigative journalism
No, it's not a robot: prompt writing for investigative journalism
 
eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee
 
Webinar Innovative assessments for SOcial Emotional Skills
Webinar Innovative assessments for SOcial Emotional SkillsWebinar Innovative assessments for SOcial Emotional Skills
Webinar Innovative assessments for SOcial Emotional Skills
 
NAEYC Code of Ethical Conduct Resource Book
NAEYC Code of Ethical Conduct Resource BookNAEYC Code of Ethical Conduct Resource Book
NAEYC Code of Ethical Conduct Resource Book
 
Chapter-2-Era-of-One-party-Dominance-Class-12-Political-Science-Notes-2 (1).pptx
Chapter-2-Era-of-One-party-Dominance-Class-12-Political-Science-Notes-2 (1).pptxChapter-2-Era-of-One-party-Dominance-Class-12-Political-Science-Notes-2 (1).pptx
Chapter-2-Era-of-One-party-Dominance-Class-12-Political-Science-Notes-2 (1).pptx
 
Principles of Roods Approach!!!!!!!.pptx
Principles of Roods Approach!!!!!!!.pptxPrinciples of Roods Approach!!!!!!!.pptx
Principles of Roods Approach!!!!!!!.pptx
 
How to Install Theme in the Odoo 17 ERP
How to  Install Theme in the Odoo 17 ERPHow to  Install Theme in the Odoo 17 ERP
How to Install Theme in the Odoo 17 ERP
 
Unlocking Educational Synergy-DIKSHA & Google Classroom.pptx
Unlocking Educational Synergy-DIKSHA & Google Classroom.pptxUnlocking Educational Synergy-DIKSHA & Google Classroom.pptx
Unlocking Educational Synergy-DIKSHA & Google Classroom.pptx
 

Decision table

  • 1. 1 Overview Functional Testing Boundary Value Testing (BVT) Boundary Value Analysis Robustness Testing Worst Case Testing Special Value Testing Equivalence Class Testing Weak Equivalence Class Testing Strong Equivalence Class Testing Traditional Equivalence Class testing Decision Table Based testing Decision Tables Technique Examples
  • 2. 2 Decision Tables - General Decision tables are a precise yet compact way to model complicated logic. Decision tables, like if- then-else and switch-case statements, associate conditions with actions to perform. But, unlike the control structures found in traditional programming languages, decision tables can associate many independent conditions with several actions in an elegant way. “http://en.wikipedia.org/wiki/Decision_table”
  • 3. 3 Decision Tables - Usage • Decision tables make it easy to observe that all possible conditions are accounted for. • Decision tables can be used for: – Specifying complex program logic – Generating test cases (Also known as logic-based testing) • Logic-based testing is considered as: – structural testing when applied to structure (i.e. control flowgraph of an implementation). – functional testing when applied to a specification.
  • 4. 4 Decision Tables - Structure Conditions - (Condition stub) Condition Alternatives – (Condition Entry) Actions – (Action Stub) Action Entries • Each condition corresponds to a variable, relation or predicate • Possible values for conditions are listed among the condition alternatives • Boolean values (True / False) – Limited Entry Decision Tables • Several values – Extended Entry Decision Tables • Don’t care value • Each action is a procedure or operation to perform • The entries specify whether (or in what order) the action is to be performed
  • 5. 5 • To express the program logic we can use a limited-entry decision table consisting of 4 areas called the condition stub, condition entry, action stub and the action entry: Rule1 Rule2 Rule3 Rule4 Condition 1 Yes Yes No No Condition 2 Yes X No X Condition 3 No Yes No X Condition 4 No Yes No Yes Action1 Yes Yes No No Action2 No No Yes No Action3 No No No Yes Condition stub Action stub Action Entry Condition entry
  • 6. 6 • We can specify default rules to indicate the action to be taken when none of the other rules apply. • When using decision tables as a test tool, default rules and their associated predicates must be explicitly provided. Rule5 Rule6 Rule7 Rule8 Condition1 X No Yes Yes Condition2 X Yes X No Condition3 Yes X No No Condition4 No No Yes X Default action Yes Yes Yes Yes
  • 7. 7 Decision Table - Example Conditions Printer does not print Y Y Y Y N N N N A red light is flashing Y Y N N Y Y N N Printer is unrecognized Y N Y N Y N Y N Actions Heck the power cable X Check the printer-computer cable X X Ensure printer software is installed X X X X Check/replace ink X X X X Check for paper jam X X Printer Troubleshooting
  • 9. 9 Decision Table Development Methodology 1. Determine conditions and values 2. Determine maximum number of rules 3. Determine actions 4. Encode possible rules 5. Encode the appropriate actions for each rule 6. Verify the policy 7. Simplify the rules (reduce if possible the number of columns)
  • 10. 10 Decision Tables - Usage • The use of the decision-table model is applicable when : – the specification is given or can be converted to a decision table . – the order in which the predicates are evaluated does not affect the interpretation of the rules or resulting action. – the order of rule evaluation has no effect on resulting action . – once a rule is satisfied and the action selected, no other rule need be examined. – the order of executing actions in a satisfied rule is of no consequence. • The restrictions do not in reality eliminate many potential applications. – In most applications, the order in which the predicates are evaluated is immaterial. – Some specific ordering may be more efficient than some other but in general the ordering is not inherent in the program's logic.
  • 11. 11 Decision Tables - Issues • Before using the tables, ensure: – rules must be complete • every combination of predicate truth values plus default cases are explicit in the decision table – rules must be consistent • every combination of predicate truth values results in only one action or set of actions
  • 12. 12 Processes • These lectures all relate to processes: – Describing, analyzing, developing, modifying, documenting,… • Types of processes include: – Decision processes – Data flow & manipulation processes, … • Specific approaches depend on internal needs & practices, standards • “A process model is a formal way of representing how a business operates”
  • 13. 13 Flow charts • There are several standards – just be consistent • Manual methods vs. automated tools – Visio, PowerPoint, etc. • Waves of fashion / variety of uses – Programming – Documenting processes – Multi-user settings – General documentation of all sorts
  • 14. 14 Flow chart techniques • Basic symbols – Terminator – Process – Decision – Predefined process – On-page connector – Connector T e r m in a t o r P r o c e s s D e c is io n P r e d e f in e d P r o c e s s 1 Y e s N o T h is c a llo u t p o in t s t o a c o n n e c t o r
  • 15. 15 Flowchart guidelines 1. Top to bottom, left to right on the page 2. Activity being flowcharted should be defined carefully and made clear to reader 3. Identity start and end 4. Use “one-verb” (verb-noun) descriptions – Examples: “prepare statement,” “file record” 1. Keep steps in proper sequence 2. Observe scope & range of activity; branches should be on separate pages 3. Use standard symbols; lines should NOT cross – Use cross-overs only if necessary; keep lines straight 1. No blind alleys or endless loops
  • 16. What is UML and Why we use UML? 1997: UML 1.0, 1.1 1996: UML 0.9 & 0.91 1995: Unified Method 0.8 Other methods Booch ‘91 Booch ‘93 OMT - 2 OMT - 1 Year Version 2003: UML 2.0 2001: UML 1.4 1999: UML 1.3
  • 17. How to use UML diagrams to design software system? • Types of UML Diagrams:  Use Case Diagram  Class Diagram  Sequence Diagram  Collaboration Diagram  State Diagram This is only a subset of diagrams … but are most widely used
  • 18. Use-Case Diagrams • A use-case diagram is a set of use cases • A use case is a model of the interaction between  External users of a software product (actors) and  The software product itself  More precisely, an actor is a user playing a specific role • describing a set of user scenarios • capturing user requirements • contract between end user and software developers
  • 19. Use-Case Diagrams Library System Borrow Order Title Fine Remittance Client Employee Supervisor Boundary Actor Use Case
  • 20. Use-Case Diagrams • Actors: A role that a user plays with respect to the system, including human users and other systems. e.g., inanimate physical objects (e.g. robot); an external system that needs some information from the current system. • Use case: A set of scenarios that describing an interaction between a user and a system, including alternatives. • System boundary: rectangle diagram representing the boundary between the actors and the system.
  • 21. Use-Case Diagrams • Association: communication between an actor and a use case; Represented by a solid line. • Generalization: relationship between one general use case and a special use case (used for defining special alternatives) Represented by a line with a triangular arrow head toward the parent use case.
  • 22. Use-Case Diagrams Extend: a dotted line labeled <<extend>> with an arrow toward the base case. The extending use case may add behavior to the base use case. The base class declares “extension points”. Include: a dotted line labeled <<include>> beginning at base use case and ending with an arrows pointing to the include use case. The include relationship occurs when a chunk of behavior is similar across more than one use case. Use “include” in stead of copying the description of that behavior. <<include>>
  • 23. Use-Case Diagrams Figure 16.12 The McGraw-Hill Companies, 2005
  • 24. Use-Case Diagrams • Both Make Appointment and Request Medication include Check Patient Record as a subtask (include) • The extension point is written inside the base case Pay bill; the extending class Defer payment adds the behavior of this extension point. (extend) • Pay Bill is a parent use case and Bill Insurance is the child use case. (generalization) (TogetherSoft, Inc)
  • 25. Instances and Schemas • Similar to types and variables in programming languages • Schema – the logical structure of the database (e.g., set of customers and accounts and the relationship between them) • Instance – the actual content of the database at a particular point in time
  • 26. Data Independence • Ability to modify a schema definition in one level without affecting a schema definition in the other levels. • The interfaces between the various levels and components should be well defined so that changes in some parts do not seriously influence others. • Two levels of data independence – Physical data independence – Logical data independence
  • 27. Data Models • A collection of tools for describing: – Data – Data relationships – Data semantics – Data constraints • Object-based logical models – Entity-relationship model – Object-oriented model – Semantic model – Functional model • Record-based logical models – Relational model (e.g., SQL/DS, DB2) – Network model – Hierarchical model (e.g., IMS)
  • 28. Entity-Relationship Model Example of entity-relationship model customer accountdepositor social-security customer-street customer-name account-number balancecustomer-city
  • 29. Relational Model Example of tabular data in the relational model: name ssn street city account-number Johnson 192-83-7465 Alma Palo Alto A-101 Smith 019-28-3746 North Rye A-215 Johnson 192-83-7465 Alma Palo Alto A-201 Jones 321-12-3123 Main Harrison A-217 Smith 019-28-3746 North Rye A-201 account-number balance A-101 500 A-201 900 A-215 700 A-217 750