Program Design and Development Facilitation skills offer immediate, practical benefits to any group process. As facilitator, your role is to set the agenda, encourage participation, and guide the pace of the meeting. Use these Dale Carnegie Training® strategies to help make your meeting a success. You can provide handouts to focus the discussion and give attendees a place to record their ideas. If you print handouts with three slides per page, PowerPoint will automatically include blank lines for your meeting participants to take notes.
Steps In Program Development Define the Problem Inputs, outputs, processes Outline the solution Major steps Major subtasks Major control structures (repetition loops) Major variables Mainline Logic
Steps in PD Continued Develop Algorithm Test Algorithm Using pseudocode and flowcharts Test Algorithm Code into programming language Run complier Document and maintain the program
Types of Programming Structured/Top Down Programming Modular Design Starting with solution and working into more complex details Modular Design Grouping tasks together by function Structure Theorem Elimination of GOTO, replacement with IF-THEN-ELSE
Algorithm Definition Lists the steps involved in accomplishing a task Written in simple english and not a formal document An algorithm must be Lucid, precise, and unambiguous Give the correct solution in all cases Eventually end
Pseudocode Essentially it is structured english and formalized to look like high-level computer languages Statements are written in simple english Each instruction is written on a single line Keywords and indentations are used to signify control structures Each set of instructions is written from top to bottom with only one entry and one exit Groups of statements may be formed into modules and that group given a name
Program Data Variables, constants, and literals Integer - 16 Real Byte length - 8 Short integer - 32 Long integer - 64 Real Float – single precision Double – double precision Character Boolean
Data Structures Record File Array String
Basic Computer Operations A computer can receive information “READ” and “GET” A computer can put out information “PRINT”, “WRITE”, “PUT”, “OUTPUT”, and “DISPLAY” A computer can perform arithmetic actions + for ADD - for SUBTRACT * for MULTIPLY / for DIVIDE () for PARENTHESES
Basic Computer Options Cont. A computer can assign a value to a variable or memory To give an initial value use “INITALISE” or “SET” To assign a value use ‘=‘ To keep a piece of information for later use ‘SAVE’ or ‘STORE’ A computer can compare variables and select one of two alternative actions Use of IT THEN and ELSE Actually it can select multiple actions A computer can repeat a group of actions DOWHILE
The Structure Theorem Sequence Selection Repetition The straightforward listing of each step Selection The presentation of a condition and the choice between two actions Repetition The presentation of a set of instructions to be performed repeatedly as long as a condition is true
Developing An Algorithm Defining the Problem Input Output Processing Use Meaningful Name
Designing an Algorithm Begin with a rough sketch of steps required to solve the problem Use these requirements and structure theorem to establish how the processing will take place It is important to not start coding until the necessary steps of defining the problem and designing the solution algorithm have been solved.
Checking an Algorithm Choose simple input test case Establish what the expected result should be Make a table of relevant variable names Walk through the test case Continue the process until the algorithm is correct
Selection Control Structures Used to illustrate a choice between two or more actions Simple IF statement Simple selection with null false branch (null ELSE statement) Combined selection (IF/AND) Nested IF Statement Linear nested IF statement
The CASE Structure Another way of expressing a linear nested IF statement Can often appear cumbersome
Repetition Control Structures Developed because many programs require the same logic to be repeated for several sets of data. Example DOWHILE condition p is true Statement block ENDO
DOWHILE Loop Processing The logical condition p is tested If condition p is found to be true, the statements listed in the statement block will be executed once. Control is returned to the retesting of condition p. If condition p is found to be false, control passes to the next statement after ENDDO and no further processing takes place within the loop.
Two important DOWHILE considerations Testing of the condition is done at the beginning of the loop. The only way to terminate the loop is to render the DOWHILE consideration false.
REPEAT_UNTIL Structure Is the exact opposite of the DOWHILE Condition is checked at the end as opposed to the beginning Counted repetition Question—is any method better than another?
Time for Practice