尊敬的 微信汇率:1円 ≈ 0.046166 元 支付宝汇率:1円 ≈ 0.046257元 [退出登录]
SlideShare a Scribd company logo
Bengali Braille to Text Translator
Software Requirements Specification and Analysis
25-Sep-2016
Bengali Braille to Text Translator
Software Requirements Specification and Analysis
Submitted by
Minhas Kamal
Roll: BSSE-0509
Student of BSSE 8th Semester
Institute of Information Technology
University of Dhaka
Supervised by
Dr. Mohammad Shoyaib
Associate Professor
Institute of Information Technology
University of Dhaka
Submission Date
25th September, 2016
LETTER OF TRANSMITTAL
25th September, 2016.
BSSE 4th Year Exam Committee
Institute of Information Technology
University of Dhaka
Sir,
I have prepared the report on Software Requirements Specification of
Bengali Braille to Text Translator.
The primary purpose of this report is to summaries my findings that I
have gathered during the requirements specification process. This
report also includes details of each step I have followed while collecting
the requirements.
Sincerely Yours,
Minhas Kamal
Roll: BSSE-0509
Student of BSSE 8th Semester
Institute of Information Technology
University of Dhaka
Enclosure: Software Requirements Specification Report
i
Executive Summary
Braille is a specialized writing system for visually impaired people,
where raised dots on embossed paper are used as tactile alphabet. The
tool Bengali Braille to Text Translator will take in scanned image of
Bengali Braille writing, apply pattern recognition, and translate it to
text. The user does not need much theoretical or technical skill to run
this software.
Acknowledgements
By the grace of Almighty Allah I have completed my report on Software
Requirements Specification of Bengali Braille to Text Translator.
I am grateful to my supervisor Dr. Mohammad Shoyaib for his direction
throughout the working time. It was almost impossible for me to
complete this SRS document without him.
I am also thankful to the teachers and students of The Institute of
Education and Research, University of Dhaka. They greatly helped me in
collecting information among all business.
ii
l to the Program Coordinators of PGDIT. They greatly helped us
collecting information among all business.
Table of Contents
Chapter 1: Introduction ............................................................................ 1
1.1 Purpose 1
1.2 Intended Audience 1
Chapter 2: Inception .................................................................................. 3
2.1 Introduction 3
2.1.1 Identifying Stakeholders 3
2.1.2 Asking the First Questions 4
2.1.3 Recognizing Multiple Viewpoints 4
2.1.4 Working towards Collaboration 5
2.2 Conclusion 6
Chapter 3: Elicitation ................................................................................ 7
3.1 Introduction 7
3.2 Eliciting Requirements 7
3.3 Collaborative Requirements Gathering 7
3.4 Quality Function Deployment 8
3.4.1 Normal Requirements 8
3.4.2 Expected Requirements 8
3.4.3 Exciting requirements 9
3.5 Usage Scenarios 9
3.6 Elicitation Work Product 10
Chapter 4: Scenario-Based Model ........................................................ 11
4.1 Introduction 11
4.2 Use Case Scenario 11
4.3 Use Case Descriptions 13
4.3.1 Bengali Braille to Text Translator 14
4.3.1.2 Pre-Processing 18
4.3.1.3 Translation 31
4.3.1.4 Post-Processing 41
iii
Table of Contents
Chapter 5: Data Model .............................................................................. 48
5.1 Introduction 48
5.2 Data Object Selection 48
5.3 Data Objects & Attributes 51
5.4 Conclusion 52
Chapter 6: Class-Based Model ............................................................... 53
6.1 Introduction 53
6.2. General Classification 53
6.3 Selection Characteristics 55
6.4 Attribute Selection 56
6.5 Defining Methods 57
6.5.1 Verb List 57
6.5.2 Selected Methods 58
6.6 Class Diagram 60
6.7 Class Card 61
Chapter 7: Behavioral Model .................................................................. 62
8.1 Introduction 62
8.2 Identifying Events 62
8.3 State Transition Diagram 64
8.4 Sequence Diagram 65
Chapter 8: Conclusion .............................................................................. 76
Appendix ........................................................................................................ 77
iv
List of Figures
Figure No. Figure Name Page No.
Figure 4.3 Use Case Diagram of BBTT (Level-0) 13
Figure 4.3.1 Use Case Diagram of BBTT (Level-1) 14
Figure 4.3.1.1a Activity Diagram- Image Acquisition 16
Figure 4.3.1.1b Swim-Lane Diagram- Image Acquisition 17
Figure 4.3.1.2 Use Case Diagram of Pre-Processing (Level-1.2) 18
Figure 4.3.1.2.1a Activity Diagram- Enhancement 20
Figure 4.3.1.2.1b Swim-Lane Diagram- Enhancement 21
Figure 4.3.1.2.2a Activity Diagram- Noise Reduction 23
Figure 4.3.1.2.2b Swim-Lane Diagram- Noise Reduction 24
Figure 4.3.1.2.3a Activity Diagram- Connectivity Improvement 26
Figure 4.3.1.2.3b Swim-Lane Diagram- Connectivity Improvement 27
Figure 4.3.1.2.4a Activity Diagram- Quantization 29
Figure 4.3.1.2.4b Swim-Lane Diagram- Quantization 30
Figure 4.3.1.3 Use Case Diagram of Translation (Level-1.3) 31
Figure 4.3.1.3.1a Activity Diagram- Segmentation 33
Figure 4.3.1.3.1b Swim-Lane Diagram- Segmentation 34
Figure 4.3.1.3.2a Activity Diagram- Pattern Recognition 36
Figure 4.3.1.3.2b Swim-Lane Diagram- Pattern Recognition 37
Figure 4.3.1.3.3a Activity Diagram- Raw Text Generation 39
Figure 4.3.1.3.3b Swim-Lane Diagram- Raw Text Generation 40
Figure 4.3.1.4 Use Case Diagram of Post-Processing (Level-1.4) 41
Figure 4.3.1.4.1a Activity Diagram- Spell Check 43
Figure 4.3.1.4.1b Swim-Lane Diagram- Spell Check 44
Figure 4.3.1.4.2a Activity Diagram- Clean and Generate Output 46
Figure 4.3.1.4.2b Swim-Lane Diagram- Clean and Generate Output 47
Figure 6.6 Class Diagram (BBTT) 60
Figure 7.3 State Transition Diagram- User 64
Figure 7.4.1 Sequence Diagram- Take Image 65
Figure 7.4.2 Sequence Diagram- Run Enhancement 66
Figure 7.4.3 Sequence Diagram- Reduce Noise 67
Figure 7.4.4 Sequence Diagram- Improve Connectivity 68
Figure 7.4.5 Sequence Diagram- Apply Quantization 69
Figure 7.4.6 Sequence Diagram- Extract Braille Pattern 70
v
List of Figures
Figure No. Figure Name Page No.
Figure 7.4.7 Sequence Diagram- Convert Braille to Code 71
Figure 7.4.8 Sequence Diagram- Map Code to Character 72
Figure 7.4.9 Sequence Diagram- Check Spell 73
Figure 7.4.10 Sequence Diagram- Run Cleaning Procedure 74
Figure 7.4.11 Sequence Diagram- Customize Template 75
Bengali Braille to Text Translator
Software Requirement Specification and Analysis
1
Chapter 1
Introduction
1.1 Purpose
This is the Software Requirements Specification (SRS) for the tool- Bengali Braille
Character Recognizer. The document contains detailed functional, non-functional,
and support requirements for the project. It also establishes a requirements
baseline for the development of the system.
The SRS serves as the official means of communicating user requirements to the
developer [1]. It provides a common reference point for both the developer team
and stakeholder community. This document’s content may evolve over time as
users and developers work together in developing the system. But its
fundamental output will remain unchanged.
1.2 Intended Audience
This SRS is intended for all the stakeholders- customers, project managers,
designers, developers, and quality assurance engineers [1] [2]. They will use it for
the following reasons-
o Customers will use this SRS to verify acceptability of the development
team’s work.
o The project managers will design their plan on the basis of this document.
They will set milestones and delivery dates. They will also ensure that the
development team is on track.
o The designers will prepare the systems design based on this document.
They will continually refer back to this SRS to ensure that the system they
are designing will fulfill the customers’ needs.
2
o Developers will use this document as a basis for developing the system’s
functionality. The developers will link the requirements defined in this SRS
to the software they create to ensure that they have created software that
will fulfill all of the customers’ documented requirements.
o Quality assurance engineers will use the SRS to derive test plans and test
cases. When portions of the software are complete, they will run their tests
on that software to ensure that the software fulfills the requirements
documented in this SRS. They will again run their tests on the entire system
when it is complete and ensure that all requirements documented in this
SRS have been completed.
3
Chapter 2
Inception
2.1 Introduction
Requirements Engineering starts with Inception phase. Its goal is to identify
parallel needs and conflicting requirements among the stakeholders of a project.
The foundation was established by following the subsequent factors-
2.1.1 Identifying Stakeholders
Any person, group, or organization which will affect or be affected by the system
directly or indirectly is a stakeholder. It includes both project developers and end-
users. Here only client side stakeholders will be focused.
Although, we intend to develop Bengali Braille to Text Translator for public use,
we are currently building it for using only in the Institute of Education and
Research (IER), University of Dhaka premises. For this reason, we have selected
the stakeholders from the scope of IER only. We have identified following
stakeholders for our project:
1. Teachers of IER: Teachers working with visually impaired student at IER
are our primary client side stakeholders. They will directly interact with
the system.
2. Visually Impaired Students of IER: Although the visually impaired
students will not interact with the system directly, but they are the
biggest group affected by the system. The software will process their
writing and convert it to text.
3. General Students of IER: Visually normal students will also use the
software. But they will not be using it for the same reason as the
teachers.
4
2.1.2 Asking the First Questions
First set of context-free questions focuses on the client side stakeholders and tries
to reveal overall project goals and benefits. Now we ask question to help us
gaining a better understanding of problem, and to allow customers to voice their
perceptions about the solution.
2.1.3 Recognizing Multiple Viewpoints
We have collected these view points by discussing with the teachers, visually
impaired students, and general students of IER.
1. Teachers of IER:
a. Full control of the system
b. Low cost
c. Minimum error rate
d. Handing batch of images
e. Intuitive user interface
f. Ability to see intermediate results
2. Visually Impaired Students of IER:
a. Error free solution
b. Process double sided writing
c. Special character recognition ability
d. Fast processing
3. General Students of IER:
a. Easy to use
b. User friendly interface
5
c. Easy to install
d. Work with any scanner
e. No need of theoretical or technical knowledge
2.1.4 Working towards Collaboration
Every stakeholder has his own set of requirements from his point of view. We
followed following steps to merge these requirements:
i. Identify the common and conflicting requirements
ii. Categorize the requirements
iii. Take priority points for each requirement from stakeholders and on the
basis of this voting prioritize the requirements
iv. Make final decision about the requirements
Common Requirements:
 User friendly interface
 Easy to use
Conflicting Requirements:
 Low cost and process double sided writing
 Fast and minimum error rate
 Full control of the system and no need of theoretical or technical
knowledge
6
Final Requirements: We have finalized following requirements for the system
through categorization and prioritization process:
 Easy to use
 User friendly interface
 Users with theoretical and technical knowledge will be able to fully
customize and control the system
 Users with no technical knowledge will be able to use templates (created
by specialists) for running the system
 Minimize error rate
 Can work with any scanner
