Words of Wisdom
The problem is that we sow different
than what we expect to reap. You will reap what you sow.
If anyone does a righteous deed it ensures to the benefit of
his own soul; if he does evil it works against (His own soul). In the end will ye all be brought back to your Lord. AlQuran (45:15)
Definition
Requirement engineering is a sub discipline of
software engineering that is concerned with determining the goals, functions, and constraints of software systems. OR Requirements Engineering is a branch of computer science that encompasses tasks that go into determining the requirements of a new or altered system
Requirement Problem
What is the ultimate objective? Quality Software On time Within budget That meets users needs!!
Dont lose sight of the goal!
Requirement Problem
How do we measure: Quality User needs User need satisfaction
Requirement Problem
Each activity in the SW development process must
Why is RE important
Different types of customer COTS Bespoke (customized) software
Problem
Do we know who all the users are? Do users know what they want? Can users afford what they want?
approx 175000 projects. Average cost of development project Large company = $2322000 Medium company=$131000 Small company=$434000 31% projects gets cancelled before they get completed 52.7% of projects will coz 189% of their original estimates American companies spend $81 billion for cancelled projects $59 billion for software projects that will be completed but will exceed original time estimates
Lack of attention to the human and organizational aspects of IT. Poor project management. Poor articulation of user requirements. Inadequate attention to business needs and goals. Failure to involve users appropriately.
56% of defects due to Reqs & Design! Coding defects many but easy to fix
Continued
Cost of fixing defects Number of corporate studies document cost of fixing errors Cost progressively increases as SW process continues 100-fold increase in cost to fix in Maintenance vs. Requirements phase A Requirement defect propagates into design, coding, etc. defects
Conclusion
These broad-based studies suggest Key to successful SW project is
Ongoing communication with the user to elicit requirements Thorough documentation of requirements User validation of documented requirements Maintenance of requirements as they change Traceability of requirements throughout project to ensure theyre implemented