Chapter 4 : Software Requirement Specification - SAKET-SK/Online-Electronic-Store-Project GitHub Wiki

The main purpose of preparing this document is to give a general insight into the analysis and requirements of the existing system or situation and to determine the operating characteristics of the system.

This Document plays a vital role in the development life cycle (SDLC) and it describes the complete requirements of the system. It is meant for use by the developers and will be the basis during the testing phase. Any changes made to the requirements in the future will have to go througha formal change approval process.

The developer is responsible for:

  • Developing the system, which meets the SRS, and solving all the requirements of the system?
  • Demonstrating the system and installing the system at the client's location after the acceptance testing is successful.
  • Submitting the required user manual describing the system interfaces to work on it, and also the documents of the system.
  • Conducting any user training that might be needed for using the system.
  • Maintaining the system for a period of one year after installation.

Functional Requirements

Outputs from computer systems are required primarily to communicate the results of processing to users. They are also used to provide a permanent copy of the results for later consultation. The various types of outputs in general are:

  • External Outputs, whose destination is outside the organization.
  • Internal Outputs whose destination is within in organization and they are the
  • The user’s main interface with the computer.
  • Operational outputs whose use is purely within the computer department.
  • Interface outputs, which involve the user in communicating directly with

OUTPUT DEFINITION The outputs should be defined in terms of the following points:

  • Type of the output
  • Content of the output
  • Format of the output
  • Location of the output
  • Frequency of the output
  • Volume of the output
  • Sequence of the output

It is not always desirable to print or display data as it is held on a computer. It should be decided as which form of the output is the most suitable.

For Example

  • Will decimal points need to be inserted
  • Should leading zeros be suppressed?

Output Media: In the next stage, it is to be decided that which medium is the most appropriate for the output. The main considerations when deciding about the output media are:

  • The suitability for the device to the particular application.
  • The need for a hard copy.
  • The response time required.
  • The location of the users
  • The software and hardware available. The outputs needed to be generated as a hot copy and as well as queries to be viewed on the screen. Keeping in view these outputs, the format for the output is taken from the outputs, which are currently being obtained after manual processing. The standard printer is to be used as output media for hard copies.

INPUT DESIGN

Input design is a part of the overall system design. The main objective during the input design is as follows:

  • To produce a cost-effective method of input.
  • To achieve the highest possible level of accuracy.
  • To ensure that the input is acceptable and understood by the user.

INPUT STAGES: The main input stages can be listed as below:

  • Data recording
  • Data transcription
  • Data conversion
  • Data verification
  • Data control
  • Data transmission
  • Data validation
  • Data correction

INPUT TYPES: It is necessary to determine the various types of inputs. Inputs can be categorized as follows:

  • External inputs, which are prime inputs for the system.
  • Internal inputs, which are user communications with the system.
  • Operational, which are the computer department’s communications to the system?
  • Interactive, which are inputs entered during a dialogue.

INPUT MEDIA: At this stage choice has to be made about the input media. To conclude about the input media consideration has to be given to;

  • Type of input
  • Flexibility of format
  • Speed
  • Accuracy
  • Verification methods
  • Rejection rates
  • Ease of correction
  • Storage and handling requirements
  • Security
  • Easy to use
  • Portability

Keeping in view the above description of the input types and input media, it can be said that most of the inputs are of the form of internal and interactive. As Input data is to be directly keyed in by the user, the keyboard can be considered to be the most suitable input device.


Performance Requirements

Performance is measured in terms of the output provided by the application.

Requirement specification plays an important part in the analysis of a system. Only when the requirement specifications are properly given is it possible to design a system that will fit into the required environment. It rests largely in the part of the users of the existing system to give the requirement specifications because they are the people who will finally use the system. This is because the requirements have to be known during the initial stages so that the system can be designed according to those requirements. It is very difficult to change the system once it has been designed, and on the other hand, designing a system that does not cater to the requirements of the user is of no use.

The requirement specification for any system can be broadly stated as given below:

  • The system should be able to interface with the existing system
  • The system should be accurate
  • The system should be better than the existing system

The existing system is completely dependent on the user to perform all the duties.