2.2 Conclusion
Inception phase strongly supported us in establishing basic understanding about
Bengali Braille to Text Translator. It also helped us to identify people who will be
benefited by the software. Most importantly it established a preliminary
communication with the stakeholders.
7
Chapter 3
Elicitation
3.1 Introduction
Elicitation helps the customer to define the requirement more specifically. This
phase faces many problems like- problems of scope, problems of volatility, and
problems of understanding. To overcome these problems, we have worked in an
organized and systematic manner.
3.2 Eliciting Requirements
Unlike Inception, where Question and Answer approach is used, Elicitation makes
use of a requirements elicitation format that combines the elements of problem
solving, elaboration, negotiation, and specification. It requires the cooperation of
a group of end-users and developers to elicit requirements.
3.3 Collaborative Requirements Gathering
There are many different approaches to collaborative requirements gathering.
Each approach makes use of a slightly different scenario. We followed the
subsequent steps to do it:
i. Meetings were conducted with teachers and students of IER, DU. They
were questioned about their requirements and expectations from the tool.
ii. They were asked about the problems they are facing with exam papers
written in Braille. We also inquired regarding the efficiency of the current
process.
iii. At last we selected our final requirement list from these meetings.
8
3.4 Quality Function Deployment
The technique which translates the needs of the customer into technical
requirements for software is called Quality Function Deployment (QFD).
QFD concentrates on maximizing customer satisfaction from the Software
Engineering process. With respect to our project the following requirements are
identified by QFD-
3.4.1 Normal Requirements
Objectives and goals that are stated during the meeting with the customers are
Normal Requirements. Our project’s Normal Requirements are:
1. User can customize the work sequence, and store the configuration for
future use.
2. Will be able to run the tool and get output with only single ‘run’ button.
3. User can view result from each level of Braille to text translation
process.
4. User will be able to run different types of image enhancement and other
pre-processing algorithms to improve input image quality.
5. There will be a spell checking system, which will minimize error rate.
6. There will be some default configuration templates available with the
software.
7. User will also be able to select different pattern recognition algorithms
for recognizing Braille patterns on the basis of his need.
3.4.2 Expected Requirements
Expected Requirements are implicit to the system. These requirements may be so
fundamental that the customers do not explicitly state them. Expected
Requirements of our project are:
9
1. The system will be able to support all popular image formats like- JPG,
JPEG, PNG, and so on.
2. User will be able to process both single image and batch of images of
Braille writing.
3. The user interface of the system shall be easy to use. It will make use of
drop-down boxes, radio buttons, and other selectable fields wherever
possible instead of fields that require the user to type in data.
3.4.3 Exciting Requirements
Features that go beyond the customer's expectations are called Exciting
Requirements. They prove to be very satisfying when present-
1. The user interface should provide appropriate error messages for invalid
input as well as tool-tips and help.
2. The system will also be able to work with multiple languages of Braille
writing.
3.5 Usage Scenario
Bengali Braille to Text Translator
Bengali Braille Character Recognizer is a tool that will take scanned image of
Braille writing, run different types of image-preprocessing techniques, translate
Braille to text through pattern recognition, and apply text correction procedures
for final output.
Braille is a specialized writing system for visually impaired people. Here raised
dots on embossed paper are used as tactile alphabet [3] [4]. These papers will be
scanned with a scanner, and resulting image files will be stored in the computer.
At first, the user will select scanned images of Braille writing. Now, different types
of image enhancement processes will be run. These image enhancement
processes will improve Braille patterns and make it distinguishable from the
10
background. After that, various noise reduction algorithms will be applied for
reducing artifacts and improve pattern quality. For further development of Braille
dots, connectivity improvement and quantization will be applied.
In the second section, Braille is translated to text. Firstly, Braille patterns are
extracted from the image. Then these patterns are converted to code- Braille
Pattern Code (BPC- each dot of Braille character is encoded in ‘1’ and ‘0’). Now
these resulting codes are mapped with Code to Character Map (CCM-like a hash
table, where each unique code relates to only one character) and plain text file is
generated. This text file contains probable raw characters for the Braille image.
In the post processing stage, spell checking will be performed for minimizing error
rate. Here, words for spell checking process will be stored in a Domain Word List
(DWL) file. Lastly, a cleaning procedure will produce the final text file.
All these steps, settings, algorithms and their parameters can be automated using
a configuration file- Braille Processing Template (BPT). Some templates (BPT) will
be available to the user in default with the system. Users will also be able to
define customized template.
3.6 Elicitation Work Product
Our elicitation work product includes:
 Statement of our requirements for Bengali Braille to Text Translator
 A bounded statement of scope for our solution
 Set of usage scenarios
 A list of clients, users, and other stakeholders who participated in
requirement specification process
11
Chapter 4
Scenario-Based Model
4.1 Introduction
The user’s point of view is used to describe Scenario-Based Model. In SRS this is
the first modeling phase. So, it serves as an input for the creation of other models.
4.2 Use Case Scenario
With the advancement of requirements gathering, functionalities and
responsibilities of the software starts to materialize. The following table enlists
primary components of the system:
Table-4.2 Use Case Scenario
Level-0 Level-1 Level-2 Actors
Bengali
Braille to
Text
Translator
Pre-Processing Image Acquisition User, Scanner
Enhancement User, Braille Processing
Template
Noise Reduction User, Braille Processing
Template
Connectivity
Improvement
User, Braille Processing
Template
Quantization User, Braille Processing
Template
Translation Segmentation User, Braille Processing
Template
Pattern Recognition User, Braille Processing
Template, Braille
12
Pattern Code
Raw Text Generation User, Braille Processing
Template, Code to
Character Map
Post-
Processing
Spell Check User, Braille Processing
Template, Domain
Word List
Clean and Generate
Output
User, Braille Processing
Template
13
4.3 Use Case Description
In this section Use Case Scenario will be elaborated to Use Case Diagram,
Description, Activity Diagram, and Swim-Lane Diagram. Figure-4.3 is the Use Case
Diagram of level-0 for Bengali Braille to Text Translator (BBTT):
14
4.3.1 Bengali Braille to Text Translator
Here Figure-4.3.1 is the detailed form of level-0:
15
4.3.1.1 Use Case: Image Acquisition
Primary Actor: User.
Secondary Actor: Scanner, Braille Processing Template.
Goal in Context: Use scanner to scan Braille writing and initialize the
system.
Scenario:
1. Place Braille writing sheets in scanner.
2. Scan and store images.
3. Input images into the system.
4. Select Braille Processing Template (BPT) if
necessary.
Exceptions:
1. System failure.
2. Error in scanner connection.
Priority: Moderate, may be implemented.
When Available: First increment.
Frequency of Use: Several times per week.
16
Figure 4.3.1.1a is the Activity Diagram of Image Acquisition-
17
Figure 4.3.1.1b is the Swim-Lane Diagram of Image Acquisition-
18
4.3.1.2 Pre-Processing
Pre-Processing phase can be divided into five sub-phases. Figure-4.3.1.2 shows
this:
19
4.3.1.2.1 Use Case: Enhancement
Primary Actor: User.
Secondary Actor: Braille Processing Template.
Goal in Context: Improve Braille patterns and make it distinguishable
from the background.
Scenario:
1. Select image enhancement algorithm.
2. Set parameters.
3. Run process and store result.
Exceptions:
1. System failure.
2. Image file size is too large.
3. Unsupported image file format.
Priority: Moderate, may be implemented.
When Available: Second increment.
Frequency of Use: Several times per day.
20
Figure 4.3.1.2.1a is the Activity Diagram of Enhancement-
21
Figure 4.3.1.2.1b is the Swim-Lane Diagram of Enhancement -
22
4.3.1.2.2 Use Case: Noise Reduction
Primary Actor: User.
Secondary Actor: Braille Processing Template.
Goal in Context: Reducing artifacts and improve pattern quality.
Scenario:
1. Select noise reduction algorithm.
2. Set parameters.
3. Run process and store result.
Exceptions:
1. System failure.
2. Unsupported image file format.
Priority: Moderate, may be implemented.
When Available: Second increment.
Frequency of Use: Several times per day.
23
Figure 4.3.1.2.2a is the Activity Diagram of Noise Reduction-
24
Figure 4.3.1.2.2b is the Swim-Lane Diagram of Noise Reduction-
25
4.3.1.2.3 Use Case: Connectivity Improvement
Primary Actor: User.
Secondary Actor: Braille Processing Template.
Goal in Context: Improve Braille writing patterns.
Scenario:
1. Select algorithm.
2. Run process and store result.
Exceptions:
1. System failure.
2. Image file size is too large.
3. Unsupported image file format.
Priority: Moderate, may be implemented.
When Available: Second increment.
Frequency of Use: Several times per day.
26
Figure 4.3.1.2.3a is the Activity Diagram of Connectivity Improvement-
27
Figure 4.3.1.2.3b is the Swim-Lane Diagram of Connectivity Improvement-
28
4.3.1.2.4 Use Case: Quantization
Primary Actor: User.
Secondary Actor: Braille Processing Template.
Goal in Context: Improve Braille writing patterns.
Scenario:
1. Set parameters.
2. Run process and store result.
Exceptions:
1. System failure.
2. Unsupported image file format.
Priority: Moderate, may be implemented.
When Available: Second increment.
Frequency of Use: Several times per day.
29
Figure 4.3.1.2.4a is the Activity Diagram of Quantization-
30
Figure 4.3.1.2.4b is the Swim-Lane Diagram of Quantization-
31
4.3.1.3 Translation
Further section of Translation system creates three sub-systems:
32
4.3.1.3.1 Use Case: Segmentation
Primary Actor: User.
Secondary Actor: Braille Processing Template.
Goal in Context: Extract Braille patterns from the image.
Scenario:
1. Select segmentation procedure.
2. Set parameters.
3. Run process.
4. Store resulting binary image.
Exceptions:
1. System failure.
2. Unsupported image file format.
3. Big image file.
Priority: Essential, must be implemented.
When Available: Third increment.
Frequency of Use: Several times per day.
33
Figure 4.3.1.3.1a is the Activity Diagram of Segmentation-
34
Figure 4.3.1.3.1b is the Swim-Lane Diagram of Segmentation-
35
4.3.1.3.2 Use Case: Pattern Recognition
Primary Actor: User.
Secondary Actor: Braille Processing Template, Braille Pattern Code.
Goal in Context: Convert Braille patterns to code.
Scenario:
1. Select pattern recognition procedure.
2. Set parameters.
3. Run process.
4. Store code in text file.
Exceptions:
1. Image with no Braille pattern.
2. System failure.
3. Big image file.
Priority: Essential, must be implemented.
When Available: Fourth increment.
Frequency of Use: Several times per day.
36
Figure 4.3.1.3.2a is the Activity Diagram of Pattern Recognition-
37
Figure 4.3.1.3.2b is the Swim-Lane Diagram of Pattern Recognition-
38
4.3.1.3.3 Use Case: Raw Text Generation
Primary Actor: User.
Secondary Actor: Braille Processing Template, Braille Pattern Code,
Code to Character Map.
Goal in Context: Generate plain text file.
Scenario:
1. Select Braille Pattern Code file.
2. Select Code to Character Map file.
3. Run process.
4. Store result in text file.
Exceptions:
1. Invalid pattern code.
2. System failure.
Priority: Essential, must be implemented.
When Available: Fifth increment.
Frequency of Use: Several times per day.
39
Figure 4.3.1.3.3a is the Activity Diagram of Raw Text Generation-
40
Figure 4.3.1.3.3b is the Swim-Lane Diagram of Raw Text Generation-
41
4.3.1.4 Post-Processing
Post-Processing has two major phases:
42
4.3.1.4.1 Use Case: Spell Check
Primary Actor: User.
Secondary Actor: Braille Processing Template, Domain Word List.
Goal in Context: Minimizing error rate.
Scenario:
1. Select raw text file.
2. Select Domain Word List file.
3. Run process.
4. Store corrected result in text file.
Exceptions:
1. System failure.
Priority: Moderate, may be implemented.
When Available: sixth increment.
Frequency of Use: Several times per day.
43
Figure 4.3.1.4.1a is the Activity Diagram of Spell Check-
44
Figure 4.3.1.4.1b is the Swim-Lane Diagram of Spell Check-
45
4.3.1.4.2 Use Case: Clean and Generate Output
Primary Actor: User.
Secondary Actor: Braille Processing Template.
Goal in Context: Generate final text file.
Scenario:
1. Select raw text file.
2. Run cleaning process.
3. Store result in text file.
Exceptions:
1. System failure.
Priority: Essential, must be implemented.
When Available: Last increment.
46
Figure 4.3.1.4.2a is the Activity Diagram of Clean and Generate Output-
47
Figure 4.3.1.4.2b is the Swim-Lane Diagram of Clean and Generate Output-
48
Chapter 5
Data Model
5.1 Introduction
When software requires interfacing with a database or complex data structures
need to be constructed and manipulated, data model is performed as part of
overall requirements modeling.
5.2 Data Object Selection
Data objects are representation of information which has different
attributes.Table-5.2 enlists all nouns from Usage Scenario and marks potential
data objects:
Table-5.2 Data Object Selection
Noun Attributes Description Remark
bengali braille
character
recognizer
represents the whole
system
rejected
image alias of braille writing rejected
braille writing input for the system rejected
image-
preprocessing
technique
alias of algorithm rejected
text alias of text file rejected
pattern recognition alias of algorithm rejected
final output output for the system rejected
braille alias of braille writing rejected
system alias of bengali braille rejected
49
character recognizer
visually impaired
people
out of scope rejected
raised dots out of scope rejected
embossed paper out of scope rejected
tactile alphabet out of scope rejected
paper alias of embossed paper rejected
scanner a device, external entity rejected
image files alias of braille writing rejected
computer represents the whole
system
rejected
scanned images alias of braille writing rejected
image
enhancement
process
alias of algorithm rejected
section out of scope rejected
braille pattern alias of braille writing rejected
background out of scope rejected
noise reduction
algorithm
alias of algorithm rejected
artifact out of scope rejected
pattern quality out of scope rejected
braille dots alias of braille writing rejected
connectivity
improvement
alias of algorithm rejected
quantization alias of algorithm rejected
code an attribute of braille
pattern code
rejected
braille pattern
code
id, code potential data object accepted
braille character alias of braille writing rejected
code to character
map
code, character potential data object accepted
hash table alias of braille code to
character map
rejected
text file alias of final output rejected
braille image alias of braille writing rejected
50
stage alias of algorithm rejected
spell checking alias of algorithm rejected
error rate out of scope rejected
domain word list word, frequency potential data object accepted
cleaning procedure alias of algorithm rejected
step alias of algorithm rejected
setting alias of braille
processing template
rejected
algorithm an attribute of braille
processing template
rejected
parameter an attribute of braille
processing template
rejected
configuration file alias of braille
processing template
rejected
braille processing
template
algorithm,
parameters
potential data object accepted
template alias of braille
processing template
rejected
user no separated
authentication system
required
rejected
system alias of braille writing rejected
customized
template
alias of bengali braille
character recognizer
rejected
51
5.3 Data Objects and Attributes
This is a brief view of all attributes we have found so far:
52
5.4 Conclusion
Data objects found here have no relationship to each other. These data objects
will be stored in a file system and will work independently. So there is no Data
Object Relational Diagram here. For this same reason no E-R Diagram or Schema
Diagram exists for this project.
53
Chapter 6
Class-Based Model
6.1 Introduction
The objects that the system will manipulate, the operations that will be applied to
the objects and relationships between the objects are represented by Class-Based
Modeling. It also defines the collaborations that occur between the classes.
6.2 General Classification
Analysis classes can be marked by one of the following ways:
1. External Entity
2. Thing
3. Occurrence
4. Role
5. Organizational Unit
6. Place
7. Structure
Table-6.2 General Classification
No. Noun General
Classification
Remark
1 bengali braille
character recognizer
2 Problem Space (represents
whole system)
2 image 2, 7 Problem Space
3 braille writing NULL Problem Space
4 image-preprocessing
technique
3, 7 Solution Space (same as- 25)
54
5 text 2, 7 Problem Space
6 pattern recognition 3 Solution Space
7 final output 7 Problem Space
8 braille Null Problem Space
9 system 2 Problem Space (represents
whole system)
10 visually impaired
people
1 Problem Space
11 raised dots 1 Problem Space
12 embossed paper 1 Problem Space
13 tactile alphabet 1 Problem Space
14 paper 1 Problem Space
15 scanner 1, 2 Problem Space
16 image files 1, 2 Problem Space
17 computer 1, 2, 7 Problem Space (represents
whole system)
18 scanned images 1, 2 Problem Space
19 image enhancement
process
3 Solution Space
20 section NULL Problem Space
21 braille pattern 1, 2 Problem Space
22 background NULL Problem Space
23 noise reduction
algorithm
3 Solution Space
24 artifact NULL Problem Space
25 pre-processing 3 Solution Space
26 braille dots 1, 2 Problem Space
27 connectivity
improvement
3 Solution Space
28 quantization 3 Solution Space
29 code NULL Problem Space
30 translation 3 Solution Space
31 braille character NULL Problem Space
32 code to character
map
4, 7 Solution Space
33 hash table 4, 7 Solution Space (same as- 32)
34 text file 1, 2 Problem Space
55
35 braille image 1, 2 Problem Space
36 post-processing 3 Solution Space
37 spell checking 3 Solution Space
38 error rate NULL Problem Space
39 domain word list 4, 7 Solution Space
40 cleaning procedure 3 Solution Space
41 step NULL Problem Space
43 setting 4, 7 Solution Space (same as- 47)
44 algorithm 3 Solution Space (represents all
procedures)
45 parameter 7 Solution Space (represents all
parameters of the system)
46 configuration file 4, 7 Solution Space (same as- 47)
47 braille processing
template
4, 7 Solution Space
48 template 4, 7 Solution Space (same as- 47)
49 user 1, 4 Solution Space
50 system 2 Problem Space (represents
whole system)
51 customized
template
4, 7 Solution Space (same as- 47)
6.3 Selection Characteristics
Coad and Yourdon suggest six selection characteristics that should be used to
consider each potential class for inclusion in the analysis model:
1. Retained Information
2. Needed Services
3. Multiple Attributes
4. Common Attributes
5. Common operations
6. Essential Requirements
56
6.4 Attribute Selection
Here we find attributes for selected classes.
Table-6.4 Attribute Selection
No. Class Attributes
1 User selected_algorithm_List, initialized_parameters
2 Pre-Processing image_input_file_list, output_image_path_list
3 Translation image_list, code_data, text_data,
Table-6.3 Selection Characteristics
No. Potential Class Characteristics Remarks
1 pattern recognition 1, 2, 3, 6 No
2 image enhancement process 1, 2, 3 No
3 noise reduction algorithm 1, 2, 3 No
4 pre-processing 1, 2, 3, 4, 5, 6 Yes
5 connectivity improvement 1, 2, 3 No
6 quantization 1, 2, 3 No
7 translation 1, 2, 3, 4, 5, 6 Yes
8 code to character map 1, 2, 6 No
9 post-processing 1, 2, 3, 4, 5, 6 Yes
10 spell checking 1, 2, 3 No
11 domain word list 1, 2 No
12 cleaning procedure 1, 2, 3 No
13 braille processing template 1, 2 No
14 user 1, 2, 3, 4, 5, 6 Yes
57
code_to_character_map
4 Post-Processing Input_text_data, output_file_path
6.5 Defining Methods
In this section we find all the verbs from usage scenario and include necessary
external verbs in a list. Then we select useful verbs as methods.
6.5.1 Verb List
Here we list all verbs from usage scenario.
Table-6.5.1 Verb List
No. Verb Remarks
1 take scanned image out of scope
2 run image pre-processing yes
3 translate braille to text yes
4 apply text correction yes (same as- run post-
processing)
5 scan paper out of scope
6 store image out of scope
7 select image out of scope
8 run image enhancement yes
9 improve braille pattern yes (same as- run image
enhancement)
10 make distinguishable yes (same as- run image
enhancement)
11 apply noise reduction yes
12 improve connectivity yes
13 run quantization yes
58
14 extract braille pattern yes
15 convert braille pattern to code yes
16 map code to character yes (same as- convert
braille pattern to code)
17 generate plain text from code yes
18 contain character out of scope
19 run post processing yes
20 run spell checking yes
21 store word out of scope
22 run cleaning procedure yes
23 automate whole process no need
24 customize braille processing template yes
6.5.2 Selected Methods
From the verb list above we have selected following methods for classes.
Table-6.5.2 Selected Methods
Class Methods Remarks
User pre_process()
translate()
post_process()
customize_braille_processing
_template()
pre_process() is run
image pre-processing,
translate() is translate
braille to text,
post_process() is run
post-processing
Pre-Processing enhance_image()
reduce_noise()
improve_connectivity()
run_quantization()
enhance_image() is
run image
enhancement,
reduce_noise() is
apply noise reduction
Translation apply_segmentation()
recognize_braille_pattern()
apply_segmentation()
is extract braille
59
create_plain_text() pattern,
recognize_braille_patt
ern() is convert braille
pattern to code,
create_plain_text() is
generate plain text
from code
Post-
Processing
check_spell()
generate_final_output()
generate_final_output
() is run cleaning
procedure
60
6.6 Class Diagram
We have shown here (Figure- 6.6), how the classes interact together to
accomplish certain goal.
61
6.7 Class Card
Class card represents a graphical view of responsibility and collaborator for each
class.
62
Chapter 7
Behavioral Model
7.1 Introduction
When the system is perceived in terms of states and transitions, it is called
Behavior Modeling. It is also known as State Modeling, State Machines, or State
Transition Matrix.
This requires both identifying all of the interesting states of being that software or
its components are likely to be in. And also, at a high level, abstracting what
events are likely to cause software or its components to change between states of
being.
7.2 Identifying Events
Here we have identified events from the Usage Scenario and listed their
corresponding initiators & collaborators.
Table-7.2 Identifying Events
Event Initiator Collaborator
take scanned image of Braille
writing
User Scanner
run different types of image-
preprocessing techniques
User
translate Braille to text
through pattern recognition
User Braille Pattern Code, Code
to Character Map
apply text correction
procedures
User Domain Word List
63
select scanned images of
Braille writing
User
run image enhancement User
apply noise reduction User
improve connectivity User
apply quantization User
extract braille pattern User
convert braille to code User Braille Pattern Code
map code to character User Braille Pattern Code, Code
to Character Map
check spell User Domain Word List
run cleaning procedure User
automate the configuration User Braille Processing Template
customize template User Braille Processing Template
64
7.3 State Transition Diagram
State Transition Diagram represents active states for each class and the events
(triggers) that cause changes between these active states. Here Figure-7.3
provides diagram for the actor- User.
65
7.4 Sequence Diagram
The way events cause transitions from object to object as a function of time is
represented by Sequence Diagram. Figure-7.4.1 to Figure-7.4.11 represents
Sequence Diagram for all major events of this project.
66
67
68
69
70
71
72
73
74
75
76
Chapter 8
Conclusion
I am pleased to submit the final SRS report on Bengali Braille to Text
Translator. From this, the readers will get a clear and easy view of
tactile writing system. He will also get a good understanding of the
translation process.
This SRS document can be used effectively to maintain the software
development cycle for the project. I have presented a detailed
description of the total system. It will be much easy to conduct the
whole project using this SRS. It will also help me to determine the
pitfalls that may come ahead. Hopefully, this document can also
help other software engineering students as well as practitioners.
I have tried my best to make effective and fully designed SRS. I
believe that the readers will find it in order.
77
Appendix
References
[1] Pressman, Roger S. Software Engineering: A Practitioner's Approach
(7th ed.). Boston, Mass: McGraw-Hill. ISBN 0-07-285318-2.
[2] Ralph, Paul. "The illusion of requirements in software development."
Requirements Engineering 18.3 (2013): 293-296.
[3] W. David, A. Adler. “A Picture of Louis Braille.” New York, McGraw
Hill, 1999.
[4] Durre, K.P., W. Tuttle. “A Universal Computer Braille Code for
Literacy and Scientific Texts.”International Technology Conference, 1991.

