Flowcharting, pseudocoding, and process design
The purpose of “flowcharts” is to represent graphically the logical decisions and progression of steps in the physical completion of a task. As such, flowcharts are the lowest level of decomposition. The flowchart specifies the order in which tasks are performed. As such anyone who knows about the function can recognize immediately changes to the actual performance of work. Since here the logic of the work is tested, it is here the analyst identifies and documents changes to the physical work flow of people or the design of a computer program.
In a large system the flow charting steps may be complex and the analyst may opt to represent the system with algebra, structured English or pseudocode, or some type of decision tree or decision table.
When describing a complicated system to others it may be useful to use hierarchy charts or structure charts
[described later]. But for the information systems analysis, the best options are flow charts and pseudocoding/Structured English. [Note that some authors see pseudocoding as a separating activity from Structured
English, others see the two as the same function with different names.]
Before beginning the flow charts, the analyst must have a complete understanding of the entire process and participants (context level), the subroutines and their interdependencies (level-n diagrams), the data (data dictionary, inputs/outputs) and transformation of data (DFDs). The flow chart documents the flow of logic, control and the actual data through a routine or procedure. These activity completes the logical part of analysis.
From here we proceed to integrate the whole decomposed process into something new - the revised, more efficient and effective system. After flowcharting, we examine how the pieces fit back together and express this in a system flowchart. [Don’t confuse the two types of flowcharting - the system flowchart represents the physical system; the flowcharting at the end of process decomposition represents the logical (think
“virtual”) system.]
Symbol set
There are seven commonly used symbols in flowcharting. However, be aware that people can create their own symbol set and many software products designed to help manage systems analysis have blurred the line between activities, using the same types of symbols for all aspects of analysis. We’ll consider those common symbols because they represent the main concepts.
1.
Terminator: marks the beginning and end of a flowchart
2.
Process: indicates that an operation changed or manipulated the data in some way
3.
Data or input/output: an operation that inputs or outputs data
4.
Decision: a logical decision point (e.g., if, then; true/false)
5.
On-page connector: the logic continues at another place on the same page
6.
Off-page connector: the logic continues on a different page
/Users/gbenoit/Documents/LIS486 - Systems Analysis/Spring2013/InfoSystemsDesign-FlowCharting.rtf 12/30/12 7:41 PM
Systems Analysis
7.
Pseudocoding & Flowcharting
2
Predefined process: a predefined process or subroutine (similar to a predefined function or process in database programming).
As a general rule, a flowchart has a single entry and exit point. In procedural programming (such as Perl 4), it is fairly easy to create such charts. Object oriented programming, on the other hand, can become completed very quickly and using single-entry, single-exit logic may be difficult, at times impossible. As a consequence, another kind of language has developed, Uniform Modeling Language (UML).
Program logic has three patterns: sequence, decision, and repetition.
Sequence:
A decision block implies IF-THEN-ELSE. A condition (“it’s the case that something is true …”, or
“while x is true …”) is tested: if the condition is true, the logic associated with the “THEN” branch is performed while the ELSE block is skipped. If the condition is false, then the ELSE logic