Introducing the Lecturer Introducing the Tutor Aims and Objectives of the unit Text Books Lecture structure Tutorial structure Assessment

Similar documents
GACE Computer Science Assessment Test at a Glance

Software Maintenance

Computer Science. Embedded systems today. Microcontroller MCR

Page 1 of 11. Curriculum Map: Grade 4 Math Course: Math 4 Sub-topic: General. Grade(s): None specified

If we want to measure the amount of cereal inside the box, what tool would we use: string, square tiles, or cubes?

School of Innovative Technologies and Engineering

CS 1103 Computer Science I Honors. Fall Instructor Muller. Syllabus

Montana Content Standards for Mathematics Grade 3. Montana Content Standards for Mathematical Practices and Mathematics Content Adopted November 2011

Course Content Concepts

Mathematics Success Level E

Introduction to Moodle

AGS THE GREAT REVIEW GAME FOR PRE-ALGEBRA (CD) CORRELATED TO CALIFORNIA CONTENT STANDARDS

Major Milestones, Team Activities, and Individual Deliverables

Outreach Connect User Manual

SOFTWARE EVALUATION TOOL

Computer Organization I (Tietokoneen toiminta)

What the National Curriculum requires in reading at Y5 and Y6

Extending Place Value with Whole Numbers to 1,000,000

Read&Write Gold is a software application and can be downloaded in Macintosh or PC version directly from

CREATING SHARABLE LEARNING OBJECTS FROM EXISTING DIGITAL COURSE CONTENT

University of Groningen. Systemen, planning, netwerken Bosman, Aart

Appendix L: Online Testing Highlights and Script

SECTION 12 E-Learning (CBT) Delivery Module

On Human Computer Interaction, HCI. Dr. Saif al Zahir Electrical and Computer Engineering Department UBC

Edexcel GCSE. Statistics 1389 Paper 1H. June Mark Scheme. Statistics Edexcel GCSE

Function Tables With The Magic Function Machine

PowerTeacher Gradebook User Guide PowerSchool Student Information System

Math-U-See Correlation with the Common Core State Standards for Mathematical Content for Third Grade

Radius STEM Readiness TM

Training Catalogue for ACOs Global Learning Services V1.2. amadeus.com

Economics 201 Principles of Microeconomics Fall 2010 MWF 10:00 10:50am 160 Bryan Building

CS177 Python Programming

Introduction to CRC Cards

Arizona s College and Career Ready Standards Mathematics

MOODLE 2.0 GLOSSARY TUTORIALS

EDIT 576 (2 credits) Mobile Learning and Applications Fall Semester 2015 August 31 October 18, 2015 Fully Online Course

Functional Skills Mathematics Level 2 assessment

THE UNIVERSITY OF SYDNEY Semester 2, Information Sheet for MATH2068/2988 Number Theory and Cryptography

EDIT 576 DL1 (2 credits) Mobile Learning and Applications Fall Semester 2014 August 25 October 12, 2014 Fully Online Course

Unit 7 Data analysis and design

South Carolina College- and Career-Ready Standards for Mathematics. Standards Unpacking Documents Grade 5

An Industrial Technologist s Core Knowledge: Web-based Strategy for Defining Our Discipline

Course Specifications

THESIS GUIDE FORMAL INSTRUCTION GUIDE FOR MASTER S THESIS WRITING SCHOOL OF BUSINESS

Diploma in Library and Information Science (Part-Time) - SH220

Android App Development for Beginners

Ansys Tutorial Random Vibration

D Road Maps 6. A Guide to Learning System Dynamics. System Dynamics in Education Project

LEGO MINDSTORMS Education EV3 Coding Activities

Excel Intermediate

Using Blackboard.com Software to Reach Beyond the Classroom: Intermediate

T Seminar on Internetworking

Firms and Markets Saturdays Summer I 2014

First Grade Standards

Characteristics of Functions

White Paper. The Art of Learning

EdX Learner s Guide. Release

Notes on The Sciences of the Artificial Adapted from a shorter document written for course (Deciding What to Design) 1

Moodle Student User Guide

CIS 121 INTRODUCTION TO COMPUTER INFORMATION SYSTEMS - SYLLABUS

DIGITAL GAMING & INTERACTIVE MEDIA BACHELOR S DEGREE. Junior Year. Summer (Bridge Quarter) Fall Winter Spring GAME Credits.

