Algorithms, Flowcharts & Program Design. ComPro

Size: px
Start display at page:

Download "Algorithms, Flowcharts & Program Design. ComPro"

Transcription

1 Algorithms, Flowcharts & Program Design ComPro

2 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 an algorithm (diagrammatic representation of the step-by-step solution to a given problem). Program Design: o steps a programmer should do before they start coding the program in a specific language. o Proper program design helps other programmers to maintain the program in the future.

3 Example The call-me algorithm: o When your train arrives, call my mobile phone. o Meet me outside the railway station. There are often many different algorithms to accomplish any given task. Each algorithm has advantages and disadvantages in different situations.

4 Reason Using Algorithm Efficiency: time, cost Abstraction: complicated problems can be distilled into simpler ones for which wellknown algorithms. Reusability: Algorithms are often reusable in many different situations.

5 Expressing Algorithms many different notations: natural languages, pseudocode, flowcharts. o Natural language: tend to be verbose and ambiguous (rarely used for complex algorithm). o Pseudocode and flowcharts: are structured ways, avoid many ambiguities common in natural language statements. Sometimes it is helpful in the description of an algorithm to supplement small flowcharts with natural language and/or arithmetic expressions written inside block diagrams to summarize what the flowcharts are accomplishing.

6 Example Algorithm using natural language statements: o Assume the first item is largest. o Look at each of the remaining items in the list and if it is larger than the largest item so far, make a note of it. o The last noted item is the largest item in the list when the process is complete. Algorithm using pseudocode: largest = La for each item in the list (Length (L) 1), do if the item largest, then largest = the item return largest

7 Benefits of Using Algorithms Reduces the task into a series of smaller steps of more manageable size. Problems can be approached as a series of small, solvable sub-problems. Efficient.

8 Flowcharts Flowchart is a type of diagram (graphical or symbolic) that represents an algorithm or process. Each step in the process is represented by a different symbol and contains a short description of the process step. The flow chart symbols are linked together with arrows showing the process flow direction. A flowchart typically shows the flow of data in a process.

9 Why Flowcharts Flowcharts are used in analyzing, designing, documenting or managing a process or program in various fields. Flowcharts are generally drawn in the early stages of formulating computer solutions. Flowcharts often facilitate communication between programmers and business people.

10 Example Read X, Y, Z Compute Sum (S) as X + Y + Z Compute Average (A) as S / 3 Compute Product (P) as X x Y x Z

11 Advantages of Using Flowcharts Communication: a better way of logical communicating. Effective analysis: problem can be analysed in more effective way. Proper documentation. Efficient Coding: a guide or blueprint during the systems analysis and program development phase. Proper Debugging: helps in debugging process. Efficient Program Maintenance: easy with the help of flowchart

12 Limitations of Using Flowcharts Complex logic: Sometimes, the program logic is quite complicated. In that case, flowchart becomes complex and clumsy. Alterations and Modifications: If alterations are required the flowchart may require redrawing completely. Reproduction: As the flowchart symbols cannot be typed, reproduction of flowchart becomes a problem.

13 Flowchart Symbols Terminator: Start or End Process Decision: Yes/No question or True/False Connector: jump in the process flow Data: data input or output (I/O) Delay Arrow: flow of control in a process.

14 Basic Symbol Name Symbol Use in Flowchart Oval Denotes the beginning or end of the program Parallelogram Denotes an input operation Rectangle Denotes a process to be carried out e.g. addition, subtraction, division etc. Diamond Denotes a decision (or branch) to be made. The program should continue along one of two routes. (e.g. IF/THEN/ELSE) Hybrid Denotes an output operation Flow line Denotes the direction of logic flow in the program

15 Example Terminator Process Decision Connector Data Delay Arrow

16 Example Terminator Process Decision Connector Data Delay Arrow

17 Ex. : convert the length in feet to centimeter Algorithm: o Step 1: Input Lft o Step 2: Lcm Lft x 30 o Step 3: Print Lcm Pseudocode: o Input the length in feet (Lft) o Calculate the length in cm (Lcm) by multiplying LFT with 30 o Print length in cm (LCM) Flowchart START Input Lft Lcm Lft x 30 Print Lcm STOP

18 Ex. : read the two sides of a rectangle and calculate its area START Algorithm o Step 1: Input W,L o Step 2: A L x W o Step 3: Print A Input W, L A L x W Print A Pseudocode STOP o Input the width (W) and Length (L) of a rectangle o Calculate the area (A) by multiplying L with W o Print A

19 Ex. : calculate the roots of a quadratic equation Equation: 2 ax bx c 0 Calculate: d = sqrt (b 2 4ac), and Roots: o x1 = ( b + d)/2a and o x2 = ( b d)/2a

20 Ex. Roots of Quadratic Eq. Algorithm: o Step 1: Input a, b, c o Step 2: d=sqrt (b b 4 a c) o Step 3: x1=( b + d) / (2 x a) o Step 4: x2=( b d) / (2 x a) o Step 5: Print x1, x2 Pseudocode: o Input the coefficients (a, b, c) o Calculate d o Calculate x1 o Calculate x2 o Print x1 and x2 START Input a, b, c d sqrt(b x b 4 x a x c) x 1 ( b + d) / (2 x a) X 2 ( b d) / (2 x a) Print x 1,x 2 STOP

21 Ex. Algorithm: o? START Input VALUE1,VALUE2 Pseudocode: o? Y MAX VALUE1 is VALUE1>VALUE2 N MAX VALUE2 Print The largest value is, MAX STOP

22 Program Design The phase of program development: o Determination of hardware and software resources needed by the program are identified and the logic to be used by the program. Program Design consists of the steps a programmer should do before they start coding the program in a specific language.

23 Activities in Program Design Understanding the Program (user need) System Analyst o variety of documentation items (include screen layouts, narrative descriptions, documentation showing, the processing steps, etc. o Understanding the purpose of a program (inputs, processing, outputs) Using Design Tools to Create a Model Develop Test Data

24 Test Data Test data consists of the user providing some input values and predicting the outputs. This can be quite easy for a simple program and the test data can be used to check the model to see if it produces the correct results.

25 Components of Program Design Problem definition, leading to a program specification, Modular program design, which refines the specification, Module composition, which translates specification into executable program, Module/program evaluation and testing, during which you refine the program and find errors, Program documentation, which pervades all other phases.

26 Approach The two most common ones are procedural programming and objectoriented programming. Procedures may use objects, and objects usually use procedures, called methods. The object-oriented code takes more planning and is significantly larger, but it is generally accepted to be easier.

27 Approach

28 Object-Oriented Formulations The process of creating an objectoriented (OO) formulation in program design involves at least three stages: o Object-Oriented Analysis (OOA), o Object-Oriented Design (OOD), and o Object-Oriented Programming (OOP).

29 Object-Oriented Analysis Find objects and classes o Create an abstraction of the problem domain. o Give attributes behaviours, classes, and objects meaningful names. o Identify structures pertinent to the system s complexity and responsibilities. o Observe information needed to interact with the system, as well as information to be stored. o Look for information re-use; are there multiple structures; can sub-systems be inherited? Define the attributes Define the behavior Diagram the system

30 Object-Oriented Analysis Find objects and classes Define the attributes o Select meaningful names. o Describe the attribute and any constraints. o What knowledge does it possess or communicate? o Put it in the type or class that best describes it. o Select accessibility as public or private. o Identify the default, lower and upper bounds. o Identify the different states it may hold. o Note items that can either be stored or re-computed. Define the behavior Diagram the system

31 Object-Oriented Analysis Find objects and classes Define the attributes Define the behavior o Give the behaviours meaningful names. o What questions should each be able to answer? o What services should it provide? o Which attribute components should it access? o Define its accessibility (public or private). o Define its interface prototype. o Define any input/output interfaces. o Identify a constructor with error checking to supplement the intrinsic constructor. o Identify a default constructor. Diagram the system

32 Object-Oriented Analysis Find objects and classes Define the attributes Define the behavior Diagram the system o Employ an OO graphical representation.

33 Object-Oriented Design Improve and add to the OOA results during OOD. Divide the member functions into constructors, accessors, agents and servers. Design the human interaction components. Design the task management components. Design the data management components. Identify operators to be overloaded. Identify operators to be defined. Design the interface prototypes for member functions and for operators. Design code for re-use through kind of and part of hierarchies. Identify base classes from which other classes are derived. Establish the exception handling procedures for all possible errors.

34 Object-Orientedness Object-based modular structure: o Systems are modularized on the basis of their data structure. Data Abstraction: o Objects should be described as implementations of abstract data types. Automatic memory management: o Unused objects should be de-allocated by the language system. Classes: o Every non-simple type is a module, and every high-level module is a type. Inheritance o A class may be defined as an extension or restriction of another. Polymorphism and dynamic binding: o Entities are permitted to refer to objects of more than one class and operations can have different realizations in different classes. Multiple inheritances: o Can declare a class as heir to more than one class.

35 Summary Algorithm is the sequence of steps to be performed in order to solve a problem by the computer. Three reasons for using algorithms are efficiency, abstraction and reusability. Algorithms can be expressed in many different notations, including natural languages, pseudocode, flowcharts and programming languages.

36 Summary Analysis of algorithms is the theoretical study of computer program performance and resource usage, and is often practised abstractly without the use of specific programming language or implementation. The practical goal of algorithm analysis is to predict the performance of different algorithms in order to guide program design decisions.

37 Summary Most algorithms do not perform the same in all cases; normally an algorithm s performance varies with the data passed to it. Typically, three cases are recognized: the best case, average case and worst case. Worst case analysis of algorithms is considered to be crucial to applications such as games, finance and robotics.

38 Summary Flowchart : diagrammatic representation of the step-bystep solution to a given problem. Flowcharts are used in analyzing, designing, documenting or managing a process or program in various fields. Benefits of using flowcharts include ease of communication, effective and efficient analysis and coding, proper documentation and maintenance. Limitations of using flowcharts include complex logic and multiple modifications.

39 Summary Program Design consists of the steps a programmer should do before they start coding the program in a specific language. Program design must be extremely structured, having the ultimate intentions of performing a specific calculation efficiently with attractive, understandable, efficient programs. Three broad areas of activities in program design: (1) Understanding the Program, (2) Using Design Tools to Create a Model and (3) Develop Test Data The process of creating an OO formulation in program design involves at three stages: 1) OOA, 2) OOD, and 3) OOP.

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

Algorithms, Flowcharts & Program Design

Algorithms, Flowcharts & Program Design INTRODUCTION TO C++ UNIT 1 Algorithms, Flowcharts & Program Design 1 Unit Structure: 1.1 Objectives 1.2 Introduction 1.3 Algorithms 1.3.1 Expressing Algorithms 1.3.2 Benefits of Using Algorithms 1.3.3

More information

ALGORITHMS AND FLOWCHARTS

ALGORITHMS AND FLOWCHARTS ALGORITHMS AND FLOWCHARTS A typical programming task can be divided into two phases: Problem solving phase produce an ordered sequence of steps that describe solution of problem this sequence of steps

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

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

Chapter 1 An Introduction to Computers and Problem Solving

Chapter 1 An Introduction to Computers and Problem Solving hapter 1 n Introduction to omputers and Problem Solving Section 1.1 n Introduction to omputers 1. Visual Basic is considered to be a () first-generation language. (B) package. () higher-level language.

More information

Quotes from Object-Oriented Software Construction

Quotes from Object-Oriented Software Construction Quotes from Object-Oriented Software Construction Bertrand Meyer Prentice-Hall, 1988 Preface, p. xiv We study the object-oriented approach as a set of principles, methods and tools which can be instrumental

More information

Computer Programming

Computer Programming 1 UNESCO-NIGERIA TECHNICAL & VOCATIONAL EDUCATION REVITALISATION PROJECT-PHASE PHASE II NATIONAL DIPLOMA IN COMPUTER TECHNOLOGY Computer Programming COURSE CODE: COM113 YEAR I- SE MESTER I THEORY Version

More information

Glossary of Object Oriented Terms

Glossary of Object Oriented Terms Appendix E Glossary of Object Oriented Terms abstract class: A class primarily intended to define an instance, but can not be instantiated without additional methods. abstract data type: An abstraction

More information

Computer Programming Lecturer: Dr. Laith Abdullah Mohammed

Computer Programming Lecturer: Dr. Laith Abdullah Mohammed Algorithm: A step-by-step procedure for solving a problem in a finite amount of time. Algorithms can be represented using Flow Charts. CHARACTERISTICS OF AN ALGORITHM: Computer Programming Lecturer: Dr.

More information

2 SYSTEM DESCRIPTION TECHNIQUES

2 SYSTEM DESCRIPTION TECHNIQUES 2 SYSTEM DESCRIPTION TECHNIQUES 2.1 INTRODUCTION Graphical representation of any process is always better and more meaningful than its representation in words. Moreover, it is very difficult to arrange

More information

Chapter One Introduction to Programming

Chapter One Introduction to Programming Chapter One Introduction to Programming 1-1 Algorithm and Flowchart Algorithm is a step-by-step procedure for calculation. More precisely, algorithm is an effective method expressed as a finite list of

More information

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 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

KS3 Computing Group 1 Programme of Study 2015 2016 2 hours per week

KS3 Computing Group 1 Programme of Study 2015 2016 2 hours per week 1 07/09/15 2 14/09/15 3 21/09/15 4 28/09/15 Communication and Networks esafety Obtains content from the World Wide Web using a web browser. Understands the importance of communicating safely and respectfully

More information

Fourth generation techniques (4GT)

Fourth generation techniques (4GT) Fourth generation techniques (4GT) The term fourth generation techniques (4GT) encompasses a broad array of software tools that have one thing in common. Each enables the software engineer to specify some

More information

KITES TECHNOLOGY COURSE MODULE (C, C++, DS)

KITES TECHNOLOGY COURSE MODULE (C, C++, DS) KITES TECHNOLOGY 360 Degree Solution www.kitestechnology.com/academy.php info@kitestechnology.com technologykites@gmail.com Contact: - 8961334776 9433759247 9830639522.NET JAVA WEB DESIGN PHP SQL, PL/SQL

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

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

Unit I Page No. 1 System Development Object Basics Development Life Cycle Methodologies Patterns Frameworks Unified Approach UML

Unit I Page No. 1 System Development Object Basics Development Life Cycle Methodologies Patterns Frameworks Unified Approach UML Unit I Page No. 1 System Development Object Basics Development Life Cycle Methodologies Patterns Frameworks Unified Approach UML System Development (SD) : - o SD refers to all activities that go into producing

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

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

Chapter 8 Approaches to System Development

Chapter 8 Approaches to System Development Systems Analysis and Design in a Changing World, sixth edition 8-1 Chapter 8 Approaches to System Development Table of Contents Chapter Overview Learning Objectives Notes on Opening Case and EOC Cases

More information

How To Develop Software

How To Develop Software Software Engineering Prof. N.L. Sarda Computer Science & Engineering Indian Institute of Technology, Bombay Lecture-4 Overview of Phases (Part - II) We studied the problem definition phase, with which

More information

Assuming the Role of Systems Analyst & Analysis Alternatives

Assuming the Role of Systems Analyst & Analysis Alternatives Assuming the Role of Systems Analyst & Analysis Alternatives Nature of Analysis Systems analysis and design is a systematic approach to identifying problems, opportunities, and objectives; analyzing the

More information

Creating, Solving, and Graphing Systems of Linear Equations and Linear Inequalities

Creating, Solving, and Graphing Systems of Linear Equations and Linear Inequalities Algebra 1, Quarter 2, Unit 2.1 Creating, Solving, and Graphing Systems of Linear Equations and Linear Inequalities Overview Number of instructional days: 15 (1 day = 45 60 minutes) Content to be learned

More information

Peter Mileff PhD SOFTWARE ENGINEERING. The Basics of Software Engineering. University of Miskolc Department of Information Technology

Peter Mileff PhD SOFTWARE ENGINEERING. The Basics of Software Engineering. University of Miskolc Department of Information Technology Peter Mileff PhD SOFTWARE ENGINEERING The Basics of Software Engineering University of Miskolc Department of Information Technology Introduction Péter Mileff - Department of Information Engineering Room

More information

Exhibit F. VA-130620-CAI - Staff Aug Job Titles and Descriptions Effective 2015

Exhibit F. VA-130620-CAI - Staff Aug Job Titles and Descriptions Effective 2015 Applications... 3 1. Programmer Analyst... 3 2. Programmer... 5 3. Software Test Analyst... 6 4. Technical Writer... 9 5. Business Analyst... 10 6. System Analyst... 12 7. Software Solutions Architect...

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

PART-A Questions. 2. How does an enumerated statement differ from a typedef statement?

PART-A Questions. 2. How does an enumerated statement differ from a typedef statement? 1. Distinguish & and && operators. PART-A Questions 2. How does an enumerated statement differ from a typedef statement? 3. What are the various members of a class? 4. Who can access the protected members

More information

Object Oriented Programming. Risk Management

Object Oriented Programming. Risk Management Section V: Object Oriented Programming Risk Management In theory, there is no difference between theory and practice. But, in practice, there is. - Jan van de Snepscheut 427 Chapter 21: Unified Modeling

More information

Java Programming (10155)

Java Programming (10155) Java Programming (10155) Rationale Statement: The world is full of problems that need to be solved or that need a program to solve them faster. In computer, programming students will learn how to solve

More information

Programmable Logic Controllers Definition. Programmable Logic Controllers History

Programmable Logic Controllers Definition. Programmable Logic Controllers History Definition A digitally operated electronic apparatus which uses a programmable memory for the internal storage of instructions for implementing specific functions such as logic, sequencing, timing, counting,

More information

CHAPTER 24 SOFTWARE PROJECT SCHEDULING. Overview

CHAPTER 24 SOFTWARE PROJECT SCHEDULING. Overview CHAPTER 24 SOFTWARE PROJECT SCHEDULING Overview The chapter describes the process of building and monitoring schedules for software development projects. To build complex software systems, many engineering

More information

Software development life cycle. Software Engineering - II ITNP92 - Object Oriented Software Design. Requirements. Requirements. Dr Andrea Bracciali

Software development life cycle. Software Engineering - II ITNP92 - Object Oriented Software Design. Requirements. Requirements. Dr Andrea Bracciali Software development life cycle Software life cycle: Software Engineering - II ITNP92 - Object Oriented Software Design Dr Andrea Bracciali Module Co-ordinator 4B86 abb@cs.stir.ac.uk Spring 2014 (elicitation)

More information

OKLAHOMA SUBJECT AREA TESTS (OSAT )

OKLAHOMA SUBJECT AREA TESTS (OSAT ) CERTIFICATION EXAMINATIONS FOR OKLAHOMA EDUCATORS (CEOE ) OKLAHOMA SUBJECT AREA TESTS (OSAT ) FIELD 081: COMPUTER SCIENCE September 2008 Subarea Range of Competencies I. Computer Use in Educational Environments

More information

Appendix M INFORMATION TECHNOLOGY (IT) YOUTH APPRENTICESHIP

Appendix M INFORMATION TECHNOLOGY (IT) YOUTH APPRENTICESHIP Appendix M INFORMATION TECHNOLOGY (IT) YOUTH APPRENTICESHIP PROGRAMMING & SOFTWARE DEVELOPMENT AND INFORMATION SUPPORT & SERVICES PATHWAY SOFTWARE UNIT UNIT 5 Programming & and Support & s: (Unit 5) PAGE

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

Thomas Jefferson High School for Science and Technology Program of Studies Foundations of Computer Science. Unit of Study / Textbook Correlation

Thomas Jefferson High School for Science and Technology Program of Studies Foundations of Computer Science. Unit of Study / Textbook Correlation Thomas Jefferson High School for Science and Technology Program of Studies Foundations of Computer Science updated 03/08/2012 Unit 1: JKarel 8 weeks http://www.fcps.edu/is/pos/documents/hs/compsci.htm

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

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

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

ADVANCED SCHOOL OF SYSTEMS AND DATA STUDIES (ASSDAS) PROGRAM: CTech in Computer Science

ADVANCED SCHOOL OF SYSTEMS AND DATA STUDIES (ASSDAS) PROGRAM: CTech in Computer Science ADVANCED SCHOOL OF SYSTEMS AND DATA STUDIES (ASSDAS) PROGRAM: CTech in Computer Science Program Schedule CTech Computer Science Credits CS101 Computer Science I 3 MATH100 Foundations of Mathematics and

More information

Total Quality Management (TQM) Quality, Success and Failure. Total Quality Management (TQM) vs. Process Reengineering (BPR)

Total Quality Management (TQM) Quality, Success and Failure. Total Quality Management (TQM) vs. Process Reengineering (BPR) Total Quality Management (TQM) Quality, Success and Failure Total Quality Management (TQM) is a concept that makes quality control a responsibility to be shared by all people in an organization. M7011

More information

Course Title: Software Development

Course Title: Software Development Course Title: Software Development Unit: Customer Service Content Standard(s) and Depth of 1. Analyze customer software needs and system requirements to design an information technology-based project plan.

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

Software Design. Design (I) Software Design Data Design. Relationships between the Analysis Model and the Design Model

Software Design. Design (I) Software Design Data Design. Relationships between the Analysis Model and the Design Model Software Design Design (I) Software Design is a process through which requirements are translated into a representation of software. Peter Lo CS213 Peter Lo 2005 1 CS213 Peter Lo 2005 2 Relationships between

More information

CSC 342 Semester I: 1425-1426H (2004-2005 G)

CSC 342 Semester I: 1425-1426H (2004-2005 G) CSC 342 Semester I: 1425-1426H (2004-2005 G) Software Engineering Systems Analysis: Requirements Structuring Context & DFDs. Instructor: Dr. Ghazy Assassa Software Engineering CSC 342/Dr. Ghazy Assassa

More information

Instructor Özgür ZEYDAN (PhD) CIV 112 Computer Programming http://cevre.beun.edu.tr/zeydan/

Instructor Özgür ZEYDAN (PhD) CIV 112 Computer Programming http://cevre.beun.edu.tr/zeydan/ Algorithms Pseudocode Flowcharts (PhD) CIV 112 Computer Programming http://cevre.beun.edu.tr/zeydan/ Why do we have to learn computer programming? Computers can make calculations at a blazing speed without

More information

Chapter 6: Programming Languages

Chapter 6: Programming Languages Chapter 6: Programming Languages Computer Science: An Overview Eleventh Edition by J. Glenn Brookshear Copyright 2012 Pearson Education, Inc. Chapter 6: Programming Languages 6.1 Historical Perspective

More information

In mathematics, there are four attainment targets: using and applying mathematics; number and algebra; shape, space and measures, and handling data.

In mathematics, there are four attainment targets: using and applying mathematics; number and algebra; shape, space and measures, and handling data. MATHEMATICS: THE LEVEL DESCRIPTIONS In mathematics, there are four attainment targets: using and applying mathematics; number and algebra; shape, space and measures, and handling data. Attainment target

More information

Johannes Sametinger. C. Doppler Laboratory for Software Engineering Johannes Kepler University of Linz A-4040 Linz, Austria

Johannes Sametinger. C. Doppler Laboratory for Software Engineering Johannes Kepler University of Linz A-4040 Linz, Austria OBJECT-ORIENTED DOCUMENTATION C. Doppler Laboratory for Software Engineering Johannes Kepler University of Linz A-4040 Linz, Austria Abstract Object-oriented programming improves the reusability of software

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

2014 New Jersey Core Curriculum Content Standards - Technology

2014 New Jersey Core Curriculum Content Standards - Technology 2014 New Jersey Core Curriculum Content Standards - Technology Content Area Standard Strand Grade Level bands Technology 8.2 Technology Education, Engineering, Design, and Computational Thinking - Programming:

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

Software Design Document (SDD) Template

Software Design Document (SDD) Template (SDD) Template Software design is a process by which the software requirements are translated into a representation of software components, interfaces, and data necessary for the implementation phase.

More information

Axiomatic design of software systems

Axiomatic design of software systems Axiomatic design of software systems N.P. Suh (1), S.H. Do Abstract Software is playing an increasingly important role in manufacturing. Many manufacturing firms have problems with software development.

More information

Programming and Software Development (PSD)

Programming and Software Development (PSD) Programming and Software Development (PSD) Course Descriptions Fundamentals of Information Systems Technology This course is a survey of computer technologies. This course may include computer history,

More information

Curriculum Map. Discipline: Computer Science Course: C++

Curriculum Map. Discipline: Computer Science Course: C++ Curriculum Map Discipline: Computer Science Course: C++ August/September: How can computer programs make problem solving easier and more efficient? In what order does a computer execute the lines of code

More information

Grade descriptions Computer Science Stage 1

Grade descriptions Computer Science Stage 1 Stage 1 A B C Accurately uses a wide range of terms and concepts associated with current personal computers, home networking and internet connections. Correctly uses non-technical and a range of technical

More information

Chapter 1 Fundamentals of Java Programming

Chapter 1 Fundamentals of Java Programming Chapter 1 Fundamentals of Java Programming Computers and Computer Programming Writing and Executing a Java Program Elements of a Java Program Features of Java Accessing the Classes and Class Members The

More information

Introduction to Systems Analysis and Design

Introduction to Systems Analysis and Design Introduction to Systems Analysis and Design What is a System? A system is a set of interrelated components that function together to achieve a common goal. The components of a system are called subsystems.

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

Programming and Software Development CTAG Alignments

Programming and Software Development CTAG Alignments Programming and Software Development CTAG Alignments This document contains information about four Career-Technical Articulation Numbers (CTANs) for Programming and Software Development Career-Technical

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

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

Instructional Systems Design

Instructional Systems Design Analysis and Design of Distance Learning Systems: Instructional Systems Design Contents The Purpose of Design Audience of Design documents Phases of Instructional Design Development of initial Content

More information

Apache Web Server Execution Tracing Using Third Eye

Apache Web Server Execution Tracing Using Third Eye Apache Web Server Execution Tracing Using Third Eye Raimondas Lencevicius Alexander Ran Rahav Yairi Nokia Research Center, 5 Wayside Road, Burlington, MA 01803, USA Raimondas.Lencevicius@nokia.com Alexander.Ran@nokia.com

More information

Fundamentals of Information Systems, Fifth Edition. Chapter 8 Systems Development

Fundamentals of Information Systems, Fifth Edition. Chapter 8 Systems Development Fundamentals of Information Systems, Fifth Edition Chapter 8 Systems Development Principles and Learning Objectives Effective systems development requires a team effort of stakeholders, users, managers,

More information

Integer Operations. Overview. Grade 7 Mathematics, Quarter 1, Unit 1.1. Number of Instructional Days: 15 (1 day = 45 minutes) Essential Questions

Integer Operations. Overview. Grade 7 Mathematics, Quarter 1, Unit 1.1. Number of Instructional Days: 15 (1 day = 45 minutes) Essential Questions Grade 7 Mathematics, Quarter 1, Unit 1.1 Integer Operations Overview Number of Instructional Days: 15 (1 day = 45 minutes) Content to Be Learned Describe situations in which opposites combine to make zero.

More information

Aspect-Oriented Programming

Aspect-Oriented Programming Aspect-Oriented Programming An Introduction to Aspect-Oriented Programming and AspectJ Niklas Påhlsson Department of Technology University of Kalmar S 391 82 Kalmar SWEDEN Topic Report for Software Engineering

More information

Computer Information Systems (CIS)

Computer Information Systems (CIS) Computer Information Systems (CIS) CIS 113 Spreadsheet Software Applications Prerequisite: CIS 146 or spreadsheet experience This course provides students with hands-on experience using spreadsheet software.

More information

MAHATMA GANDHI UNIVERSITY SCHOOL OF DISTANCE EDUCATION (MGU CBCSS UG SDE 2012)

MAHATMA GANDHI UNIVERSITY SCHOOL OF DISTANCE EDUCATION (MGU CBCSS UG SDE 2012) MAHATMA GANDHI UNIVERSITY SCHOOL OF DISTANCE EDUCATION (MGU CBCSS UG SDE 2012) B.Sc Computer Science Semester V BCS 502 Core-19: System Analysis &Design Multiple Choice questions 1... includes review of

More information

Masters of Science in Software & Information Systems

Masters of Science in Software & Information Systems Masters of Science in Software & Information Systems To be developed and delivered in conjunction with Regis University, School for Professional Studies Object Oriented Design Table of Contents January

More information

UML for the C programming language.

UML for the C programming language. Functional-based modeling White paper June 2009 UML for the C programming language. Bruce Powel Douglass, PhD, IBM Page 2 Contents 2 Executive summary 3 FunctionalC UML profile 4 Functional development

More information

Candle Plant process automation based on ABB 800xA Distributed Control Systems

Candle Plant process automation based on ABB 800xA Distributed Control Systems Candle Plant process automation based on ABB 800xA Distributed Control Systems Yousef Iskandarani and Karina Nohammer Department of Engineering University of Agder Jon Lilletuns vei 9, 4879 Grimstad Norway

More information

Click on the links below to jump directly to the relevant section

Click on the links below to jump directly to the relevant section Click on the links below to jump directly to the relevant section What is algebra? Operations with algebraic terms Mathematical properties of real numbers Order of operations What is Algebra? Algebra is

More information

Module 1. Introduction to Software Engineering. Version 2 CSE IIT, Kharagpur

Module 1. Introduction to Software Engineering. Version 2 CSE IIT, Kharagpur Module 1 Introduction to Software Engineering Lesson 2 Structured Programming Specific Instructional Objectives At the end of this lesson the student will be able to: Identify the important features of

More information

A Comparative Analysis of Structured and Object-Oriented Programming Methods ASAGBA, PRINCE OGHENEKARO; OGHENEOVO, EDWARD E. CPN, MNCS.

A Comparative Analysis of Structured and Object-Oriented Programming Methods ASAGBA, PRINCE OGHENEKARO; OGHENEOVO, EDWARD E. CPN, MNCS. JASEM ISSN 1119-8362 All rights reserved Full-text Available Online at www.bioline.org.br/ja J. Appl. Sci. Environ. Manage. December, 2008 Vol. 12(4) 41-46 A Comparative Analysis of Structured and Object-Oriented

More information

Programming Language Constructs as Basis for Software Architectures

Programming Language Constructs as Basis for Software Architectures Programming Language Constructs as Basis for Software Architectures 1 From individual parts to components In the 50s: Machine/Assembler programs: bound to specific hardware In the 60s-70s: Higher programming

More information

1. Process Modeling. Process Modeling (Cont.) Content. Chapter 7 Structuring System Process Requirements

1. Process Modeling. Process Modeling (Cont.) Content. Chapter 7 Structuring System Process Requirements Content Chapter 7 Structuring System Process Requirements Understand the logical (&physical) process modeling by using data flow diagrams (DFDs) Draw DFDs & Leveling Balance higher-level and lower-level

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

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

Object-oriented design methodologies

Object-oriented design methodologies Object-oriented design methodologies An object-oriented methodology is defined as the system of principles and procedures applied to object-oriented software development. Five years ago, there was no standard

More information

www.iacpe.com Knowledge, Certification, Networking

www.iacpe.com Knowledge, Certification, Networking www.iacpe.com Knowledge, Certification, Networking Page : 1 of 95 Rev. 01- Feb 2016 IACPE No 19, Jalan Bilal Mahmood 80100 Johor Bahru Malaysia Introduction to Software Engineering The International of

More information

COWLEY COLLEGE & Area Vocational Technical School

COWLEY COLLEGE & Area Vocational Technical School COWLEY COLLEGE & Area Vocational Technical School COURSE PROCEDURE FOR COBOL PROGRAMMING CIS1866 3 Credit Hours Student Level: This course is open to students on the college level in either Freshman or

More information

Java (12 Weeks) Introduction to Java Programming Language

Java (12 Weeks) Introduction to Java Programming Language Java (12 Weeks) Topic Lecture No. Introduction to Java Programming Language 1 An Introduction to Java o Java as a Programming Platform, The Java "White Paper" Buzzwords, Java and the Internet, A Short

More information

Software Quality Factors OOA, OOD, and OOP Object-oriented techniques enhance key external and internal software quality factors, e.g., 1. External (v

Software Quality Factors OOA, OOD, and OOP Object-oriented techniques enhance key external and internal software quality factors, e.g., 1. External (v Object-Oriented Design and Programming Deja Vu? In the past: Structured = Good Overview of Object-Oriented Design Principles and Techniques Today: Object-Oriented = Good e.g., Douglas C. Schmidt www.cs.wustl.edu/schmidt/

More information

Using UML Part One Structural Modeling Diagrams

Using UML Part One Structural Modeling Diagrams UML Tutorials Using UML Part One Structural Modeling Diagrams by Sparx Systems All material Sparx Systems 2007 Sparx Systems 2007 Page 1 Trademarks Object Management Group, OMG, Unified Modeling Language,

More information

Using Use Cases for requirements capture. Pete McBreen. 1998 McBreen.Consulting

Using Use Cases for requirements capture. Pete McBreen. 1998 McBreen.Consulting Using Use Cases for requirements capture Pete McBreen 1998 McBreen.Consulting petemcbreen@acm.org All rights reserved. You have permission to copy and distribute the document as long as you make no changes

More information

Specialized Programme on Web Application Development using Open Source Tools

Specialized Programme on Web Application Development using Open Source Tools Specialized Programme on Web Application Development using Open Source Tools Objective: At the end of the course, Students will be able to: Understand various open source tools(programming tools and databases)

More information

ONLINE SUPPLEMENTAL BAPPENDIX PROJECT SCHEDULES WITH PERT/CPM CHARTS

ONLINE SUPPLEMENTAL BAPPENDIX PROJECT SCHEDULES WITH PERT/CPM CHARTS ONLINE SUPPLEMENTAL BAPPENDIX PROJECT SCHEDULES WITH PERT/CPM CHARTS Chapter 3 of Systems Analysis and Design in a Changing World explains the techniques and steps required to build a project schedule

More information

Higher National Unit specification. General information. Software Development: Analysis and Design (SCQF level 7) Unit code: HA4C 34.

Higher National Unit specification. General information. Software Development: Analysis and Design (SCQF level 7) Unit code: HA4C 34. Higher National Unit specification General information Unit code: HA4C 34 Superclass: CB Publication date: January 2016 Source: Scottish Qualifications Authority Version: 02 Unit purpose The purpose of

More information

Vector storage and access; algorithms in GIS. This is lecture 6

Vector storage and access; algorithms in GIS. This is lecture 6 Vector storage and access; algorithms in GIS This is lecture 6 Vector data storage and access Vectors are built from points, line and areas. (x,y) Surface: (x,y,z) Vector data access Access to vector

More information

CORRELATED TO THE SOUTH CAROLINA COLLEGE AND CAREER-READY FOUNDATIONS IN ALGEBRA

CORRELATED TO THE SOUTH CAROLINA COLLEGE AND CAREER-READY FOUNDATIONS IN ALGEBRA We Can Early Learning Curriculum PreK Grades 8 12 INSIDE ALGEBRA, GRADES 8 12 CORRELATED TO THE SOUTH CAROLINA COLLEGE AND CAREER-READY FOUNDATIONS IN ALGEBRA April 2016 www.voyagersopris.com Mathematical

More information

Florida Math for College Readiness

Florida Math for College Readiness Core Florida Math for College Readiness Florida Math for College Readiness provides a fourth-year math curriculum focused on developing the mastery of skills identified as critical to postsecondary readiness

More information

Process / Operation Symbols

Process / Operation Symbols Flowchart s and Their Meanings Flowchart s Defined By Nicholas Hebb The following is a basic overview, with descriptions and meanings, of the most common flowchart symbols - also commonly called flowchart

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