Dr. Syed Noman Hasany. Review of known methodologies Analysis of software requirements Real-time...
-
Upload
milo-lynch -
Category
Documents
-
view
228 -
download
0
Transcript of Dr. Syed Noman Hasany. Review of known methodologies Analysis of software requirements Real-time...
Review of known methodologies Analysis of software requirements Real-time software Software cost, quality, testing and measurements Object programming Knowledge engineering issues: knowledge
representation using rules, frames & logic, basics of logical inference, and basics of search.
4
What is it?
The process by which customer needs are understood and documented.
Example 1: [What?] The system shall allow users to withdraw cash.
Example 2:[How?] A sale item’s name and other attributes will be stored
in a hash table and updated each time any attribute changes.
Expresses “what” is to be built and NOT “how” it is to be built.
What makes a software project successful?o Meets stakeholder requirements
How can this be encouraged?o Traceability
Traceability in a nutshello Shows forward and backward relationships
linking requirements with design, implementation, test, and maintenance
o Know reasoning for everything and how to test
Part of requirement management process
Technique to provide relationship between requirement design and final implementation
How and why system development products satisfy stakeholders requirements
Ability to discover the history of every feature of a system
A quality factor
Many standards (2167-A then 498) require the development of traceability documents
Definition of traceability:o "The degree to which a relationship can be established
between two or more products of the development process, especially products having a predecessor-successor or master-subordinate relationship to one another; for example, the degree to which the requirements and design of a given software component match." (IEEE 610.12-1990)
Experience has shown that the ability to trace requirements through the stages of specification, architecture, design, implementation, and testing is a significant factor in assuring a quality software implementation.
A traceability relationship is a relationship between two project elements.
A traceability relationship is a type of dependency relationship between elements.
A dependency relationship states that a change in one element (A) may affect another element (B), but the reverse is not necessarily true.
Syst_components
Verification_procedRequirement Developed_for
DeriveAllocated_to
External_System
Performed_onsatisfy
Interface_with
After establishing all known need–feature relationships, there is again a need to examine the traceability matrix for potential indications of error.
If inspection of a row fails to detect any Xs, a possibility exists that no feature is yet defined to respond to a user need.
If inspection of a column fails to detect any Xs, a possibility exists that a feature has been included for which there is no defined product need.
Show the relationships between requirements or between requirements and other activities
Table can be set up to show links between several different elements
A good Example: http://www.softwaretestinghelp.com/requirements-traceability-matrix/
A simplified form of a traceability matrix may be used where, along with each requirement description, one or more lists of the identifiers of related requirements are maintained
Offer a simple user-guided procedure to "point and click" through the explicit relationships that may exist between two elements of the lifecycle.
Allow building large matrices required for more sophisticated projects and to examine the data automatically for many of the types of potential red flags.
Provide support for some of the implicit forms of traceability (e.g. use case to use-case realization), and provide navigational mechanisms and other methods to help assure that the implementation is correct as the application evolves.