Analysis And Definition Of Requirement Engineering Computer Science Essay

Published:

This essay has been submitted by a student. This is not an example of the work written by our professional essay writers.

The requirement engineering phase defines the requirements of the system, independent of how these requirements will be accomplished. This phase defines the problem that the user is trying to solve. The deliverable result at the end of this phase is a software requirement document. Ideally, this document states in a clear and precise fashion what is to be built. This analysis represents the ``what'' phase.

The requirements specified in this document provide a base for the design and development of the software.

1.1 Requirement Definition

Requirement definition gives an abstract view of the system services and the constraints under which the system will operate. There are basic four requirements of my system which include

Encrypt the data which is to be hiding.

Hide the encrypted data in the carrier provided.

Unhide the data from the carrier.

Decrypt the extracted data

1.2 Requirement Specification

Requirement specification is detailed and precise description of the system requirements. So we can say that it is further aid to requirement definition phase. The requirement specification is mainly divided into two categories. These are

Functional Requirements Specification.

Non-Functional Requirements Specification.

1.2.1 Non Functional Requirements

Non-functional requirements define system properties and constraints. The system properties are reliability, response time and memory requirements. Other properties include:

The size of the stego file = The size of the carrier file.

The quality of the stego file = The quality of the carrier file.

The following are three main categories of the non-functional requirements.

1.2.2 User Model View

The user model view consists of the following activities.

1.2.3 Actors Identification

Actors represent external entities that interact with the system. An actor is not a part of the system. The actor may input information to the system or receive information from the system. In my system there is only two type of actors.

Carrier User

The user which wants to hide the data.

Stego User

The user which wants to unhide the data.

1.2.4 Use cases identification

Informally a use case is a collection of related success and failure scenarios that describe actors using a system to support a goal. The user gives input to the system and the system replies with an output. The following use cases are identified for the DigitalStego.

Hide data in a bmp file.

Unhide the data from a bmp file.

Hide the data in a wav file.

Unhide the data from the wav file.

1.2.5 Use case Diagram

Figure No 1.1 Use Case Diagram for Data Hide and Data Unhide

1.2.6 Use Cases Description

Hide data in bmp file

Use case identifier : Hide BmpFile

Steps of actor actions and system response

Typical courses of action :

The user selects the bmp file.

The system verifies that the file is a bmp image.

The user selects the file message

The system verifies that the file is a text file

The user saves the stego file at particular location.

The system verifies that the stego file type and carrier type is same.

The user enters the password

The system performs encryption on the selected message

The user selects the Hide option

The system takes the encrypted message and the carrier file, and applies the LSBV algorithm until all the message’s bits are not hidden in the given carrier and create the stego file at the specified location.

Pre-condition : The carrier must be a bmp image.

Post-condition : The stego file must be created at the specified location, size & image quality of stego file must remain same as the carrier.

Unhide Data from bmp file

Use case identifier : UnHide BmpFile

Steps of actor actions and system response

The user selects the bmp stego file

The system verifies that the file is a bmp image and that the file contains the hidden data

The user selects the message destination

The system verifies that the destination file is a text file if user has selected the file to save the extracted message.

The user enters the password

The system verifies that the entered password is correct.

The user selects the UnHide option

The system takes the stego file, and applies the LSB algorithm until all the message’s bits are not extracted from the given stego file. Then the extracted message is decrypted and placed at the specified location.

Pre-condition : The user must know the password otherwise he will not be able to unhide the data.

Post-condition : The extracted message must be same as the original message.

Hide data in wav file

Use case identifier : Hide WavFile

Steps of actor actions and system response

The user selects the wav file

The system verifies that the format for the wav file is correct

The user select the file message

The system verifies that the file is a text file

The user saves the stego file at particular location.

The system verifies that the stego file type and carrier type is same

The user enters the password

The system performs encryption on the selected message.

The user clicks the Hide option

The system takes the encrypted message and the carrier file, extracts the required data from the wav (header) and applies the LSB algorithm until all the message’s bits are not hidden in the given carrier and create the stego file at the specified location.

Pre-condition : NIL

Post-condition : The stego file must remain same as the carrier (no size increases, no quality loss).

Unhide Data from wav file

Use case identifier : UnHide WavFile

Steps of actor actions and system response

The user selects the wav stego file

The system verifies that the file is a wav file and contains the hidden data

The user selects the message destination

The system verifies that the destination file is a text file if user has selected the file to save the extracted message.

The user enters the password.

The system verifies that the entered password is correct.

The user selects the UnHide option

The system takes the stego file, and applies the LSB algorithm until all the message’s bits are not extracted from the given stego file. Then the extracted message is decrypted and placed at the specified location

Pre-condition : The user must know the password otherwise he will not be able to unhide the data..

Post-condition : The extracted message must be same as the original message.

1.2.7 Functional Requirements Specification

The functional requirements for a system describe the functionality or the services that the system is expected to provide.

There are many techniques to document the functional requirements specification of the system to be developed. For steganography, I found the Structured Natural Language Specification was found to be the most appropriate due to its well defined template. It is a restricted form of natural language for requirement specification. Its proper structure maintains the expressiveness and understandability of the natural language. The following are the functional requirements of my system.

R1: Select Carrier

Requirement Identifier

R1

Description

Select Carrier

Function

There should be an easy interface from which user can select the required carrier file

Description

The carrier is a bmp file or wav file in which user wants to hide the secret data.

Inputs

Bitmap (*.bmp) or Wav audio (*.wav) file

Source

Carrier User

Outputs

Display the path information of the select carrier in the respective text box.

Pre Condition

File must be a (bmp) or (wav)

Post Condition

The carrier file must be with its complete path .

Side effects

NIL