Cambridge NATIONALS. Creative imedia Level 1/2. UNIT R081 - Pre-Production Skills DELIVERY GUIDE

Learning Disability Functional Capacity Evaluation. Dear Doctor,

CSCI 333 Java Language Programming Fall 2017 INSTRUCTOR INFORMATION COURSE INFORMATION

Visual CP Representation of Knowledge

INTERMEDIATE ALGEBRA Course Syllabus

TIMSS ADVANCED 2015 USER GUIDE FOR THE INTERNATIONAL DATABASE. Pierre Foy

Backwards Numbers: A Study of Place Value. Catherine Perez

How to read a Paper ISMLL. Dr. Josif Grabocka, Carlotta Schatten

Ontologies vs. classification systems

MINISTRY OF EDUCATION

TeacherPlus Gradebook HTML5 Guide LEARN OUR SOFTWARE STEP BY STEP

Grade 6: Correlated to AGS Basic Math Skills

Math Grade 3 Assessment Anchors and Eligible Content

HISTORY COURSE WORK GUIDE 1. LECTURES, TUTORIALS AND ASSESSMENT 2. GRADES/MARKS SCHEDULE

Road Maps A Guide to Learning System Dynamics System Dynamics in Education Project

ITSC 2321 Integrated Software Applications II COURSE SYLLABUS

Physics 270: Experimental Physics

ADMN-1311: MicroSoft Word I ( Online Fall 2017 )

Course outline. Code: ICT310 Title: Systems Analysis and Design

Curriculum Design Project with Virtual Manipulatives. Gwenanne Salkind. George Mason University EDCI 856. Dr. Patricia Moyer-Packenham

SINGLE DOCUMENT AUTOMATIC TEXT SUMMARIZATION USING TERM FREQUENCY-INVERSE DOCUMENT FREQUENCY (TF-IDF)

SYLLABUS. EC 322 Intermediate Macroeconomics Fall 2012

Digital Technology Merit Badge Workbook

EQuIP Review Feedback

Planning a Dissertation/ Project

Mathematics subject curriculum

Teaching Algorithm Development Skills

Houghton Mifflin Online Assessment System Walkthrough Guide

MKTG 611- Marketing Management The Wharton School, University of Pennsylvania Fall 2016

BRAZOSPORT COLLEGE LAKE JACKSON, TEXAS SYLLABUS. POFI 1301: COMPUTER APPLICATIONS I (File Management/PowerPoint/Word/Excel)

CS 101 Computer Science I Fall Instructor Muller. Syllabus

Beginning Blackboard. Getting Started. The Control Panel. 1. Accessing Blackboard:

Guide to the Uniform mark scale (UMS) Uniform marks in A-level and GCSE exams

Computer Software Evaluation Form

Spinners at the School Carnival (Unequal Sections)

Focus of the Unit: Much of this unit focuses on extending previous skills of multiplication and division to multi-digit whole numbers.

READY TO WORK PROGRAM INSTRUCTOR GUIDE PART I

Implementing a tool to Support KAOS-Beta Process Model Using EPF

A guided tour: An overview of the CCITL system Commonwealth Center for Instructional Technology and Learning

Transcription:

Lecture Outline IMS1906 Programming in VB.NET Week 1 Lecture 1 Unit Overview Angela Carbone Monash University School of Information Management and Systems Introducing the Lecturer Introducing the Tutor Aims and Objectives of the unit Text Books Lecture structure Tutorial structure Assessment SGO Creating Programs Let s begin 2 Introducing the Lecturer Introducing the tutors Office: RmS4.02, Tower Building Ph: 9903 1911 Mb: 0407 886 791 Email: angela.carbone@infotech.monash.edu.au URL: http://www.sims.monash.edu.au/staff/angela Consultation: Probably best straight after the lecture Availability: Generally NOT available Thursdays & Monday Please email or phone me to make an appointment Angela Carbone Shiu Ming Tsang (Eder) Wed 1-3pm, Rm T201 (start in week 2) Eder_tsang@hotmail.com 3 4 Aims and Objectives What will you learn? To design programs for Windows that: Manipulate data in files Perform calculations and generate reports Are useful General principles of programming Skills transferable to other programming languages or settings Methodologies of problem solving Resources $11.95 from Caulfield Bookshop Unit Materials Unit Book with 12 study guides, reading Supporting Files Available on Unit Web Site Assignments on the website Text Books Robertson: Simple Program Design, 4th edition Zak: Microsoft Visual Basic.NET Reloaded You should have your own copy of each book Aliased with other subject CGO1810 But there are differences $134.94 from Caulfield Bookshop 5 6

