Do Your IT Projects Suffer from Requirements Clarity Issues?


example a check which generates an email notifying whether a data transfer has completed successfully.

  • Typical areas where housekeeping functions may be required are:
    • Data import/exports
    • Batch processing
    • Data synchronization
    • Periodic data archival
  • For each housekeeping function, are the following specified?:
    • Frequency of function being run
    • Any notification of errors/warnings
    • Actions on warnings/errors

Data validation checks which confirm whether data entered, updated and deleted in the system meets required rules.

  • Typical areas where data validation checks are required are:
    • User inserted, updated, deleted data
    • Data imports/exports
    • System generated, updated, deleted data
  • For each area of the system where data is validated, are the following specified?:
    • Valid values/ranges
    • Default values
    • Whether nulls allowed
    • Special characters allowed e.g.) punctuation
    • Calculations/derived values
    • Picklist/default values
    • Combinations of values allowed
    • Referential integrity checks on deletion
    • Audit trail requirements
    • Error handling/action if data is invalid

Business rules include special cases of system processing which are triggered only in certain system conditions or by certain data combinations. Business rules are not always fully articulated in requirements because they are sometimes assumed to be 'obvious' or are dependent on dynamic system conditions.

  • Typical areas where business rules may exist include:
    • Where data entered into the system means that from that point forward a specific subset of processing must apply e.g.) on a shopping website checkout page, choosing a 'credit' payment card type affects the required data entry fields and the type of anti-fraud checks available.
    • Where business decisions mean only certain values of data will be used, even though the system will permit a wider range of values. E.g.) In a travel industry system, the business decides to divide travel into packages of 3, 4, 7, 10 or 11 night durations. If you want to buy 14 nights of travel, the system must actually allocate you two 7 night packages.
  • For each business rule, are the following specified?:
    • Values/combinations of values that trigger rule specific processing
    • Subsequent processing tasks and life-cycle of valid states
    • Exception/error handling

Data import/exports where data is exchanged with other internal or external systems.

  • For each import/export are the following specified?:
    • Data specifications including valid input/output values, defaults, nulls
    • Handling of invalid values
    • Triggers for the import/export
    • Processing and calculation rules
    • Logging, correction and reload
    • Expected volumes; temporary space required; upload times and frequent
    • Checks for success; recovery from failure
    • Transport method used e.g.) FTP
    • Data source system availability and integrity checks

Batch/system processing functions where processing takes place on a periodic basis and may be triggered by a schedule within the system.

  • Typical areas where batch/system processing functions occur include:
    • Synchronization of data between locations
    • Data imports/exports and subsequent processing functions
    • Periodic tasks such as report creation, forecast generation
  • For each batch/system processing function, are the following specified?:
    • Triggers, frequency
    • Assumed live schedule of tasks, processing time windows e.g.) 5-8am
    • Checking /notification of failures, recovery from failures - minimum time to get back up to date if fails, for how long does it matter if job doesn't run
    • Optional tasks, special days (weekends, last day of month etc)

Reports where the system outputs data to screen or hard copy

  • For each report are the following specified?:
    • Layout/column order, formatting
    • Calculations/processing
    • User customizations available
    • Ad-hoc/batch run schedule
    • Processing requirements - frequency, duration, special days (Mondays, weekends, last day of month, etc?

Modes of operation where specific features are built into the system to enable or disable certain sets of functionality. Modes of operation are sometimes set up to protect users or substitute for functions that are not available in certain circumstances.

  • Typical areas for modes of operation include:
    • Restricted modes which offer cut down

About the author

AgileConnection is a TechWell community.

Through conferences, training, consulting, and online resources, TechWell helps you develop and deliver great software every day.