Software development and programming. Software

Size: px
Start display at page:

Download "Software development and programming. Software"

Transcription

1 CHAPTER Software Software development and programming Syllabus outcomes Describes and applies problem-solving processes when creating solutions Designs, produces and evaluates appropriate solutions to a range of challenging problems Critically analyses decision-making processes in a range of information and software solutions. Overview This chapter will develop your understanding of software development and programming. It examines the basic programming concepts, algorithms and control structures. You will learn about programming languages, testing and documentation.

2 15. 1 Programming Programming is the process of writing programs and developing software. A program is a collection of instructions that, when executed, will complete a task on the computer. One or more programs are commonly referred to as software or code. People who write programs are called programmers or software developers. Programmers write programs using programming languages. There are many programming languages available such as Java, Visual BASIC and C++. Lit 8.1 Java is a popular language developed by Sun Microsystems. Java, like all programming languages, has its own set of rules (syntax) which must be strictly followed (see Figure 15.1). However, there are basic programming concepts in all programming languages. Figure 15.1 Java program Basic programming concepts When writing a program it is necessary to consider the input, processing and output. Input is the data needed to solve the problem, the processing is the calculations required and the output is the way of giving the solution. Once these factors are determined, the actual task of writing programs is minimised. A program is written in a programming language using the following concepts. Function (or keyword) is a reserved word for a particular purpose such as class, public and private. Some functions are very powerful, such as if and while. 332 HI Tech: Information and Software Technology

3 Constant (or literal) is an item of data with only one specific value. Constants are either numbers or strings (numbers and letters). Variable is an item of data that may take different values, one at a time. They are storage containers used to hold data of the same type. Identifier is the name of anything in a program such as a variable. There are some restrictions on the use of identifiers, such as always starting with a letter. Separator is a symbol for grouping sections of the program such as { and }. The correct use of separators is essential otherwise the program will not work. Assignment statement gives a value to a variable such as: x = 9. The general form of an assignment statement is: variable = expression. The expression can contain other variables such as: y + 1. This will result in the assignment statement: x = y + 1. GUI layout The graphical user interface (GUI, pronounced gooey ) gives instructions using a mouse, and clicking on icons and menus. A GUI provides an easy-to-use and consistent interface for a range of applications. Modern programming languages create objects for each component in a GUI, such as: text box and labels are used to display text option button (or radio button) enables the user to select one option from a group check box, a text box and a small box that allows the user to click on or off more than one option can be selected from a group list box presents the user with two or more options that are viewed using a scroll bar command buttons OK to confirm selection and Cancel to quit. Figure 15.2 Visual basic 15 Software development and programming 333

4 Lit 8.2 Interactive Data type Data type is the kind of data that can be stored in a variable. To create a variable it must be declared. Variable declaration involves stating the data type of the variable and an identifier or unique name for the variable. Most programming languages have the following data types: integer number is a whole number without fractional parts floating-point number is a number with the fractional parts boolean is used to store values that have one of two possible states such as true or false character is used to store one character such as a letter, number or symbol string is used to store more than one character. Data operators Data operators (or operators) are used to represent an action to be performed such as a calculation. Operators are classified as: Arithmetic operator performs a calculation such as addition (+), subtraction ( ), division (/), multiplication (*), powers (^) and modulus (%). Calculations are carried out using the standard order of operations. Relational operator compares two values and returns a boolean (true or false) result. Relational operators include less than (<), greater than (>), less-than-or-equal-to (<=), greaterthan-or-equal-to (>=), equal-to (= =) and not-equal-to (!=). Logical operator compares two values and returns a boolean (true or false) result. Logical operators include AND (&&), OR (!!) and NOT (!). Exercise Explain the difference between: a constant and variable b character and string c an arithmetic operator and a relational operator. 2 What am I? a b c d A collection of instructions that, when executed, will complete a task on the computer. The name given to anything in a program such as a variable. A component in a GUI that enables the user to select one option from a group. Data type for whole numbers without fractional parts. 334 HI Tech: Information and Software Technology

5 3 Copy and complete the following by replacing the letter in brackets with a suitable term: People who write (a) are called programmers. A collection of programs is called (b). Programmers use (c) languages such as Java, (d) and C++. 4 a What is programming? b Describe the factors that minimise the actual task of writing programs. c What is the purpose of an assignment statement? d What is a variable declaration? e List five common data types. f What is a data operator? Development 5 Examine the Java program in Figure a What is the purpose of this program? b How could you change this program to display your name? 6 Do research to find an example of a program written using a programming language. a Describe the input, processes and output. b Identify the data operators, functions, assignment statements, variables and constants Algorithms An algorithm is a series of steps designed to solve a problem in a finite time. An algorithm can be used to solve many types of problems. Algorithms are not programs but are an important part in the development of a program. In this section we examine algorithms from familiar but non-computing contexts. 15 Software development and programming 335

6 Before an algorithm can be written the problem must be fully understood. How a solution is arrived at depends a lot on past experience. If a similar problem has been solved it is an obvious advantage. Algorithms can be used to describe simple daily actions or explain a particular task. For example: Algorithm to make a phone call: Pick up the phone. Dial number. Deliver the message. Hang up the phone. Algorithm to catch a train: Travel to station. Buy a ticket. Go to the correct platform. If the correct train, catch the train, otherwise wait. Repeat the above step. Algorithm to install a smoke alarm: Select a central location such as the hallway. Select a wall or ceiling on which to mount the alarm. Unlatch and remove the mounting plate from the alarm. Use the screws to secure mounting plate to ceiling. Install batteries into alarm body. Hook the alarm body onto the mounting plate. In all of these examples the algorithm presents a solution in a definite number of steps. Each step is short enough so that it can be easily carried out. The steps must also be performed in a particular order (sequence) to solve the problem; for example, you cannot hang up the phone before delivering the message. Algorithms are represented in a number of different ways. These are referred to as methods of algorithm description. There are many different methods of algorithm description such as pseudocode and flowcharts. Pseudocode Pseudocode uses indented lines and keywords to describe an algorithm. Pseudocode is written using a word processor and is similar to many programming languages. There are different standards of pseudocode for different purposes, however, there are some generally accepted rules. The flow of control in pseudocode is always from the top to the bottom. The keywords are highlighted in capital letters (or bold) to emphasise them and to indicate the type of action being performed. The most common keywords are shown in Table These keywords are grouped together in pairs. For example, for every BEGIN there is an END, for every IF there is an ENDIF. Indentation is used to show the structure of the algorithm. 336 HI Tech: Information and Software Technology

7 Table 15.1 Keywords used in pseudocode Keywords BEGIN END IF (condition) THEN process 1 ELSE process 2 ENDIF WHILE (condition) process 1 ENDWHILE REPEAT process 1 UNTIL (condition) Meaning Terminal: start and finish Selection: different tasks are performed according to the condition The ELSE statement is optional Repetition: statements between the keywords are repeated while the condition is true (Pre-test repetition) Repetition: statements between the keywords are repeated while the condition is true (Post-test repetition) Problem: Write pseudocode to calculate the area of a rectangle given a length of 3 cm and a breadth of 5 cm. Solution: BEGIN Make length 3 cm Make breadth 5 cm Set area to length breadth Display area END Flowcharts A flowchart is a pictorial or graphical method of describing an algorithm. Flowcharts often make it easy to see the structure of the solution. However, it is very easy to draw a flowchart that is complex and difficult to change into a programming language. The basic elements of a flowchart are a set of symbols that contain messages and interconnecting lines. A set of standards for flowcharts has been established for a number of different applications. The four most commonly used symbols are shown in Table Lit Software development and programming 337

8 Table 15.2 Symbol Symbols used in flowcharts Meaning Terminal: start and finish There should be only one line in or one line out Set count to thirty Process: used to describe a process or action It contains one line in and one line out Set count to thirty Subprogram: process described by its own flowchart to perform a particular task Decision: it consists of one line coming in at the top and two lines leaving it Begin Make length 3cm Make breadth 5cm Set area to length x breadth Display area The Australian standards for flowcharting indicate that the main direction of flow is from top to bottom or left to right. This flow of control is indicated by lines and arrows called flowlines. Flowlines do not need an arrow if the flow of control is following these main directions. For example, in Figure 15.3 the flow of control is from top to bottom so there are no arrows on the flowlines. Problem: Design a flowchart to calculate the area of a rectangle given a length of 3 cm and a breadth of 5 cm. Solution: Figure 15.3 shows the flowchart for this problem. End Figure 15.3 Flowchart to calculate area of a rectangle 338 HI Tech: Information and Software Technology

