Address: http://www.microtoolsinc.com/Howsrs.php
How to Write a software requirements specification
How to compile software requirement specifications
By Robert japenga
__________________________________________________________________________________________
What is the difference between a system specification and a software specification?
What is the difference between the system specification and the software specification?
Very often we find that companies do not understand the difference between a system specification and a software specification. Important issues are not defined up front and mechanical, electronic and software designers do not really know what
Their requirements are.
Generally, we find that some companies do not know the differences between the system specification and Software specification. At the beginning, there was no definition of important images. mechanical, electrical, and software designers did not really know what they needed.
The following is a High Level list of requirements that shocould be addressed in a system specification:
- Define the functions of the system
- Define the hardware/software functional partitioning
- Define the performance specification
- Define the hardware/software performance partitioning
- Define safety requirements
- Define the user interface (a good user's manual is often an overlooked part of the system specification. usage of our customers have not even considered that this is the right time to write the user's manual .)
- Provide installation drawings/instructions.
- Provide interface control drawings (ICD internal, external I/O)
The following lists the requirements that need to be paid attention to in the system specifications at a higher level:
- Define system functions
- Define hardware/software features
- Define performance specifications
- Define hardware/software performance
- Define security requirements
- Define user interfaces (user manuals are often ignored in system specifications, and many of our customers do not even consider writing user manuals at this time)
- Allows you to install images or commands.
- Provide interface control drawings (ICD, external I/O)
One job of the system specification is to define the full functionality of the system. in advance systems we work on, some functionality is saved med in hardware and some in software. it is the job of the system specification to define the full
Functionality and like the performance requirements, to set in motion the trade-offs and preliminary design studies to allocate these functions to the different disciplines (mechanical, electrical, software ).
A task in the system specification is to define all the functions of the system. In many of the systems we work with, some functions are implemented by hardware, and some functions are implemented by software. The system specifications need to define all functions, such as performance requirements, and to balance and preliminary design, to allocate these functions to different modules (mechanical, electrical, and software ).
Another function of the system specification is to specify performance. for example, if the system is required to move a mechanic to a participant position accurate to a repeatability of 1 millimeter, that is a system's requirement. some portion
Of that repeatability specification will belong to the mechanical hardware, some to the servo amplifier and electronics and some to the software. it is the job of the system specification to provide that requirement and to set in motion the partitioning
Mechanical hardware, electronics, and software. very often the system specification will leave this partitioning until later when you learn more about the system and certain factors are traded off (for example, if we do this in software we wowould need to run
The processor clock at 40 MHz. however, if we did this function in hardware, We cocould run the processor clock at 12 MHz ). [This implies that a certain level of research or even prototyping and benchmarking needs to be done to create a system spec. I think
It is useful to say that explicitly.]
Another function of the system specification is to standardize performance. For example, if the system needs to move a mechanical device to a specific position and its accuracy requirement is 1 ms (repeatable), then this is a system requirement. Some of the repeatability specifications are mechanical hardware, some are servo amplifiers, and some are software. The purpose of the system specification is to provide a requirement for separating functional areas of mechanical hardware, electrical, and software. The system specification usually delays this work and learns more about the balance between the system and specific factors. (For example, if it is implemented through software, we know that the clock frequency of the processor running the software is 40 MHz. However, if we use hardware, we can use a 12 MHz processor. [This means that feature-level research may be required when writing system specifications, or you even need prototypes and benchmarks. I think it is necessary to make it clear here.]
However, for all practical purposes, most of the systems we are involved with in small to medium size companies, combine the software and the systems documents. this is done primarily because most of the complexity is in the software. when
Hardware is used to meet a functional requirement, it often is something that the software wants to be well known ented. very often, the software is called upon to meet the system requirement with the hardware you have. very often, there is not a Systems Department
To drive the project and the software engineers become the systems engineers. for small projects, this is workable even if not ideal. in this case, the specification shocould make clear which requirements are software, which are hardware, and which are mechanical.
However, in fact, the software and hardware documents of most small and medium sized companies we are dealing with are combined. The main reason is that the complexity of the system is mainly at the software level. When the hardware meets a functional requirement, it is generally required to describe the software through the documentation. Generally, hardware is used to implement system requirements through software. Generally, the software engineer becomes a system engineer because there is no system department to drive the project. Even if this is not ideal for small projects, it is still feasible. In this case, the specifications should describe the software requirements, hardware requirements, and mechanical requirements.
How to compile software requirement specifications (1)
How to compile software requirement specifications (2)
How to compile software requirement specifications (3)
How to compile software requirement specifications (4)
How to compile software requirement specifications (5)
How to compile software requirement specifications (6)
How to compile software requirement specifications (7)