More Related Content

What's hot

Understanding the Windows Server Administration Fundamentals (Part-1)
Understanding the Windows Server Administration Fundamentals (Part-1)Understanding the Windows Server Administration Fundamentals (Part-1)
Understanding the Windows Server Administration Fundamentals (Part-1)
Tuan Yang
 
srs for railway reservation system
 srs for railway reservation system srs for railway reservation system
srs for railway reservation system
khushi kalaria
 
HCI 3e - Ch 11: User support
HCI 3e - Ch 11:  User supportHCI 3e - Ch 11:  User support
HCI 3e - Ch 11: User support
Alan Dix
 
Local Service Search Engine Management System LSSEMS
Local Service Search Engine Management System LSSEMSLocal Service Search Engine Management System LSSEMS
Local Service Search Engine Management System LSSEMS
YogeshIJTSRD
 
REQUIREMENT ENGINEERING
REQUIREMENT ENGINEERINGREQUIREMENT ENGINEERING
REQUIREMENT ENGINEERING
Saqib Raza
 
SRS(software requirement specification)
SRS(software requirement specification)SRS(software requirement specification)
SRS(software requirement specification)
Akash Kumar Dhameja
 
Event managementsystem
Event managementsystemEvent managementsystem
Event managementsystem
Praveen Jha
 
System Administration: Introduction to system administration
System Administration: Introduction to system administrationSystem Administration: Introduction to system administration
System Administration: Introduction to system administration
Khang-Ling Loh
 
SRS Document Of Course management software system.doc
SRS Document Of Course management software system.docSRS Document Of Course management software system.doc
SRS Document Of Course management software system.doc
MaRwa Samih AL-Amri
 
Ip address
Ip addressIp address
Ip address
Amandeep Kaur
 
Student database management system
Student database management systemStudent database management system
Student database management system
Snehal Raut
 
Online Ticket Reservation System-SRS, ERD, DFD, Structured Charts
Online Ticket Reservation System-SRS, ERD, DFD, Structured ChartsOnline Ticket Reservation System-SRS, ERD, DFD, Structured Charts
Online Ticket Reservation System-SRS, ERD, DFD, Structured Charts
grandhiprasuna
 
Student information system
Student information systemStudent information system
Student information system
sourabh singh sen
 
Network Security Issues
Network Security IssuesNetwork Security Issues
Network Security Issues
AfreenYousaf
 
Osi reference model
Osi reference modelOsi reference model
Osi reference model
vasanthimuniasamy
 
Internetworking devices
Internetworking devicesInternetworking devices
Internetworking devices
Online
 
Student Database Management System
Student Database Management SystemStudent Database Management System
Student Database Management System
Ajay Bidyarthy
 
Liit tyit sem 5 advanced web programming unit 1 most important questions with...
Liit tyit sem 5 advanced web programming unit 1 most important questions with...Liit tyit sem 5 advanced web programming unit 1 most important questions with...
Liit tyit sem 5 advanced web programming unit 1 most important questions with...
tanujaparihar
 
Chat Application | RSD
Chat Application | RSDChat Application | RSD
Chat Application | RSD
Rajon
 
Attendance management system
Attendance management system Attendance management system
Attendance management system
SHIVANGI GOEL
 

What's hot (20)

Understanding the Windows Server Administration Fundamentals (Part-1)
Understanding the Windows Server Administration Fundamentals (Part-1)Understanding the Windows Server Administration Fundamentals (Part-1)
Understanding the Windows Server Administration Fundamentals (Part-1)
 
srs for railway reservation system
 srs for railway reservation system srs for railway reservation system
srs for railway reservation system
 
HCI 3e - Ch 11: User support
HCI 3e - Ch 11:  User supportHCI 3e - Ch 11:  User support
HCI 3e - Ch 11: User support
 
Local Service Search Engine Management System LSSEMS
Local Service Search Engine Management System LSSEMSLocal Service Search Engine Management System LSSEMS
Local Service Search Engine Management System LSSEMS
 
REQUIREMENT ENGINEERING
REQUIREMENT ENGINEERINGREQUIREMENT ENGINEERING
REQUIREMENT ENGINEERING
 
SRS(software requirement specification)
SRS(software requirement specification)SRS(software requirement specification)
SRS(software requirement specification)
 
Event managementsystem
Event managementsystemEvent managementsystem
Event managementsystem
 