9 Exercise Copy and complete the following sentences: a Algorithms are not but are an important part in the development of a program. b uses indented lines and keywords to describe an algorithm. c The flow of control in pseudocode is always from the to the bottom. d A flow chart is a method of describing an algorithm. 2 What am I? a A method of algorithm description that is written using a word processor. b A keyword in pseudocode to start the algorithm. c The lines and arrows in a flowchart. d A symbol used in a flowchart to start and finish. 3 The following algorithms have errors in their sequence. Find these errors and write the correct solution to the problem. a Algorithm to read a book: b Read book Open book to first page Close book Get book Algorithm to run a bath: If bath is full, turn off the taps If water is too hot, increase the amount of cold water Put plug into bath If water is too cold, increase the amount of hot water Turn on the hot water tap Turn on the cold water tap 4 a What is an algorithm? b Why must the steps in an algorithm be performed in a particular order? c Why are the keywords in pseudocode highlighted? d What is the purpose of indentation in pseudocode? e What are the disadvantages of a flowchart? f Name the basic symbols used in flowcharts. Development 5 An algorithm to watch your favourite television show is shown below: Turn television on Select television show Watch television show Turn television off a Convert this algorithm into pseudocode. b Convert this algorithm into a flowchart. ICT Software development and programming 339

10 6 An algorithm to listen to a CD is shown below: Turn on equipment Insert CD Select track Play a Convert this algorithm into pseudocode. b Convert this algorithm into a flowchart. 7 Design an algorithm in both pseudocode and a flowchart for the following: a making a cheese sandwich b making a bowl of cereal for breakfast Control structures Programmers solve a problem by designing an algorithm and then coding the algorithm into a programming language. Algorithms and programming languages consist of control structures. Control structures are the building blocks of the program. There are three basic control structures: sequence, selection and repetition. Sequence Sequence is the order the steps are executed. In pseudocode, the steps are placed between BEGIN and END (see the problem below). The sequence of four steps is indented to show structure and to improve the readability of the algorithm. The flow of control is top to bottom, starting at the first step and finishing at the last step. Flowcharts always start and finish with a terminal symbol (oval). The steps are placed between these symbols and joined by flowlines (see Figure 15.4). The direction of flow is down the page between the terminal symbols. Problem: Design an algorithm to wash your hands. Pseudocode solution BEGIN Wet hands Clean hands with soap Rinse off soap Dry hands END Flowchart solution is shown in Figure HI Tech: Information and Software Technology

11 Begin Wet hands Clean hands with soap Rinse off soap Dry hands End Figure 15.4 Flowchart to wash your hands Selection Selection is used to make a logical decision. It requires a choice to be made between two or more options. The choice is made depending on the answer to a condition. There are two types of selection: binary and case. Binary selection involves two choices. In pseudocode, the keywords IF THEN ELSE are used for binary selection (see the problem below). The condition is put after the IF keyword. There are only two possible answers to the condition, true or false. If the condition is true then the process after the THEN keyword is executed. If the condition is false then the process after the ELSE keyword is executed. The ELSE statement is not always required and can be omitted. In a flowchart the selection is made using a decision symbol (diamond). The condition is placed inside this symbol and the answer must be true or false (see Figure 15.5). It is very important that the two flowlines from the decision symbol are labelled with true or false to determine which path to follow. The two flowlines join together to complete the binary selection. 15 Software development and programming 341

12 Problem: Design an algorithm for turning on the lights. Pseudocode solution BEGIN IF night THEN turn lights on ELSE turn lights off ENDIF END Flowchart solution Begin False Is it night? True Turn lights off Turn lights on End Figure 15.5 Flowchart for turning on the lights Case selection (or multiway selection) involves more than two choices. In pseudocode, the keywords CASEWHERE ENDCASE are used for case selection (see the problem below). The condition is put after the CASEWHERE keyword. Careful thought is required to cater for all possible answers to the condition. The possibilities are indented under the CASEWHERE keyword with a process to be executed only if the answer is true. In the problem below there are three options: green, amber and red with a colon specifying the process to be carried out if the option is true. In a flowchart the case selection is made using a decision symbol (see Figure 15.6). The condition is placed inside the decision symbol with the answers above each process. The flowlines join together to complete the case selection. Problem: Design an algorithm for a set of traffic lights. 342 HI Tech: Information and Software Technology

13 Pseudocode solution BEGIN CASEWHERE colour of signal Green : Pass through lights Amber : Slow down vehicle Red : Stop vehicle ENDCASE END Flowchart solution Begin Colour of the signal is? Green Amber Red Pass through lights Slow down vehicle Stop vehicle End Figure 15.6 Flowchart for a set of traffic lights Repetition A repetition or loop allows a number of steps to be repeated until some condition is satisfied. The steps to be repeated are referred to as the body of the loop. It is very important that each loop contains a condition to stop the loop going on forever. There are two types of repetition: pre-test or post-test. In a pre-test repetition or guarded loop the condition is checked at the beginning of the loop before the steps to be repeated are executed. In pseudocode the keywords used for a pre-test repetition are WHILE ENDWHILE (see problem below). The condition is put after the WHILE keyword and the body of the loop between the WHILE and ENDWHILE keywords. In a flowchart the pre-test repetition is made using a decision symbol and flowlines (see Figure 15.7). The condition is placed inside the decision symbol and checked before the body of the loop. 15 Software development and programming 343

14 Problem: Design an algorithm for using seat belts in a car. Pseudocode solution BEGIN WHILE car is moving keep seat belts on ENDWHILE END Flowchart solution Begin Is car moving? False True Keep seat belts on End Figure 15.7 Flowchart for using seat belts in a car In a post-test repetition or unguarded loop the condition is checked at the end of the loop after the steps to be repeated are executed. In pseudocode the keywords used for a post-test repetition are REPEAT UNTIL (see problem below). The body of the loop is underneath the REPEAT keyword and the condition is after the UNTIL keyword. In a flowchart the post-test repetition is made with a decision symbol and flowlines (see Figure 15.8). The body of the loop is executed before the condition is met in the decision symbol. Problem: Design an algorithm to cut the grass. Pseudocode solution BEGIN REPEAT Use lawn mower UNTIL grass is cut END 344 HI Tech: Information and Software Technology

15 Flowchart solution Begin Use lawn mower False Is grass cut? True End Figure 15.8 Flowchart to cut the grass Exercise What control structures are represented by the following algorithm segments? a BEGIN process 1 process 2 process 3 b c d e END WHILE (condition) process ENDWHILE IF (condition) THEN process 1 ELSE process 2 ENDIF REPEAT Process UNTIL (condition) f False Figure 15.9 Figure True 15 Software development and programming 345

16 g False True h False True Figure Figure True or false? a Case selection involves two choices. b In a flowchart a selection is made using a decision symbol. c The steps repeated in a repetition are called the body of the loop. d The REPEAT UNTIL keywords are used for a pre-test repetition. 3 Copy and complete the following by replacing the letter in brackets with a suitable term: The building blocks of a program are called the (a). Sequence is the (b) the steps are executed. Selection is making a logical (c). Repetition allows a number of (d) to be repeated. 4 a What is the sequence in an algorithm? b Describe the flow of control in pseudocode. c What is binary selection in an algorithm? d Why is it important to label the two flowlines from a decision symbol with true or false? e What keywords are used for a pre-test repetition in pseudocode? f How is a post-test repetition made in a flowchart? Development 5 Explain what the following algorithms do. a Pseudocode: b BEGIN print What is the capital of Australia? get answer from user IF answer is Canberra THEN print Well done, correct ELSE print Sorry the answer is Canberra ENDIF END Pseudocode: BEGIN set Count to one WHILE Count is less than eleven print Count increment Count by one ENDWHILE END 346 HI Tech: Information and Software Technology

17 c d Pseudocode: BEGIN set Count to ten REPEAT print Count increment Count by one UNTIL Count is twenty END e Begin Begin Print What is my favourite colour? Set Count to twenty Input colour Is Count > 0? True False False Is colour blue? True Print Count Print You are wrong, blue is the answer Print Congratulations you are right Decrease Count by one End End Figure Figure f Begin Set Count to thirty Print Count Decrease Count by two False Is Count less than eight? True End Figure Software development and programming 347

