1. Review of program specifications 2. Program design 3. Coding 4. Testing 5. Finalizing documentation

Size: px
Start display at page:

Download "1. Review of program specifications 2. Program design 3. Coding 4. Testing 5. Finalizing documentation"

Transcription

1 1.1 Computer Program A computer program is a detailed set of instructions that directs a computer to perform the tasks necessary to process data into information. These instructions, usually written by a computer programmer, can be coded in a variety of programming languages. To create programs that are correct and maintainable, programmers follow a process called program development. 1.2 Program Development Program development is the process of producing one or more programs to perform specific tasks on a computer Five Steps in Program Development The process of program development has evolved into a series of five steps that most experts agree should take place when any program is developed. 1. Review of program specifications 2. Program design 3. Coding 4. Testing 5. Finalizing documentation Although the process steps are shown sequentially, program development usually requires returning to previous steps to correct errors. Reviewing the Program Specifications The programmer reviews the specifications created by the systems analys during the system design phase. Program specifications can consist of data flow diagrams, system flowcharts, process specifications that indicate the action to be taken on the data, a data dictionary identifying the data elements that will be used, screen formats, report layouts and actual documents such as invoices or checks. These documents help the programmer understand the work that needs to be done by the program. Also, the programmer meets once or more with the user and the systems analyst who designed the system to understand the purpose of the program from the user s point of view. If the programmer believes some aspect of the design should be changed, such as a screen layout, he or she discusses it with the systems analyst of the user. If the change is agreed on, the written design specification is changed.

2 However, the programmer should not change the specified system without the agreement of the systems analyst and the user. If a change is authorized, it should be recorded in the system design. The systems analyst and the user through the system design have specified what is to be done. It is the programmer s job to determine how to do it. Large programming jobs are usually assigned to more than one programmer. In these situations, a good system design is essential so that each programmer can be given a logical portion of the system to be programmed. Program Design The programmer determines and documents the specific actions the computer will take to accomplish the desired tasks. During program design, a logical solution to the programming task is developed and documented. Determining the logic for a computer program can be an extremely complex task. To aid in program design and development, a method called structured program design is commonly used. Coding The programmer writes the actual program instructions. Programs are written in different languages, which each have particular rules on how to instruct the computer to perform specific tasks, such as read a record or multiply two numbers. If a program design is thorough, logical, and well-structured, the coding process is greatly simplified and can sometimes be a one-for-one translation of a design step into a program step. Today, program code or instructions are usually entered direct into the computer via a terminal and stored in a disk drive. Using this approach, the programmer can partially enter a program one at a time and finish entering it at a later time. Program instructions are added, deleted, and changed until the programmer believes that the program design has been fully translated into program instructions and the program is ready for testing. Testing The written programs are tested to make sure they perform as intended. A programmer can perform several types of tests depending on what needs to be diagnosed. Desk checking is the process of reading the program and mentally reviewing its logic. This is a simple process that can be performed even if the person did not make the program himself. This process can be compared to proofreading a letter before you send it. However, this process is not reliable in detecting errors that are not that obvious.

3 Syntax errors are violations of the grammar rules if the language in which the program was written. An example of a syntax error would be the program command READ being misspelled as RED. Syntax errors missed by the programmer during desk checking are identified by the computer when it decodes the program instructions. Logic testing is what most programmers think of when the term testing is used. During logic testing, the sequence of program instructions is tested to make sure it yields the correct result. Logic errors may be caused by a programming oversight or a design error. Usually, logic testing is performed with the use of a test data. This data should simulate the data that is expected to be entered or used in the program. This data should be developed by referring to the system design but it should also try to break the program by including data outside the range of data that will be entered during normal operations. To be able to obtain an independent and unbiased test of the program, test data and the review of test results should be the responsibility of someone other than the person who made the program. Debugging is the process of locating and correcting program errors, or bugs, found during testing. The term was coined when the failure of one of the first computers was traced to a moth that was stuck in the electric components of the computer. Finalizing Documentation Throughout the program development process the programmer documents, or writes explanatory information about the program. Documentation should be an going part of developing a program and should only be finalized (organized and brought together) after the program is successfully tested and read for implementation. Documentation developed during the programming process should also include a narrative description of the program, program design documents such as flowcharts or pseudocodes, program listings, and test results. Comments in the program itself are also an important part of program documentation. Documentation is valuable because it helps the next programmer who will be tasked to make changes to the program. Proper documentation can substantially reduce the amount of time the new programmer will have to spend gathering information about the program that he is about to edit. In this final step, documents produced during steps 1 through 4 are brought together and organized Program Maintenance Program maintenance includes all changes to a program once it is implemented and processing real transactions. Sometimes, maintenance is required to correct errors that were not found during the testing step. Other times, maintenance is required to make changes following the demand of the users.

4 1.3 Programming Language A programming language is a set of written words and symbols that allow the programmer r user to communicate with the computer. As with English, Spanish, Filipino, or other spoken languages, programming languages have rules that govern their use and these rules are what we call syntax Four Categories of Programming Languages There are hundreds of programming languages, each with its own syntax. Some languages were developed for specific computers and others because of their success, have been standardized and adapted to a wide range of computers. Programming languages can be classified into one of four categories: 1. Machine Language Machine language is the fundamental language of the computer s processor. Programs written in all other categories of languages are eventually converted into machine language before they are executed. Because the instruction set is unique for a particular processor, machine languages are different for computers that have different processors. The advantage of writing a program in machine language is that the programmer can control the computer directly and accomplish exactly what needs to be done. Disadvantages are that they take a long time to write and difficult to review if the programmer is trying to find an error. Because they are written for specific processors, machine languages are also called low-level languages. 2. Assembly Language To make it easier for programmers to remember the specific machine instruction codes, assembly languages were developed. An assembly language is similar to a machine language but uses abbreviations called mnemonics or symbolic operation code to represent the machine operation code. Allows symbolic addressing which means that a specific computer memory location can be referenced by a name or symbol such as TOTAL, instead of by its actual address as it would have to be referenced in machine language. Assembly language programs can also include macroinstructions that generate more than once machine language instruction. Assembly language is converted into machine language instructions bu a special program called an assembler.