Table 3.1 << Select Carrier >>

R2: Secret Message

Requirement Identifier

R2

Description

Secret Message

Function

There should be an easy interface from which user can provide the secret message.

Description

The data which is to hiding can be a small message or can be a long text written in a file. The user must be provided with the interface that he/she can provide the message by writing or from a file.

Inputs

A small message or a text file.

Source

Carrier User

Outputs

If the user has selected the file then the path information of the selected is displayed in the respective text box.

Pre Condition

NIL

Post Condition

If the user has selected the file then the file must be with its complete path information.

Side effects

NIL

Table 3.2 << Secret Message >>

R3: Save Stego

Requirement Identifier

R3

Description

Save Stego

Function

Save the stego file after the data has been hidden in it

Description

The stego file is a bmp file or wav file in which the secret message has been hidden.

Inputs

Give the path to save the resulting file.

Source

Carrier User

Outputs

The stego file is saved at the given path.

Pre Condition

File type of the carrier and the stego file must be same.

Post Condition

The stego file must be with its complete path

Side effects

NIL

Table 3. 3 << Save Stego >>

R4: Set Password

Requirement Identifier

R4

Description

Set Password

Function

Set the password.

Description

The data should be encrypted against a user defined password. So there should be an interface for entering the password.

Inputs

Password

Source

Carrier User

Outputs

The secret message will be encrypted.

Pre Condition

NIL

Post Condition

The password must displayed in any special password char form (*, $ etc).

Side effects

NIL

Table 3. 4 << Set Password >>

R5: Encrypt Message

Requirement Identifier

R5

Description

Encrypt message

Function

Encrypt the message before hiding.

Description

The message should be encrypted before the hiding.

Inputs

The message to be hide, password.

Source

Carrier User

Outputs

The message will be now in encrypted form.

Pre Condition

Password must be provided.

Post Condition

The secret message must be encrypted.

Side effects

NIL

Table 3. 5 << Encrypt Message >>

R6: Hide Message

Requirement Identifier

R6

Description

Hide message

Function

Hide the message in the carrier..

Description

The application must be able to successfully hide the data in the carrier.

Inputs

The carrier file, the stego file, the message and the password.

Source

Carrier User

Outputs

The stego file will be created.

Pre Condition

The type of the carrier file and the stego file must be same.

Post Condition

The size and quality of the carrier file and the stego file must be same.

Side effects

NIL

Table3. 6 << Hide Message >>

R7: Destination of Extracted Message

Requirement Identifier

R7

Description

Destination of extracted message

Function

Checking the user option to place the extracted message.

Description

After extracting the data from the stego file the user can show the extracted data in the provided source or can save the data in a file.

Inputs

User option for placing the extracted data.

Source

Carrier User

Outputs

The extracted data will be shown in the text box or will be saved with the specified file name

Pre Condition

If user wants to show data in a file then file path must be provided.

Post Condition

If the user has selected to save the extracted data in a file then the file with its complete path must be provided.

Side effects

If the file already exists at the specified path with the specified name, the file will be overwritten.

Table3. 7 << Destination of Extracted Message >>

R8: Validate Stego User

Requirement Identifier

R8

Description

Validate Stego User

Function

Get password from user.

Description

Only the authorized user can unhide the data. So for this the user should provide the correct password. Also the password is used for data decryption purpose.

Inputs

User password

Source

Stego User

Outputs

Data is unhidden.

Pre Condition

If the user is a valid user then he/she must know the password.

Post Condition

NIL

Side effects

NIL

Table3. 8 << Validate Stego User >>

R9: Decrypt Message

Requirement Identifier

R9

Description

Decrypt message

Function

Decrypt the message after extracting from the stego file.

Description

After the data is extracted from the stego file it is decrypted so that it converted to the original form.

Inputs

Encrypted data, password.

Source

Stego User

Outputs

The extracted data will be converted to the original form.

Pre Condition

User must know the password.

Post Condition

The extracted data will be converted to the original form.

Side effects

NIL

Table3. 9 << Decrypt Message >>

R10: Unhide Message

Requirement Identifier

R10

Description

Unhide message

Function

Unhide the message from the stego file.

Description

The application must be able to successfully unhide the message from the stego file..

Inputs

The stego file and the password.

Source

Stego User

Outputs

The message will be placed at the provided destination

Pre Condition

The stego file must contain the hidden message.

The user must know the password.

Post Condition

The application must be able to successfully extract the data.

Side effects

NIL

Table 3.10 << Unhide Message >>

Writing Services

Essay Writing
Service

Find out how the very best essay writing service can help you accomplish more and achieve higher marks today.

Assignment Writing Service

From complicated assignments to tricky tasks, our experts can tackle virtually any question thrown at them.

Dissertation Writing Service

A dissertation (also known as a thesis or research project) is probably the most important piece of work for any student! From full dissertations to individual chapters, we’re on hand to support you.

Coursework Writing Service

Our expert qualified writers can help you get your coursework right first time, every time.

Dissertation Proposal Service

The first step to completing a dissertation is to create a proposal that talks about what you wish to do. Our experts can design suitable methodologies - perfect to help you get started with a dissertation.

Report Writing
Service

Reports for any audience. Perfectly structured, professionally written, and tailored to suit your exact requirements.

Essay Skeleton Answer Service

If you’re just looking for some help to get started on an essay, our outline service provides you with a perfect essay plan.

Marking & Proofreading Service

Not sure if your work is hitting the mark? Struggling to get feedback from your lecturer? Our premium marking service was created just for you - get the feedback you deserve now.

Exam Revision
Service

Exams can be one of the most stressful experiences you’ll ever have! Revision is key, and we’re here to help. With custom created revision notes and exam answers, you’ll never feel underprepared again.