Damian Gordon.  This module is concerned with program design skills, with particular reference to using flowcharts, pseudocode and programming language.

Slides:



Advertisements
Similar presentations
Demystifying Construction Lecture 10 : Course Recap & Assessment Exercise Created by Antony Wood, School of the Built Environment, University of Nottingham.
Advertisements

Procedural Recursion Eric Roberts CS 106B April 15, 2009.
COMPSCI 105 S Principles of Computer Science 12 Abstract Data Type.
Multimedia Specification Design and Production 2013 / Semester 1 / week 7 Lecturer: Dr. Nikos Gazepidis
Presented by: Analinda Corona
Lecture Roger Sutton 21: Revision 1.
For Monday Read 10.3 Homework: –Chapter 10, exercise 10.
ITEC200 – Week07 Recursion. 2 Learning Objectives – Week07 Recursion (Ch 07) Students can: Design recursive algorithms to solve.
1 CENG 707 Data Structures and Algorithms Nihan Kesim Çiçekli Department of Computer Engineering Middle East Technical University Fall 2010.
Algorithms and Problem Solving-1 Algorithms and Problem Solving.
Algorithms and Problem Solving. Learn about problem solving skills Explore the algorithmic approach for problem solving Learn about algorithm development.
01 Introduction1June Introduction CE : Fundamental Programming Techniques.
The Semantic Web Week 1 Module Content + Assessment Lee McCluskey, room 2/07 Department of Computing And Mathematical Sciences Module.
Revision Week John Barnden School of Computer Science University of Birmingham Natural Language Processing /11 Semester 2.
UCD Case 2: Continuous problem-solving assignments or end-of-semester prepared question exam Dr Evelyn Doyle & Prof Nicholas Clipson, School of Biology.
1 CMSC 132: Object-Oriented Programming II Nelson Padua-Perez William Pugh Department of Computer Science University of Maryland, College Park.
Chapter 1 Program Design
1 SENG1210 Introduction to Databases DT228 Year 1 Instructor: Bajuna Salehe
1 The Teaching and Learning Strategy, including Projects Roy Crole Department of Computer Science University of Leicester.
The Computer Science Course at Omar Al-Mukhtar University, Libya The Computer Science Course at Omar Al-Mukhtar University, Libya User-Centered Design.
Introduction to Programming Using C++ Dr. Mohamed Khafagy.
Capstone Design Project (CDP) Civil Engineering Department First Semester 1431/1432 H 10/14/20091 King Saud University, Civil Engineering Department.
Data Structures and Programming.  John Edgar2.
The Project AH Computing. Functional Requirements  What the product must do!  Examples attractive welcome screen all options available as clickable.
OCTOBER ED DIRECTOR PROFESSIONAL DEVELOPMENT 10/1/14 POWERFUL & PURPOSEFUL FEEDBACK.
1 Object Oriented Programming Computer Systems Engineering (D2) and Programming (P)
Teaching Teaching Discrete Mathematics and Algorithms & Data Structures Online G.MirkowskaPJIIT.
Enhancing the Environmental Health Content in Community Health Nursing Sharon Burt, RN, PHN, DNSc Nancy Sweeney, RN, PHN, DNSc.
Research Writing and Scientific Literature
CE0825 Object-Oriented Programming 2 © Allan C. Milne Abertay University v
1 CSSE151: Fundamentals of Computer Science I Course Overview.
SYSE 802 John D. McGregor Module 0 Session 1 Course Introduction.
Simple Program Design Third Edition A Step-by-Step Approach
Data Structures and Programming.  Today:  Administrivia  Introduction to 225, Stacks  Course website: 
หลักการโปรแกรม เพื่อแก้ปัญหาโดยใช้คอมพิวเตอร์
IMAT1906 Systems Development Lecture 1: Introduction.
Online Information Competence Tutorials: Influencing Change in Traditional Library Classrooms Pamela Jackson and Charity Hope San José State University.
Course ‘Data structures and algorithms – using Java’ Teaching materials and presentation experience Anastas Misev Institute of Informatics Faculty of Natural.
Recursion and Dynamic Programming. Recursive thinking… Recursion is a method where the solution to a problem depends on solutions to smaller instances.
First Steps in Modularization Simple Program Design Third Edition A Step-by-Step Approach 8.
Algorithms and their Applications CS2004 ( ) Dr Stephen Swift 3.1 Mathematical Foundation.
ENG 1181 College of Engineering Engineering Education Innovation Center P. 1 1 Computer Problem Solving in MATLAB Topics Covered: 1.Problem Solving 2.Top-Down.
CS 140 Computer Programming (I) Second semester (3 credits) Imam Mohammad bin Saud Islamic University College of Computer Science and Information.
1 CSC 222: Computer Programming II Spring 2004 See online syllabus at: Course goals:
OCTOBER ED DIRECTOR PROFESSIONAL DEVELOPMENT 10/1/14 POWERFUL & PURPOSEFUL FEEDBACK.
Top-Down Design and Modular Development. The process of developing methods for objects is mostly a process of developing algorithms; each method is an.
King Saud UniversityCSC112 - First Semester CSC 112 Java Programming I Introduction.
Design of a Typical Course s c h o o l s o f e n g I n e e r I n g S. D. Rajan Professor of Civil Engineering Professor of Aerospace and Mechanical Engineering.
1 CSCD 326 Data Structures I Software Design. 2 The Software Life Cycle 1. Specification 2. Design 3. Risk Analysis 4. Verification 5. Coding 6. Testing.
CS1101: Programming Methodology
Structured Programming (4 Credits)
CMPSC 16 Problem Solving with Computers I Spring 2014 Instructor: Tevfik Bultan Lecture 4: Introduction to C: Control Flow.
Chapter 2 Principles of Programming and Software Engineering.
Program Design. Simple Program Design, Fourth Edition Chapter 1 2 Objectives In this chapter you will be able to: Describe the steps in the program development.
Algorithms and Problem Solving. Learn about problem solving skills Explore the algorithmic approach for problem solving Learn about algorithm development.
Progression in KS3/4 Algorithms MONDAY 30 TH NOVEMBER SUE SENTANCE.
LECTURE 5 Nangwonvuma M/ Byansi D. Components, interfaces and integration Infrastructure, Middleware and Platforms Techniques – Data warehouses, extending.
S5.40. Module Structure 30% practical tests / 70% written exam 3h lectures / week (except reading week) 3 x 2h of computer labs (solving problems practicing.
CS140 – Computer Programming 1 Course Overview First Semester – Fall /1438 – 2016/2017 CS140 - Computer Programming 11.
Algorithms and Problem Solving
It’s called “wifi”! Source: Somewhere on the Internet!
Object-Orientated Programming
Problem Solving Techniques
DO NOW – Decompose a Problem
Algorithms Key Revision Points.
Algorithms and Problem Solving
Introducing Digital Technologies
Basic Concepts of Algorithm
Guided Math.
Presentation transcript:

Damian Gordon

 This module is concerned with program design skills, with particular reference to using flowcharts, pseudocode and programming language constructs to model and design computer programs. Consideration is given as to how problem information might be represented in code or on paper and what program design steps may be performed to arrive at a solution. Abstraction, modularity and top-down design are central to this module.

 To introduce students to program design and the main techniques of program design. In particular, to introduce students to design strategies such as top-down and bottom-up and the techniques of stepwise refinement.  To introduce the use of pseudocode and flowcharts in program design.  To convey to students an understanding and appreciation of the power of abstraction whereby the essential information relating to a programming problem is abstracted and mapped onto programming constructs.  To convey the importance of a well conceived design before rushing into code.

1. Abstract problem information and represent it on paper or an appropriate computing environment. 2. Demonstrate a basic competence in the use of a program constructs to solve a problem 3. Develop solutions to some elementary program design problems using top down design and stepwise refinement. 4. Describe some simple program designs using pseudocode and flowcharts, and then implement the design.

 The module will be delivered primarily through lectures, tutorials and laboratory work. The material will be developed in an informal way during lectures. It is envisaged that the students will assimilate much of the material through problem solving and exercises. Emphasis will be placed on worked examples and group discussion of exercises.  Practical work will consist of weekly laboratory sessions. This will also help the students understand how program design concepts can be mapped to a program language constructs.

 A large emphasis will be placed on allowing the students to tryout the problem descriptions and possible solutions in the laboratory. Exercises will be provided that cover material relevant to the implementation of problem solutions. These exercises get progressively more difficult and will incorporate material learned previously.  Tutorials will be used to allow the students to get help in the more difficult areas and provide students with the opportunity for individual assistance from the supervisor.

 Problem Solving, Stages in Problem Solving.  Data Types and Data Representation.  Program Constructs.  Abstraction, Problem Specification, Approaches to Problem Solving and Program Construction, Divide and Conquer, Stepwise Refinement, Top Down Design, Bottom Up Design.  Recursion. Greatest Common Divisor, Factorial and Fibonacci.  Pseudocode and Flowcharts in Program Design.  Linear Data Structures - arrays and lists.

 Assessment will be based on a two hour end of semester written exam and continuous assessment during the semester.  Written exam - 60%  Continuous Assessment - 40%

 No specific textbook.  Computer Science is almost unique as a discipline in the sense that are a massive number of computer books online for free, as many leading computer science authors release their books on-line as “open source” and there are a number of sites that collect these books;      