5 Though assembly languages are easier to use than machine languages, these languages are still considered as a low-level language because they are so closely related to the specific design of the computer. 3. High Level Languages High level languages contains mathematical, rational, or logical operators which can be grouped together to form what appear to be sentences called program statements. High level languages are much easier to learn than machine or assembly languages. High level languages can run on different types of computers because its machine independent. High-level languages are translated in one of two ways: a. With a compiler A compiler converts an entire program into machine language that is usually stored on a disk for later execution. The program to be converted is called the source program and the machine language produced is called the object program or object code. Compilers check the program syntax, perform limited logic checking, and make sure that the data that is going to be used in comparisons or calculations such as discount rate, is properly defined somewhere in the program. An important feature of compilers is that they produce an error listing of all program statements that do not meet the program language rules. The listing helps the programmer make the necessary changes to debug or correct the program. Because machine language is unique to each processor, different computers require different compilers for the same language. Example: a mainframe, minicomputer, and a personal computer would each have different compilers that would each have different compilers that would translate the same source language program into the specific machine language for each computer. b. With an interpreter While a compiler translates an entire program, an interpreter translates one program stamen at a time and then executes the resulting machine language before translating the next program statement. When using an interpreter, each time he program is run, the source program is interpreted into machine language and executed. No object program is produced.

6 Interpreters are often used with personal computers that do not have the memory or computing power required by compilers. The advantage of interpreters is that the compiling process is not necessary before program changes can be tested. The disadvantage of interpreters is that interpreted programs do not run as fast as compiled programs because the translation to machine language occurs each time the program is run. 4. Fourth Generation Languages The evolution of computer languages is sometimes described in terms of generations with machine (first generation), assembly (second generation), and high-level languages (third generation). Each generation is offered significant improvements on usage terms and programming flexibility over the previous generation. Fourth generation languages are described as nonprocedural which means that the programmer does not specify the procedures to be used to accomplish a task as is done with lower procedural language generations. Instead of telling the computer how to do the task, the programmer tells the computer what is to be done usually by describing the desired output. Example: database query language The advantage of fourth generation languages is that they are results oriented and they can be used by users not familiar with programming. The disadvantage of fourth generation languages is that they do not provide as many processing options to the programmer as other language generations and they require more computer processing power than other language generations. However, most experts believe that their ease of use far outweighs these disadvantages and they predict that fourth generation languages will continue to be more widely used. An extension of fourth generation languages, sometimes referred to as the fifth generation, is a natural language. A natural language is a type of query language that allows the user to enter question as if he or she were speaking to another person. Example: A fourth generation query might be stated as: LIST SALESPERSON TOTALSALES BY REGION

7 A natural language version of the same query might be: TELL ME THE NAME OF EACH SALESPERSON AND THE TOTAL SALES FOR EACH REGION The natural language allows the user more flexibility in the structure of the query and can even ask the user a question if it does not understand what is meant by the initial query statement. A few natural languages are available today but they are not yet widely used. Table 1.1. Program Instruction for; machine language (printed in a hexadecimal form), assembly language, and a high-level language called C. Machine Language Assembly Language High-Level Language 9b df 46 0c 9b d9 c0 9b db 7e f2 9b d b d8 c9 9b d9 5e fc fild WORD PTR [bp+12];qty fld ST(0) fstp TBYTE PTR [bp-14] fld DWORD PTR [bp+4];price fmul ST(0),ST(1) fstp DWORD PTR [bp-4];gross gross = gty * price 9b d9 c0 9b dc 16 ac 00 9b dd d8 9b dd 7e f0 90 9b Ba 66 f1 93 9b dd c b d9 46 fc 9b dc 0e b4 00 9b de e9 9b d9 5e b Fld ST(0) fcom QWORD PTR $T20002 fstp ST(0) fstsw WORD PTR [bp-16] fwait mov ah,byte PTR [bp-15] sahf ffreest(0) jbe $l193 fld DWORD PTR [bp-4]; gross fmul QWORD PTR $T20003 fsub fstp DWORD PTR [pb+8];net fwait if (qty>ceiling) net = gross (gross * discount_rate); eb 0d 90 8b 46 fc 8b 56 fe a jmp SHORT $l194 nop $193 mov ax,word PTR [bp-4];gross mov dx,word PTR [bp-2]; mov WORD PTR [bp+8],az ;net mov WORD PTR [bp+10],dx $l194; Else net = gross;

Introduction to Computer Programming/Handout 01 Page 1 of 13

Introduction to Computer Programming/Handout 01 Page 1 of 13 Introduction to Computer Programming/Handout 01 Page 1 of 13 Table of Contents Table of Contents... 1 Learning Objectives... 2 Program... 2 Programmer... 2 Programming Language... 2 Types of Languages...

More information

Computing and compilers

Computing and compilers Computing and compilers Comp Sci 1570 to Outline 1 2 3 4 5 Evaluate the difference between hardware and software Find out about the various types of software Get a high level understanding of how program

More information

Game keystrokes or Calculates how fast and moves a cartoon Joystick movements how far to move a cartoon figure on screen figure on screen

