Process Specifications

ICT2621 - Structured Systems Analysis and Design · Structured Analysis Techniques

Process Specifications

Process specifications provide detailed descriptions of how a process operates within a system. They explain the inputs, outputs, and the tasks that the process must perform. This topic will cover the importance of process specifications, the different types, and how to create them effectively.

Understanding Process Specifications

A process specification is a document that outlines the exact requirements of a specific process in an information system. It is used to clarify the functions of a system and to ensure that developers and stakeholders have a common understanding of what is required.

Process specifications are often derived from Data Flow Diagrams (DFDs) and Entity-Relationship Diagrams (ERDs). While DFDs illustrate the flow of data and ERDs show the relationships between data entities, process specifications detail how data is processed.

Remember: Process specifications should be clear, concise, and unambiguous to avoid misinterpretation.

Components of Process Specifications

Process specifications typically include the following components:

  • Process Name: A unique identifier for the process.
  • Inputs: The data or information required to perform the process.
  • Outputs: The result produced by the process.
  • Process Description: A detailed explanation of how the process works.
  • Preconditions: Conditions that must be true before the process can be executed.
  • Postconditions: Conditions that must be true after the process has been executed.
  • Error Handling: How errors are managed within the process.

Types of Process Specifications

There are several types of process specifications, including:

  1. Structured English: A way of writing specifications using simple, clear language and structured sentences.
  2. Decision Tables: A tabular method for specifying different conditions and their corresponding actions.
  3. Flowcharts: Visual representations of the process flow, showing steps, decisions, and outputs.

Creating Process Specifications

To create effective process specifications, follow these steps:

  1. Identify the Process: Determine which process you are specifying.
  2. Gather Requirements: Collect information about the inputs, outputs, and tasks involved in the process.
  3. Define the Components: Clearly outline the process name, inputs, outputs, and other components as described above.
  4. Use Structured English: Write the process description using structured English to ensure clarity.
  5. Review and Validate: Have stakeholders review the specification to ensure it meets their needs.

Example of a Process Specification

Let’s create a process specification for a simple order processing system.

Process Name

Order Processing

Inputs

  • Customer Order Form
  • Inventory Data

Outputs

  • Order Confirmation
  • Updated Inventory Data

Process Description

The system receives a customer order form. It checks the inventory data to ensure the items are in stock. If the items are available, the system generates an order confirmation and updates the inventory data. If items are not available, an error message is generated.

Preconditions

The customer must have filled out the order form correctly.

Postconditions

The order confirmation is sent to the customer, and inventory data is updated.

Error Handling

If the items are not available, the system informs the customer and prompts them to select alternative items.

Watch out: Ensure that all inputs and outputs are clearly defined. Ambiguity can lead to errors in the system.

Using Decision Tables

Decision tables can also be used to specify processes, especially when there are multiple conditions that affect the outcome. A decision table consists of conditions and actions corresponding to those conditions.

Example of a Decision Table

For the order processing example, we can create a decision table as follows:

ConditionAction
Items AvailableGenerate Order Confirmation
Items Not AvailableGenerate Error Message

This table helps to clarify what actions to take based on the conditions present.

Flowcharts for Process Specifications

Flowcharts can visually represent the flow of the process. They are useful for understanding complex processes and can help in identifying potential errors or bottlenecks.

Example of a Flowchart

A flowchart for the order processing system might look like this:

Start -> Receive Order Form -> Check Inventory -> Items Available? -> Yes -> Generate Confirmation -> Update Inventory -> End

If the items are not available, the flowchart would direct to an error message instead.

Tip: Use flowcharts to identify the sequence of steps in a process. This can help in understanding how the process operates.

Common Mistakes in Process Specifications

When creating process specifications, students often make the following mistakes:

  • Not defining all inputs and outputs clearly.
  • Using complex language instead of structured English.
  • Failing to validate the specifications with stakeholders.

Watch out: Always validate your process specifications with stakeholders to ensure they meet the requirements.

Summary

  • Process specifications detail how a process operates within a system.
  • They include components such as process name, inputs, outputs, and process description.
  • Types of process specifications include structured English, decision tables, and flowcharts.
  • Creating effective specifications involves identifying processes, gathering requirements, defining components, and reviewing with stakeholders.

Check your understanding

  • What are the main components of a process specification?
  • How can decision tables be useful in process specifications?
  • What common mistakes should you avoid when creating process specifications?
  • Explain the importance of validating process specifications with stakeholders.
    Process Specifications – ICT2621 - Structured Systems Analysis and Design notes | Tyro Study