Interface Analysis Explored

Interface analysis can be focused towards multiple levels of the requirements lifecycle including elicitation, analysis, validation, traceability and even change management! It is common for individuals to have a knee jerk reaction to the term "interface analysis" in which they think it is centered around user interactions. This is NOT the case, interface analysis is centered around the connection between two or more entities. These entity interactions might be:

• user to system
• system to user
• internal system to external system
• external system to internal system
• one subsystem to a different subsystem
• and possibly even other options 

This is from the start line of the 2016 Mercer Island Half Marathon. A great course to run, although it is a bit hilly! This was my second time for this race and continue to be impressed by how well it is organized and managed!

The primary focus for interface analysis includes: 
• Inputs to the interface, outputs from the interface
• Trigger events that will use the interface
• Validations needed to support inputs & outputs

and this can have all kinds of value in determining the classic five W elements of who, what, when, where and why!

So interface analysis is NOT just about people and NOT just about the system. It can involve both manual and automated processes used in combinations of processes, people (more accurately their role in the process) and the associated systems.

In many ways, prototyping is a valid form of interface analysis. One clear instance of where a prototype drives interface analysis is when the organization requires specific design documentation such as a SRS (software requirement specification) or SSD (system-subsystem design document). These are normally text documents that show how the developer think they are going to build the system before they kickoff development. You will tend to find these documents in waterfall run projects but that does not mean that agile methods are excluded. Agile is a fan favorite of most technical teams and every SRS/SDD that I've worked on was accomplished via a backlog and iterative cycles. 

A high level kindred technique to interface analysis is the ecosystem map or the context diagram. These are high level documents that shows all the relevant systems under analysis, their relationships to each other and often how data relevant to the analysis effort is passed between them. In a case like this, you might have multiple small interface analysis touch points included within the map. The ecosystem map will likely have the most general information about each interface represented but it might support a drill down feature for granular details.

© 2016 Dwayne Wright