Game keystrokes or Calculates how fast and moves a cartoon Joystick movements how far to move a cartoon figure on screen figure on screen Computer Programming Computers can t do anything without being told what to do. To make the computer do something useful, you must give it instructions. You can give a computer instructions in two ways:

More information

PROGRAMMING Programming is a creation of a set of commands or instructions which directs a computer in carrying out a task.

PROGRAMMING Programming is a creation of a set of commands or instructions which directs a computer in carrying out a task. LESSON 1 PROGRAM AND PROGRAMMING PROGRAM A computer program is a series of organised instructions that directs a computer to perform tasks. Without programs, computers are useless. A program is like a

More information

Floating Point Instructions

Floating Point Instructions Floating Point Instructions Ned Nedialkov McMaster University Canada SE 3F03 March 2013 Outline Storing data Addition Subtraction Multiplication Division Comparison instructions Some more instructions

More information

Programming Languages and Program Development Life Cycle Fall Introduction to Information and Communication Technologies CSD 102

Programming Languages and Program Development Life Cycle Fall Introduction to Information and Communication Technologies CSD 102 Programming Languages and Program Development Life Cycle Fall 2016 Introduction to Information and Communication Technologies CSD 102 Outline The most common approaches to program design and development

More information

Chapter 1: An Overview of Computers and Logic

Chapter 1: An Overview of Computers and Logic Chapter 1: An Overview of Computers and Logic Programming Logic and Design, Third Edition Comprehensive Objectives After studying Chapter 1, you should be able to: Understand computer components and operations

More information

Chapter Twelve. Systems Design and Development

Chapter Twelve. Systems Design and Development Chapter Twelve Systems Design and Development After reading this chapter, you should be able to: Describe the process of designing, programming, and debugging a computer program Explain why there are many

More information

ALICE: An introduction to progamming

ALICE: An introduction to progamming ALICE: An introduction to progamming What is Computer Science? Computer Science Do you know the difference between ICT and Computer Science? Any suggestions as to what jobs you could do if you were a Computer

More information

ITC213: STRUCTURED PROGRAMMING. Bhaskar Shrestha National College of Computer Studies Tribhuvan University

ITC213: STRUCTURED PROGRAMMING. Bhaskar Shrestha National College of Computer Studies Tribhuvan University ITC213: STRUCTURED PROGRAMMING Bhaskar Shrestha National College of Computer Studies Tribhuvan University Lecture 03: Program Development Life Cycle Readings: Not Covered in Textbook Program Development

More information

Salesforce ID of the Feature record is stored in the Product Option record to maintain the relationship.

Salesforce ID of the Feature record is stored in the Product Option record to maintain the relationship. 01 INTRODUCTION Welcome to the first edition of Manual Migration Training. In this video we ll take a high-level look at the steps necessary to perform a successful migration of SteelBrick content. In

More information

Computer Organization and Assembly Language. Lab Session 3