18 6 Convert these algorithms into pseudocode and flowcharts: a Go to the bus stop Wait for the bus Get on bus Pay fare b Alarm goes off Get out of bed If I have homework to complete, then finish homework Get dressed Eat breakfast c Go to the lounge room Turn on the TV If it is Sunday, then watch a movie else watch news d Wake up Get out of bed Have a shower If weekday, then put on uniform else put on normal clothes Eat breakfast e Go to the station Buy a ticket Buy a magazine Sit on a seat and read a magazine until the train comes Put magazine in bag Get on the train 7 Construct an algorithm in pseudocode for the following tasks: a making a phone call b cleaning your teeth Programming languages Tutorial Programming languages are used to create the instructions in a program that can be understood by the computer. Each programming language has its own set of rules that must be strictly followed. The rules of the programming language are called its syntax. Programming languages are divided into two groups: Low-level languages are the lowest level of computer languages and depend on the hardware of the computer. Programs written using low-level languages are often called machine code or assembly code. They process calculations much faster than high-level languages. High-level languages use English-like codes where each statement corresponds to several lines of machine code. Programming 348 HI Tech: Information and Software Technology

19 languages such as Java, Visual BASIC and C++ are high-level languages. A compiler or interpreter translates a high-level program into machine code so the computer can implement the solution. Object-oriented programming Most programmers use a high-level language and a strategy called object-oriented programming or OOP (rhymes with hoop). OOP requires the programmer to package the data and the methods (or procedures) into a single unit called an object. A program consists of a collection of interacting objects. Writing a program involves describing different types of objects what they can do, how they are created and how they interact with other objects. Creating an object requires defining that object. This is called creating a class. A class describes how objects behave and the kind of information in the object. It is a template to create objects. After defining classes and creating objects programmers write instructions to complete a task. A task could be adding numbers or completing a simple game (see Figure 15.16). Lit 8.4 Figure Instructions in Visual Basic Object-oriented programming requires keywords, literals, variables, identifiers, separators, data types and operators. These concepts were examined at the start of this chapter. Java is a popular language developed by Sun Microsystems to create small applications. It is an object-oriented language that excels at producing web-based applets that work on different types of computers. Applets are graphical Java programs that execute within a web page. They are responsible for the dynamic nature of the Web. The Java software development kit has all the tools and resources needed to write Java applets and applications. The Java program is written in a text editor and a Java compiler used to convert the program into source code for an HTML document. The control structures used in Java are similar to pseudocode: 15 Software development and programming 349

20 sequence execute one after another from the start to the end binary selection uses the if else keywords: if (condition) Statement 1 else Statement 2 case selection uses the switch case keywords: switch (Expression) case Constant 1: StatementList1 case Constant 2: StatementList2 default: DefaultStatementList pre-test repetition uses the while keyword: while (LoopCondition) Statement post-test repetition uses the do while keywords: do Statement while (LoopCondition) Problem: Write a Java program that will ask the user for their first name and print this name ten time on the screen. Pseudocode solution BEGIN set Count equal one input user s name WHILE Count is less than or equal to 10 print user s name increment Count by one ENDWHILE END Java solution is shown in Figure Subprograms Structured programming aims to create well ordered and logical programs. It involves breaking the problem down into smaller parts. Each part is solved separately and then combined to produce the final solution. A structured program consists of a collection of smaller programs. Each of these smaller programs is called a subprogram. A subprogram is a self-contained section of code that performs a particular task. In Java, subprograms are called methods. For example, the code below is a method in Java. It adds two integers (parameters) and returns the result to the calling program (larger program). 350 HI Tech: Information and Software Technology

21 Public int add2int (int x, int y) { Int result; result = x + y Return result; } Subprograms have a single entry point and suspend the calling program until they have finished. Subprograms have the added advantage of being reuseable. Programmers may use the same subprogram many times in different problems. This reduces the time required to program. Programmers keep a library of subprograms they have written. Data structures A file is a block of related data stored on a storage device. Programs are stored as files. A data structure used in many programming languages is called a record. A record is a collection of facts that are related in some way. Records are a fixed length and are divided into one or more fields. A field is a specific piece of data in a record. Shown below is a record that consists of 17 characters: eight for field 1, seven for field 2 and two for field 3. Each record, irrespective of the data, would have a fixed length of seventeen characters. A record is usually a combination of other data types. The record below has a string data type and an integer data type. The ability to have different data types distinguishes records and arrays. s m i t h l u k e 1 6 Figure Java program An array stores a list of elements of the same data type. An array is used to efficiently store large quantities of data. Each element within an array is numbered and accessed based on their number. To use an array the data type and the number of items must be declared. For example, array declarations in Java are shown below. Int[] score = new int[10]; char[] vowel char[5]; 15 Software development and programming 351

22 The first statement creates an integer array score with up to ten elements. The second statement creates a character array vowel with up to five elements. After the array is declared each individual element can be used to store data. In the example below vowel[1] is storing the letter E. vowel[0] = A ; vowel[1] = E ; vowel[4] = U ; Exercise True or false? a Each programming language has the same rules that must be strictly followed. b Most programmers use a high-level language. c A class describes how objects behave and the kind of information in the object. d Object-oriented programming involves breaking the problem down into smaller parts. 2 Explain the difference between: a a low-level language and a high-level language b a record and an array. 3 Copy and complete the following sentences: a A program in consists of a collection of interacting objects. b A is a self-contained section of code that performs a particular task. c Each element within an array is and accessed based on their number. 4 a What is the purpose of a programming language? b Describe the process of writing a program using an OOP language. c What are applets? d What is the aim of structured programming? e Describe an advantage of subprograms. f What is the purpose of an array? Development 5 Do research into a high-level programming language. If possible complete a tutorial on a programming language. Identify the basic programming concepts and control structures used in the programming language. Write a report that summarises your investigation. 6 Write a program that will ask the user for their first name and print this name ten times on the screen (see Figure 15.17). Execute this program. Modify the program so that the person s name is printed twenty times. 352 HI Tech: Information and Software Technology

23 7 Write a program that will create an array and store each letter of the alphabet. Enter data into the array and use the array to display a message Testing and documentation Most programmers strive for the perfect program, however, few are able to achieve it. It is rare for a complex program to be written without errors. Errors in a program are called bugs. A bug is an error that makes the program run incorrectly. The process of finding a bug is called debugging. Debugging is often a timeconsuming and challenging task. Testing Test data is used to detect and correct any potential errors in a program. Except for simple programs, test data will only cover a small percentage of all the possible sets of data. The programmer selects test data that will cater for the worst-case situation. This is data the programmer predicts will cause a problem. It is often data outside the boundaries of acceptable data such as entering a decimal number instead of an integer. Test data is also designed to check for expected outcomes. For example, if a user enters 4 the program should display the result for this value. The selection of test data depends on the programmer s understanding of the program. Programmers use test data throughout the development of a program. Error detection and correction Error detection involves identifying and describing the error. Error correction fixes the source of the error to create a workable program. There are three basic types of errors: Logic errors result from an incorrect series of steps to solve the problem. The program with a logic error produces incorrect or unexpected results. Logic errors can occur if the algorithm does not solve the problem correctly. The algorithm should be tested before coding to eliminate logic errors. It is often a difficult task to find and correct logic errors. Syntax errors are made when the programmer has failed to follow the rules (syntax) of the programming language. A syntax error may be a spelling error or a symbol that cannot be The term bug is a result of a problem with the Mark 1 computer in This computer started working after a moth was removed from the inside of the machine. Consequently, any unknown problem with a computer is said to be a bug. Lit Software development and programming 353