Lectures Lecture Outline Lecture Time Wed 10-12pm Rm A2.05 Caulfield Lecture Materials Will be posted on the subjects Website for students to download Lecture Attendance and Etiquette Attendance is highly recommended Please turn mobile phones on silent vibration 1 L1: Introduction to IMS1901 L2: Program Design 2 L3: Object and Classes L4: Introduction to VB.NET/IDE 3 L5: Application Development L6: Runtime Assignment 4 L7: Variables and Data Types L8: Input and Output **** Mid - Semester Break **** 5 L9: The Selection Structure I L10: The selection Structure II 6 L11: Testing and Debugging L12: TEST 1 10% 7 L13: The Repetition Structure I L14: The Repetition Structure II 8 L15: Functions and Subroutines I L16: Functions and Subroutines I 9 L17: File I/O L18: List Boxes 10 L19: Arrays I L20: Arrays II 11 L21: String Manipulation L22: TEST 2 10% 12 L23: Structures L24: Invited Guest 13 L25: Exam Revision L26: Exam Revision 7 8 Tutorials Start in week 2 Please check your room Tutorial Allocations (via Allocate +) http://allocate.cc.monash.edu.au Tutorial Exercises http://www.sims.monansh.edu.au Then click on [courses, simsunits, IMS1906] OR http://www.sims.monash.edu.au/subjects/index.html Note Change Tutorial Organisation Week Exercise Sheet 2 1. Introduction to program design 3 2. Designing a copyright screen 4 3. Creating a simple Calculator 5 4. Using Variables and Data Types 6 5. A custom made quote 7 6. Calculating Income Tax 8 7. Applying Repetition Structure 9 8. Writing functions and Subroutines 10 9. File I/O **** Mid Semester Break **** 11 10. Arrays and List Boxes 12 11. Structures 13 12. Random Access Files 9 10 Assessment Assignments Exam Result comprises: End of semester exam 40% Mid-semester Test 1 10% 60% Mid-semester Test 2 10% Assignments Assignment 1 10% Assignment 2 15 % 40% Assignment 3 15% Tutorials: Attendance will be recorded and participation will be factored into the final mark Three assignments 40% Assignment 1 Assignment 2 Assignment 3 11 12

Assessment Notes (See Unit Outline) Learning Strategies Plagiarism University policy http:///pubs/handbooks/srg/srg0071.htm Faculty policy http://www.csse.monash.edu.au/~ajh/adt/policies/cheating.html Standards for presentation [s2.1] Extensions [s2.3] Student Problem Resolution Procedure [s3] Pass requirements [s4] Active listening attentively listen, by focusing on what is said, so you can answer questions pertaining to the information Reading Practicing & learning by mistakes Ask for help or clarification during lectures and tutorials 13 14 SG0:Creating Programs Part 1 Computer Systems Hardware/Software Programming languages Compilers and Interpreters Program Development 15 Study Guide 0: Objectives Understand terms: Computer Software/Hardware Computer Program Understand what is meant by: Programming Language Compiler, Interpreter Structured Programming Algorithm Describe steps involved in design and development of computer programs List the 7 stages of the Program Development Process 16 Components of a Computer System Basic Computer Hardware Five elements: hardware software data (raw data useful information) people (e.g. computer programmers, users) procedures (software development methodology) [Unit Guide, SG 0, p2] input device central processing unit (CPU) main memory output device secondary storage device 17 18

Software People write Computer Programs System software Operating System programs to manage the computer s hardware and devices provide a user interface typically textual or graphical Application software programs to perform specific tasks (e.g. word processor, database management system, web browser, your programs) (Commercial) Off The Shelf (COTS) Set of instructions which tell computer what to do Convert data into information Are particularly useful for Large amounts of data Complicated/repetitive processing Human-readable highly-structured text Tells computer what to do and how Example Languages: Machine Language Assembly Language Procedure-oriented languages (Fortran, C, Cobol) Object-oriented languages (Visual Basic.NET, Java,C++/C#) 19 20 Compilers and Interpreters Program Development process Allows the programmer to use instructions that more closely resemble the English language Require either an interpreter or a compiler to convert English like instructions to machine code Interpreter > translates high level instructions into machine code lineby-line Compiler > translates the entire program into machine code before running the programming > Compilers are always much faster than interpreters Seven Steps: Define problem Outline solution Develop algorithm Test the algorithm Code the algorithm into a programming language. Run program Document and maintain [Robertson, p5] 21 22 Algorithm SG 0 Summary A set of instructions Lists the steps involved in accomplishing a task. Examples from real-life The steps for how to bake chocolate cake How to drive from Melbourne Airport to Monash Gippsland In programming terms an algorithm must: Be lucid/clear, precise and unambiguous Give the correct solution in all cases; and Eventually end [Robertson, p. 5] Terms Computer Software/Hardware Computer Program Programming Language Compiler Interpreter List the 7 stages of the Software Development Process. Explain what is meant by an algorithm. 23 24

Reading/Questions Today Unit Book, Study Guide 0 Robertson, Chapter 1 Next lecture Unit Book, Study Guide 1 Robertson, Chapters 2,3 Szymanski article (in Appendix A of Unit Book) Is there anything you d like to ask? IMS1906 Business Software Fundamentals Week 1 - Lecture 2 Program Design Angela Carbone Monash University School of Information Management and Systems 25 Lecture Outline Why Program? Program Design Modular programming Top down design Algorithms The Structure Theorem IPO charts Algorithm development Desk Checking To Learn The power of writing programs The challenge of writing programs The cost of writing programs The joy of programming Remember If you write specifications for programmers (which is what analysts do), you have to have a deep understanding of what you re writing about. 27 28 SG 1 - Objectives Qualities of good programs List the qualities of a good program. Describe the features of structured program design. Use top-down development techniques to refine a problem to its lowest level. Describe the 3 control structures in the structure theorem. Use pseudo code to design algorithmic solutions to simple computational problems. Design algorithms which use the three control structures of the structure theorem. Correct Readable Easy to maintain and modify Reliable and robust Efficient (time/space) Flexible (Szymanski, pp. 288-289) 29 30

Structured Programming Structured Programming: Encompasses: > The Structure Theorem > Modular design > Top-down development Read Robertson section 1.2 Why is it important? Read Szymanski p.287-289 (Unit Book, Appendix) Modular Program Design Programming problems often very large and complex Large complex problems handled as sets of smaller problems called modules Each module responsible for one task Makes the problem psychologically easier to manage people can generally only process or retain 4 to 7 ideas at a time programmers can usually only work efficiently with blocks of 20-50 lines of code Allows several programmers to work on one program simultaneously 31 32 Top-down Development Algorithm Decompose the problem into its major stages, starting with the overview level At each stage, identify the sub-problems which make up that stage Continue this way until the problems can t be broken down further Sequence of precise steps to solve the problem no ambiguity Finite number of steps. An algorithm s logic must terminate Expressed in a precise language or graphical form Pseudo code (structured English) Flowcharts Other formats 33 34 Algorithm Notations Pseudo code Structured English Uses key -words for control and structure elements Suits verbal thinkers Written in a text editor or word processor Flowcharts Diagrammatic, with minimal pseudo code Shapes represent control and structure elements Arrows between shapes show progression See Robertson, Appendix 1, for one flowchart notation 35 Pseudo code Basic computer operations: 1. Receive Input read or get 2. Output Print, Write, Put Out, Output or Display 3. Arithmetic: + (add), - (subtract), * (multiply), / (divide) 4. Assign a value to a variable (storage location) 5. Compare two values, then select a course of action 6. Repeat a group of actions [Robertson,p12-14] 36

Control Structures Control Structures The Structure Theorem:- any computer program can be built from just three control structures: Sequence Selection Repetition Used to determine (control) the order in which the steps in an algorithm are to be executed All problem solutions can be expressed as combination of: Step 1 Sequences Step 1 Step 2 Step 3 Step 2 Step 3 37 38 Control Structures Control Structures All problem solutions can be expressed as combination of: Sequences Selection or decision structures IF condition = true THEN YES Actions ELSE NO Actions END IF? NO YES Actions if YES Actions if NO 39 All problem solutions can be expressed as combination of: Sequences Selection or decision structures Loops or repetition structures DO WHILE condition = true Step 1 Step 2 END DO WHILE Do while... is true Step 1 Step 2 40 SG 1: Summary Steps involved in writing a program Qualities of a good program Features of structured program design. Top-down development. Pseudo code and flow charts for expressing algorithms The structure theorem: Sequence Selection Repetition 1. Define the Problem Use English 2. Outline the Solution Write Algorithms 3. Desk Check the Algorithms 4. Plan and Design the User Interface 5. Translate the Algorithms into Code 6. Document and Maintain the program 41 42

Defining the Problem Example Problem 1 Identify: inputs outputs processing Record these in a defining diagram or IPO Chart Problem You need to read in a tax rate as a percentage and the prices of five items. The program is to calculate and display the total price and the amount of this total which is the tax payable on those items. How do we turn this into a computer program? 1. Identify the nouns 2. Identify inputs and outputs 3. Identify processes (verbs) 4. Write an algorithm 43 44 Step 1: Identify the nouns Step 2: Identify inputs and outputs Problem You need to read in a tax rate as a percentage and the prices of five items. The program is to calculate and display the total price and the amount of this total which is the tax payable on those items. Problem You need to read in a tax rate as a percentage and the prices of five items. The program is to calculate and display the total price and the amount of this total which is the tax payable on those items. Input Processing Output tax rate item price 1 item price 2 item price 3 item price 4 item price 5 total price tax payable 45 46 Step 3: Identify processes (verbs) Steps involved in writing a program Problem You need to read in a tax rate as a percentage and the prices of five items. The program is to calculate and displaythe total price and the amount of this total which is the tax payable on those items. Input tax rate item price 1 item price 2 item price 3 item price 4 item price 5 Processing read tax rate read item prices 1 to 5 calculate item price total calculate tax amount display item price total display tax amount Output total price tax payable 47 1. Define the Problem Use English 2. Outline the Solution Write Algorithms 3. Desk Check the Algorithms 4. Plan and Design the User Interface 5. Translate the Algorithms into Code 6. Document and Maintain the program 48

Write an Algorithm CalculateTotalPriceAndTaxPayable Read taxrate Read item1, item2, item3, item4 and item5 totalprice = item1 + item2 + item3 + item4 + item5 taxpayable = totalprice * taxrate Print totalprice, taxpayable END Write an Algorithm Variables CalculateTotalPriceAndTaxPayable Read taxrate Read item1, item2, item3, item4 and item5 totalprice = item1 + item2 + item3 + item4 + item5 taxpayable = totalprice * taxrate Print totalprice, taxpayable END 49 50 Example Problem 2 Try this yourself Identifying Inputs and Outputs Problem A program is required to read the length and width of a rectangular house block, and the length and width of the rectangular house on the block. The program should compute and display the time required to cut the grass around the house at a rate of two square metres per minute. Robertson (4 th Ed), p. 22. 51 Underline the nouns (objects) A program is required to read the length and width of a rectangular house block, and the length and width of the rectangular house on the block. The program should compute and display the time required to cut the grass around the house at a rate of two square metres per minute. 52 Identifying Processes Steps involved in writing a program Underline the verbs and adverbs: A program is required to read the length and width of a rectangular house block, and the length and width of the rectangular house on the block. The program should compute and displaythe time required to cut the grass around the house at a rate of two square metres per minute. Draw IPO chart Outline the solution by writing an algorithm 1. Define the Problem Use English 2. Outline the Solution Write Algorithms 3. Desk Check the Algorithms 4. Plan and Design the User Interface 5. Translate the Algorithms into Code 6. Document and Maintain the program 53 54

Desk Checking Algorithm Design - Summary Necessary to ensure algorithm is correct Can save time when you come to coding and testing Draw up a table of expected results Specifically look for boundary conditions e.g. 1, 0, 1 Draw up a second table: Variable names on horizontal axis Key steps/points in the algorithm on the vertical axis. Step through the algorithm, writing down changes to variables value Compare the two tables [Robertson, p28] 55 Write down Inputs/Processing/ Outputs (IPO) Write algorithms Desk Check the Algorithms Then move on to implementation VB.NET Program Design VB.NET Coding Reading Unit Book, SG 1 Robertson Chapters 2,3 Szymanski article (Unit Book, Appendix A) 56