Computer Organization and Assembly Language. Lab Session 3 Lab Session 3 Objective: To be familiar with Basic Elements of Assembly Language Understanding Constants, Identifiers, Directives and Instructions. Theory: Integer Constants An integer constant (or integer

More information

C++ Programming Language Lecture 2 Problem Analysis and Solution Representation

C++ Programming Language Lecture 2 Problem Analysis and Solution Representation C++ Programming Language Lecture 2 Problem Analysis and Solution Representation By Ghada Al-Mashaqbeh The Hashemite University Computer Engineering Department Program Development Cycle Program development

More information

INFS 214: Introduction to Computing

INFS 214: Introduction to Computing INFS 214: Introduction to Computing Session 11 Principles of Programming Lecturer: Dr. Ebenezer Ankrah, Dept. of Information Studies Contact Information: eankrah@ug.edu.gh College of Education School of

More information

LESSON 13 OVERVIEW OF PROGRAM DEVELOPMENT PHASES

LESSON 13 OVERVIEW OF PROGRAM DEVELOPMENT PHASES PROGRAM DEVELOPMENT LESSON 13 OVERVIEW OF PROGRAM DEVELOPMENT PHASES In program development, there are five main phases. These phases are a series of steps that programmers undertake to build computer

More information

Chapter 1 Introduction to Computers

Chapter 1 Introduction to Computers Objectives Chapter 1 Introduction to Computers To review basic computer systems concepts To be able to understand the different computing environments and their components To review the history of computer

More information

ECE 375: Computer Organization and Assembly Language Programming

ECE 375: Computer Organization and Assembly Language Programming ECE 375: Computer Organization and Assembly Language Programming SECTION OVERVIEW Lab 5 Large Number Arithmetic Complete the following objectives: ˆ Understand and use arithmetic/alu instructions. ˆ Manipulate

More information

Lecture 01 & 02 Computer Programming

Lecture 01 & 02 Computer Programming Lecture 01 & 02 Computer Programming 15 Computer Systems Engineering Second Semester By: Mr. Ali Asghar Manjotho, Lecturer, CSE-MUET Contents Computer programming (LL 02) Why programming? (LL 02) Instructions

More information

Programming Languages and Program Development

Programming Languages and Program Development Programming Languages and Program Development 1 Programming Languages and How They Work Programming o Process used to create software programs Programmers o People who use programming languages to create

More information

Outline. Program development cycle. Algorithms development and representation. Examples.

Outline. Program development cycle. Algorithms development and representation. Examples. Outline Program development cycle. Algorithms development and representation. Examples. 1 Program Development Cycle Program development cycle steps: Problem definition. Problem analysis (understanding).

More information

Introduction to Computer Programming Using FORTRAN 77

Introduction to Computer Programming Using FORTRAN 77 Introduction to Computer Programming Using FORTRAN 77 Al-Dhaher, K. Garout, Y. Lafi, A. Al-Muhtaseb, H. Nazzal, A. Saeed, M. Yazdani, J. Zeidan, Y. August 1995 Second Edition Information and Computer Science

More information

(I m not printing out these notes! Take your own.)

(I m not printing out these notes! Take your own.) PT1420 Week 2: Software Program Design I (I m not printing out these notes! Take your own.) Today we'll be discussing designing programs: Algorithms and errors Flowcharts and pseudocode Sequence structures

More information

Technology in Action. Chapter Topics. Scope creep occurs when: 3/20/2013. Information Systems include all EXCEPT the following:

Technology in Action. Chapter Topics. Scope creep occurs when: 3/20/2013. Information Systems include all EXCEPT the following: Technology in Action Technology in Action Alan Evans Kendall Martin Mary Anne Poatsy Chapter 10 Behind the Scenes: Software Programming Ninth Edition Chapter Topics Understanding software programming Life

More information

Chapter 2.6: Testing and running a solution

Chapter 2.6: Testing and running a solution Chapter 2.6: Testing and running a solution 2.6 (a) Types of Programming Errors When programs are being written it is not surprising that mistakes are made, after all they are very complicated. There are

More information

S/W Programming & Languages

S/W Programming & Languages S/W Programming & Languages Overview Programming five steps Five generations High-level programming Object-oriented programming Internet programming 2 Programming What are the five steps of the programdevelopment

More information

Memory Addressing, Binary, and Hexadecimal Review

Memory Addressing, Binary, and Hexadecimal Review C++ By A EXAMPLE Memory Addressing, Binary, and Hexadecimal Review You do not have to understand the concepts in this appendix to become well-versed in C++. You can master C++, however, only if you spend

More information

Job Ready Assessment Blueprint. Computer Programming. Test Code: 3023 / Version: 01

Job Ready Assessment Blueprint. Computer Programming. Test Code: 3023 / Version: 01 Job Ready Assessment Blueprint Computer Programming Test Code: 3023 / Version: 01 Measuring What Matters Specific Competencies and Skills Tested in this Assessment: Analyze Programming Problems and Flowchart

More information

An Overview of Visual Basic.NET: A History and a Demonstration

An Overview of Visual Basic.NET: A History and a Demonstration OVERVIEW o b j e c t i v e s This overview contains basic definitions and background information, including: A brief history of programming languages An introduction to the terminology used in object-oriented

More information

Real Arithmetic. Fractional binary numbers. Fractional binary numbers examples. Binary real numbers

Real Arithmetic. Fractional binary numbers. Fractional binary numbers examples. Binary real numbers Fractional binary numbers 2 i 2 i 1 Real Arithmetic Computer Organization and Assembly Languages g Yung-Yu Chuang 4 2 1 b i b i 1 b 2 b 1 b 0. b 1 b 2 b 3 b j Representation 1/2 1/4 1/8 2 j Bits to right

More information

LAB WORK NO. 11 THE USAGE OF THE MATHEMATICAL COPROCESSOR

LAB WORK NO. 11 THE USAGE OF THE MATHEMATICAL COPROCESSOR LAB WORK NO. THE USAGE OF THE MATHEMATICAL COPROCESSOR. Object of laboratory The purpose of this lab is to familiarize the user with the mathematical coprocessor s functions, its instructions for real

More information

Discovering Computers Chapter 13 Programming Languages and Program Development

Discovering Computers Chapter 13 Programming Languages and Program Development Discovering Computers 2009 Chapter 13 Programming Languages and Program Development Chapter 13 Objectives Differentiate between machine and assembly languages Identify and discuss the purpose of procedural

More information

Week One: Introduction A SHORT INTRODUCTION TO HARDWARE, SOFTWARE, AND ALGORITHM DEVELOPMENT

Week One: Introduction A SHORT INTRODUCTION TO HARDWARE, SOFTWARE, AND ALGORITHM DEVELOPMENT Week One: Introduction A SHORT INTRODUCTION TO HARDWARE, SOFTWARE, AND ALGORITHM DEVELOPMENT Outline In this chapter you will learn: About computer hardware, software and programming How to write and execute

More information

An Introduction to Python (TEJ3M & TEJ4M)

An Introduction to Python (TEJ3M & TEJ4M) An Introduction to Python (TEJ3M & TEJ4M) What is a Programming Language? A high-level language is a programming language that enables a programmer to write programs that are more or less independent of

More information

CS101 Introduction to Programming Languages and Compilers

CS101 Introduction to Programming Languages and Compilers CS101 Introduction to Programming Languages and Compilers In this handout we ll examine different types of programming languages and take a brief look at compilers. We ll only hit the major highlights

More information

Statistics Case Study 2000 M. J. Clancy and M. C. Linn

Statistics Case Study 2000 M. J. Clancy and M. C. Linn Statistics Case Study 2000 M. J. Clancy and M. C. Linn Problem Write and test functions to compute the following statistics for a nonempty list of numeric values: The mean, or average value, is computed

More information

Lecture by: Hugo Johnson INTRODUCTION TO PROGRAMMING PART I

Lecture by: Hugo Johnson INTRODUCTION TO PROGRAMMING PART I Lecture by: Hugo Johnson (mrj@stmonicascollege.org) INTRODUCTION TO PROGRAMMING PART I WHY BOTHER LEARNING TO PROGRAM A COMPUTER? For the fun To fill a need For a new or second Career As an intellectual

More information

VARDHAMAN COLLEGE OF ENGINEERING (AUTONOMOUS) Shamshabad, Hyderabad

VARDHAMAN COLLEGE OF ENGINEERING (AUTONOMOUS) Shamshabad, Hyderabad Introduction to MS-DOS Debugger DEBUG In this laboratory, we will use DEBUG program and learn how to: 1. Examine and modify the contents of the 8086 s internal registers, and dedicated parts of the memory

More information

v.m.g.rajasekaran ramani sri sarada sakthi mat. Hr. sec. school

v.m.g.rajasekaran ramani sri sarada sakthi mat. Hr. sec. school v.m.g.rajasekaran ramani sri sarada sakthi mat. Hr. sec. school STD: XI COMPUTER SCIENCE L.1. Introduction to computers 2 marks 1. What is a computer? Computer: A computer is an electronic machine, capable

More information

System Analysis & design

System Analysis & design Assiut University Faculty of Computers and Information System Analysis & design Year 2 Academic Year 2014/ 2015 Term (2) 5 A PICTURE IS WORTH A 1,000 WORDS A process model is a graphical way of representing

More information

Chapter 7: User Defined Functions and Stack Mechanics

Chapter 7: User Defined Functions and Stack Mechanics Chapter 7: User Defined Functions and Stack Mechanics Objectives: (a) Demonstrate the ability to analyze simple programs that use library and user defined functions. (b) Describe the organization and contents

More information

UNIT V SYSTEM SOFTWARE TOOLS

UNIT V SYSTEM SOFTWARE TOOLS 5.1 Text editors UNIT V SYSTEM SOFTWARE TOOLS A text editor is a type of program used for editing plain text files. Text editors are often provided with operating systems or software development packages,

More information

Fundamentals of Programming. Lecture 1: Introduction to C Programming

Fundamentals of Programming. Lecture 1: Introduction to C Programming 1 Fundamentals of Programming Lecture 1: Introduction to C Programming Instructor: Fatemeh Zamani f_zamani@ce.sharif.edu Sharif University of Technology Computer Engineering Department 2 Outline Grading

More information

Chapter 6 Programming the LC-3

Chapter 6 Programming the LC-3 Chapter 6 Programming the LC-3 Based on slides McGraw-Hill Additional material 4/5 Lewis/Martin Aside: Booting the Computer How does it all begin? We have LC-3 hardware and a program, but what next? Initial

More information

Higher Computing Science Software Design and Development - Programming Summary Notes

Higher Computing Science Software Design and Development - Programming Summary Notes Higher Computing Science Software Design and Development - Programming Summary Notes Design notations A design notation is the method we use to write down our program design. Pseudocode is written using

More information

APPLESHARE PC UPDATE INTERNATIONAL SUPPORT IN APPLESHARE PC

APPLESHARE PC UPDATE INTERNATIONAL SUPPORT IN APPLESHARE PC APPLESHARE PC UPDATE INTERNATIONAL SUPPORT IN APPLESHARE PC This update to the AppleShare PC User's Guide discusses AppleShare PC support for the use of international character sets, paper sizes, and date

More information

1) What is the first step of the system development life cycle (SDLC)? A) Design B) Analysis C) Problem and Opportunity Identification D) Development

