I try to identify things that are the same, or similar, and things that are different. Building off of what Sarah replied, looking at the existing application or a competitor application.
Are there different roles with different access? Do different users have different views? For example, an online menu could have a gluten-free version, which only shows the items marked āgf.ā Or applying a senior citizen discount on the price.
Are there thresholds to consider? For example, first time user has to accept a EULA. Failing login attempt three times locks the access. Quotes over $100,000 require manager approval.
Are there any date implications? Does something expire in a year? If so, what happens then? Is the cost or refund prorated for a partial year? Is there a grace period? What is the date format? (International dates are stored DD/MM/YY, versus U.S. of MM/DD/YY.)
Covering CRUD - Create, Read, Update (Edit) and Delete. When uploading files, what if nothing changes? Does the app take the time to process all of the imported data if it doesnāt need to?
Are there any time-related processes? For example, report aggregates run overnight? Bills generated at the end of the month? Tax documents generated at the end of the year?
Boundaries. For numbers, consider null, 0, 1, 1+, fractions, negative numbers, whatever the limit is, and limit + 1.
Any special characters (like El Ćino) in the text?
State changes. Toggling something On and Off. Do states persist or reset? For example, how does an expired account become active again? What value is used if something is toggled back On? Does it revert to default or was a custom value saved and is now displayed?
Looking at values in the database. Are numbers stored as strings? If so, how is sorting handled? (Strings would sort like āPart 1ā, āPart 10ā, āPart 2āā¦) Are numbers stored at floating point? How much precision is retained?