System Administration: Introduction to system administration
System Administration: Introduction to system administrationSystem Administration: Introduction to system administration
System Administration: Introduction to system administration
 
SRS Document Of Course management software system.doc
SRS Document Of Course management software system.docSRS Document Of Course management software system.doc
SRS Document Of Course management software system.doc
 
Ip address
Ip addressIp address
Ip address
 
Student database management system
Student database management systemStudent database management system
Student database management system
 
Online Ticket Reservation System-SRS, ERD, DFD, Structured Charts
Online Ticket Reservation System-SRS, ERD, DFD, Structured ChartsOnline Ticket Reservation System-SRS, ERD, DFD, Structured Charts
Online Ticket Reservation System-SRS, ERD, DFD, Structured Charts
 
Student information system
Student information systemStudent information system
Student information system
 
Network Security Issues
Network Security IssuesNetwork Security Issues
Network Security Issues
 
Osi reference model
Osi reference modelOsi reference model
Osi reference model
 
Internetworking devices
Internetworking devicesInternetworking devices
Internetworking devices
 
Student Database Management System
Student Database Management SystemStudent Database Management System
Student Database Management System
 
Liit tyit sem 5 advanced web programming unit 1 most important questions with...
Liit tyit sem 5 advanced web programming unit 1 most important questions with...Liit tyit sem 5 advanced web programming unit 1 most important questions with...
Liit tyit sem 5 advanced web programming unit 1 most important questions with...
 
Chat Application | RSD
Chat Application | RSDChat Application | RSD
Chat Application | RSD
 
Attendance management system
Attendance management system Attendance management system
Attendance management system
 

Viewers also liked

Software Project Management: Release Notes
Software Project Management: Release NotesSoftware Project Management: Release Notes
Software Project Management: Release Notes
Minhas Kamal
 
Software Project Management: Configuration Management
Software Project Management: Configuration ManagementSoftware Project Management: Configuration Management
Software Project Management: Configuration Management
Minhas Kamal
 
Proposal: A Study on Business Communucation System of KAZ Software
Proposal: A Study on Business Communucation System of KAZ SoftwareProposal: A Study on Business Communucation System of KAZ Software
Proposal: A Study on Business Communucation System of KAZ Software
Minhas Kamal
 
Software Project Management: Testing Document
Software Project Management: Testing DocumentSoftware Project Management: Testing Document
Software Project Management: Testing Document
Minhas Kamal
 
Project Proposal: Bengali Braille to Text Translation
Project Proposal: Bengali Braille to Text TranslationProject Proposal: Bengali Braille to Text Translation
Project Proposal: Bengali Braille to Text Translation
Minhas Kamal
 
Software Project Management: Project Planning
Software Project Management: Project PlanningSoftware Project Management: Project Planning
Software Project Management: Project Planning
Minhas Kamal
 
Software Project Management: Change Control
Software Project Management: Change ControlSoftware Project Management: Change Control
Software Project Management: Change Control
Minhas Kamal
 
Software Project Management: Project Summary
Software Project Management: Project SummarySoftware Project Management: Project Summary
Software Project Management: Project Summary
Minhas Kamal
 
Software Project Management: Budget
Software Project Management: BudgetSoftware Project Management: Budget
Software Project Management: Budget
Minhas Kamal
 
Software Project Management Presentation Final
Software Project Management Presentation FinalSoftware Project Management Presentation Final
Software Project Management Presentation Final
Minhas Kamal
 
Software Project Management: Project Initiation
Software Project Management: Project InitiationSoftware Project Management: Project Initiation
Software Project Management: Project Initiation
Minhas Kamal
 
Software Project Proposal: Bengali Braille to Text Translation
Software Project Proposal: Bengali Braille to Text TranslationSoftware Project Proposal: Bengali Braille to Text Translation
Software Project Proposal: Bengali Braille to Text Translation
Minhas Kamal
 
Software Project Management: Project Charter
Software Project Management: Project CharterSoftware Project Management: Project Charter
Software Project Management: Project Charter
Minhas Kamal
 
Software Project Management: Risk Management
Software Project Management: Risk ManagementSoftware Project Management: Risk Management
Software Project Management: Risk Management
Minhas Kamal
 
Software Project Management: Business Case
Software Project Management: Business CaseSoftware Project Management: Business Case
Software Project Management: Business Case
Minhas Kamal
 
Final Internship Report
Final Internship ReportFinal Internship Report
Final Internship Report
Minhas Kamal
 
Letter of Endorsement Sample
Letter of Endorsement SampleLetter of Endorsement Sample
Letter of Endorsement Sample
Minhas Kamal
 
Report Acknowledgement Sample
Report Acknowledgement SampleReport Acknowledgement Sample
Report Acknowledgement Sample
Minhas Kamal
 
Software Requirements Specification on Student Information System (SRS on SIS)
Software Requirements Specification on Student Information System (SRS on SIS)Software Requirements Specification on Student Information System (SRS on SIS)
Software Requirements Specification on Student Information System (SRS on SIS)
Minhas Kamal
 
Software Project Management: Software Architecture
Software Project Management: Software ArchitectureSoftware Project Management: Software Architecture
Software Project Management: Software Architecture
Minhas Kamal
 

Viewers also liked (20)

Software Project Management: Release Notes
Software Project Management: Release NotesSoftware Project Management: Release Notes
Software Project Management: Release Notes
 
Software Project Management: Configuration Management
Software Project Management: Configuration ManagementSoftware Project Management: Configuration Management
Software Project Management: Configuration Management
 
Proposal: A Study on Business Communucation System of KAZ Software
Proposal: A Study on Business Communucation System of KAZ SoftwareProposal: A Study on Business Communucation System of KAZ Software
Proposal: A Study on Business Communucation System of KAZ Software
 
Software Project Management: Testing Document
Software Project Management: Testing DocumentSoftware Project Management: Testing Document
Software Project Management: Testing Document
 
Project Proposal: Bengali Braille to Text Translation
Project Proposal: Bengali Braille to Text TranslationProject Proposal: Bengali Braille to Text Translation
Project Proposal: Bengali Braille to Text Translation
 
Software Project Management: Project Planning
Software Project Management: Project PlanningSoftware Project Management: Project Planning
Software Project Management: Project Planning
 
Software Project Management: Change Control
Software Project Management: Change ControlSoftware Project Management: Change Control
Software Project Management: Change Control
 
Software Project Management: Project Summary
Software Project Management: Project SummarySoftware Project Management: Project Summary
Software Project Management: Project Summary
 
Software Project Management: Budget
Software Project Management: BudgetSoftware Project Management: Budget
Software Project Management: Budget
 
Software Project Management Presentation Final
Software Project Management Presentation FinalSoftware Project Management Presentation Final
Software Project Management Presentation Final
 
Software Project Management: Project Initiation
Software Project Management: Project InitiationSoftware Project Management: Project Initiation
Software Project Management: Project Initiation
 
Software Project Proposal: Bengali Braille to Text Translation
Software Project Proposal: Bengali Braille to Text TranslationSoftware Project Proposal: Bengali Braille to Text Translation
Software Project Proposal: Bengali Braille to Text Translation
 
Software Project Management: Project Charter
Software Project Management: Project CharterSoftware Project Management: Project Charter
Software Project Management: Project Charter
 
Software Project Management: Risk Management
Software Project Management: Risk ManagementSoftware Project Management: Risk Management
Software Project Management: Risk Management
 
Software Project Management: Business Case
Software Project Management: Business CaseSoftware Project Management: Business Case
Software Project Management: Business Case
 
Final Internship Report
Final Internship ReportFinal Internship Report
Final Internship Report
 
Letter of Endorsement Sample
Letter of Endorsement SampleLetter of Endorsement Sample
Letter of Endorsement Sample
 
Report Acknowledgement Sample
Report Acknowledgement SampleReport Acknowledgement Sample
Report Acknowledgement Sample
 
Software Requirements Specification on Student Information System (SRS on SIS)
Software Requirements Specification on Student Information System (SRS on SIS)Software Requirements Specification on Student Information System (SRS on SIS)
Software Requirements Specification on Student Information System (SRS on SIS)
 
Software Project Management: Software Architecture
Software Project Management: Software ArchitectureSoftware Project Management: Software Architecture
Software Project Management: Software Architecture
 

Similar to Software Requirements Specification on Bengali Braille to Text Translator

Airline management system
Airline management systemAirline management system
Airline management system
SH Rajøn
 
BOOKS FOR CASH ON DELIVERY-INTERNSHIP PROJECT
BOOKS FOR CASH ON DELIVERY-INTERNSHIP PROJECTBOOKS FOR CASH ON DELIVERY-INTERNSHIP PROJECT
BOOKS FOR CASH ON DELIVERY-INTERNSHIP PROJECT
Ravi Teja P
 
Software Requirement Specification (SRS) on Result Analysis Tool
Software Requirement Specification (SRS) on Result Analysis ToolSoftware Requirement Specification (SRS) on Result Analysis Tool
Software Requirement Specification (SRS) on Result Analysis Tool
Minhas Kamal
 
Final project se
Final project seFinal project se
Final project se
nadeem shahzad
 
Attendance management system project report.
Attendance management system project report.Attendance management system project report.
Attendance management system project report.
Manoj Kumar
 
Online News Portal System
Online News Portal SystemOnline News Portal System
Online News Portal System
Rajib Roy
 
Software Project Proposal- Result Analysis Tool
Software Project Proposal- Result Analysis ToolSoftware Project Proposal- Result Analysis Tool
Software Project Proposal- Result Analysis Tool
Minhas Kamal
 
Sample report
Sample reportSample report
Sample report
Niro Thakur
 
B-Translator as a Software Engineering Project
B-Translator as a Software Engineering ProjectB-Translator as a Software Engineering Project
B-Translator as a Software Engineering Project
Dashamir Hoxha
 
Design pattern application
Design pattern applicationDesign pattern application
Design pattern application
gayatri thakur
 
SRS for student database management system
SRS for student database management systemSRS for student database management system
SRS for student database management system
Suman Saurabh
 
Exploring the Efficiency of the Program using OOAD Metrics
Exploring the Efficiency of the Program using OOAD MetricsExploring the Efficiency of the Program using OOAD Metrics
Exploring the Efficiency of the Program using OOAD Metrics
IRJET Journal
 
Quiz app (android) Documentation
Quiz app (android) DocumentationQuiz app (android) Documentation
Quiz app (android) Documentation
Aditya Nag
 
A.R.C. Usability Evaluation
A.R.C. Usability EvaluationA.R.C. Usability Evaluation
A.R.C. Usability Evaluation
JPC Hanson
 
Preliminry report
 Preliminry report Preliminry report
Preliminry report
Jiten Ahuja
 
Sdlc tutorial
Sdlc tutorialSdlc tutorial
Sdlc tutorial
Suresh Mca
 
Sdlc tutorial
Sdlc tutorialSdlc tutorial
Sdlc tutorial
Edress Oryakhail
 
Table of contents
Table of contentsTable of contents
Table of contents
jayonline_4u
 
Thesis
ThesisThesis
Thesis
Mattia Palla
 
Report for SPE
Report for SPEReport for SPE
Report for SPE
Presly Ekpebe
 

Similar to Software Requirements Specification on Bengali Braille to Text Translator (20)

Airline management system
Airline management systemAirline management system
Airline management system
 
BOOKS FOR CASH ON DELIVERY-INTERNSHIP PROJECT
BOOKS FOR CASH ON DELIVERY-INTERNSHIP PROJECTBOOKS FOR CASH ON DELIVERY-INTERNSHIP PROJECT
BOOKS FOR CASH ON DELIVERY-INTERNSHIP PROJECT
 
Software Requirement Specification (SRS) on Result Analysis Tool
Software Requirement Specification (SRS) on Result Analysis ToolSoftware Requirement Specification (SRS) on Result Analysis Tool
Software Requirement Specification (SRS) on Result Analysis Tool
 
Final project se
Final project seFinal project se
Final project se
 
Attendance management system project report.
Attendance management system project report.Attendance management system project report.
Attendance management system project report.
 
Online News Portal System
Online News Portal SystemOnline News Portal System
Online News Portal System
 
Software Project Proposal- Result Analysis Tool
Software Project Proposal- Result Analysis ToolSoftware Project Proposal- Result Analysis Tool
Software Project Proposal- Result Analysis Tool
 
Sample report
Sample reportSample report
Sample report
 
B-Translator as a Software Engineering Project
B-Translator as a Software Engineering ProjectB-Translator as a Software Engineering Project
B-Translator as a Software Engineering Project
 
Design pattern application
Design pattern applicationDesign pattern application
Design pattern application
 
SRS for student database management system
SRS for student database management systemSRS for student database management system
SRS for student database management system
 
Exploring the Efficiency of the Program using OOAD Metrics
Exploring the Efficiency of the Program using OOAD MetricsExploring the Efficiency of the Program using OOAD Metrics
Exploring the Efficiency of the Program using OOAD Metrics
 
Quiz app (android) Documentation
Quiz app (android) DocumentationQuiz app (android) Documentation
Quiz app (android) Documentation
 
A.R.C. Usability Evaluation
A.R.C. Usability EvaluationA.R.C. Usability Evaluation
A.R.C. Usability Evaluation
 
Preliminry report
 Preliminry report Preliminry report
Preliminry report
 
Sdlc tutorial
Sdlc tutorialSdlc tutorial
Sdlc tutorial
 
