1 / 45

Software Requirements

Software Requirements. Course Requirements. The Problem. I know you think you understand what I said, but what you don’t understand is what I said is not what I mean. Deciding What To Build.

damali
Download Presentation

Software Requirements

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Software Requirements

  2. Course Requirements

  3. The Problem I know you think you understand what I said, but what you don’t understand is what I said is not what I mean.

  4. Deciding What To Build The hardest single part of building a software system is deciding what to build. No part of the work so cripples the resulting system if done wrong. No other part is more difficult to rectify later.” Fred Brooks

  5. Deciding What to Build The seeds of major software disasters are usually sown in the first three months of commencing the software project. • Capers Jones

  6. What is Requirement Analysis? It is the elicitation, analysis, specification, and validation of software requirements

  7. What are Requirements? • Product requirements • Functional requirements • Nonfunctional requirements • Process requirements

  8. Requirements must be quantifiable • Measurable? • “It must work well” • “It must flag students with overloads” • “It must be reliable” • “it must be user-friendly” • “it must be accurate to within 1%”

  9. Why is requirements gathering so difficult? The functioning of users, business processes, and devices is typically complex. By extension, therefore, the requirements on particular software are typically a complex combination of requirements from different people at different levels of an organization and from the environment in which the software will operate. • SWEBOK 2-1

  10. Stakeholders • Who are the stakeholders?

  11. Stakeholders • Who are the stakeholders?

  12. Stakeholders Put three stakeholders in a room and ask them what kind of system they want. You are likely to get four or more different opinions. • Author unknown

  13. Requirements Elicitation • What is requirements elicitation? • What makes it challenging? • Where does the data come from?

  14. Requirements Elicitation • What is requirements elicitation? • What makes it challenging? • Where does the data come from?

  15. Requirements Elicitation • What is requirements elicitation? • What makes it challenging? • Where does the data come from?

  16. Requirements Elicitation • What are some data gathering techniques? • Not including torture

  17. Requirement Elicitation Final products • Statement of need and feasibility • Statement of scope • List of stakeholders • Description of technical environment of system • List of requirements (organized by function) • Usage scenarios and prototypes

  18. Requirements Analysis [Analysis] is frustrating, full of complex interpersonal relationships, indefinite, and difficult. In a word, it is fascinating. Once you’re hooked, the old easy pleasures of system building are never again enough to satisfy you. Tom DeMarco

  19. What is the purpose of Requirements Analysis?

  20. Requirements Elicitation and Analysis

  21. How can we understand the requirements well? Through the use of models

  22. Use-Cases

  23. Use-Cases Activity

  24. Is This Grace? For we have been consumed by Your anger And by Your wrath we have been dismayed. You have placed our iniquities before You, Our secret sins in the light of Your presence. For all our days have declined in Your fury; We have finished our years like a sigh. - Psalms 90:7-9

  25. God’s Extreme Grace For their mother has played the harlot; She who conceived them has acted shamefully. For she said, “I will go after my lovers, Who give me my bread and my water, My wool and my flax, my oil and my drink.” Therefore, behold, I will hedge up her way with thorns, And I will build a wall against her so that she cannot find her paths. She will pursue her lovers, but she will not overtake them; And she will seek them, but will not find them. Then she will say, “I will go back to my first husband, For it was better for me then than now!” • Hosea 2:5-7

  26. The Blessing of Curses Sometimes the only blessing that we allow God to give us is curses

  27. Wrath: God’s Extreme Grace • For we will surely die and are like water spilled on the ground which cannot be gathered up again. Yet God does not take away life, but plans ways so that the banished one will not be cast out from him. • 2 Samuel 14:14 • Those whom I love, I reprove and discipline; therefore be zealous and repent. • Revalation 3:19 • Behold, I will gather them out of all the lands to which I have driven them in My anger, in My wrath and in great indignation; and I will bring them back to this place and make them dwell in safety. • Jeremiah 32:37

  28. Wrath: God’s Extreme Grace The devil’s curses destroy but God’s wrath purifies

  29. Definition of Wrath Wrath is God packaging up the curses that we have chosen for ourselves in such a way that they serve to help us come back to Him Wrath is God using the devil’s curses to bless us

  30. Definition of Wrath Come, let us return to the Lord. He has torn us to pieces but he will heal us; he has injured us but he will bind up our wounds. - Hosea 6:1

  31. Activity Diagrams Flowchart diagrams that give a visual representation of the flow of interaction in use-case scenarios

  32. Swimlane Diagrams

  33. Class diagrams Object-oriented analysis

  34. CRC models

  35. Data Flow Diagrams

  36. Control Flow Diagrams

  37. Processing Narratives

  38. State Diagrams

  39. Sequence Diagrams

  40. Software Requirements Specification • The System Definition Document • The System Requirements Specification • The Software Requirements Specification

  41. Software Requirements Specification • The System Definition Document • The System Requirements Specification • The Software Requirements Specification

  42. Requirements Validation

  43. Practical Considerations • Iterative nature of requirements process • Change management • Requirements attributes • Requirement tracing • Measuring requirements

More Related