24 A trapdoor is a section of code used by programmers as a diagnostic tool to enable them to access certain parts of a program. Trapdoors are removed before a program is sold. translated. When the program is compiled or interpreted, an error message will appear if the program contains any syntax errors. Correcting any syntax errors is usually a simple task. Run-time errors occur when it is impossible for the computer to carry out the instruction. For example, if a calculation attempted to divide a number by zero it would be a run-time error. The instruction has the correct syntax but it is not possible to carry out the instruction. Incorrect data can often produce a run-time error. There is a range of strategies to detect and correct errors: Desk checking involves the programmer checking each line of code. Desk checking takes place after the algorithm has been written and again after it has been coded in the programming language. The programmer executes the program the same as the computer. Desk checking provides a way to see exactly what code is being executed and the flow of execution through the program. A desk check usually involves watching the variables. A list is constructed containing the names of variables and their values. The list of variables is updated after each step of the desk check. If the desk check is performed by somebody other than the programmer it is called a peer check. Breakpoint is a roadblock in the execution of the program. When the program reaches a breakpoint it stops. Breakpoints are useful in isolating sections of the code and analysing them. Software debugging tools are available for most programming languages. A debugger is a program that will perform the desk check electronically. They are often used with a breakpoint to watch the variables in a section of code. Debuggers are only tools to find problems and do not provide the solution to the problem. Documentation Documentation is a written description to explain the development and operation of a program. It is not part of the actual code. Documentation is an important aspect of writing programs as it helps the reader to understand what is going on. It should be written during the development of the program, however, it is often neglected and left until last. This results in inadequate documentation making the program difficult to understand and modify. The documentation required in a program falls into three main categories: Intrinsic documentation involves writing an easy-to-read program. It involves using correct programming techniques and meaningful variable names such as height instead of x. 354 HI Tech: Information and Software Technology

25 Internal documentation consists of any comments or remarks within the program code to describe its purpose. The code below shows internal documentation in Java using the forward slash and asterisk: /* This form of documentation allows the text to wrap around onto succeeding lines */ // This form of documentation is restricted to one line External documentation consists of any written support material. This may include a problem statement, input data, output data, processes, algorithm, test data and a listing of the program, user manuals and installation guides. Project: Rite Software Arla is a programmer who has been contracted to update the user interface for Rite Software. Rite Software is a suite of programs to help children read and write. The user interface was written seven years ago and looks dated. She solved the problem using the four stages in project development. Define and analyse the problem: Arla spoke with the manager to determine the exact requirements of the problem. She collected information to be displayed on the screen. A project plan was written and submitted for approval to the manager. Design possible solutions: Arla designed four possible screens. Each possible solution had the same objects; however, they were formatted and displayed in different ways. A feasibility report was written and presented to the manager. The recommendation from the feasibility report was accepted by the manager. Arla designed an algorithm using pseudocode to solve the problem. Produce the solution: Arla used Visual BASIC programming language to code the algorithm. She created forms and added objects to those forms. The properties of each object were specified. Arla entered the code and saved the project. Evaluate the solution: Arla tested the program to ensure each screen and form was working correctly. There was a problem displaying one of the images and this was fixed. The new software was presented to the manager. ICT 15.2 Tasks 1 Design an appropriate introductory screen for Rite Software using a modern user interface. 2 What are the characteristics of a modern user interface? 15 Software development and programming 355

26 Exercise What am I? a An error made when a programmer has failed to follow the rules of programming. b An error that occurs when it is impossible for the computer to carry out the instruction. c An error detection that involves putting a roadblock in the execution of the program. d Documentation that involves writing an easy-to-read program. 2 Copy and complete the following sentences: a When a program is an error message will appear if the program contains a syntax error. b A desk check usually involves watching the. c A is a program that will perform the desk check electronically. d Inadequate makes a program difficult to understand and modify. 3 Unjumble these words: a ugdinebgg b ecdk hkiecncg 4 a What is a bug? b What is the purpose of test data? c List the three basic types of errors. d What is desk checking? e Why is documentation an important aspect of writing programs? f Explain the difference between internal and external documentation. Development 5 Examine the following algorithm. What will be the output if the user enters 4? Perform a desk check by watching the variables (Number, Count and Temp). BEGIN Get Number from the user Set Count to zero WHILE Count is less than Number Set Temp to Count plus one Print Temp increment count by one ENDWHILE Print Count END 6 Examine the following algorithm. What will be the output? Perform a desk check by watching the variables (X and Y). 356 HI Tech: Information and Software Technology

27 BEGIN Set X to zero Set Y to one REPEAT Set X to X plus Y Print X increment Y by one UNTIL Y is four Print Count END 7 Edit the programs created in Exercise 15.4, Questions 6 and 7 by inserting appropriate documentation. 15 Software development and programming 357

28 Part A: Multiple choice questions Select the alternative (a), (b), (c) or (d) that best answers each question. 1 Which of the following is a reserved word for a particular purpose? a Variable b Separator c Constant d Function 2 Which of the following describes a data type to store a value that has one of two possible states such as true or false? a Boolean b String c Floating-point d Yes/no 3 Which of the following statements is incorrect? a Algorithms present a solution in a definite number of steps b Keywords in pseudocode are highlighted to indicate the type of action being performed c Flowcharts are easier than pseudocode to convert into a programming language d Flow of control is indicated by lines and arrows called flowlines 4 Which method of algorithm description uses keywords grouped in pairs? a Pseudocode b Flowchart c Java d Visual BASIC 5 What control structure is represented by the following algorithm segment? CASEWHERE (condition) process 1 process 2 ENDCASE a b c d Case repetition Case sequence Case selection Case algorithm 6 Which of the following is a loop checked at the end after the steps to be repeated are executed? a Pre-test repetition b Post-test repetition c Pre-test selection d Post-test selection 7 Which of the following is a selfcontained section of code that performs a particular task? a Array b Subprogram c Programming language d File 8 Which of the following requires a programmer to package data and the methods into a single unit called an object? a OOP b GUI c Low-level languages d High-level languages 9 Which of the following is the result from an incorrect series of steps to solve the problem? a Syntax error b Run-time error c Logic error d Desk check 10 Which of the following describes comments or remarks within the program code to explain its purpose? a Comment documentation b External documentation c Intrinsic documentation d Internal documentation 358 HI Tech: Information and Software Technology

29 Part B: Match the term For each of the following statements (1 to 10), select from the list of terms (a to j) the one that most closely fits the statement. Statements 1 A collection of instructions that, when executed, will complete a task on the computer. 2 The kind of data that can be stored in a variable. 3 A series of steps designed to solve a problem in a finite time. 4 A method of algorithm description that uses indented lines and keywords. 5 A method of algorithm description that uses a pictorial or graphical method. 6 Control structure that specifies the order the steps are executed. 7 Control structure used to make a logical decision. 8 Data structure that stores a list of elements of the same data type. 9 It is used to detect and correct any potential problems in a program. 10 A written description to explain the development and operation of a program. Terms a Algorithm b Array c Data type d Documentation e Flowchart f g h i j Program Pseudocode Selection Sequence Test data Part C: Extended response questions Write at least one paragraph for each of the following: 1 Variable declaration involves stating the data type of the variable. Briefly describe five different data types that are commonly used in programs. 2 Explain the purpose of data operators. Identify and describe three different types of operators. 3 Pseudocode and flowcharts are two popular methods for algorithm description. Outline the main features of these methods. 4 Explain the difference between: a binary selection and case selection b a pre-test repetition and a posttest repetition. 5 What is a high-level language? Outline the processes involved in structured programming. 6 Testing should be done throughout the development of a program to detect errors. Describe three basic types of errors. Which type of error usually takes the longest to correct? Give reasons for your answer. e Tester 15 Software development and programming 359

30 Project: Arithmetic program Max is a primary teacher who needs software to test his student s arithmetic skills. The program should present students with ten problems to add and subtract numbers. The numbers selected should be done randomly and not require the student to calculate negative numbers. The program should total the number of correct answers and store their results for Max. This is a group project to be developed using the four stages in project development. Demonstrating the operation of the arithmetic program and documenting the solution are important criteria for this project. Project 8.1 Project 8.2 Project 8.3 Cross project HI Tech: Information and Software Technology

Chapter 13: Program Development and Programming Languages

Chapter 13: Program Development and Programming Languages Understanding Computers Today and Tomorrow 12 th Edition Chapter 13: Program Development and Programming Languages Learning Objectives Understand the differences between structured programming, object-oriented

More information

Chapter 12 Programming Concepts and Languages

Chapter 12 Programming Concepts and Languages Chapter 12 Programming Concepts and Languages Chapter 12 Programming Concepts and Languages Paradigm Publishing, Inc. 12-1 Presentation Overview Programming Concepts Problem-Solving Techniques The Evolution

More information

Chapter 13: Program Development and Programming Languages

Chapter 13: Program Development and Programming Languages 15 th Edition Understanding Computers Today and Tomorrow Comprehensive Chapter 13: Program Development and Programming Languages Deborah Morley Charles S. Parker Copyright 2015 Cengage Learning Learning