Sdlc tutorial
Sdlc tutorialSdlc tutorial
Sdlc tutorial
 
Table of contents
Table of contentsTable of contents
Table of contents
 
Thesis
ThesisThesis
Thesis
 
Report for SPE
Report for SPEReport for SPE
Report for SPE
 

More from Minhas Kamal

Digital Image Processing
Digital Image ProcessingDigital Image Processing
Digital Image Processing
Minhas Kamal
 
Deep Learning - Exploring The Magical World of Neural Network
Deep Learning - Exploring The Magical World of Neural NetworkDeep Learning - Exploring The Magical World of Neural Network
Deep Learning - Exploring The Magical World of Neural Network
Minhas Kamal
 
Machine Learning - Entering into The Wonderful Galaxy of Machine Learning
Machine Learning - Entering into The Wonderful Galaxy of Machine LearningMachine Learning - Entering into The Wonderful Galaxy of Machine Learning
Machine Learning - Entering into The Wonderful Galaxy of Machine Learning
Minhas Kamal
 
Artificial Intelligence - Staring at The Grand Universe of AI (1)
Artificial Intelligence - Staring at The Grand Universe of AI (1)Artificial Intelligence - Staring at The Grand Universe of AI (1)
Artificial Intelligence - Staring at The Grand Universe of AI (1)
Minhas Kamal
 
Final Project Report- Bengali Braille to Text Translator
Final Project Report- Bengali Braille to Text TranslatorFinal Project Report- Bengali Braille to Text Translator
Final Project Report- Bengali Braille to Text Translator
Minhas Kamal
 
Abstract- Bengali Braille to Text Translator
Abstract- Bengali Braille to Text TranslatorAbstract- Bengali Braille to Text Translator
Abstract- Bengali Braille to Text Translator
Minhas Kamal
 
Software Project Management: Software Requirement Specification
Software Project Management: Software Requirement SpecificationSoftware Project Management: Software Requirement Specification
Software Project Management: Software Requirement Specification
Minhas Kamal
 
Software Design: User Interface Design
Software Design: User Interface DesignSoftware Design: User Interface Design
Software Design: User Interface Design
Minhas Kamal
 
Business Communication System: KAZ Software
Business Communication System: KAZ SoftwareBusiness Communication System: KAZ Software
Business Communication System: KAZ Software
Minhas Kamal
 
Final Internship Presentation
Final Internship Presentation Final Internship Presentation
Final Internship Presentation
Minhas Kamal
 
Letter of Transmittal
Letter of TransmittalLetter of Transmittal
Letter of Transmittal
Minhas Kamal
 

More from Minhas Kamal (11)

Digital Image Processing
Digital Image ProcessingDigital Image Processing
Digital Image Processing
 
Deep Learning - Exploring The Magical World of Neural Network
Deep Learning - Exploring The Magical World of Neural NetworkDeep Learning - Exploring The Magical World of Neural Network
Deep Learning - Exploring The Magical World of Neural Network
 
Machine Learning - Entering into The Wonderful Galaxy of Machine Learning
Machine Learning - Entering into The Wonderful Galaxy of Machine LearningMachine Learning - Entering into The Wonderful Galaxy of Machine Learning
Machine Learning - Entering into The Wonderful Galaxy of Machine Learning
 
Artificial Intelligence - Staring at The Grand Universe of AI (1)
Artificial Intelligence - Staring at The Grand Universe of AI (1)Artificial Intelligence - Staring at The Grand Universe of AI (1)
Artificial Intelligence - Staring at The Grand Universe of AI (1)
 
Final Project Report- Bengali Braille to Text Translator
Final Project Report- Bengali Braille to Text TranslatorFinal Project Report- Bengali Braille to Text Translator
Final Project Report- Bengali Braille to Text Translator
 
Abstract- Bengali Braille to Text Translator
Abstract- Bengali Braille to Text TranslatorAbstract- Bengali Braille to Text Translator
Abstract- Bengali Braille to Text Translator
 
Software Project Management: Software Requirement Specification
Software Project Management: Software Requirement SpecificationSoftware Project Management: Software Requirement Specification
Software Project Management: Software Requirement Specification
 
Software Design: User Interface Design
Software Design: User Interface DesignSoftware Design: User Interface Design
Software Design: User Interface Design
 
Business Communication System: KAZ Software
Business Communication System: KAZ SoftwareBusiness Communication System: KAZ Software
Business Communication System: KAZ Software
 
Final Internship Presentation
Final Internship Presentation Final Internship Presentation
Final Internship Presentation
 
Letter of Transmittal
Letter of TransmittalLetter of Transmittal
Letter of Transmittal
 

Recently uploaded

The Ultimate Guide to Top 36 DevOps Testing Tools for 2024.pdf
The Ultimate Guide to Top 36 DevOps Testing Tools for 2024.pdfThe Ultimate Guide to Top 36 DevOps Testing Tools for 2024.pdf
The Ultimate Guide to Top 36 DevOps Testing Tools for 2024.pdf
kalichargn70th171
 
Hot Call Girls In Ahmedabad ✔ 7737669865 ✔ Hi I Am Divya Vip Call Girl Servic...
Hot Call Girls In Ahmedabad ✔ 7737669865 ✔ Hi I Am Divya Vip Call Girl Servic...Hot Call Girls In Ahmedabad ✔ 7737669865 ✔ Hi I Am Divya Vip Call Girl Servic...
Hot Call Girls In Ahmedabad ✔ 7737669865 ✔ Hi I Am Divya Vip Call Girl Servic...
ns9201415
 
Independent Call Girls In Kolkata ✔ 7014168258 ✔ Hi I Am Divya Vip Call Girl ...
Independent Call Girls In Kolkata ✔ 7014168258 ✔ Hi I Am Divya Vip Call Girl ...Independent Call Girls In Kolkata ✔ 7014168258 ✔ Hi I Am Divya Vip Call Girl ...
Independent Call Girls In Kolkata ✔ 7014168258 ✔ Hi I Am Divya Vip Call Girl ...
simmi singh$A17
 
Going AOT: Everything you need to know about GraalVM for Java applications
Going AOT: Everything you need to know about GraalVM for Java applicationsGoing AOT: Everything you need to know about GraalVM for Java applications
Going AOT: Everything you need to know about GraalVM for Java applications
Alina Yurenko
 
European Standard S1000D, an Unnecessary Expense to OEM.pptx
European Standard S1000D, an Unnecessary Expense to OEM.pptxEuropean Standard S1000D, an Unnecessary Expense to OEM.pptx
European Standard S1000D, an Unnecessary Expense to OEM.pptx
Digital Teacher
 
OpenChain Webinar - Open Source Due Diligence for M&A - 2024-06-17
OpenChain Webinar - Open Source Due Diligence for M&A - 2024-06-17OpenChain Webinar - Open Source Due Diligence for M&A - 2024-06-17
OpenChain Webinar - Open Source Due Diligence for M&A - 2024-06-17
Shane Coughlan
 
Premium Call Girls In Ahmedabad 💯Call Us 🔝 7426014248 🔝Independent Ahmedabad ...
Premium Call Girls In Ahmedabad 💯Call Us 🔝 7426014248 🔝Independent Ahmedabad ...Premium Call Girls In Ahmedabad 💯Call Us 🔝 7426014248 🔝Independent Ahmedabad ...
Premium Call Girls In Ahmedabad 💯Call Us 🔝 7426014248 🔝Independent Ahmedabad ...
Anita pandey
 
Folding Cheat Sheet #6 - sixth in a series
Folding Cheat Sheet #6 - sixth in a seriesFolding Cheat Sheet #6 - sixth in a series
Folding Cheat Sheet #6 - sixth in a series
Philip Schwarz
 
Hi-Fi Call Girls In Hyderabad 💯Call Us 🔝 7426014248 🔝Independent Hyderabad Es...
Hi-Fi Call Girls In Hyderabad 💯Call Us 🔝 7426014248 🔝Independent Hyderabad Es...Hi-Fi Call Girls In Hyderabad 💯Call Us 🔝 7426014248 🔝Independent Hyderabad Es...
Hi-Fi Call Girls In Hyderabad 💯Call Us 🔝 7426014248 🔝Independent Hyderabad Es...
sapnasaifi408
 
Female Bangalore Call Girls 👉 7023059433 👈 Vip Escorts Service Available
Female Bangalore Call Girls 👉 7023059433 👈 Vip Escorts Service AvailableFemale Bangalore Call Girls 👉 7023059433 👈 Vip Escorts Service Available
Female Bangalore Call Girls 👉 7023059433 👈 Vip Escorts Service Available
isha sharman06
 
Photo Copier Xerox Machine annual maintenance contract system.pdf
Photo Copier Xerox Machine annual maintenance contract system.pdfPhoto Copier Xerox Machine annual maintenance contract system.pdf
Photo Copier Xerox Machine annual maintenance contract system.pdf
SERVE WELL CRM NASHIK
 
Digital Marketing Introduction and Conclusion
Digital Marketing Introduction and ConclusionDigital Marketing Introduction and Conclusion
Digital Marketing Introduction and Conclusion
Staff AgentAI
 
Enhancing non-Perl bioinformatic applications with Perl
Enhancing non-Perl bioinformatic applications with PerlEnhancing non-Perl bioinformatic applications with Perl
Enhancing non-Perl bioinformatic applications with Perl
Christos Argyropoulos
 
What’s new in VictoriaMetrics - Q2 2024 Update
What’s new in VictoriaMetrics - Q2 2024 UpdateWhat’s new in VictoriaMetrics - Q2 2024 Update
What’s new in VictoriaMetrics - Q2 2024 Update
VictoriaMetrics
 
Extreme DDD Modelling Patterns - 2024 Devoxx Poland
Extreme DDD Modelling Patterns - 2024 Devoxx PolandExtreme DDD Modelling Patterns - 2024 Devoxx Poland
Extreme DDD Modelling Patterns - 2024 Devoxx Poland
Alberto Brandolini
 
SAP ECC & S4 HANA PPT COMPARISON MM.pptx
SAP ECC & S4 HANA PPT COMPARISON MM.pptxSAP ECC & S4 HANA PPT COMPARISON MM.pptx
SAP ECC & S4 HANA PPT COMPARISON MM.pptx
aneeshmanikantan2341
 
Refactoring legacy systems using events commands and bubble contexts
Refactoring legacy systems using events commands and bubble contextsRefactoring legacy systems using events commands and bubble contexts
Refactoring legacy systems using events commands and bubble contexts
Michał Kurzeja
 
Introduction to Python and Basic Syntax.pptx
Introduction to Python and Basic Syntax.pptxIntroduction to Python and Basic Syntax.pptx
Introduction to Python and Basic Syntax.pptx
GevitaChinnaiah
 
Ensuring Efficiency and Speed with Practical Solutions for Clinical Operations
Ensuring Efficiency and Speed with Practical Solutions for Clinical OperationsEnsuring Efficiency and Speed with Practical Solutions for Clinical Operations
Ensuring Efficiency and Speed with Practical Solutions for Clinical Operations
OnePlan Solutions
 
Call Girls Solapur ☎️ +91-7426014248 😍 Solapur Call Girl Beauty Girls Solapur...
Call Girls Solapur ☎️ +91-7426014248 😍 Solapur Call Girl Beauty Girls Solapur...Call Girls Solapur ☎️ +91-7426014248 😍 Solapur Call Girl Beauty Girls Solapur...
Call Girls Solapur ☎️ +91-7426014248 😍 Solapur Call Girl Beauty Girls Solapur...
anshsharma8761
 

Recently uploaded (20)

The Ultimate Guide to Top 36 DevOps Testing Tools for 2024.pdf
The Ultimate Guide to Top 36 DevOps Testing Tools for 2024.pdfThe Ultimate Guide to Top 36 DevOps Testing Tools for 2024.pdf
The Ultimate Guide to Top 36 DevOps Testing Tools for 2024.pdf
 
Hot Call Girls In Ahmedabad ✔ 7737669865 ✔ Hi I Am Divya Vip Call Girl Servic...
Hot Call Girls In Ahmedabad ✔ 7737669865 ✔ Hi I Am Divya Vip Call Girl Servic...Hot Call Girls In Ahmedabad ✔ 7737669865 ✔ Hi I Am Divya Vip Call Girl Servic...
Hot Call Girls In Ahmedabad ✔ 7737669865 ✔ Hi I Am Divya Vip Call Girl Servic...
 
Independent Call Girls In Kolkata ✔ 7014168258 ✔ Hi I Am Divya Vip Call Girl ...
Independent Call Girls In Kolkata ✔ 7014168258 ✔ Hi I Am Divya Vip Call Girl ...Independent Call Girls In Kolkata ✔ 7014168258 ✔ Hi I Am Divya Vip Call Girl ...
Independent Call Girls In Kolkata ✔ 7014168258 ✔ Hi I Am Divya Vip Call Girl ...
 
Going AOT: Everything you need to know about GraalVM for Java applications
Going AOT: Everything you need to know about GraalVM for Java applicationsGoing AOT: Everything you need to know about GraalVM for Java applications
Going AOT: Everything you need to know about GraalVM for Java applications
 
European Standard S1000D, an Unnecessary Expense to OEM.pptx
European Standard S1000D, an Unnecessary Expense to OEM.pptxEuropean Standard S1000D, an Unnecessary Expense to OEM.pptx
European Standard S1000D, an Unnecessary Expense to OEM.pptx
 
