of 50
8/14/2019 Sw Engg Exp1,2,3,4,5,6,7,8,9,10
1/50
EXPERIMENT NO-1.
AIM: - Introduction to Data Flow Diagrams.
Data Flow Diagrams:-
A data flow diagram (DFD) is a graphical representation of the "flow" of data through aninformation system. The DFD is a diagram that shows how the data manipulated by a system
flows through the various processes.A DFD is not a flow chart! A flow chart actually describes a
process, whereas in a DFD the entire process is simply denoted by a symbol.
Data Flow Diagram is a diagram that shows how data moves through a system. A graphical
notation used to describe how data flows betweenprocesses in a system. Data flow diagrams arean important tool of most structured analysis techniques. Data flow diagrams illustrate how data
is processed by a system in terms of inputs and outputs.
Fig. A data flow diagram
1
http://dictionary.babylon.com/data#!!GE5F8HNF7Thttp://dictionary.babylon.com/processes#!!GE5F8HNF7Thttp://dictionary.babylon.com/structured%20analysis#!!GE5F8HNF7Thttp://dictionary.babylon.com/data#!!GE5F8HNF7Thttp://dictionary.babylon.com/processes#!!GE5F8HNF7Thttp://dictionary.babylon.com/structured%20analysis#!!GE5F8HNF7T8/14/2019 Sw Engg Exp1,2,3,4,5,6,7,8,9,10
2/50
Data Flow Diagram Notations:-
External Entity: The External Entity symbol represents sources of data to the system or
destinations of data from the system. External entities are objects outside the system, with
which the system communicates.
Process: The Process symbol represents an activity that transforms or manipulates the data(combines, reorders, converts, etc.).
Data Store: The Data Store symbol represents data that is not moving (delayed data at rest).
Data stores are repositories of data in the system. They are sometimes also referred to as files.
Dataflow: The Data Flow symbol represents movement of data. Data flows are pipelines
through which packets of information flow. Label the arrows with the name of the data that
moves through it.
2
8/14/2019 Sw Engg Exp1,2,3,4,5,6,7,8,9,10
3/50
Levels of DFDs:-
Data flow diagrams can be expressed as a series of levels. We begin by making a list of businessactivities to determine the DFD elements (external entities, data flows, processes, and data
stores). Next, a context diagram is constructed that shows only a single process (representing
the entire system), and associated external entities. The Diagram-0, or Level 0 diagram, is next,which reveals general processes and data stores. Following the drawing of Level 0 diagrams,
childdiagrams aredrawn (Level 1 diagrams) for each process illustrated by Level 0 diagrams,
and so on.
Context Diagram:
A Context Diagram (CD) is a graphical representation of a system which must only use one
process to represent the entire system and deliberately does not go into defining all the processes
so as to prevent people getting bogged down in complex details at an early stage.A contextdiagram is a top level (also known as Level 0) data flow diagram. It only contains one process
node (process 0) that generalizes the function of the entire system in relationship to externalentities.
A good DFD starts with a Context Diagram -- a diagram with your component in the middle andall the external entities it talks to on the outside. An example for the bank teller might be
something like this:
Fig An example of a Context or level 0 Diagram
3
8/14/2019 Sw Engg Exp1,2,3,4,5,6,7,8,9,10
4/50
Level 1 DFD:
A data flow diagram is the next level up in detail from a context diagram. It will show processes,
inputs, outputs and storage. The DFD shows the data flow between the processes within a system. A
DFD can become as detailed as the user requires. The DFD will become increasingly detailed as thelevels go higher. However each level will tend to focus on extending one or more of the processes
rather than the entire system.
The first level DFD shows the main processes within the system. Each of these processes can be
broken into further processes.
Fig. An example of a first-level data flow diagram
The steps to develop DFD level 1 are:
Given the abstract data flows in Context Diagram, explicitly define in-flows and out-flows in
your software in details.
For each type of in-flow, we should create a bubble (a process) to handle the in-flow.
For each type of out-flow, we should use a bubble created in the last step or create a new
bubble to handle it.
Define the necessary internal processes and data flows that are necessary to handle all
functionalities of our software, such that all in-flows (sources) and out-flows (sinks) are
connected.
Level 2 DFD:
DFD level 2 is a further decomposition of DFD level 1. The steps to develop DFD level 2 are
extremely similar to those for DFD level 1, but there are some extra requirements:
Each bubble should both be clearly defined and also easy enough to implement and do
testing in later stages.
The data flows should be consistent with DFD level 1 and Context Diagram.
4
8/14/2019 Sw Engg Exp1,2,3,4,5,6,7,8,9,10
5/50
Data Flow Diagram Layers:-
Draw data flow diagrams in several nested layers. A single process node on a high level diagram
can be expanded to show a more detailed data flow diagram. Draw the context diagram first,
followed by various layers of data flow diagrams.
Fig The nesting of data flow layers
Advantages of DFDs:-
The DFD method is an element of object oriented analysis and is widely used. Use of DFDs
promotes quick and relatively easy project code development.
DFDs are easy to learn with their few and simple-to-understand symbols.
The structure used for designing DFDs is simple, employing English nouns or noun-adjective-
verb constructs.
Disadvantages of DFDs:-
DFDs for large systems can become cumbersome, difficult to translate and read, and be time
consuming in their construction.
Data flow can become confusing to programmers, but DFDs are useless without the
prerequisite detail.
Different DFD models employ different symbols (circles and rectangles, for example, for
entities).
5
8/14/2019 Sw Engg Exp1,2,3,4,5,6,7,8,9,10
6/50
EXPERIMENT NO-2.
AIM: - Create level 0 DFD using Smart Draw (case study of website development)
OBJECTIVE: - Study of Website Development Procedure.
HARDWARE REQUIREMENTS:-
Develop software in either VB or HTML or .NET 2 or JAVA.
Microsoft SQL server.
Windows 2003 server with Microsoft Internet Information Server (IIS).
Application should well commented.
Applications should support multiple simultaneous read and write requests from
different clients.
SOFTWARE REQUIREMENTS:-
Platform - Windows 2003 server
Front End - HTML, CSS, ASP, Macromedia Flash
Tools used - Macromedia Flash, Photoshop
Back End - SQL server
Software Required - Smart draw 6
THEORY:-
ABSTRACT
This document describes the features and timeframe desired for web-based survey software. The
software displays multiple questions and answer options and assigns score based on a predefined
score chart. The questions, answer options and score will be uploaded using an excel spread sheet.
6
8/14/2019 Sw Engg Exp1,2,3,4,5,6,7,8,9,10
7/50
GOALS, JUSTIFICATION AND SUCCESS CRITERIA
GOALS
Develop web-based survey software to integrate into an existing .Net 2 application. Display multiple
questions per pages as specified by survey administrator, each with two to four answer options and compile
a total score based on answer responses.
JUSTIFICATION
The survey software will be utilized to gather information on user habits and obtain feedback on products
or services.
SUCCESS CRITERIA
The survey software should display multiple navigable web pages with questions and answers choices.Administrator specifies of question and answers choices that appear on each page. A user is able to
select either on answer option or multiple answer choices; this is based on answer response (S-Single or
M-Multiple) properties as setup by survey administrator.
Each answer response is assigned a score as setup by survey administrator and linked to a URL. The
survey administrator can determine if the URL opens in a new window or in the same window. At end
of survey a total score is compiled and displayed to user and recorded in a survey database.
ROLES
SURVEY USER
A survey user accesses the web based survey and responds to each question by selecting either on or
multiple answer responses depending on the question.
SURVEY ADMINISTRATOR
Survey administrator uploads questions, answer choices and scores. Survey administrator determines
number of questions per page, edits questions, answers and scores in survey system. Administrator
decides what answers choices are selected by default and which questions are allowed multiple
answers. Administrator generates usage reports.
7
8/14/2019 Sw Engg Exp1,2,3,4,5,6,7,8,9,10
8/50
8/14/2019 Sw Engg Exp1,2,3,4,5,6,7,8,9,10
9/50
SURVEY SAMPLE
Survey sample is attached file survey-quiz.xls
This file contains.
Questions
1. Answer choice selection.
2. S: User can select only on answer form choices.
3. M: User can select multiple answers from choices.
4. Possible answers.
5. Each possible answer will have a text response, unless it is a multiple (M) selection answer
choice only has one response.
Three score levels: Very high risk, High risk and low risk. Three levels are categorized in tablebelow.
ADMIN INTERFACE
The admin interface has two functions:
Create, Read, Update and Delete (C.RU.D)
9
Score Risk Level
0-300 Very High Risk
300-600 High Risk
600-900 Low Risk
8/14/2019 Sw Engg Exp1,2,3,4,5,6,7,8,9,10
10/50
An administrator is able to make quick changes (correcting typos, editing text and scores,
etc) and then update survey system with changes, which are then made live.
GENERATING USAGE REPORTS
In this feature an administrator can generate usage reports, with statistics on which
questions got what type of responses, etc (an excel pie/bar chart type report is expected for
each question and answer combination), the report can be customized to select data and
range of questions.
And export facility to export questions, answers, responses, explanations ans scores into a
CSV file.
DATABASE NOTES
Design tables, relationships and keys per database schema attached (survey schema.xsd)
PERFORMANCE AND RESPONSE TIME REQUIREMENTS
Survey software should be designed to be capable of handling nominal amount of
concurrent users and is expected to provide response time between pages not exceeding 3
seconds. Platform dependent and installation requirements.
Survey is web based and should be capable of being executed on any browser, internet
explorer, Mozilla firefox.
FEASIBILITY STUDY
A feasibility study is carried out to select the best system that meets performance
requirements. Feasibility is the determination of whether or not a project is worth doing.
The process followed in making this determination is called a feasibility study. This type of
study determines if a project can should be taking.
10
8/14/2019 Sw Engg Exp1,2,3,4,5,6,7,8,9,10
11/50
Since the feasibility study may lead to the commitment of large resources, it becomes
necessary that is should be conducted competently and that no fundamental errors of
judgment are made.
TECHNICAL FEASIBILITY
This is concerned with specifying equipment and software that will successfully satisfy the
user requirement.
The technical needs of the system may include:
1. The facility to produce outputs in a given time.
2. Response time under certain conditions.
3. Ability to process a certain volume of transaction at a particular speed.
4. Facility to communicate data to distant location.
In examining technical feasibility, configuration of the system is given more importance than
the actual make of hardware. The configuration should give the complete picture about the
systems requirements. The proposed system is technically feasible because of followingreason:
1. The organization already has server client setup so this system can run in organization.
2. The organization does not require any new package in their computer system as it already
has all the required softwares.
3. The organization is already working with the system made in dbase3 and has knowledge
about the processes, databases, and expected outputs.
The proposed system is to be implemented using COM technology, the server components
are to be installed on server and client components on client. All the clients will get
response according to the application loads on their terminals.
OPERATIONAL FEASIBILITY
11
8/14/2019 Sw Engg Exp1,2,3,4,5,6,7,8,9,10
12/50
It is mainly related to human organizational and political aspects. The points to be considered
are:
1. What changes will be brought with the system?
2. What organizational structures are disturbed?
3. What new skill will require? Do the existing staff members have these skills? If not, can theybe trained in due course of time?
Such considerations are likely to critically affect eh nature and scope of the eventual
recommendations. This feasibility study is carried out by a small group of people who are
familiar with information system techniques, who understate the parts of the business that are
relevant to the project and are skilled in system analysis and design process.
The proposed system is operationally feasible because of following reasons:
The organization is already working with the computerized system and has knowledge about
functioning and databases.
The interactivity of existing system is very poor as each command ahs to be written
manually on the system and the proposed system is much faster.
The proposed system is better in use and more user friendly as it generates proper messages
at run time.
The input from the user is much as field like DATA, PRODUCTION, DETAILS, ORDER
DETAILS are includes itself by the system.
ECONOMIC FEASIBILITY
Economic analysis is the most frequently used technique for evaluating the effectiveness of
proposes system. In this we determine the benefits and savings that are expected from a
proposed system. In this we determine the benefits and saving that are expected form a
proposed system and compare them with cost. It benefits outweigh costs; a decision is taken to
design and implement the system. This is an ongoing effort that improves in accuracy at each
phases of the system life cycle.
The proposed system is financial feasible because of following reasons:
12
8/14/2019 Sw Engg Exp1,2,3,4,5,6,7,8,9,10
13/50
8/14/2019 Sw Engg Exp1,2,3,4,5,6,7,8,9,10
14/50
8/14/2019 Sw Engg Exp1,2,3,4,5,6,7,8,9,10
15/50
The level 1 DFD is expanded from the level 0 DFD. This level basically explains the context
level bubble in detail.Level 1 DFD gives overview of full system. It identifies major processesand data flows between them. It identifies data stores that are used by the major processes
LEVEL 1 DFD FOR USER
Fig. LEVEL 1 Data Flow Diagram
15
8/14/2019 Sw Engg Exp1,2,3,4,5,6,7,8,9,10
16/50
LEVEL 1 DFD FOR ADMINISTRATOR
Fig. LEVEL 1 Data Flow Diagram
16
8/14/2019 Sw Engg Exp1,2,3,4,5,6,7,8,9,10
17/50
EXPERIMENT NO-4.
AIM: - Create level 2 DFD using Smart Draw (case study of website development)
OBJECTIVE: - Study of Website Development Procedure.
HARDWARE REQUIREMENTS:-
Develop software in either VB or HTML or .NET 2 or JAVA.
Microsoft SQL server.
Windows 2003 server with Microsoft Internet Information Server (IIS).
Application should well commented.
Applications should support multiple simultaneous read and write requests from
different clients.
SOFTWARE REQUIREMENTS:-
Platform - Windows 2003 server
Front End - HTML, CSS, ASP, Macromedia Flash
Tools used - Macromedia Flash, Photoshop
Back End - SQL server
Software Required - Smart draw 6
THEORY:-
DFD level 2 is a further decomposition of DFD level 1. The steps to develop DFD level 2 are
extremely similar to those for DFD level 1, but there are some extra requirements:
Each bubble should both be clearly defined and also easy enough to implement and do
testing in later stages.
The data flows should be consistent with DFD level 1 and Context Diagram.
17
8/14/2019 Sw Engg Exp1,2,3,4,5,6,7,8,9,10
18/50
LEVEL 2 DFD FOR ADMINISTRATOR
18
8/14/2019 Sw Engg Exp1,2,3,4,5,6,7,8,9,10
19/50
LEVEL 2 DFD FOR USER
19
8/14/2019 Sw Engg Exp1,2,3,4,5,6,7,8,9,10
20/50
EXPERIMENT NO-5.
AIM: - Drawing Entity Relationship Diagram (ERD) in Smart Draw (Case study ofWebsite Development)
OBJECTIVE: - Study of Website Development Procedure.
HARDWARE REQUIREMENTS:-
Develop software in either VB or HTML or .NET 2 or JAVA.
Microsoft SQL server.
Windows 2003 server with Microsoft Internet Information Server (IIS).
Application should well commented.
Applications should support multiple simultaneous read and write requests from
different clients.
SOFTWARE REQUIREMENTS:-
Platform - Windows 2003 server
Front End - HTML, CSS, ASP, Macromedia Flash
Tools used - Macromedia Flash, Photoshop
Back End - SQL server
Software Required - Smart draw 6
THEORY:-
An entity-relationship diagram is a data modeling technique that creates a graphicalrepresentation of the entities, and the relationships between entities, within an information
system. Entity Relationship Diagrams (ERDs) illustrate the logical structure of databases.
An Entity Relationship Diagram (ERD) is a snapshot of data structures. ERDs show entities in a
database and relationships between tables within that database.
20
http://searchdatamanagement.techtarget.com/sDefinition/0,,sid91_gci211902,00.htmlhttp://searchdatamanagement.techtarget.com/sDefinition/0,,sid91_gci211902,00.html8/14/2019 Sw Engg Exp1,2,3,4,5,6,7,8,9,10
21/50
8/14/2019 Sw Engg Exp1,2,3,4,5,6,7,8,9,10
22/50
8/14/2019 Sw Engg Exp1,2,3,4,5,6,7,8,9,10
23/50
8/14/2019 Sw Engg Exp1,2,3,4,5,6,7,8,9,10
24/50
Derived attribute: - A derived attribute is based on another attribute. For example, an
employee's monthly salary is based on the employee's annual salary.
Total participation of E2 in R: - An entity has to participate in the relation AT LEAST ONCE.
Double lines in E/R
Cardinality ratio 1:N for E1:E2 in R
24
8/14/2019 Sw Engg Exp1,2,3,4,5,6,7,8,9,10
25/50
8/14/2019 Sw Engg Exp1,2,3,4,5,6,7,8,9,10
26/50
EXPERIMENT NO-6.
AIM: - Representing mapping cardinalities and relationships in ER diagram using Smart
Draw.
OBJECTIVE: - Study of Website Development Procedure.
HARDWARE REQUIREMENTS:-
Develop software in either VB or HTML or .NET 2 or JAVA.
Microsoft SQL server.
Windows 2003 server with Microsoft Internet Information Server (IIS).
Application should well commented.
Applications should support multiple simultaneous read and write requests from
different clients.
SOFTWARE REQUIREMENTS:-
Platform - Windows 2003 server
Front End - HTML, CSS, ASP, Macromedia Flash
Tools used - Macromedia Flash, Photoshop
Back End - SQL server
Software Required - Smart draw 6
THEORY:-
A mapping cardinality is a data constraint that specifies how many entities an entity can be
related to in a relationship set.
A binary relationship set is a relationship set on two entity sets. Mapping cardinalities on binary
relationship sets are simplest.
Consider a binary relationship set R on entity sets A and B. There are four possible mapping
cardinalities in this case:
26
8/14/2019 Sw Engg Exp1,2,3,4,5,6,7,8,9,10
27/50
8/14/2019 Sw Engg Exp1,2,3,4,5,6,7,8,9,10
28/50
4. MANY-TO-MANY - an entity in A is related to any number of entities in B, but an entity in B is
related to any number of entities in A.
MAPPING CARDINALITY FOR CASE STUDY:
One to One Relationship:
S U R V E Y E V A L U A T I O N R E S U L T
1 1
One survey can evaluates only one result at one time. So, therefore one to one relationship is there in
survey and result.
One to Many Relationship:
S U R V E Y C O N S I S T S O F T O P I C S
1 N
One survey can consist of various topics. So, therefore, one to many relationship obtain in survey and
topics.
Many to One Realtionship:
28
8/14/2019 Sw Engg Exp1,2,3,4,5,6,7,8,9,10
29/50
Q U E S T I O N S A N D
O P T I O N SC O N S I S T S O F S U R V E Y
N 1
Different questions and options can be contain in one survey and therefore, obtain the many to one relationship
between questions and survey.
Many to Many Relationship:
U S E R P A R T I C I P A T E S U R V E Y
N N
Different users can participate in different surveys and vice versa and therefore, many to many
relationship exist.
RELATIONSHIPS
A relationship is an association that exists between two entities. Most relationships can also be stated
inversely. The relationships on an Entity-Relationship Diagram are represented by lines drawn
between the entities involved in the association. The name of the relationship is placed either above,
below, or beside the line.
Relationship Between Entities:
There can be a simple relationship between two entities. For example, user participates in the
surveys.
Some relationships involve only one entity. For example, Employee reports to Employee:
R elationship between two entities:-
U S E R S U R V E YP A R T I C I P A T E
1 : M 1 : M
Relationship between One entity:-
29
8/14/2019 Sw Engg Exp1,2,3,4,5,6,7,8,9,10
30/50
8/14/2019 Sw Engg Exp1,2,3,4,5,6,7,8,9,10
31/50
CHARACTERISTICS OF RELATIONSHIPS
A relationship may be depicted in a variety of ways to improve the accuracy of the
representation of the real world. The major aspects of a relationship are:
Naming the Relationship:
Place a name for the relationship on the line representing the relationship on the E-R diagram.
Use a simple but meaningful action verb (e.g., buys, places, takes) to name the relationship.
Assign relationship names that are significant to the business or that are commonly understood
in everyday language.
Bi-directional Relationships:
Whenever possible, use the active form of the verb to name the relationship. Note that all
relationships are bi-directional. In one direction, the active form of the verb applies. In the
opposite direction, the passive form applies
RELATIONSHIP TITLE:-
E N T I T Y 1 E N T I T Y 21 : M 1 : M
R e l a t i o n s h i p
By convention, the passive form of the relationship name is not included on the E-R diagram.
This helps avoid clutter on the diagram.
31
8/14/2019 Sw Engg Exp1,2,3,4,5,6,7,8,9,10
32/50
RELATIONSHIP DEPENDENCY
T ypes of Relationship Depencies:-
Three relationship dependencies are possible:
Mandatory.
Optional.
Contingent.
Relationship dependencies may be of different degrees. Each relationship dependency is
illustrated differently.
Mandatory Relationship: -
A mandatory relationship indicates that for every occurrence of entity A there must exist an
entity B, and vice versa.
32
8/14/2019 Sw Engg Exp1,2,3,4,5,6,7,8,9,10
33/50
When specifying a relationship as being mandatory one-to-one, you are imposing requirements known
as integrity constraints. For example, there is one Project Manager associated with each Project, and
each Project Manager is associated with one Project at a time. A Project Manager may not be
removed if the removal causes a Project to be without a Project Manager. If a Project Manager must
be removed, its corresponding project must also be removed. A Project may not be removed if it
leaves a Project Manager without a Project. A new project may be added if it can be managed by anexisting Project Manager. If there is no Project Manager to manage the Project, a Project Manager
must be added with the addition of a new Project.
Optional Relationship: -
An optional relationship between two entities indicates that it is not necessary for every entity
occurrence to participate in the relationship. In other words, for both entities the minimum number of
instances in which each participates, in each instance of the relationship is zero (0).As an example, consider the relationship Man is married to Woman. Both entities may be depicted in
an Entity-Relationship Model because they are of interest to the organization. However, not every
man, or woman, is necessarily married. In this relationship, if an employee is not married to another
employee in the organization, the relationship could not be shown.
The optional relationship is useful for depicting changes over time where relationships may exist one
day but not the next. For example, consider the relationship "Employee attends Training Seminar."
There is a period of time when an Employee is not attending a Training Seminar or a Training Seminar
may not be held.
33
http://blogs.ittoolbox.com/eai/implementation/archives/er-diagram-relationship-integrity-constraints-14218http://blogs.ittoolbox.com/eai/implementation/archives/er-diagram-relationship-integrity-constraints-142188/14/2019 Sw Engg Exp1,2,3,4,5,6,7,8,9,10
34/50
Contingent Relationship: -
A contingent relationship represents an association which is mandatory for one of the involved
entities, but optional for the other. In other words, for one of the entities the minimum number of
instances that it participates in each instance of the relationship is one (1), the mandatory association,
and for the other entity the minimum number of instances that it participates in each instance of the
relationship is zero (0), the optional association.
Contingent relationships may exist due to business rules, such as Project is staffed by Consultant.
In this case, a Project may or may not be staffed by a Consultant. However, if a Consultant is
registered in the system, a business rule may state that a Consultant must be associated with a Project.
34
8/14/2019 Sw Engg Exp1,2,3,4,5,6,7,8,9,10
35/50
8/14/2019 Sw Engg Exp1,2,3,4,5,6,7,8,9,10
36/50
The tester doesnt ever examine the programming code and doesnt need any further knowledge of the
program other than its specifications. Black box testing is not a type of testing; it instead is a testing
strategy, which doesnt need any knowledge of internal design or code etc. As the name black box
suggests, no knowledge of internal logic or code structure is required. The base of the black box
testing strategy lies in the selection of appropriate data as per functionality and testing it against the
functional specifications in order to check for normal and abnormal behavior of the system. In order to
implement black box strategy, the tester is needed to be through with the requirement specifications ofthe system and as user, should know, how the system should behave in response to the particular
action. The types of testing under this strategy are totally based on the testing for requirements and
functionality of the work product or software application. Black box testing is sometimes also known
as Opaque Testing, Functional or Behavioral Testing and also as Closed Box Testing.
Black box testing uncovers following types of errors.
1. Incorrect or missing functions
2. Interface errors
3. External database access4. Performance errors
5. Initialization and termination errors.
There are essentially the following two main approaches to designing black box test cases.
o Equivalence class partitioning
o Boundary value analysis
EQUIVALENCE CLASS PARTITIONING
In this approach the domain of the input values to a program is partitioned into a set of equivalence
classes. This partitioning is done such that the behavior of the program is similar for every input data
belonging to the same equivalence class. The main idea of defining the equivalence class is that
testing the code with any one value belonging to an equivalence class is as good as testing the
software with any other value belonging to that equivalence class. Equivalence classes for the
software can be designed by examining the input data.
Some general guidelines for designing the equivalence class are:-
1. If an input condition specifies a range, one valid and two invalid equivalence classes are
defined.
2. If an input condition requires a specific value, then one valid and two invalid equivalenceclasses are defined.
36
8/14/2019 Sw Engg Exp1,2,3,4,5,6,7,8,9,10
37/50
3. If an input condition specifies a member of a set, then one valid and one invalid equivalence
class are defined.4. If an input condition is Boolean, then one valid and one invalid equivalence class are defined.
Example : For software that computes the square root of an input integer which can assume values in
the range from 1 to 5000, there are three equivalence classes: the set of negative integers, the set of
integers in the range of 1 to 5000, and the integers larger than 5000. Therefore, the test cases must
include representatives from each of the three equivalence classes and a possible test set can be {-5,
500, 6000}.
BOUNDARY VALUE ANALYSIS:
Some typical programming errors occur at the boundaries of different equivalence classes of inputs.
The reason for such errors is unknown since programmers failed to see the special processing required
by the input values that lie at the boundary.
It has been observed that programs that work correctly for a set of values in an equivalence class failon some special values. These values often lie on the boundary of the equivalence class. Test cases
that have values on the boundaries of equivalence classes are therefore likely to be error producing so
selecting such test cases for those boundaries is the aim of boundary value analysis.
In boundary value analysis, we choose input for a test case from an equivalence class, such that the
input lies at the edge of the equivalence classes. Boundary values for each equivalence class, including
the equivalence classes of the output, should be covered. Boundary value test cases are also called
extreme cases.Hence, a boundary value test case is a set of input data that lies on the edge or
boundary of a class of input data or that generates output that lies at the boundary of a class of output
data.
In case of ranges, for boundary value analysis it is useful to select boundary elements of the range and
an invalid value just beyond the two ends (for the two invalid equivalence classes. For example, if the
range is 0.0
8/14/2019 Sw Engg Exp1,2,3,4,5,6,7,8,9,10
38/50
8/14/2019 Sw Engg Exp1,2,3,4,5,6,7,8,9,10
39/50
EXPERIMENT NO. 8
AIM : Techniques used in White Box testing.
OBJECTIVE: - Study of techniques of white box testing.
HARDWARE REQUIREMENT:-
Develop software in either VB or HTML or .NET 2 or JAVA.
Microsoft SQL server.
Windows 2003 server with Microsoft Internet Information Server (IIS).
Application should well commented.
Applications should support multiple simultaneous read and write requests from different
clients.
SOFTWARE REQUIREMENT:-
Platform - Windows 2003 server
Front End - HTML, CSS, ASP, Macromedia Flash
Tools used - Macromedia Flash, Photoshop
Back End - SQL server
Software Required - Smart draw 6
THEORY:-
White box test cases require thorough knowledge of the internal structure of the software. Therefore, it
is also known as structural testing. White box testing strategy deals with the internal logic and
structure of the code. White box testing is also called as glass, structural, open box or clears box
testing. The tests written based on the white box testing strategy incorporate coverage of the code
written, branches, path, statements in internal logic of the code etc.
39
8/14/2019 Sw Engg Exp1,2,3,4,5,6,7,8,9,10
40/50
8/14/2019 Sw Engg Exp1,2,3,4,5,6,7,8,9,10
41/50
8/14/2019 Sw Engg Exp1,2,3,4,5,6,7,8,9,10
42/50
For Example:-
Int compute gcd(x,y)
Int x,y;
{
1.while (x!=y)
2.if(x>y)then
3.x=x-y;
4.else y=y-x;
5}
6.return x;
The different numbered statements served as nodes of the CFG and edge from one node to another
exists if the execution of the control statement representing a first node can result in the transfer of
control to the other node.
A path through the program is a node and edge sequence from the starting node to a terminal node
of a CFG of a program. An independent path is any path through the program that introduces
atleast one new node that is not included in any other linearly independent path.
CFG for the example program above is as follows:
1
2
3 4
5
6
42
8/14/2019 Sw Engg Exp1,2,3,4,5,6,7,8,9,10
43/50
Fig Control Flow Diagram
Advantages of White Box Testing :
As the knowledge of internal coding structure is prerequisite, it becomes very easy to
find out which type of input/data can help in testing the application effectively.
The other advantage of white box testing is that it helps in optimizing the code
It helps in removing the extra lines of code, which can bring in hidden defects.
Disadvantages of White Box Testing :
As knowledge of code and internal structure is a prerequisite, a skilled tester is needed
to carry out this type of testing, which increases the cost.
And it is nearly impossible to look into every bit of code to find out hidden errors,
which may create problems, resulting in failure of the application.
43
8/14/2019 Sw Engg Exp1,2,3,4,5,6,7,8,9,10
44/50
8/14/2019 Sw Engg Exp1,2,3,4,5,6,7,8,9,10
45/50
Modules are arranged hierarchically.
There is only one root (i.e., top level) module.
Execution begins with the root module.
Program control must enter a module at its entry point and leave at its exit point.
Control returns to the calling module when the lower level module completes execution.
DESCRIPTION OF A MODULE:
Logically, a module is one problem-related task that the program performs, such as Create Invoice or
Validate Customer Request. Physically, a module is implemented as a sequence of programminginstructions bounded by an entry point and an exit point.
COMMON MODULES:
There are two categories of common modules:
system (e.g., I/O handlers, locking),
application (e.g., edits, calculations).
Some common modules (e.g., security, navigation, audit trails, and help) do not fall clearly in eithercategory. These modules may be common to more than one application but are not system level
modules.
System common modules should be defined as part of the preliminary design. Application common
modules should be defined as early as possible but many may not be identified until detailed design.
CONSTRUCTS OF STRUCTURED SOFTWARE DESIGN:
Tree-structure diagrams are used to illustrate modules that follow the rules of structured softwaredesign. A tree-structure can be drawn as a set of blocks, for example, a Structure Chart, or a set of
brackets, such as an Action Diagram.
When designing structured software, three basic constructs are represented:
Sequence - items are executed from top to bottom.
45
8/14/2019 Sw Engg Exp1,2,3,4,5,6,7,8,9,10
46/50
8/14/2019 Sw Engg Exp1,2,3,4,5,6,7,8,9,10
47/50
8/14/2019 Sw Engg Exp1,2,3,4,5,6,7,8,9,10
48/50
EXPERIMENT NO. 10
AIM : Creating modules in a structured chart.
OBJECTIVE: - To familiarize with the concept of structured charts
HARDWARE REQUIREMENT:-
Develop software in either VB or HTML or .NET 2 or JAVA.
Microsoft SQL server.
Windows 2003 server with Microsoft Internet Information Server (IIS).
Application should well commented.
Applications should support multiple simultaneous read and write requests from different
clients.
SOFTWARE REQUIREMENT:-
Platform - Windows 2003 server
Front End - HTML, CSS, ASP, Macromedia Flash
Tools used - Macromedia Flash, Photoshop
Back End - SQL server
Software Required - Smart draw 6
THEORY:-
A rectangle is used to represent a module on a Structure Chart. The module name is written insidethe rectangle. Other than the module name, the Structure Chart gives no information about the
internals of the module.
48
8/14/2019 Sw Engg Exp1,2,3,4,5,6,7,8,9,10
49/50
MODULE NAMES AND NUMERICAL IDENTIFIERS:
Each module must have a module name. Module names should consist of a transitive (or action) verb
and an object noun. Module names and numerical identifiers may be taken directly from
corresponding process names on Data Flow Diagrams or other process charts. The name of the module
and the numerical identifier is written inside the module rectangle. Other than the module name andnumber, no other information is provided about the internals of the module.
EXISTING MODULE :
Existing modules may be shown on a Structure Chart. An existing module is represented by doublevertical lines.
UNFACTORING SYMBOL:
An unfactoring symbol is a construct on a Structure Chart that indicates the module will not be a
module on its own but will be lines of code in the parent module. An unfactoring symbol isrepresented with a flat rectangle on top of the module that will not be a module when the program is
developed.
49
8/14/2019 Sw Engg Exp1,2,3,4,5,6,7,8,9,10
50/50
An unfactoring symbol reduces factoring without having to redraw the Structure Chart. Use an
unfactoring symbol when a module that is too small to exist on its own has been included on the
Structure Chart. The module may exist because factoring was taken too far or it may be shown to
make the chart easier to understand. (Factoring is the separation of a process contained as code in one
module into a new module of its own).
RESULT:
This experiment introduces the concept of creating modules in structured charts