REQUIREMENTS SPECIFICATION - csactor

csactor

computer science , software engineering ,information system and information technology lesson series like data structure and algorithm , computer networking , programming , database , web development , operating system , information system , digital marketing and business study.

Sunday, August 19, 2018

REQUIREMENTS SPECIFICATION

        
        REQUIREMENTS SPECIFICATION


REQUIREMENT SPECIFICATION



â–ªThe process of writing the user and system requirements in a requirements document. 

â–ª User requirements have to be understandable by end-users and customers who do not have a technical background. 

â–ªSystem requirements are more detailed requirements and may include more technical information. 

â–ªThe requirements may be part of a contract for the system development 

â–ª It is therefore important that these are as complete as possible.



REQUIREMENT AND DESIGN


â–ªIn principle, requirements should state what the system should do and the design should describe how it does this. 



â–ªIn practice, requirements and design are inseparable 

    
     â–ª A system architecture may be designed to structure the requirements; 
     â–ª The system may inter-operate with other systems that generate design requirements; 
     â–ª The use of a specific architecture to satisfy nonfunctional requirements may be a domain requirement. 
     â–ª This may be the consequence of a regulatory requirement.


NATURAL LANGUAGE SPECIFICATION

â–ªRequirements are written as natural language sentences supplemented by diagrams and tables. 

â–ªNL used for writing requirements because it is expressive, intuitive and universal. This means that the requirements  can be understood by clients, developers and customers.


PROBLEMS WITH NATURAL LANGUAGES
â–ªLack of clarity 
        â–ª Precision is difficult without making the document difficult to read. 

â–ªRequirements confusion 
        â–ª Functional and non-functional requirements tend to be mixed-up. 

â–ªRequirements amalgamation 
       â–ª Several different requirements may be expressed together.


ALTERNATIVES FOR NATURAL LANGUAGES



1. Pseudo code 

             â–ª Requirements may be defined using a language like a programming language but with more flexibility of expression. Such a language is called pseudo code.



2.Graphical languages 
  •                    
 3. Mathematical notation

                  


Representation of a finite-state machine; this example shows one that determines whether a binary number has an even number of 0s, where S1 is an accepting state.

structured specification

â–ªAn approach to writing requirements where the freedom of the requirements writer is limited and requirements are written in a standard way. 

â–ªThis works well for some types of requirements e.g. requirements for embedded control system but is sometimes too rigid for writing business system requirements.


from based specification

â–ªDefinition of the function or entity. 

â–ªDescription of inputs and where they come from. 

â–ªDescription of outputs and where they go to. 

â–ªInformation about the information needed for the computation and other entities used. 

â–ªDescription of the action to be taken. 

â–ªPre and post conditions (if appropriate). 

â–ªThe side effects (if any) of the function.


Tabular specification


â–ª Used to supplement natural language. 

â–ª Particularly useful when you have to define a number of possible alternative courses of action. 

â–ªFor example, the insulin pump systems bases its computations on the rate of change of blood sugar level and the tabular specification explains how to calculate the insulin requirement for different scenarios.



REQUIREMENTS CHANGE 

changing requirement

â–ªThe business and technical environment of the system always changes after installation. 

â–ªNew software, hardware may be introduced, it may be necessary to interface the system with other systems, business priorities may change (with consequent changes in the system support required), and new legislation and regulations may be introduced that the system must necessarily abide by. 


â–ªThe people who pay for a system and the users of that system are rarely the same people. 



â–ª System customers impose requirements because of organizational and budgetary constraints. These may conflict with enduser requirements and, after delivery, new features may have to be added for user support if the system is to meet its goals.

REQUIREMENT EVOLUTION



REQUIREMENT MANAGMENT

â–ª Requirements management is the process of managing changing requirements during the requirements engineering process and system development. 

â–ª New requirements emerge as a system is being developed and after it has gone into use. 

â–ª You need to keep track of individual requirements and maintain links between dependent requirements so that you can assess the impact of requirements changes. You need to establish a formal process for making change proposals and linking these to system requirements.


REQUIREMENT MANAGEMENT PLANNING



â–ª Establishes the level of requirements management detail that is required. 

â–ª Requirements management decisions:

          â–ª Requirements identification Each requirement must be uniquely identified so that it can be cross-referenced with other requirements. 

         â–ª A change management process This is the set of activities that assess the impact and cost of changes. I discuss this process in more detail in the following section. 

         â–ª Traceability policiesThese policies define the relationships between each requirement and between the requirements and the system design that should be recorded. 

        â–ª Tool support Tools that may be used range from specialist requirements management systems to spreadsheets and simple database systems.


REQUIREMENT CHANGE MANAGMENT




No comments:

Post a Comment