More information

Stage 5 Information and Software Technology

Stage 5 Information and Software Technology Stage 5 Information and Software Technology Year: Year 9 Teacher: Topic: Option 8: Software Development and Programming Time: This option involves students undertaking a range of activities that will lead

More information

Algorithm & Flowchart & Pseudo code. Staff Incharge: S.Sasirekha

Algorithm & Flowchart & Pseudo code. Staff Incharge: S.Sasirekha Algorithm & Flowchart & Pseudo code Staff Incharge: S.Sasirekha Computer Programming and Languages Computers work on a set of instructions called computer program, which clearly specify the ways to carry

More information

Name: Class: Date: 9. The compiler ignores all comments they are there strictly for the convenience of anyone reading the program.

Name: Class: Date: 9. The compiler ignores all comments they are there strictly for the convenience of anyone reading the program. Name: Class: Date: Exam #1 - Prep True/False Indicate whether the statement is true or false. 1. Programming is the process of writing a computer program in a language that the computer can respond to

More information

Visual Logic Instructions and Assignments

Visual Logic Instructions and Assignments Visual Logic Instructions and Assignments Visual Logic can be installed from the CD that accompanies our textbook. It is a nifty tool for creating program flowcharts, but that is only half of the story.

More information

Pseudo code Tutorial and Exercises Teacher s Version

Pseudo code Tutorial and Exercises Teacher s Version Pseudo code Tutorial and Exercises Teacher s Version Pseudo-code is an informal way to express the design of a computer program or an algorithm in 1.45. The aim is to get the idea quickly and also easy

More information

PROG0101 Fundamentals of Programming PROG0101 FUNDAMENTALS OF PROGRAMMING. Chapter 3 Algorithms

PROG0101 Fundamentals of Programming PROG0101 FUNDAMENTALS OF PROGRAMMING. Chapter 3 Algorithms PROG0101 FUNDAMENTALS OF PROGRAMMING Chapter 3 1 Introduction to A sequence of instructions. A procedure or formula for solving a problem. It was created mathematician, Mohammed ibn-musa al-khwarizmi.

More information

EKT150 Introduction to Computer Programming. Wk1-Introduction to Computer and Computer Program

EKT150 Introduction to Computer Programming. Wk1-Introduction to Computer and Computer Program EKT150 Introduction to Computer Programming Wk1-Introduction to Computer and Computer Program A Brief Look At Computer Computer is a device that receives input, stores and processes data, and provides

More information

Fundamentals of Programming and Software Development Lesson Objectives

Fundamentals of Programming and Software Development Lesson Objectives Lesson Unit 1: INTRODUCTION TO COMPUTERS Computer History Create a timeline illustrating the most significant contributions to computing technology Describe the history and evolution of the computer Identify

More information

Topics. Introduction. Java History CS 146. Introduction to Programming and Algorithms Module 1. Module Objectives

Topics. Introduction. Java History CS 146. Introduction to Programming and Algorithms Module 1. Module Objectives Introduction to Programming and Algorithms Module 1 CS 146 Sam Houston State University Dr. Tim McGuire Module Objectives To understand: the necessity of programming, differences between hardware and software,

More information

Translating to Java. Translation. Input. Many Level Translations. read, get, input, ask, request. Requirements Design Algorithm Java Machine Language

Translating to Java. Translation. Input. Many Level Translations. read, get, input, ask, request. Requirements Design Algorithm Java Machine Language Translation Translating to Java Introduction to Computer Programming The job of a programmer is to translate a problem description into a computer language. You need to be able to convert a problem description

More information

Flowchart Techniques

Flowchart Techniques C H A P T E R 1 Flowchart Techniques 1.1 Programming Aids Programmers use different kinds of tools or aids which help them in developing programs faster and better. Such aids are studied in the following

More information

Programming in Access VBA

Programming in Access VBA PART I Programming in Access VBA In this part, you will learn all about how Visual Basic for Applications (VBA) works for Access 2010. A number of new VBA features have been incorporated into the 2010

More information

For Introduction to Java Programming, 5E By Y. Daniel Liang

For Introduction to Java Programming, 5E By Y. Daniel Liang Supplement H: NetBeans Tutorial For Introduction to Java Programming, 5E By Y. Daniel Liang This supplement covers the following topics: Getting Started with NetBeans Creating a Project Creating, Mounting,

More information

Embedded Systems. Review of ANSI C Topics. A Review of ANSI C and Considerations for Embedded C Programming. Basic features of C

Embedded Systems. Review of ANSI C Topics. A Review of ANSI C and Considerations for Embedded C Programming. Basic features of C Embedded Systems A Review of ANSI C and Considerations for Embedded C Programming Dr. Jeff Jackson Lecture 2-1 Review of ANSI C Topics Basic features of C C fundamentals Basic data types Expressions Selection

More information

Flowcharting, pseudocoding, and process design

Flowcharting, pseudocoding, and process design Systems Analysis Pseudocoding & Flowcharting 1 Flowcharting, pseudocoding, and process design The purpose of flowcharts is to represent graphically the logical decisions and progression of steps in the

More information

#820 Computer Programming 1A

#820 Computer Programming 1A Computer Programming I Levels: 10-12 Units of Credit: 1.0 CIP Code: 11.0201 Core Code: 35-02-00-00-030 Prerequisites: Secondary Math I, Keyboarding Proficiency, Computer Literacy requirement Semester 1

More information

How To Understand Programming Languages And Programming Languages

How To Understand Programming Languages And Programming Languages Objectives Differentiate between machine and and assembly languages Describe Describe various various ways ways to to develop develop Web Web pages pages including including HTML, HTML, scripting scripting

More information

Visual Basic Programming. An Introduction

Visual Basic Programming. An Introduction Visual Basic Programming An Introduction Why Visual Basic? Programming for the Windows User Interface is extremely complicated. Other Graphical User Interfaces (GUI) are no better. Visual Basic provides

More information

McGraw-Hill The McGraw-Hill Companies, Inc., 20 1. 01 0

McGraw-Hill The McGraw-Hill Companies, Inc., 20 1. 01 0 1.1 McGraw-Hill The McGraw-Hill Companies, Inc., 2000 Objectives: To describe the evolution of programming languages from machine language to high-level languages. To understand how a program in a high-level

More information

ARIZONA CTE CAREER PREPARATION STANDARDS & MEASUREMENT CRITERIA SOFTWARE DEVELOPMENT, 15.1200.40

ARIZONA CTE CAREER PREPARATION STANDARDS & MEASUREMENT CRITERIA SOFTWARE DEVELOPMENT, 15.1200.40 SOFTWARE DEVELOPMENT, 15.1200.40 STANDARD 1.0 APPLY PROBLEM-SOLVING AND CRITICAL THINKING SKILLS TO INFORMATION 1.1 Describe methods of establishing priorities 1.2 Prepare a plan of work and schedule information

More information

Before you can use the Duke Ambient environment to start working on your projects or

Before you can use the Duke Ambient environment to start working on your projects or Using Ambient by Duke Curious 2004 preparing the environment Before you can use the Duke Ambient environment to start working on your projects or labs, you need to make sure that all configuration settings

More information

Software Development. Topic 1 The Software Development Process

Software Development. Topic 1 The Software Development Process Software Development Topic 1 The Software Development Process 1 The Software Development Process Analysis Design Implementation Testing Documentation Evaluation Maintenance 2 Analysis Stage An Iterative

More information

Accredited Specimen Mark Scheme

Accredited Specimen Mark Scheme Version 1.0 General Certificate of Secondary Education Computer Science code Code Computing fundamentals Accredited Specimen Mark Scheme Mark schemes are prepared by the Principal Examiner and considered,

More information

MULTIPLE CHOICE. Choose the one alternative that best completes the statement or answers the question.

MULTIPLE CHOICE. Choose the one alternative that best completes the statement or answers the question. Exam Name MULTIPLE CHOICE. Choose the one alternative that best completes the statement or answers the question. 1) The JDK command to compile a class in the file Test.java is A) java Test.java B) java

More information

VISUAL GUIDE to. RX Scripting. for Roulette Xtreme - System Designer 2.0