OpenChain Webinar - Open Source Due Diligence for M&A - 2024-06-17
OpenChain Webinar - Open Source Due Diligence for M&A - 2024-06-17OpenChain Webinar - Open Source Due Diligence for M&A - 2024-06-17
OpenChain Webinar - Open Source Due Diligence for M&A - 2024-06-17
 
Premium Call Girls In Ahmedabad 💯Call Us 🔝 7426014248 🔝Independent Ahmedabad ...
Premium Call Girls In Ahmedabad 💯Call Us 🔝 7426014248 🔝Independent Ahmedabad ...Premium Call Girls In Ahmedabad 💯Call Us 🔝 7426014248 🔝Independent Ahmedabad ...
Premium Call Girls In Ahmedabad 💯Call Us 🔝 7426014248 🔝Independent Ahmedabad ...
 
Folding Cheat Sheet #6 - sixth in a series
Folding Cheat Sheet #6 - sixth in a seriesFolding Cheat Sheet #6 - sixth in a series
Folding Cheat Sheet #6 - sixth in a series
 
Hi-Fi Call Girls In Hyderabad 💯Call Us 🔝 7426014248 🔝Independent Hyderabad Es...
Hi-Fi Call Girls In Hyderabad 💯Call Us 🔝 7426014248 🔝Independent Hyderabad Es...Hi-Fi Call Girls In Hyderabad 💯Call Us 🔝 7426014248 🔝Independent Hyderabad Es...
Hi-Fi Call Girls In Hyderabad 💯Call Us 🔝 7426014248 🔝Independent Hyderabad Es...
 
Female Bangalore Call Girls 👉 7023059433 👈 Vip Escorts Service Available
Female Bangalore Call Girls 👉 7023059433 👈 Vip Escorts Service AvailableFemale Bangalore Call Girls 👉 7023059433 👈 Vip Escorts Service Available
Female Bangalore Call Girls 👉 7023059433 👈 Vip Escorts Service Available
 
Photo Copier Xerox Machine annual maintenance contract system.pdf
Photo Copier Xerox Machine annual maintenance contract system.pdfPhoto Copier Xerox Machine annual maintenance contract system.pdf
Photo Copier Xerox Machine annual maintenance contract system.pdf
 
Digital Marketing Introduction and Conclusion
Digital Marketing Introduction and ConclusionDigital Marketing Introduction and Conclusion
Digital Marketing Introduction and Conclusion
 
Enhancing non-Perl bioinformatic applications with Perl
Enhancing non-Perl bioinformatic applications with PerlEnhancing non-Perl bioinformatic applications with Perl
Enhancing non-Perl bioinformatic applications with Perl
 
What’s new in VictoriaMetrics - Q2 2024 Update
What’s new in VictoriaMetrics - Q2 2024 UpdateWhat’s new in VictoriaMetrics - Q2 2024 Update
What’s new in VictoriaMetrics - Q2 2024 Update
 
Extreme DDD Modelling Patterns - 2024 Devoxx Poland
Extreme DDD Modelling Patterns - 2024 Devoxx PolandExtreme DDD Modelling Patterns - 2024 Devoxx Poland
Extreme DDD Modelling Patterns - 2024 Devoxx Poland
 
SAP ECC & S4 HANA PPT COMPARISON MM.pptx
SAP ECC & S4 HANA PPT COMPARISON MM.pptxSAP ECC & S4 HANA PPT COMPARISON MM.pptx
SAP ECC & S4 HANA PPT COMPARISON MM.pptx
 
Refactoring legacy systems using events commands and bubble contexts
Refactoring legacy systems using events commands and bubble contextsRefactoring legacy systems using events commands and bubble contexts
Refactoring legacy systems using events commands and bubble contexts
 
Introduction to Python and Basic Syntax.pptx
Introduction to Python and Basic Syntax.pptxIntroduction to Python and Basic Syntax.pptx
Introduction to Python and Basic Syntax.pptx
 
Ensuring Efficiency and Speed with Practical Solutions for Clinical Operations
Ensuring Efficiency and Speed with Practical Solutions for Clinical OperationsEnsuring Efficiency and Speed with Practical Solutions for Clinical Operations
Ensuring Efficiency and Speed with Practical Solutions for Clinical Operations
 
Call Girls Solapur ☎️ +91-7426014248 😍 Solapur Call Girl Beauty Girls Solapur...
Call Girls Solapur ☎️ +91-7426014248 😍 Solapur Call Girl Beauty Girls Solapur...Call Girls Solapur ☎️ +91-7426014248 😍 Solapur Call Girl Beauty Girls Solapur...
Call Girls Solapur ☎️ +91-7426014248 😍 Solapur Call Girl Beauty Girls Solapur...
 

