Web and Mobile Implicit Requirements

0.00 avg. rating (0% score) - 0 votes

Requirement analysis is the first and foremost step for planning phase itself. Let us see what wiki says about requirement analysis

Requirement analysis in systems engineering and software engineering, encompasses those tasks that go into determining the needs or conditions to meet for a new or altered product or project, taking account of the possibly conflicting requirements of the various stakeholders, analysing, documenting, validating and managing software or system requirements.

What?? Hold on, it is very complicated and cumbersome!!  Let’s make it simple, Requirements are the features that are desired in a product and Requirement analysis is where the scope of the system is defined.

Some of these requirements are explicit and the rest are implicit Requirements.

Explicit (stated clearly and in detail, leaving no room for confusion or doubt)

These requirements are the easiest to capture. They are usually supported by tons of Documentation, or for that matter, even a legacy system and screenshots!

Implicit (suggested though not directly expressed)

Implicit requirements are the hidden or assumed requirements which are usually not documented. They evolve basis variations in technology or market conditions. Client/ Project managers usually expect these to be delivered and hence may not feel the need to explicitly mention them in the Requirements.

So the best solution for meeting Client/Project manager’s expectation without leaving out the obvious is to Document Implicit Requirements.

implicit

So now the questions are “What are implicit requirements?” and “how will you gather them?”

Implicit Requirements are nothing but obvious things.

Implicit requirements are gathered from experience and proper understanding of the application, domain and client needs. Domain experts (Testing/Dev engineers/Product managers) can help in identifying the potential implicit requirements.

Testing Team @Naukri identified and finalized implicit Requirements on the basis of our technology, domain knowledge and client needs, post discussions with Dev & Product teams.

Implicit Requirements Collection @ Naukri

  • Navigation through keyboard should work on layers/lightboxes and not on the background screen.
  • Whenever a layer is opened after clicking a link/tab/button, the back screen should get completely disabled and grey. No link/tab/button should work on that.
  • In a text field, on left mouse click the cursor should appear in blinking mode inside the text box.
  • In a password field, the entered text should be hidden (like ******) until mentioned to be explicitly shown.
  • The default placeholder text appearing inside the text boxes should disappear on mouse click inside the box.
  • The default placeholder text appearing inside the text boxes should re-appear if the user exits it without filling in anything.
  • Default placeholder text should not be taken as an acceptable value while submitting the form.
  • After an error is thrown on a page, the focus should be there on the first field where the error has come.
  • Company Logo should be clickable unless stated otherwise.
  • Customized drop downs should also support up and down arrow functionality just like the default drop downs.
  • Dropdown width should be enough to accommodate the longest value that is supposed to come within it but in case the same cannot be done due to space constraint then mouse over should show the complete value. Suppose if space doesn’t allow us to show the complete dropdown textbox , dropdown should get expanded on mouse click .
  • If there is truncated text anywhere on the site then the whole text should be displayed upon mouse hover (tooltip).
  • Truncated text on the site should always be shown followed by ellipsis. (…)
  • In case of drop down(Min – Max) If user selects any value in Min field then the values in the Max field should start from over & above the Min field (Conditional).
  • When a link/image is selected using Tab then only the area of that image/text should be selected & not the surroundings unless stated otherwise in the design specifications.
  • If there is any error on a field then the error message should start right below that box unless stated otherwise.
  • Hitting the enter key in any of the text boxes of a page should initiate page submission.
  • If a user selects a keyword using the suggestor & hits Enter, then the page should not get submitted. Only the selected keyword should get entered in the box.
  • If a user changes the search sorting criteria from Relevance to Freshness on the 10th page then user should get moved to the 1st page.
  • Mandatory fields should always be marked with an asterisk.
  • During pagination, the “Previous” option should be available once user navigates to Page1 and the “Next” option should not be available on the last page.
  • In pagination – the page number on which we are currently on should not be clickable.
  • If a user opens a help text on a page & clicks anywhere else on that page then the help text should get hidden.
  • Disabled values/text/Dropdown should be in greyed out state.
  • As soon as a user lands onto a new page then the help text (if available) of the first focus field should open up.
  • When a “+”sign is clicked to open the list, then the “+” sign should get changed to “-” sign.
  • Copy pasting values into or from the password field should not be allowed.
  • Copyrights information in the footer at the bottom of the page should always display the current year.
  • Clicking on an email id should open the default mail client.
  • The email address that gets populated in the To field after clicking any email address from the site should be relevant/correct.
  • Text on buttons should be centre-middle aligned unless specified otherwise
  • Spacing around the text on a button should be optimal
  • Similar elements on a page should be similarly aligned and placed. For example, if we have the pagination bar available on top and bottom of the page then the spacing on this band & look/feel should be the same at both the places.
  • All page/section headings should be similarly placed and should have the same FONT type/size42. Any text entered in text box must be trimmed for spaces in the beginning and end
  • User should not be allowed to paste copied email id in Confirm email id box.
  • Field Labels should be bottom aligned with the input field unless stated otherwise in the design specifications
  • Values of Drop down should be visible to User once opened irrespective of placement of Dropdown i.e. if we have drop down at the bottom of the page, values should open above the drop down not below the dropdown.
  • Check box used for Terms and conditions should be in deselected state by default, unless stated otherwise.
  • In case of error message, field showing error should get highlighted.
  • Two confirmation/Error messages should not be displayed at the same time on any page.
  • Java Script Disable case: Message to enable JS should be displayed on each page by default if is site is opened in JS disabled browser.
  • Java Script Disable case: Button used for submitting data on any form should be in disabled state.
  • Any icon getting used to denote any functionality on page should be added in legends of that page.
  • No validations related to length or datatype should be applied on Username and password fields of login page. Primarily because the validations etc change/evolve over a period of time and thus legacy data will not always confirm with the existing validations.
  • Same validations/business logic should be applied at Client, server, app and services end.
  • Session management: Session should not be maintained by copying logged in case URL directly into a any new browser window.
  • If results page has any filter applied, the filter should be retained on pagination.
  • Alt text should be specified for images.
  • If an error occurs while submitting a form, the already filled information should not be lost unless specified explicitly.
  • Non mandatory fields should also have validations.
  • Mail should always have an ‘ ers Unsubscribe’ link.
  • In case of url change from X to Y, 301 redirection should be applied to old url .
  • Confirmation from the user should always be taken before deleting any data.

Mobile App Specific  Implicit Requirements

  • On clicking back button app should return to its previous state.
  • Page Transitions should be symmetric and smooth for entire app.
  • Action buttons on keypad: If any textbox is consecutively followed by another textbox, action button should say ‘Done’ otherwise ‘Next’ and for text area it should be followed by ‘return’
  • Keyboard for any field should be specific to its input type. For example Number pad to be displayed on a field when it has only numeric input. Keyboard for email fields should be email specific.(i.e it should contain @, .com buttons).
  • User should be shown network status (offline, weak network ..) whenever required
  • While Logging out from an app, cache and logout tables that are created for only logged in case should get clear.
  • On uninstall all app related files should get deleted.

One thought on “Web and Mobile Implicit Requirements

  1. Very well put with clear and crisp explanations ! Its a good read , informative and useful.

Comments are closed.