1) What is the first step of the system development life cycle (SDLC)? A) Design B) Analysis C) Problem and Opportunity Identification D) Development Technology In Action, Complete, 14e (Evans et al.) Chapter 10 Behind the Scenes: Software Programming 1) What is the first step of the system development life cycle (SDLC)? A) Design B) Analysis C) Problem

More information

Foundations, Reasoning About Algorithms, and Design By Contract CMPSC 122

Foundations, Reasoning About Algorithms, and Design By Contract CMPSC 122 Foundations, Reasoning About Algorithms, and Design By Contract CMPSC 122 I. Logic 101 In logic, a statement or proposition is a sentence that can either be true or false. A predicate is a sentence in

More information

EKT 120/4 Computer Programming KOLEJ UNIVERSITI KEJURUTERAAN UTARA MALAYSIA

EKT 120/4 Computer Programming KOLEJ UNIVERSITI KEJURUTERAAN UTARA MALAYSIA EKT 120/4 Computer Programming KOLEJ UNIVERSITI KEJURUTERAAN UTARA MALAYSIA AZUWIR MOHD NOR ROOM: Pusat Pengajian CABIN C PHONE: (04) 979 8249 Email: azuwir@kukum.edu.my Office hours: make appoinment or

More information

Unit E Step-by-Step: Programming with Python

Unit E Step-by-Step: Programming with Python Unit E Step-by-Step: Programming with Python Computer Concepts 2016 ENHANCED EDITION 1 Unit Contents Section A: Hello World! Python Style Section B: The Wacky Word Game Section C: Build Your Own Calculator

More information

Summer 2003 Lecture 1 06/09/03

Summer 2003 Lecture 1 06/09/03 Summer 2003 Lecture 1 06/09/03 General Overview of Class: This class is an introduction to the low level operation of microprocessor-based computer systems. We will cover the operation of the Central Processor

More information

Computer Languages, Algorithms and Program Development. How do computers know what we want them to do?

Computer Languages, Algorithms and Program Development. How do computers know what we want them to do? Computer Languages, Algorithms and Program Development How do computers know what we want them to do? Communicating with a Computer Communication cycle One complete unit of communication. An idea to be

More information

Meeting 1 Introduction to Functions. Part 1 Graphing Points on a Plane (REVIEW) Part 2 What is a function?