Software Requirements Specification on Bengali Braille to Text Translator

  • 1. Bengali Braille to Text Translator Software Requirements Specification and Analysis 25-Sep-2016
  • 2. Bengali Braille to Text Translator Software Requirements Specification and Analysis Submitted by Minhas Kamal Roll: BSSE-0509 Student of BSSE 8th Semester Institute of Information Technology University of Dhaka Supervised by Dr. Mohammad Shoyaib Associate Professor Institute of Information Technology University of Dhaka Submission Date 25th September, 2016
  • 3. LETTER OF TRANSMITTAL 25th September, 2016. BSSE 4th Year Exam Committee Institute of Information Technology University of Dhaka Sir, I have prepared the report on Software Requirements Specification of Bengali Braille to Text Translator. The primary purpose of this report is to summaries my findings that I have gathered during the requirements specification process. This report also includes details of each step I have followed while collecting the requirements. Sincerely Yours, Minhas Kamal Roll: BSSE-0509 Student of BSSE 8th Semester Institute of Information Technology University of Dhaka Enclosure: Software Requirements Specification Report
  • 4. i Executive Summary Braille is a specialized writing system for visually impaired people, where raised dots on embossed paper are used as tactile alphabet. The tool Bengali Braille to Text Translator will take in scanned image of Bengali Braille writing, apply pattern recognition, and translate it to text. The user does not need much theoretical or technical skill to run this software. Acknowledgements By the grace of Almighty Allah I have completed my report on Software Requirements Specification of Bengali Braille to Text Translator. I am grateful to my supervisor Dr. Mohammad Shoyaib for his direction throughout the working time. It was almost impossible for me to complete this SRS document without him. I am also thankful to the teachers and students of The Institute of Education and Research, University of Dhaka. They greatly helped me in collecting information among all business.
  • 5. ii l to the Program Coordinators of PGDIT. They greatly helped us collecting information among all business. Table of Contents Chapter 1: Introduction ............................................................................ 1 1.1 Purpose 1 1.2 Intended Audience 1 Chapter 2: Inception .................................................................................. 3 2.1 Introduction 3 2.1.1 Identifying Stakeholders 3 2.1.2 Asking the First Questions 4 2.1.3 Recognizing Multiple Viewpoints 4 2.1.4 Working towards Collaboration 5 2.2 Conclusion 6 Chapter 3: Elicitation ................................................................................ 7 3.1 Introduction 7 3.2 Eliciting Requirements 7 3.3 Collaborative Requirements Gathering 7 3.4 Quality Function Deployment 8 3.4.1 Normal Requirements 8 3.4.2 Expected Requirements 8 3.4.3 Exciting requirements 9 3.5 Usage Scenarios 9 3.6 Elicitation Work Product 10 Chapter 4: Scenario-Based Model ........................................................ 11 4.1 Introduction 11 4.2 Use Case Scenario 11 4.3 Use Case Descriptions 13 4.3.1 Bengali Braille to Text Translator 14 4.3.1.2 Pre-Processing 18 4.3.1.3 Translation 31 4.3.1.4 Post-Processing 41
  • 6. iii Table of Contents Chapter 5: Data Model .............................................................................. 48 5.1 Introduction 48 5.2 Data Object Selection 48 5.3 Data Objects & Attributes 51 5.4 Conclusion 52 Chapter 6: Class-Based Model ............................................................... 53 6.1 Introduction 53 6.2. General Classification 53 6.3 Selection Characteristics 55 6.4 Attribute Selection 56 6.5 Defining Methods 57 6.5.1 Verb List 57 6.5.2 Selected Methods 58 6.6 Class Diagram 60 6.7 Class Card 61 Chapter 7: Behavioral Model .................................................................. 62 8.1 Introduction 62 8.2 Identifying Events 62 8.3 State Transition Diagram 64 8.4 Sequence Diagram 65 Chapter 8: Conclusion .............................................................................. 76 Appendix ........................................................................................................ 77
  • 7. iv List of Figures Figure No. Figure Name Page No. Figure 4.3 Use Case Diagram of BBTT (Level-0) 13 Figure 4.3.1 Use Case Diagram of BBTT (Level-1) 14 Figure 4.3.1.1a Activity Diagram- Image Acquisition 16 Figure 4.3.1.1b Swim-Lane Diagram- Image Acquisition 17 Figure 4.3.1.2 Use Case Diagram of Pre-Processing (Level-1.2) 18 Figure 4.3.1.2.1a Activity Diagram- Enhancement 20 Figure 4.3.1.2.1b Swim-Lane Diagram- Enhancement 21 Figure 4.3.1.2.2a Activity Diagram- Noise Reduction 23 Figure 4.3.1.2.2b Swim-Lane Diagram- Noise Reduction 24 Figure 4.3.1.2.3a Activity Diagram- Connectivity Improvement 26 Figure 4.3.1.2.3b Swim-Lane Diagram- Connectivity Improvement 27 Figure 4.3.1.2.4a Activity Diagram- Quantization 29 Figure 4.3.1.2.4b Swim-Lane Diagram- Quantization 30 Figure 4.3.1.3 Use Case Diagram of Translation (Level-1.3) 31 Figure 4.3.1.3.1a Activity Diagram- Segmentation 33 Figure 4.3.1.3.1b Swim-Lane Diagram- Segmentation 34 Figure 4.3.1.3.2a Activity Diagram- Pattern Recognition 36 Figure 4.3.1.3.2b Swim-Lane Diagram- Pattern Recognition 37 Figure 4.3.1.3.3a Activity Diagram- Raw Text Generation 39 Figure 4.3.1.3.3b Swim-Lane Diagram- Raw Text Generation 40 Figure 4.3.1.4 Use Case Diagram of Post-Processing (Level-1.4) 41 Figure 4.3.1.4.1a Activity Diagram- Spell Check 43 Figure 4.3.1.4.1b Swim-Lane Diagram- Spell Check 44 Figure 4.3.1.4.2a Activity Diagram- Clean and Generate Output 46 Figure 4.3.1.4.2b Swim-Lane Diagram- Clean and Generate Output 47 Figure 6.6 Class Diagram (BBTT) 60 Figure 7.3 State Transition Diagram- User 64 Figure 7.4.1 Sequence Diagram- Take Image 65 Figure 7.4.2 Sequence Diagram- Run Enhancement 66 Figure 7.4.3 Sequence Diagram- Reduce Noise 67 Figure 7.4.4 Sequence Diagram- Improve Connectivity 68 Figure 7.4.5 Sequence Diagram- Apply Quantization 69 Figure 7.4.6 Sequence Diagram- Extract Braille Pattern 70
  • 8. v List of Figures Figure No. Figure Name Page No. Figure 7.4.7 Sequence Diagram- Convert Braille to Code 71 Figure 7.4.8 Sequence Diagram- Map Code to Character 72 Figure 7.4.9 Sequence Diagram- Check Spell 73 Figure 7.4.10 Sequence Diagram- Run Cleaning Procedure 74 Figure 7.4.11 Sequence Diagram- Customize Template 75
  • 9. Bengali Braille to Text Translator Software Requirement Specification and Analysis
  • 10. 1 Chapter 1 Introduction 1.1 Purpose This is the Software Requirements Specification (SRS) for the tool- Bengali Braille Character Recognizer. The document contains detailed functional, non-functional, and support requirements for the project. It also establishes a requirements baseline for the development of the system. The SRS serves as the official means of communicating user requirements to the developer [1]. It provides a common reference point for both the developer team and stakeholder community. This document’s content may evolve over time as users and developers work together in developing the system. But its fundamental output will remain unchanged. 1.2 Intended Audience This SRS is intended for all the stakeholders- customers, project managers, designers, developers, and quality assurance engineers [1] [2]. They will use it for the following reasons- o Customers will use this SRS to verify acceptability of the development team’s work. o The project managers will design their plan on the basis of this document. They will set milestones and delivery dates. They will also ensure that the development team is on track. o The designers will prepare the systems design based on this document. They will continually refer back to this SRS to ensure that the system they are designing will fulfill the customers’ needs.
  • 11. 2 o Developers will use this document as a basis for developing the system’s functionality. The developers will link the requirements defined in this SRS to the software they create to ensure that they have created software that will fulfill all of the customers’ documented requirements. o Quality assurance engineers will use the SRS to derive test plans and test cases. When portions of the software are complete, they will run their tests on that software to ensure that the software fulfills the requirements documented in this SRS. They will again run their tests on the entire system when it is complete and ensure that all requirements documented in this SRS have been completed.
  • 12. 3 Chapter 2 Inception 2.1 Introduction Requirements Engineering starts with Inception phase. Its goal is to identify parallel needs and conflicting requirements among the stakeholders of a project. The foundation was established by following the subsequent factors- 2.1.1 Identifying Stakeholders Any person, group, or organization which will affect or be affected by the system directly or indirectly is a stakeholder. It includes both project developers and end- users. Here only client side stakeholders will be focused. Although, we intend to develop Bengali Braille to Text Translator for public use, we are currently building it for using only in the Institute of Education and Research (IER), University of Dhaka premises. For this reason, we have selected the stakeholders from the scope of IER only. We have identified following stakeholders for our project: 1. Teachers of IER: Teachers working with visually impaired student at IER are our primary client side stakeholders. They will directly interact with the system. 2. Visually Impaired Students of IER: Although the visually impaired students will not interact with the system directly, but they are the biggest group affected by the system. The software will process their writing and convert it to text. 3. General Students of IER: Visually normal students will also use the software. But they will not be using it for the same reason as the teachers.
  • 13. 4 2.1.2 Asking the First Questions First set of context-free questions focuses on the client side stakeholders and tries to reveal overall project goals and benefits. Now we ask question to help us gaining a better understanding of problem, and to allow customers to voice their perceptions about the solution. 2.1.3 Recognizing Multiple Viewpoints We have collected these view points by discussing with the teachers, visually impaired students, and general students of IER. 1. Teachers of IER: a. Full control of the system b. Low cost c. Minimum error rate d. Handing batch of images e. Intuitive user interface f. Ability to see intermediate results 2. Visually Impaired Students of IER: a. Error free solution b. Process double sided writing c. Special character recognition ability d. Fast processing 3. General Students of IER: a. Easy to use b. User friendly interface
  • 14. 5 c. Easy to install d. Work with any scanner e. No need of theoretical or technical knowledge 2.1.4 Working towards Collaboration Every stakeholder has his own set of requirements from his point of view. We followed following steps to merge these requirements: i. Identify the common and conflicting requirements ii. Categorize the requirements iii. Take priority points for each requirement from stakeholders and on the basis of this voting prioritize the requirements iv. Make final decision about the requirements Common Requirements:  User friendly interface  Easy to use Conflicting Requirements:  Low cost and process double sided writing  Fast and minimum error rate  Full control of the system and no need of theoretical or technical knowledge
  • 15. 6 Final Requirements: We have finalized following requirements for the system through categorization and prioritization process:  Easy to use  User friendly interface  Users with theoretical and technical knowledge will be able to fully customize and control the system  Users with no technical knowledge will be able to use templates (created by specialists) for running the system  Minimize error rate  Can work with any scanner 2.2 Conclusion Inception phase strongly supported us in establishing basic understanding about Bengali Braille to Text Translator. It also helped us to identify people who will be benefited by the software. Most importantly it established a preliminary communication with the stakeholders.
  • 16. 7 Chapter 3 Elicitation 3.1 Introduction Elicitation helps the customer to define the requirement more specifically. This phase faces many problems like- problems of scope, problems of volatility, and problems of understanding. To overcome these problems, we have worked in an organized and systematic manner. 3.2 Eliciting Requirements Unlike Inception, where Question and Answer approach is used, Elicitation makes use of a requirements elicitation format that combines the elements of problem solving, elaboration, negotiation, and specification. It requires the cooperation of a group of end-users and developers to elicit requirements. 3.3 Collaborative Requirements Gathering There are many different approaches to collaborative requirements gathering. Each approach makes use of a slightly different scenario. We followed the subsequent steps to do it: i. Meetings were conducted with teachers and students of IER, DU. They were questioned about their requirements and expectations from the tool. ii. They were asked about the problems they are facing with exam papers written in Braille. We also inquired regarding the efficiency of the current process. iii. At last we selected our final requirement list from these meetings.
  • 17. 8 3.4 Quality Function Deployment The technique which translates the needs of the customer into technical requirements for software is called Quality Function Deployment (QFD). QFD concentrates on maximizing customer satisfaction from the Software Engineering process. With respect to our project the following requirements are identified by QFD- 3.4.1 Normal Requirements Objectives and goals that are stated during the meeting with the customers are Normal Requirements. Our project’s Normal Requirements are: 1. User can customize the work sequence, and store the configuration for future use. 2. Will be able to run the tool and get output with only single ‘run’ button. 3. User can view result from each level of Braille to text translation process. 4. User will be able to run different types of image enhancement and other pre-processing algorithms to improve input image quality. 5. There will be a spell checking system, which will minimize error rate. 6. There will be some default configuration templates available with the software. 7. User will also be able to select different pattern recognition algorithms for recognizing Braille patterns on the basis of his need. 3.4.2 Expected Requirements Expected Requirements are implicit to the system. These requirements may be so fundamental that the customers do not explicitly state them. Expected Requirements of our project are:
  • 18. 9 1. The system will be able to support all popular image formats like- JPG, JPEG, PNG, and so on. 2. User will be able to process both single image and batch of images of Braille writing. 3. The user interface of the system shall be easy to use. It will make use of drop-down boxes, radio buttons, and other selectable fields wherever possible instead of fields that require the user to type in data. 3.4.3 Exciting Requirements Features that go beyond the customer's expectations are called Exciting Requirements. They prove to be very satisfying when present- 1. The user interface should provide appropriate error messages for invalid input as well as tool-tips and help. 2. The system will also be able to work with multiple languages of Braille writing. 3.5 Usage Scenario Bengali Braille to Text Translator Bengali Braille Character Recognizer is a tool that will take scanned image of Braille writing, run different types of image-preprocessing techniques, translate Braille to text through pattern recognition, and apply text correction procedures for final output. Braille is a specialized writing system for visually impaired people. Here raised dots on embossed paper are used as tactile alphabet [3] [4]. These papers will be scanned with a scanner, and resulting image files will be stored in the computer. At first, the user will select scanned images of Braille writing. Now, different types of image enhancement processes will be run. These image enhancement processes will improve Braille patterns and make it distinguishable from the
  • 19. 10 background. After that, various noise reduction algorithms will be applied for reducing artifacts and improve pattern quality. For further development of Braille dots, connectivity improvement and quantization will be applied. In the second section, Braille is translated to text. Firstly, Braille patterns are extracted from the image. Then these patterns are converted to code- Braille Pattern Code (BPC- each dot of Braille character is encoded in ‘1’ and ‘0’). Now these resulting codes are mapped with Code to Character Map (CCM-like a hash table, where each unique code relates to only one character) and plain text file is generated. This text file contains probable raw characters for the Braille image. In the post processing stage, spell checking will be performed for minimizing error rate. Here, words for spell checking process will be stored in a Domain Word List (DWL) file. Lastly, a cleaning procedure will produce the final text file. All these steps, settings, algorithms and their parameters can be automated using a configuration file- Braille Processing Template (BPT). Some templates (BPT) will be available to the user in default with the system. Users will also be able to define customized template. 3.6 Elicitation Work Product Our elicitation work product includes:  Statement of our requirements for Bengali Braille to Text Translator  A bounded statement of scope for our solution  Set of usage scenarios  A list of clients, users, and other stakeholders who participated in requirement specification process
  • 20. 11 Chapter 4 Scenario-Based Model 4.1 Introduction The user’s point of view is used to describe Scenario-Based Model. In SRS this is the first modeling phase. So, it serves as an input for the creation of other models. 4.2 Use Case Scenario With the advancement of requirements gathering, functionalities and responsibilities of the software starts to materialize. The following table enlists primary components of the system: Table-4.2 Use Case Scenario Level-0 Level-1 Level-2 Actors Bengali Braille to Text Translator Pre-Processing Image Acquisition User, Scanner Enhancement User, Braille Processing Template Noise Reduction User, Braille Processing Template Connectivity Improvement User, Braille Processing Template Quantization User, Braille Processing Template Translation Segmentation User, Braille Processing Template Pattern Recognition User, Braille Processing Template, Braille
  • 21. 12 Pattern Code Raw Text Generation User, Braille Processing Template, Code to Character Map Post- Processing Spell Check User, Braille Processing Template, Domain Word List Clean and Generate Output User, Braille Processing Template
  • 22. 13 4.3 Use Case Description In this section Use Case Scenario will be elaborated to Use Case Diagram, Description, Activity Diagram, and Swim-Lane Diagram. Figure-4.3 is the Use Case Diagram of level-0 for Bengali Braille to Text Translator (BBTT):
  • 23. 14 4.3.1 Bengali Braille to Text Translator Here Figure-4.3.1 is the detailed form of level-0:
  • 24. 15 4.3.1.1 Use Case: Image Acquisition Primary Actor: User. Secondary Actor: Scanner, Braille Processing Template. Goal in Context: Use scanner to scan Braille writing and initialize the system. Scenario: 1. Place Braille writing sheets in scanner. 2. Scan and store images. 3. Input images into the system. 4. Select Braille Processing Template (BPT) if necessary. Exceptions: 1. System failure. 2. Error in scanner connection. Priority: Moderate, may be implemented. When Available: First increment. Frequency of Use: Several times per week.
  • 25. 16 Figure 4.3.1.1a is the Activity Diagram of Image Acquisition-
  • 26. 17 Figure 4.3.1.1b is the Swim-Lane Diagram of Image Acquisition-
  • 27. 18 4.3.1.2 Pre-Processing Pre-Processing phase can be divided into five sub-phases. Figure-4.3.1.2 shows this:
  • 28. 19 4.3.1.2.1 Use Case: Enhancement Primary Actor: User. Secondary Actor: Braille Processing Template. Goal in Context: Improve Braille patterns and make it distinguishable from the background. Scenario: 1. Select image enhancement algorithm. 2. Set parameters. 3. Run process and store result. Exceptions: 1. System failure. 2. Image file size is too large. 3. Unsupported image file format. Priority: Moderate, may be implemented. When Available: Second increment. Frequency of Use: Several times per day.
  • 29. 20 Figure 4.3.1.2.1a is the Activity Diagram of Enhancement-
  • 30. 21 Figure 4.3.1.2.1b is the Swim-Lane Diagram of Enhancement -
  • 31. 22 4.3.1.2.2 Use Case: Noise Reduction Primary Actor: User. Secondary Actor: Braille Processing Template. Goal in Context: Reducing artifacts and improve pattern quality. Scenario: 1. Select noise reduction algorithm. 2. Set parameters. 3. Run process and store result. Exceptions: 1. System failure. 2. Unsupported image file format. Priority: Moderate, may be implemented. When Available: Second increment. Frequency of Use: Several times per day.
  • 32. 23 Figure 4.3.1.2.2a is the Activity Diagram of Noise Reduction-
  • 33. 24 Figure 4.3.1.2.2b is the Swim-Lane Diagram of Noise Reduction-
  • 34. 25 4.3.1.2.3 Use Case: Connectivity Improvement Primary Actor: User. Secondary Actor: Braille Processing Template. Goal in Context: Improve Braille writing patterns. Scenario: 1. Select algorithm. 2. Run process and store result. Exceptions: 1. System failure. 2. Image file size is too large. 3. Unsupported image file format. Priority: Moderate, may be implemented. When Available: Second increment. Frequency of Use: Several times per day.
  • 35. 26 Figure 4.3.1.2.3a is the Activity Diagram of Connectivity Improvement-
  • 36. 27 Figure 4.3.1.2.3b is the Swim-Lane Diagram of Connectivity Improvement-
  • 37. 28 4.3.1.2.4 Use Case: Quantization Primary Actor: User. Secondary Actor: Braille Processing Template. Goal in Context: Improve Braille writing patterns. Scenario: 1. Set parameters. 2. Run process and store result. Exceptions: 1. System failure. 2. Unsupported image file format. Priority: Moderate, may be implemented. When Available: Second increment. Frequency of Use: Several times per day.
  • 38. 29 Figure 4.3.1.2.4a is the Activity Diagram of Quantization-
  • 39. 30 Figure 4.3.1.2.4b is the Swim-Lane Diagram of Quantization-
  • 40. 31 4.3.1.3 Translation Further section of Translation system creates three sub-systems:
  • 41. 32 4.3.1.3.1 Use Case: Segmentation Primary Actor: User. Secondary Actor: Braille Processing Template. Goal in Context: Extract Braille patterns from the image. Scenario: 1. Select segmentation procedure. 2. Set parameters. 3. Run process. 4. Store resulting binary image. Exceptions: 1. System failure. 2. Unsupported image file format. 3. Big image file. Priority: Essential, must be implemented. When Available: Third increment. Frequency of Use: Several times per day.
  • 42. 33 Figure 4.3.1.3.1a is the Activity Diagram of Segmentation-
  • 43. 34 Figure 4.3.1.3.1b is the Swim-Lane Diagram of Segmentation-
  • 44. 35 4.3.1.3.2 Use Case: Pattern Recognition Primary Actor: User. Secondary Actor: Braille Processing Template, Braille Pattern Code. Goal in Context: Convert Braille patterns to code. Scenario: 1. Select pattern recognition procedure. 2. Set parameters. 3. Run process. 4. Store code in text file. Exceptions: 1. Image with no Braille pattern. 2. System failure. 3. Big image file. Priority: Essential, must be implemented. When Available: Fourth increment. Frequency of Use: Several times per day.
  • 45. 36 Figure 4.3.1.3.2a is the Activity Diagram of Pattern Recognition-
  • 46. 37 Figure 4.3.1.3.2b is the Swim-Lane Diagram of Pattern Recognition-
  • 47. 38 4.3.1.3.3 Use Case: Raw Text Generation Primary Actor: User. Secondary Actor: Braille Processing Template, Braille Pattern Code, Code to Character Map. Goal in Context: Generate plain text file. Scenario: 1. Select Braille Pattern Code file. 2. Select Code to Character Map file. 3. Run process. 4. Store result in text file. Exceptions: 1. Invalid pattern code. 2. System failure. Priority: Essential, must be implemented. When Available: Fifth increment. Frequency of Use: Several times per day.
  • 48. 39 Figure 4.3.1.3.3a is the Activity Diagram of Raw Text Generation-
  • 49. 40 Figure 4.3.1.3.3b is the Swim-Lane Diagram of Raw Text Generation-
  • 51. 42 4.3.1.4.1 Use Case: Spell Check Primary Actor: User. Secondary Actor: Braille Processing Template, Domain Word List. Goal in Context: Minimizing error rate. Scenario: 1. Select raw text file. 2. Select Domain Word List file. 3. Run process. 4. Store corrected result in text file. Exceptions: 1. System failure. Priority: Moderate, may be implemented. When Available: sixth increment. Frequency of Use: Several times per day.
  • 52. 43 Figure 4.3.1.4.1a is the Activity Diagram of Spell Check-
  • 53. 44 Figure 4.3.1.4.1b is the Swim-Lane Diagram of Spell Check-
  • 54. 45 4.3.1.4.2 Use Case: Clean and Generate Output Primary Actor: User. Secondary Actor: Braille Processing Template. Goal in Context: Generate final text file. Scenario: 1. Select raw text file. 2. Run cleaning process. 3. Store result in text file. Exceptions: 1. System failure. Priority: Essential, must be implemented. When Available: Last increment.
  • 55. 46 Figure 4.3.1.4.2a is the Activity Diagram of Clean and Generate Output-
  • 56. 47 Figure 4.3.1.4.2b is the Swim-Lane Diagram of Clean and Generate Output-
  • 57. 48 Chapter 5 Data Model 5.1 Introduction When software requires interfacing with a database or complex data structures need to be constructed and manipulated, data model is performed as part of overall requirements modeling. 5.2 Data Object Selection Data objects are representation of information which has different attributes.Table-5.2 enlists all nouns from Usage Scenario and marks potential data objects: Table-5.2 Data Object Selection Noun Attributes Description Remark bengali braille character recognizer represents the whole system rejected image alias of braille writing rejected braille writing input for the system rejected image- preprocessing technique alias of algorithm rejected text alias of text file rejected pattern recognition alias of algorithm rejected final output output for the system rejected braille alias of braille writing rejected system alias of bengali braille rejected
  • 58. 49 character recognizer visually impaired people out of scope rejected raised dots out of scope rejected embossed paper out of scope rejected tactile alphabet out of scope rejected paper alias of embossed paper rejected scanner a device, external entity rejected image files alias of braille writing rejected computer represents the whole system rejected scanned images alias of braille writing rejected image enhancement process alias of algorithm rejected section out of scope rejected braille pattern alias of braille writing rejected background out of scope rejected noise reduction algorithm alias of algorithm rejected artifact out of scope rejected pattern quality out of scope rejected braille dots alias of braille writing rejected connectivity improvement alias of algorithm rejected quantization alias of algorithm rejected code an attribute of braille pattern code rejected braille pattern code id, code potential data object accepted braille character alias of braille writing rejected code to character map code, character potential data object accepted hash table alias of braille code to character map rejected text file alias of final output rejected braille image alias of braille writing rejected
  • 59. 50 stage alias of algorithm rejected spell checking alias of algorithm rejected error rate out of scope rejected domain word list word, frequency potential data object accepted cleaning procedure alias of algorithm rejected step alias of algorithm rejected setting alias of braille processing template rejected algorithm an attribute of braille processing template rejected parameter an attribute of braille processing template rejected configuration file alias of braille processing template rejected braille processing template algorithm, parameters potential data object accepted template alias of braille processing template rejected user no separated authentication system required rejected system alias of braille writing rejected customized template alias of bengali braille character recognizer rejected
  • 60. 51 5.3 Data Objects and Attributes This is a brief view of all attributes we have found so far:
  • 61. 52 5.4 Conclusion Data objects found here have no relationship to each other. These data objects will be stored in a file system and will work independently. So there is no Data Object Relational Diagram here. For this same reason no E-R Diagram or Schema Diagram exists for this project.
  • 62. 53 Chapter 6 Class-Based Model 6.1 Introduction The objects that the system will manipulate, the operations that will be applied to the objects and relationships between the objects are represented by Class-Based Modeling. It also defines the collaborations that occur between the classes. 6.2 General Classification Analysis classes can be marked by one of the following ways: 1. External Entity 2. Thing 3. Occurrence 4. Role 5. Organizational Unit 6. Place 7. Structure Table-6.2 General Classification No. Noun General Classification Remark 1 bengali braille character recognizer 2 Problem Space (represents whole system) 2 image 2, 7 Problem Space 3 braille writing NULL Problem Space 4 image-preprocessing technique 3, 7 Solution Space (same as- 25)
  • 63. 54 5 text 2, 7 Problem Space 6 pattern recognition 3 Solution Space 7 final output 7 Problem Space 8 braille Null Problem Space 9 system 2 Problem Space (represents whole system) 10 visually impaired people 1 Problem Space 11 raised dots 1 Problem Space 12 embossed paper 1 Problem Space 13 tactile alphabet 1 Problem Space 14 paper 1 Problem Space 15 scanner 1, 2 Problem Space 16 image files 1, 2 Problem Space 17 computer 1, 2, 7 Problem Space (represents whole system) 18 scanned images 1, 2 Problem Space 19 image enhancement process 3 Solution Space 20 section NULL Problem Space 21 braille pattern 1, 2 Problem Space 22 background NULL Problem Space 23 noise reduction algorithm 3 Solution Space 24 artifact NULL Problem Space 25 pre-processing 3 Solution Space 26 braille dots 1, 2 Problem Space 27 connectivity improvement 3 Solution Space 28 quantization 3 Solution Space 29 code NULL Problem Space 30 translation 3 Solution Space 31 braille character NULL Problem Space 32 code to character map 4, 7 Solution Space 33 hash table 4, 7 Solution Space (same as- 32) 34 text file 1, 2 Problem Space
  • 64. 55 35 braille image 1, 2 Problem Space 36 post-processing 3 Solution Space 37 spell checking 3 Solution Space 38 error rate NULL Problem Space 39 domain word list 4, 7 Solution Space 40 cleaning procedure 3 Solution Space 41 step NULL Problem Space 43 setting 4, 7 Solution Space (same as- 47) 44 algorithm 3 Solution Space (represents all procedures) 45 parameter 7 Solution Space (represents all parameters of the system) 46 configuration file 4, 7 Solution Space (same as- 47) 47 braille processing template 4, 7 Solution Space 48 template 4, 7 Solution Space (same as- 47) 49 user 1, 4 Solution Space 50 system 2 Problem Space (represents whole system) 51 customized template 4, 7 Solution Space (same as- 47) 6.3 Selection Characteristics Coad and Yourdon suggest six selection characteristics that should be used to consider each potential class for inclusion in the analysis model: 1. Retained Information 2. Needed Services 3. Multiple Attributes 4. Common Attributes 5. Common operations 6. Essential Requirements
  • 65. 56 6.4 Attribute Selection Here we find attributes for selected classes. Table-6.4 Attribute Selection No. Class Attributes 1 User selected_algorithm_List, initialized_parameters 2 Pre-Processing image_input_file_list, output_image_path_list 3 Translation image_list, code_data, text_data, Table-6.3 Selection Characteristics No. Potential Class Characteristics Remarks 1 pattern recognition 1, 2, 3, 6 No 2 image enhancement process 1, 2, 3 No 3 noise reduction algorithm 1, 2, 3 No 4 pre-processing 1, 2, 3, 4, 5, 6 Yes 5 connectivity improvement 1, 2, 3 No 6 quantization 1, 2, 3 No 7 translation 1, 2, 3, 4, 5, 6 Yes 8 code to character map 1, 2, 6 No 9 post-processing 1, 2, 3, 4, 5, 6 Yes 10 spell checking 1, 2, 3 No 11 domain word list 1, 2 No 12 cleaning procedure 1, 2, 3 No 13 braille processing template 1, 2 No 14 user 1, 2, 3, 4, 5, 6 Yes
  • 66. 57 code_to_character_map 4 Post-Processing Input_text_data, output_file_path 6.5 Defining Methods In this section we find all the verbs from usage scenario and include necessary external verbs in a list. Then we select useful verbs as methods. 6.5.1 Verb List Here we list all verbs from usage scenario. Table-6.5.1 Verb List No. Verb Remarks 1 take scanned image out of scope 2 run image pre-processing yes 3 translate braille to text yes 4 apply text correction yes (same as- run post- processing) 5 scan paper out of scope 6 store image out of scope 7 select image out of scope 8 run image enhancement yes 9 improve braille pattern yes (same as- run image enhancement) 10 make distinguishable yes (same as- run image enhancement) 11 apply noise reduction yes 12 improve connectivity yes 13 run quantization yes
  • 67. 58 14 extract braille pattern yes 15 convert braille pattern to code yes 16 map code to character yes (same as- convert braille pattern to code) 17 generate plain text from code yes 18 contain character out of scope 19 run post processing yes 20 run spell checking yes 21 store word out of scope 22 run cleaning procedure yes 23 automate whole process no need 24 customize braille processing template yes 6.5.2 Selected Methods From the verb list above we have selected following methods for classes. Table-6.5.2 Selected Methods Class Methods Remarks User pre_process() translate() post_process() customize_braille_processing _template() pre_process() is run image pre-processing, translate() is translate braille to text, post_process() is run post-processing Pre-Processing enhance_image() reduce_noise() improve_connectivity() run_quantization() enhance_image() is run image enhancement, reduce_noise() is apply noise reduction Translation apply_segmentation() recognize_braille_pattern() apply_segmentation() is extract braille
  • 68. 59 create_plain_text() pattern, recognize_braille_patt ern() is convert braille pattern to code, create_plain_text() is generate plain text from code Post- Processing check_spell() generate_final_output() generate_final_output () is run cleaning procedure
  • 69. 60 6.6 Class Diagram We have shown here (Figure- 6.6), how the classes interact together to accomplish certain goal.
  • 70. 61 6.7 Class Card Class card represents a graphical view of responsibility and collaborator for each class.
  • 71. 62 Chapter 7 Behavioral Model 7.1 Introduction When the system is perceived in terms of states and transitions, it is called Behavior Modeling. It is also known as State Modeling, State Machines, or State Transition Matrix. This requires both identifying all of the interesting states of being that software or its components are likely to be in. And also, at a high level, abstracting what events are likely to cause software or its components to change between states of being. 7.2 Identifying Events Here we have identified events from the Usage Scenario and listed their corresponding initiators & collaborators. Table-7.2 Identifying Events Event Initiator Collaborator take scanned image of Braille writing User Scanner run different types of image- preprocessing techniques User translate Braille to text through pattern recognition User Braille Pattern Code, Code to Character Map apply text correction procedures User Domain Word List
  • 72. 63 select scanned images of Braille writing User run image enhancement User apply noise reduction User improve connectivity User apply quantization User extract braille pattern User convert braille to code User Braille Pattern Code map code to character User Braille Pattern Code, Code to Character Map check spell User Domain Word List run cleaning procedure User automate the configuration User Braille Processing Template customize template User Braille Processing Template
  • 73. 64 7.3 State Transition Diagram State Transition Diagram represents active states for each class and the events (triggers) that cause changes between these active states. Here Figure-7.3 provides diagram for the actor- User.
  • 74. 65 7.4 Sequence Diagram The way events cause transitions from object to object as a function of time is represented by Sequence Diagram. Figure-7.4.1 to Figure-7.4.11 represents Sequence Diagram for all major events of this project.
  • 75. 66
  • 76. 67
  • 77. 68
  • 78. 69
  • 79. 70
  • 80. 71
  • 81. 72
  • 82. 73
  • 83. 74
  • 84. 75
  • 85. 76 Chapter 8 Conclusion I am pleased to submit the final SRS report on Bengali Braille to Text Translator. From this, the readers will get a clear and easy view of tactile writing system. He will also get a good understanding of the translation process. This SRS document can be used effectively to maintain the software development cycle for the project. I have presented a detailed description of the total system. It will be much easy to conduct the whole project using this SRS. It will also help me to determine the pitfalls that may come ahead. Hopefully, this document can also help other software engineering students as well as practitioners. I have tried my best to make effective and fully designed SRS. I believe that the readers will find it in order.
  • 86. 77 Appendix References [1] Pressman, Roger S. Software Engineering: A Practitioner's Approach (7th ed.). Boston, Mass: McGraw-Hill. ISBN 0-07-285318-2. [2] Ralph, Paul. "The illusion of requirements in software development." Requirements Engineering 18.3 (2013): 293-296. [3] W. David, A. Adler. “A Picture of Louis Braille.” New York, McGraw Hill, 1999. [4] Durre, K.P., W. Tuttle. “A Universal Computer Braille Code for Literacy and Scientific Texts.”International Technology Conference, 1991.
  翻译: