Presentation is loading. Please wait.

Presentation is loading. Please wait.

Requirements solicitation

Similar presentations


Presentation on theme: "Requirements solicitation"— Presentation transcript:

1 Requirements solicitation
Find out what the customer wants Write down the requirements: Problem statement Use cases Screen layouts We will focus on this, but much more is needed in a real project. An entire course (CSSE 371) is devoted to project requirements! Also, you will be your own customer in this course. You will obtain real customers in higher-level courses. Fundamentals of Software Development 1

2 Problem Statement Concise description of the problem. For example,
A palindrome is a number that is the same whether it is read from left-to-right or right-to-left. For example, 121 and are both palindromes. Create a program Transform which takes a number N that is to be transformed and returns a number that is the resultant palindrome from this process. Of course if N is already a palindrome, return it without changing it. (Source: Fundamentals of Software Development 1

3 Algorithm Nearly every integer can be transformed into a palindrome by reversing its digits and adding it to the original number. If that does not create a palindrome, add the reverse of the new number to itself. A palindrome is created by repeating the process of reversing the number and adding it to itself until the number is a palindrome. Though it is theorized that all numbers can be transformed to palindromes in this way, some numbers do not converge in a reasonable amount of time. So if the method finds that the resultant palindrome must be greater than 1,000,000,000, return the special value -1 instead. Fundamentals of Software Development 1

4 Use Cases Sample interaction with the program.
EXAMPLES Worked examples: Example 1: N = = = 121, a palindrome. Return 121 Example 2: N = = 66, a palindrome. Return 66 Further examples: Example 3: N = 11, return 11 Example 4: N = 607, return Example 5: N = 196, return -1 Fundamentals of Software Development 1

5 Screen layouts Screen layouts: An annotated series of pictures
that explains how the product should look and behave You have enough detail if you could: Give your screen layouts to a software developer Get back what you had in mind For your screen layouts in this class, focus on behavior and basic layout, not beauty The next slides show screen layouts for an enhanced version of BallWorlds The screen layouts are not just the pictures (they include the annotation) Fundamentals of Software Development 1

6 Screen layouts, page 1 Start screen
When the application starts, a splash screen appears that shows a cool picture (details TBA) and the authors of the application Two buttons allow the user to continue Cool picture (details TBA) BallsWorlds was written by: Mickey Mouse Donald Duck Goofy and other characters I want to set some options I’m impatient – let’s start playing! Fundamentals of Software Development 1

7 Screen layouts, page 2 This shows 3 “worlds of balls” – there might be one or more worlds. Each world has “balls” of various kinds: colors, sizes, etc. Some balls move, bounce, shrink/grow, explode, etc. The worlds are independent of each other. Dud Exploder etc Same as above File Options Start over BallWorlds Pressing a button creates a Ball of that type in the world to the left of the button. Fundamentals of Software Development 1

8 Screen layouts, page 3 The File menu offers items for the following, with the same keyboard shortcuts as in Microsoft Word: New (same as start over) Save (brings up a standard File ~ Save option box the first time, thereafter saves to the chosen file) Save As (brings up a standard File ~ Save As option box) The Options menu has two items: Number of worlds: a drop-down box offering 1 to 6 worlds Options panel: brings up the Options panel (see its screen layout for details) The Start Over has a single option that, when selected, restarts the game with the same number of worlds but no balls. Fundamentals of Software Development 1

9 Screen layouts, page 4 Various errors in the play bring up pop-up dialogs that explain the error: If the user presses a button for a class that does not exist If the pressed button has a class that lacks a constructor of the proper type [More messages to be added later] The Options panel looks like this: [details to be added later] Fundamentals of Software Development 1


Download ppt "Requirements solicitation"

Similar presentations


Ads by Google