Meeting 1 Introduction to Functions. Part 1 Graphing Points on a Plane (REVIEW) Part 2 What is a function? Meeting 1 Introduction to Functions Part 1 Graphing Points on a Plane (REVIEW) A plane is a flat, two-dimensional surface. We describe particular locations, or points, on a plane relative to two number

More information

Steps to program development

Steps to program development Automate processes - Programming Concepts and Design Steps to program development A computer program is a set of formal instructions, which the computer executes in order to carry out some designated task.

More information

Computing Seminar Introduction Oct

Computing Seminar Introduction Oct Computing Seminar Introduction Oct 6 2010 Outline today Programming/computing basics terminology, high level concepts (variables, control flow, input/output) Before next week... Make sure you can login

More information

Unit. Programming Fundamentals. School of Science and Technology INTRODUCTION

Unit. Programming Fundamentals. School of Science and Technology INTRODUCTION INTRODUCTION Programming Fundamentals Unit 1 In order to communicate with each other, we use natural languages like Bengali, English, Hindi, Urdu, French, Gujarati etc. We have different language around

More information

Fundamentals of Programming (Python) Basic Concepts. Ali Taheri Sharif University of Technology Spring 2018

Fundamentals of Programming (Python) Basic Concepts. Ali Taheri Sharif University of Technology Spring 2018 Fundamentals of Programming (Python) Basic Concepts Ali Taheri Sharif University of Technology Outline 1. What is a Computer? 2. Computer System Organization 3. What is a Computer Program? 4. Programming

More information

Computer Organization & Assembly Language Programming

Computer Organization & Assembly Language Programming Computer Organization & Assembly Language Programming CSE 2312 Lecture 11 Introduction of Assembly Language 1 Assembly Language Translation The Assembly Language layer is implemented by translation rather

More information

TASKS IN THE SYSTEMS DEVELOPMENT LIFE CYCLE

TASKS IN THE SYSTEMS DEVELOPMENT LIFE CYCLE SUMMARY AND REFERENCE ACTG 313 TASKS IN THE SYSTEMS DEVELOPMENT LIFE CYCLE PREPARATION PHASE 1. Identification of the Need for a new Information System 2. Initial Feasibility Study (always flawed because

More information

Algorithm: 1. Introduction

Algorithm: 1. Introduction Algorithm 1 Algorithm: a finite set of instructions that specify a sequence of operations to be carried out in order to solve a specific problem or class of problems. [Zwass] Properties of algorithms:

More information

ORG ; TWO. Assembly Language Programming

ORG ; TWO. Assembly Language Programming Dec 2 Hex 2 Bin 00000010 ORG ; TWO Assembly Language Programming OBJECTIVES this chapter enables the student to: Explain the difference between Assembly language instructions and pseudo-instructions. Identify

More information

Introduction to Programming

Introduction to Programming CHAPTER 1 Introduction to Programming Begin at the beginning, and go on till you come to the end: then stop. This method of telling a story is as good today as it was when the King of Hearts prescribed

More information

COPYRIGHTED MATERIAL. What Is Assembly Language? Processor Instructions

COPYRIGHTED MATERIAL. What Is Assembly Language? Processor Instructions What Is Assembly Language? One of the first hurdles to learning assembly language programming is understanding just what assembly language is. Unlike other programming languages, there is no one standard

More information

HIGHER SECONDARY FIRST YEAR 2 MARK & 5 MARK NOTES CHAPTER 1 1. INTRODUCTION TO COMPUTER

HIGHER SECONDARY FIRST YEAR 2 MARK & 5 MARK NOTES CHAPTER 1 1. INTRODUCTION TO COMPUTER 1. What is computer? CHAPTER 1 1. INTRODUCTION TO COMPUTER A computer is an electronic machine, capable of performing basic operations like addition, subtraction, multiplication, division, etc. The computer

More information

CHARUTAR VIDYA MANDAL S SEMCOM Vallabh Vidyanagar

CHARUTAR VIDYA MANDAL S SEMCOM Vallabh Vidyanagar CHARUTAR VIDYA MANDAL S SEMCOM Vallabh Vidyanagar Faculty Name: Ami D. Trivedi Class: FYBCA Subject: US01CBCA01 (Fundamentals of Computer Programming Using C) *UNIT 1 Concept of Algorithm, Flowchart and

More information

Copyright 2005 Department of Computer & Information Science

Copyright 2005 Department of Computer & Information Science Introducing Programming Copyright 2005 Goals By the end of this lecture, you should Understand the different types of programming languages. Understand the basic procedures in a program as input, processing

More information

Lecture C7: Assembly programming

Lecture C7: Assembly programming Lecture C7: Assembly programming Response to 'Muddiest Part of the Lecture Cards' (58 respondents, out of 74students) 1) The Assembly commands? (10 students) We can and will review the commands during

More information

Programming Languages

Programming Languages Programming Languages Lecture 3 Section 1.3 Robb T. Koether Hampden-Sydney College Mon, Sep 2, 2013 Robb T. Koether (Hampden-Sydney College) Programming Languages Mon, Sep 2, 2013 1 / 25 1 Programming

More information

Programming Languages

Programming Languages Programming Languages Lecture 3 Robb T. Koether Hampden-Sydney College Fri, Aug 31, 2018 Robb T. Koether (Hampden-Sydney College) Programming Languages Fri, Aug 31, 2018 1 / 23 1 Programming Languages

More information

STUDENT OUTLINE. Lesson 8: Structured Programming, Control Structures, if-else Statements, Pseudocode

STUDENT OUTLINE. Lesson 8: Structured Programming, Control Structures, if-else Statements, Pseudocode STUDENT OUTLINE Lesson 8: Structured Programming, Control Structures, if- Statements, Pseudocode INTRODUCTION: This lesson is the first of four covering the standard control structures of a high-level