VISUAL GUIDE to. RX Scripting. for Roulette Xtreme - System Designer 2.0 VISUAL GUIDE to RX Scripting for Roulette Xtreme - System Designer 2.0 UX Software - 2009 TABLE OF CONTENTS INTRODUCTION... ii What is this book about?... iii How to use this book... iii Time to start...

More information

Instructor Özgür ZEYDAN BEU Dept. of Enve. Eng. http://cevre.beun.edu.tr/zeydan/ CIV 112 Computer Programming Lecture Notes (1)

Instructor Özgür ZEYDAN BEU Dept. of Enve. Eng. http://cevre.beun.edu.tr/zeydan/ CIV 112 Computer Programming Lecture Notes (1) Instructor Özgür ZEYDAN BEU Dept. of Enve. Eng. http://cevre.beun.edu.tr/zeydan/ CIV 112 Computer Programming Lecture Notes (1) Computer Programming A computer is a programmable machine. This means it

More information

Syllabus for CS 134 Java Programming

Syllabus for CS 134 Java Programming - Java Programming Syllabus Page 1 Syllabus for CS 134 Java Programming Computer Science Course Catalog 2000-2001: This course is an introduction to objectoriented programming using the Java language.

More information

Hypercosm. Studio. www.hypercosm.com

Hypercosm. Studio. www.hypercosm.com Hypercosm Studio www.hypercosm.com Hypercosm Studio Guide 3 Revision: November 2005 Copyright 2005 Hypercosm LLC All rights reserved. Hypercosm, OMAR, Hypercosm 3D Player, and Hypercosm Studio are trademarks

More information

Software Design and Development

Software Design and Development 2002 HIGHER SCHOOL CERTIFICATE EXAMINATION Software Design and Development Total marks 100 Section I Pages 2 9 General Instructions Reading time 5 minutes Working time 3 hours Write using black or blue

More information

3 SOFTWARE AND PROGRAMMING LANGUAGES

3 SOFTWARE AND PROGRAMMING LANGUAGES 3 SOFTWARE AND PROGRAMMING LANGUAGES 3.1 INTRODUCTION In the previous lesson we discussed about the different parts and configurations of computer. It has been mentioned that programs or instructions have

More information

Computing Concepts with Java Essentials

Computing Concepts with Java Essentials 2008 AGI-Information Management Consultants May be used for personal purporses only or by libraries associated to dandelon.com network. Computing Concepts with Java Essentials 3rd Edition Cay Horstmann

More information

Java Application Developer Certificate Program Competencies

Java Application Developer Certificate Program Competencies Java Application Developer Certificate Program Competencies After completing the following units, you will be able to: Basic Programming Logic Explain the steps involved in the program development cycle

More information

MICROSOFT ACCESS STEP BY STEP GUIDE

MICROSOFT ACCESS STEP BY STEP GUIDE IGCSE ICT SECTION 11 DATA MANIPULATION MICROSOFT ACCESS STEP BY STEP GUIDE Mark Nicholls ICT Lounge P a g e 1 Contents Task 35 details Page 3 Opening a new Database. Page 4 Importing.csv file into the

More information

Computer Programming I