More information

How to approach a computational problem

How to approach a computational problem How to approach a computational problem A lot of people find computer programming difficult, especially when they first get started with it. Sometimes the problems are problems specifically related to

More information

COMPILER DESIGN. For COMPUTER SCIENCE

COMPILER DESIGN. For COMPUTER SCIENCE COMPILER DESIGN For COMPUTER SCIENCE . COMPILER DESIGN SYLLABUS Lexical analysis, parsing, syntax-directed translation. Runtime environments. Intermediate code generation. ANALYSIS OF GATE PAPERS Exam

More information

Component V Supporting Materials / Learn More Interesting Facts. Interesting Facts

Component V Supporting Materials / Learn More Interesting Facts. Interesting Facts Component V Supporting Materials / Learn More 1.4.1 Interesting Facts No. Interesting Facts 1. All computers operate by following machine language programs. 2. Machine language programs are long sequence

More information

Software Requirements Specification (SRS) Software Requirements Specification for <Name of Project>

Software Requirements Specification (SRS) Software Requirements Specification for <Name of Project> Software Requirements Specification (SRS) Software Requirements Specification for Version Release Responsible Party Major Changes Date 0.1 Initial Document Release for

More information

LEARN JAVASCRIPT VISUALLY BY IVELIN DEMIROV DOWNLOAD EBOOK : LEARN JAVASCRIPT VISUALLY BY IVELIN DEMIROV PDF

LEARN JAVASCRIPT VISUALLY BY IVELIN DEMIROV DOWNLOAD EBOOK : LEARN JAVASCRIPT VISUALLY BY IVELIN DEMIROV PDF LEARN JAVASCRIPT VISUALLY BY IVELIN DEMIROV DOWNLOAD EBOOK : LEARN JAVASCRIPT VISUALLY BY IVELIN DEMIROV PDF Click link bellow and free register to download ebook: LEARN JAVASCRIPT VISUALLY BY IVELIN DEMIROV

More information

NOCTI Study Guide Yesterday s Study Questions. Correct Answer are included.

NOCTI Study Guide Yesterday s Study Questions. Correct Answer are included. Name: May 1, 2013 NOCTI Study Guide Coding Programs! Yesterday s Study Questions. Correct Answer are included. 1. A typical non-functional user requirement is/are A. What the user interface looks like

More information

Week 4 Tutorial: Verilog Primer Part 2. By Steve Engels

Week 4 Tutorial: Verilog Primer Part 2. By Steve Engels Week 4 Tutorial: Verilog Primer Part 2 By Steve Engels Reflections on Verilog By now, you ve seen several elements of the Verilog language, but it s good to put them into perspective again. Verilog is

More information

FLOW CHART AND PSEUDO CODE

FLOW CHART AND PSEUDO CODE FLOW CHART AND PSEUDO CODE Flowchart A Flowchart is a pictorial representation of an algorithm. The First flowchart is made by John Von Newman in 1945. It is a symbolic diagram of operation sequence, dataflow,

More information

(2 1) What does evaluate to? What does evaluate to? What does evaluate to?

(2 1) What does evaluate to? What does evaluate to? What does evaluate to? Order of Operations (Time 20 minutes) Math is a language, just like English, Spanish, or any other language. We use nouns, like "bread", "tomato", "mustard" and "cheese" to describe physical objects. Math

More information

Gateway Regional School District VERTICAL ALIGNMENT OF MATHEMATICS STANDARDS Grades 3-6

Gateway Regional School District VERTICAL ALIGNMENT OF MATHEMATICS STANDARDS Grades 3-6 NUMBER SENSE & OPERATIONS 3.N.1 Exhibit an understanding of the values of the digits in the base ten number system by reading, modeling, writing, comparing, and ordering whole numbers through 9,999. Our

More information

PRINCIPLES OF COMPILER DESIGN UNIT I INTRODUCTION TO COMPILERS

PRINCIPLES OF COMPILER DESIGN UNIT I INTRODUCTION TO COMPILERS Objective PRINCIPLES OF COMPILER DESIGN UNIT I INTRODUCTION TO COMPILERS Explain what is meant by compiler. Explain how the compiler works. Describe various analysis of the source program. Describe the

More information

1.1 Introduction. Fig.1.1 Abstract view of the components of a computer system.

1.1 Introduction. Fig.1.1 Abstract view of the components of a computer system. 1.1 Introduction An operating system is a program that manages the computer hardware. It also provides a basis for application programs and acts as an intermediary between a user of a computer and the

More information

Chapter 3 Developing a Program

Chapter 3 Developing a Program Chapter 3 Developing a Program THE SUCCESS TRICK 3.1 The Program Development Cycle Problem solving principles Completely understand the problem Devise a plan to solve it Carry out the plan Review the results

More information

MATH CO-PROCESSOR Rajiv R Bhandari

MATH CO-PROCESSOR Rajiv R Bhandari MATH CO-PROCESSOR 8087 1 Rajiv R Bhandari Compatible Processor and Coprocessor Processors 1. 8086 & 8088 2. 80286 3. 80386DX 4. 80386SX 5. 80486DX 6. 80486SX Coprocessors 1. 8087 2. 80287,80287XL 3. 80287,80387DX

More information

CSCI 1100L: Topics in Computing Lab Lab 11: Programming with Scratch

CSCI 1100L: Topics in Computing Lab Lab 11: Programming with Scratch CSCI 1100L: Topics in Computing Lab Lab 11: Programming with Scratch Purpose: We will take a look at programming this week using a language called Scratch. Scratch is a programming language that was developed