Computer Programming I Computer Programming I Levels: 10-12 Units of Credit: 1.0 CIP Code: 11.0201 Core Code: 35-02-00-00-030 Prerequisites: Secondary Math I, Keyboarding Proficiency, Computer Literacy requirement (e.g. Exploring

More information

Course MS10975A Introduction to Programming. Length: 5 Days

Course MS10975A Introduction to Programming. Length: 5 Days 3 Riverchase Office Plaza Hoover, Alabama 35244 Phone: 205.989.4944 Fax: 855.317.2187 E-Mail: rwhitney@discoveritt.com Web: www.discoveritt.com Course MS10975A Introduction to Programming Length: 5 Days

More information

Decision Logic: if, if else, switch, Boolean conditions and variables

Decision Logic: if, if else, switch, Boolean conditions and variables CS 1044 roject 3 Fall 2009 Decision Logic: if, if else, switch, Boolean conditions and variables This programming assignment uses many of the ideas presented in sections 3 through 5 of the Dale/Weems text

More information

VB.NET Programming Fundamentals

VB.NET Programming Fundamentals Chapter 3 Objectives Programming Fundamentals In this chapter, you will: Learn about the programming language Write a module definition Use variables and data types Compute with Write decision-making statements

More information

JavaScript: Control Statements I

JavaScript: Control Statements I 1 7 JavaScript: Control Statements I 7.1 Introduction 2 The techniques you will learn here are applicable to most high-level languages, including JavaScript 1 7.2 Algorithms 3 Any computable problem can

More information

Hermes.Net IVR Designer Page 2 36

Hermes.Net IVR Designer Page 2 36 Hermes.Net IVR Designer Page 2 36 Summary 1. Introduction 4 1.1 IVR Features 4 2. The interface 5 2.1 Description of the Interface 6 2.1.1 Menus. Provides 6 2.1.2 Commands for IVR editions. 6 2.1.3 Commands

More information

VIRTUAL LABORATORY: MULTI-STYLE CODE EDITOR

VIRTUAL LABORATORY: MULTI-STYLE CODE EDITOR VIRTUAL LABORATORY: MULTI-STYLE CODE EDITOR Andrey V.Lyamin, State University of IT, Mechanics and Optics St. Petersburg, Russia Oleg E.Vashenkov, State University of IT, Mechanics and Optics, St.Petersburg,

More information

Computer Programming I

Computer Programming I Computer Programming I COP 2210 Syllabus Spring Semester 2012 Instructor: Greg Shaw Office: ECS 313 (Engineering and Computer Science Bldg) Office Hours: Tuesday: 2:50 4:50, 7:45 8:30 Thursday: 2:50 4:50,

More information

Jump-Start Tutorial For ProcessModel

Jump-Start Tutorial For ProcessModel Jump-Start Tutorial For ProcessModel www.blueorange.org.uk ProcessModel Jump-Start Tutorial This tutorial provides step-by-step instructions for creating a process model, running the simulation, and viewing

More information

Fundamentals of Java Programming

Fundamentals of Java Programming Fundamentals of Java Programming This document is exclusive property of Cisco Systems, Inc. Permission is granted to print and copy this document for non-commercial distribution and exclusive use by instructors

More information

Management Information Systems 260 Web Programming Fall 2006 (CRN: 42459)

Management Information Systems 260 Web Programming Fall 2006 (CRN: 42459) Management Information Systems 260 Web Programming Fall 2006 (CRN: 42459) Class Time: 6:00 8:05 p.m. (T,Th) Venue: WSL 5 Web Site: www.pbvusd.net/mis260 Instructor Name: Terrell Tucker Office: BDC 127

More information

Algorithms, Flowcharts & Program Design. ComPro

Algorithms, Flowcharts & Program Design. ComPro Algorithms, Flowcharts & Program Design ComPro Definition Algorithm: o sequence of steps to be performed in order to solve a problem by the computer. Flowchart: o graphical or symbolic representation of

More information

ARIZONA CTE CAREER PREPARATION STANDARDS & MEASUREMENT CRITERIA SOFTWARE DEVELOPMENT, 15.1200.40

ARIZONA CTE CAREER PREPARATION STANDARDS & MEASUREMENT CRITERIA SOFTWARE DEVELOPMENT, 15.1200.40 SOFTWARE DEVELOPMENT, 15.1200.40 1.0 APPLY PROBLEM-SOLVING AND CRITICAL THINKING SKILLS TO INFORMATION TECHNOLOGY 1.1 Describe methods and considerations for prioritizing and scheduling software development

More information

This Document Contains:

This Document Contains: Instructional Documents Video Conference >> PolyCom >> VSX 7000 Extension Computing Technology Unit This Document Contains: A Device Description An Installation Guide Instructions for Use Best Practices

More information

I PUC - Computer Science. Practical s Syllabus. Contents

I PUC - Computer Science. Practical s Syllabus. Contents I PUC - Computer Science Practical s Syllabus Contents Topics 1 Overview Of a Computer 1.1 Introduction 1.2 Functional Components of a computer (Working of each unit) 1.3 Evolution Of Computers 1.4 Generations

More information

Chapter 2: Algorithm Discovery and Design. Invitation to Computer Science, C++ Version, Third Edition

Chapter 2: Algorithm Discovery and Design. Invitation to Computer Science, C++ Version, Third Edition Chapter 2: Algorithm Discovery and Design Invitation to Computer Science, C++ Version, Third Edition Objectives In this chapter, you will learn about: Representing algorithms Examples of algorithmic problem

More information

Computer Programming I & II*

Computer Programming I & II* Computer Programming I & II* Career Cluster Information Technology Course Code 10152 Prerequisite(s) Computer Applications, Introduction to Information Technology Careers (recommended), Computer Hardware

More information

Ohio University Computer Services Center August, 2002 Crystal Reports Introduction Quick Reference Guide

Ohio University Computer Services Center August, 2002 Crystal Reports Introduction Quick Reference Guide Open Crystal Reports From the Windows Start menu choose Programs and then Crystal Reports. Creating a Blank Report Ohio University Computer Services Center August, 2002 Crystal Reports Introduction Quick

More information

Chapter 7: Software Development Stages Test your knowledge - answers

Chapter 7: Software Development Stages Test your knowledge - answers Chapter 7: Software Development Stages Test your knowledge - answers 1. What is meant by constraints and limitations on program design? Constraints and limitations are based on such items as operational,

More information

Access Queries (Office 2003)

Access Queries (Office 2003) Access Queries (Office 2003) Technical Support Services Office of Information Technology, West Virginia University OIT Help Desk 293-4444 x 1 oit.wvu.edu/support/training/classmat/db/ Instructor: Kathy

More information

Bachelors of Computer Application Programming Principle & Algorithm (BCA-S102T)

Bachelors of Computer Application Programming Principle & Algorithm (BCA-S102T) Unit- I Introduction to c Language: C is a general-purpose computer programming language developed between 1969 and 1973 by Dennis Ritchie at the Bell Telephone Laboratories for use with the Unix operating

More information

High-Level Programming Languages. Nell Dale & John Lewis (adaptation by Michael Goldwasser)

High-Level Programming Languages. Nell Dale & John Lewis (adaptation by Michael Goldwasser) High-Level Programming Languages Nell Dale & John Lewis (adaptation by Michael Goldwasser) Low-Level Languages What are disadvantages of low-level languages? (e.g., machine code or assembly code) Programming

More information

C A R I B B E A N E X A M I N A T I O N S REPORT ON CANDIDATES S WORK IN THE CARIBBEAN SECONDARY EDUCATION CERTIFICATE EXAMINATION MAY/JUNE 2012

C A R I B B E A N E X A M I N A T I O N S REPORT ON CANDIDATES S WORK IN THE CARIBBEAN SECONDARY EDUCATION CERTIFICATE EXAMINATION MAY/JUNE 2012 C A R I B B E A N E X A M I N A T I O N S COUNCIL REPORT ON CANDIDATES S WORK IN THE CARIBBEAN SECONDARY EDUCATION CERTIFICATE EXAMINATION MAY/JUNE 2012 INFORMATION TECHNOLOGY GENERAL PROFICIENCY EXAMINATION

More information

Algorithm and Flowchart. 204112 Structured Programming 1

Algorithm and Flowchart. 204112 Structured Programming 1 Algorithm and Flowchart 204112 Structured Programming 1 Programming Methodology Problem solving Coding Problem statement and analysis Develop a high-level algorithm Detail out a low-level algorithm Choose

More information

Chapter 14. Programming and Languages. McGraw-Hill/Irwin. Copyright 2008 by The McGraw-Hill Companies, Inc. All rights reserved.

Chapter 14. Programming and Languages. McGraw-Hill/Irwin. Copyright 2008 by The McGraw-Hill Companies, Inc. All rights reserved. Chapter 14 Programming and Languages McGraw-Hill/Irwin Copyright 2008 by The McGraw-Hill Companies, Inc. All rights reserved. Competencies (Page 1 of 2) Describe the six steps of programming Discuss design

More information

EVALUATION. WA1844 WebSphere Process Server 7.0 Programming Using WebSphere Integration COPY. Developer

EVALUATION. WA1844 WebSphere Process Server 7.0 Programming Using WebSphere Integration COPY. Developer WA1844 WebSphere Process Server 7.0 Programming Using WebSphere Integration Developer Web Age Solutions Inc. USA: 1-877-517-6540 Canada: 1-866-206-4644 Web: http://www.webagesolutions.com Chapter 6 - Introduction

More information

River Dell Regional School District. Computer Programming with Python Curriculum

River Dell Regional School District. Computer Programming with Python Curriculum River Dell Regional School District Computer Programming with Python Curriculum 2015 Mr. Patrick Fletcher Superintendent River Dell Regional Schools Ms. Lorraine Brooks Principal River Dell High School

More information

PROBLEM SOLVING SEVENTH EDITION WALTER SAVITCH UNIVERSITY OF CALIFORNIA, SAN DIEGO CONTRIBUTOR KENRICK MOCK UNIVERSITY OF ALASKA, ANCHORAGE PEARSON

PROBLEM SOLVING SEVENTH EDITION WALTER SAVITCH UNIVERSITY OF CALIFORNIA, SAN DIEGO CONTRIBUTOR KENRICK MOCK UNIVERSITY OF ALASKA, ANCHORAGE PEARSON PROBLEM SOLVING WITH SEVENTH EDITION WALTER SAVITCH UNIVERSITY OF CALIFORNIA, SAN DIEGO CONTRIBUTOR KENRICK MOCK UNIVERSITY OF ALASKA, ANCHORAGE PEARSON Addison Wesley Boston San Francisco New York London

More information

WESTMORELAND COUNTY PUBLIC SCHOOLS 2011 2012 Integrated Instructional Pacing Guide and Checklist Computer Math

WESTMORELAND COUNTY PUBLIC SCHOOLS 2011 2012 Integrated Instructional Pacing Guide and Checklist Computer Math Textbook Correlation WESTMORELAND COUNTY PUBLIC SCHOOLS 2011 2012 Integrated Instructional Pacing Guide and Checklist Computer Math Following Directions Unit FIRST QUARTER AND SECOND QUARTER Logic Unit

More information

Outline. hardware components programming environments. installing Python executing Python code. decimal and binary notations running Sage

Outline. hardware components programming environments. installing Python executing Python code. decimal and binary notations running Sage Outline 1 Computer Architecture hardware components programming environments 2 Getting Started with Python installing Python executing Python code 3 Number Systems decimal and binary notations running

More information

Notes on Algorithms, Pseudocode, and Flowcharts

Notes on Algorithms, Pseudocode, and Flowcharts Notes on Algorithms, Pseudocode, and Flowcharts Introduction Do you like hot sauce? Here is an algorithm for how to make a good one: Volcanic Hot Sauce (from: http://recipeland.com/recipe/v/volcanic-hot-sauce-1125)

More information

Chapter 13 Computer Programs and Programming Languages. Discovering Computers 2012. Your Interactive Guide to the Digital World

Chapter 13 Computer Programs and Programming Languages. Discovering Computers 2012. Your Interactive Guide to the Digital World Chapter 13 Computer Programs and Programming Languages Discovering Computers 2012 Your Interactive Guide to the Digital World Objectives Overview Differentiate between machine and assembly languages Identify

More information

Microsoft Access is an outstanding environment for both database users and professional. Introduction to Microsoft Access and Programming SESSION

Microsoft Access is an outstanding environment for both database users and professional. Introduction to Microsoft Access and Programming SESSION 539752 ch01.qxd 9/9/03 11:38 PM Page 5 SESSION 1 Introduction to Microsoft Access and Programming Session Checklist Understanding what programming is Using the Visual Basic language Programming for the

More information

18 Software. design. Learning outcomes. Credit value: 10

18 Software. design. Learning outcomes. Credit value: 10 Credit value: 10 18 Software design While not every IT practitioner is a programmer, an understanding of the process by which programs are written is important. Developing software is a complex process

More information

CS 241 Data Organization Coding Standards

CS 241 Data Organization Coding Standards CS 241 Data Organization Coding Standards Brooke Chenoweth University of New Mexico Spring 2016 CS-241 Coding Standards All projects and labs must follow the great and hallowed CS-241 coding standards.

More information

Understanding class definitions

Understanding class definitions OFWJ_C02.QXD 2/3/06 2:28 pm Page 17 CHAPTER 2 Understanding class definitions Main concepts discussed in this chapter: fields methods (accessor, mutator) constructors assignment and conditional statement

More information

>print "hello" [a command in the Python programming language]

>print hello [a command in the Python programming language] What Is Programming? Programming is the process of writing the code of computer programs. A program is just a sequence of instructions that a computer is able to read and execute, to make something happen.

More information

The C Programming Language course syllabus associate level

The C Programming Language course syllabus associate level TECHNOLOGIES The C Programming Language course syllabus associate level Course description The course fully covers the basics of programming in the C programming language and demonstrates fundamental programming

More information

Wilson Area School District Planned Course Guide

Wilson Area School District Planned Course Guide Wilson Area School District Planned Course Guide Title of planned course: Introduction to Computer Programming Subject Area: Business Grade Level: 9-12 Course Description: In this course, students are

More information

PL / SQL Basics. Chapter 3

PL / SQL Basics. Chapter 3 PL / SQL Basics Chapter 3 PL / SQL Basics PL / SQL block Lexical units Variable declarations PL / SQL types Expressions and operators PL / SQL control structures PL / SQL style guide 2 PL / SQL Block Basic

More information

INFORMATION TECHNOLOGY: SOFTWARE DEVELOPMENT

INFORMATION TECHNOLOGY: SOFTWARE DEVELOPMENT Victorian Certificate of Education 2008 SUPERVISOR TO ATTACH PROCESSING LABEL HERE STUDENT NUMBER Letter Figures Words INFORMATION TECHNOLOGY: SOFTWARE DEVELOPMENT Written examination Section Thursday

More information

Creating a Simple Macro

Creating a Simple Macro 28 Creating a Simple Macro What Is a Macro?, 28-2 Terminology: three types of macros The Structure of a Simple Macro, 28-2 GMACRO and ENDMACRO, Template, Body of the macro Example of a Simple Macro, 28-4

More information

#include <Gamer.h> Gamer gamer; void setup() { gamer.begin(); } void loop() {

#include <Gamer.h> Gamer gamer; void setup() { gamer.begin(); } void loop() { #include Gamer gamer; void setup() { gamer.begin(); void loop() { Gamer Keywords Inputs Board Pin Out Library Instead of trying to find out which input is plugged into which pin, you can use

More information

Introduction to Python

Introduction to Python WEEK ONE Introduction to Python Python is such a simple language to learn that we can throw away the manual and start with an example. Traditionally, the first program to write in any programming language

More information

Exercise 4 Learning Python language fundamentals

Exercise 4 Learning Python language fundamentals Exercise 4 Learning Python language fundamentals Work with numbers Python can be used as a powerful calculator. Practicing math calculations in Python will help you not only perform these tasks, but also

More information

50 Computer Science MI-SG-FLD050-02

50 Computer Science MI-SG-FLD050-02 50 Computer Science MI-SG-FLD050-02 TABLE OF CONTENTS PART 1: General Information About the MTTC Program and Test Preparation OVERVIEW OF THE TESTING PROGRAM... 1-1 Contact Information Test Development

More information

The programming language C. sws1 1

The programming language C. sws1 1 The programming language C sws1 1 The programming language C invented by Dennis Ritchie in early 1970s who used it to write the first Hello World program C was used to write UNIX Standardised as K&C (Kernighan

More information

ALGORITHMS AND FLOWCHARTS. By Miss Reham Tufail

ALGORITHMS AND FLOWCHARTS. By Miss Reham Tufail ALGORITHMS AND FLOWCHARTS By Miss Reham Tufail ALGORITHMS AND FLOWCHARTS A typical programming task can be divided into two phases: Problem solving phase produce an ordered sequence of steps that describe

More information

Informatica e Sistemi in Tempo Reale

Informatica e Sistemi in Tempo Reale Informatica e Sistemi in Tempo Reale Introduction to C programming Giuseppe Lipari http://retis.sssup.it/~lipari Scuola Superiore Sant Anna Pisa October 25, 2010 G. Lipari (Scuola Superiore Sant Anna)

More information

Using FM. A guide for children and their families on how to use an FM solution with hearing aids

Using FM. A guide for children and their families on how to use an FM solution with hearing aids Using FM A guide for children and their families on how to use an FM solution with hearing aids Congratulations on your new FM solution!! This booklet tells you how to use your FM solution, where to use

More information

AQA GCSE in Computer Science Computer Science Microsoft IT Academy Mapping

AQA GCSE in Computer Science Computer Science Microsoft IT Academy Mapping AQA GCSE in Computer Science Computer Science Microsoft IT Academy Mapping 3.1.1 Constants, variables and data types Understand what is mean by terms data and information Be able to describe the difference

More information

CS 141: Introduction to (Java) Programming: Exam 1 Jenny Orr Willamette University Fall 2013

CS 141: Introduction to (Java) Programming: Exam 1 Jenny Orr Willamette University Fall 2013 Oct 4, 2013, p 1 Name: CS 141: Introduction to (Java) Programming: Exam 1 Jenny Orr Willamette University Fall 2013 1. (max 18) 4. (max 16) 2. (max 12) 5. (max 12) 3. (max 24) 6. (max 18) Total: (max 100)

More information

Mission 1: What is Energy?

Mission 1: What is Energy? Mission 1: What is Energy? What Do We Need Energy For? It s eight o clock in the morning and Nathan is still asleep. Is he using ENERGY? The alarm clock goes off. Nathan wakes up and gets ready for school.

More information

EMC Publishing. Ontario Curriculum Computer and Information Science Grade 11

EMC Publishing. Ontario Curriculum Computer and Information Science Grade 11 EMC Publishing Ontario Curriculum Computer and Information Science Grade 11 Correlations for: An Introduction to Programming Using Microsoft Visual Basic 2005 Theory and Foundation Overall Expectations

More information

How to Format a Bibliography or References List in the American University Thesis and Dissertation Template

How to Format a Bibliography or References List in the American University Thesis and Dissertation Template PC Word 2010/2007 Bibliographies and References Lists Page 1 of 7 Click to Jump to a Topic How to Format a Bibliography or References List in the American University Thesis and Dissertation Template In

More information

Microsoft Access 2010 Part 1: Introduction to Access

Microsoft Access 2010 Part 1: Introduction to Access CALIFORNIA STATE UNIVERSITY, LOS ANGELES INFORMATION TECHNOLOGY SERVICES Microsoft Access 2010 Part 1: Introduction to Access Fall 2014, Version 1.2 Table of Contents Introduction...3 Starting Access...3

More information

Welcome to Introduction to programming in Python

Welcome to Introduction to programming in Python Welcome to Introduction to programming in Python Suffolk One, Ipswich, 4:30 to 6:00 Tuesday Jan 14, Jan 21, Jan 28, Feb 11 Welcome Fire exits Toilets Refreshments 1 Learning objectives of the course An

More information

1 Introduction. 2 Overview of the Tool. Program Visualization Tool for Educational Code Analysis

1 Introduction. 2 Overview of the Tool. Program Visualization Tool for Educational Code Analysis Program Visualization Tool for Educational Code Analysis Natalie Beams University of Oklahoma, Norman, OK nataliebeams@gmail.com Program Visualization Tool for Educational Code Analysis 1 Introduction

More information

An Introduction to MPLAB Integrated Development Environment

An Introduction to MPLAB Integrated Development Environment An Introduction to MPLAB Integrated Development Environment 2004 Microchip Technology Incorporated An introduction to MPLAB Integrated Development Environment Slide 1 This seminar is an introduction to

More information

COMPUTER SCIENCE (5651) Test at a Glance

COMPUTER SCIENCE (5651) Test at a Glance COMPUTER SCIENCE (5651) Test at a Glance Test Name Computer Science Test Code 5651 Time Number of Questions Test Delivery 3 hours 100 selected-response questions Computer delivered Content Categories Approximate

More information

10 STEPS TO YOUR FIRST QNX PROGRAM. QUICKSTART GUIDE Second Edition

10 STEPS TO YOUR FIRST QNX PROGRAM. QUICKSTART GUIDE Second Edition 10 STEPS TO YOUR FIRST QNX PROGRAM QUICKSTART GUIDE Second Edition QNX QUICKSTART GUIDE A guide to help you install and configure the QNX Momentics tools and the QNX Neutrino operating system, so you can

More information

Good FORTRAN Programs

Good FORTRAN Programs Good FORTRAN Programs Nick West Postgraduate Computing Lectures Good Fortran 1 What is a Good FORTRAN Program? It Works May be ~ impossible to prove e.g. Operating system. Robust Can handle bad data e.g.

More information