More information

LESSON 13: LANGUAGE TRANSLATION

LESSON 13: LANGUAGE TRANSLATION LESSON 13: LANGUAGE TRANSLATION Objective Interpreters and Compilers. Language Translation Phases. Interpreters and Compilers A COMPILER is a program that translates a complete source program into machine

More information

PROGRAMMING CONCEPTS

PROGRAMMING CONCEPTS ch01.qxd 9/19/02 9:17 AM Page 1 C H A P T E R 1 PROGRAMMING CONCEPTS CHAPTER OBJECTIVES In this Chapter, you will learn about: The Nature of a Computer Program and Programming Languages Page 2 Good Programming

More information

CSc 10200! Introduction to Computing. Lecture 1 Edgardo Molina Fall 2013 City College of New York

CSc 10200! Introduction to Computing. Lecture 1 Edgardo Molina Fall 2013 City College of New York CSc 10200! Introduction to Computing Lecture 1 Edgardo Molina Fall 2013 City College of New York 1 Introduction to Computing Lectures: Tuesday and Thursday s (2-2:50 pm) Location: NAC 1/202 Recitation:

More information

PROBLEM SOLVING AND PYTHON PROGRAMMING

PROBLEM SOLVING AND PYTHON PROGRAMMING ALGORITHM UNIT-1 It is defined as a sequence of instructions that describe a method for solving a problem. In other words it is a step by step procedure for solving a problem. Properties of Algorithms

More information

CS102 Unit 2. Sets and Mathematical Formalism Programming Languages and Simple Program Execution

CS102 Unit 2. Sets and Mathematical Formalism Programming Languages and Simple Program Execution 1 CS102 Unit 2 Sets and Mathematical Formalism Programming Languages and Simple Program Execution 2 Review Show how "Hi!\n" would be stored in the memory below Use decimal to represent each byte Remember

More information

Objectives. Connecting with Computer Science 2

Objectives. Connecting with Computer Science 2 Objectives Learn how software engineering is used to create applications Learn some of the different software engineering process models Understand what a design document is and how it should be used during

More information

Chapter 2: Input, Processing, and Output

Chapter 2: Input, Processing, and Output Chapter 2: Input, Processing, and Output Starting Out with Programming Logic & Design Second Edition by Tony Gaddis Copyright 2010 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter Topics

More information

Chapter 2. Designing a Program. Input, Processing, and Output Fall 2016, CSUS. Chapter 2.1

Chapter 2. Designing a Program. Input, Processing, and Output Fall 2016, CSUS. Chapter 2.1 Chapter 2 Input, Processing, and Output Fall 2016, CSUS Designing a Program Chapter 2.1 1 Algorithms They are the logic on how to do something how to compute the value of Pi how to delete a file how to

More information

In executable we have several anti-debugging, anti-tracing and anti-patching tricks:

In executable we have several anti-debugging, anti-tracing and anti-patching tricks: ------------------------------------------------------------------ Author: ReWolf e-mail: rewolf@rewolf.pl www : http://rewolf.pl ------------------------------------------------------------------ HACKER

More information

Problem Solving and Program Design - Chapter 1. Cory L. Strope

Problem Solving and Program Design - Chapter 1. Cory L. Strope Problem Solving and Program Design - Chapter 1 Cory L. Strope Overview of Computers and Programming Computer Hardware Computer Software Software Development (Problem Solving) Pseudocode Flowchart Intro.

More information

EXPRESSIONS AND ASSIGNMENT CITS1001

EXPRESSIONS AND ASSIGNMENT CITS1001 EXPRESSIONS AND ASSIGNMENT CITS1001 Scope of this lecture Assignment statements Expressions ASSIGNMENT STATEMENT Assignment Statements!!!mark = 50;!! Read as the value in variable on the LHS becomes equal

More information

Benefits of Programming Graphically in NI LabVIEW

Benefits of Programming Graphically in NI LabVIEW Benefits of Programming Graphically in NI LabVIEW Publish Date: Jun 14, 2013 0 Ratings 0.00 out of 5 Overview For more than 20 years, NI LabVIEW has been used by millions of engineers and scientists to

More information

Lesson 1. Introduction to Programming OBJECTIVES

Lesson 1. Introduction to Programming OBJECTIVES Introduction to Programming If you re new to programming, you might be intimidated by code and flowcharts. You might even wonder how you ll ever understand them. This lesson offers some basic ideas and

More information

Benefits of Programming Graphically in NI LabVIEW

Benefits of Programming Graphically in NI LabVIEW 1 of 8 12/24/2013 2:22 PM Benefits of Programming Graphically in NI LabVIEW Publish Date: Jun 14, 2013 0 Ratings 0.00 out of 5 Overview For more than 20 years, NI LabVIEW has been used by millions of engineers

More information

Data mining overview. Data Mining. Data mining overview. Data mining overview. Data mining overview. Data mining overview 3/24/2014

Data mining overview. Data Mining. Data mining overview. Data mining overview. Data mining overview. Data mining overview 3/24/2014 Data Mining Data mining processes What technological infrastructure is required? Data mining is a system of searching through large amounts of data for patterns. It is a relatively new concept which is

More information

LANGUAGE TRANSLATORS. Workbook. etghallem. St. Aloysius College Computing

LANGUAGE TRANSLATORS. Workbook. etghallem. St. Aloysius College Computing LANGUAGE TRANSLATORS Workbook St. Aloysius College Computing Contents Programming... 2... 3 Types of Programming Languages... 3 Low Level Languages (LLL)... 3 High Level Languages (HLL)... 3 High Level

More information