Computer Science and Software Engineering© 2014 Project Lead The Way, Inc. How To Program.

Slides:



Advertisements
Similar presentations
Modular Design Using Subroutines (functions later)
Advertisements

Chapter 3: Modules, Hierarchy Charts, and Documentation
Clean code. Motivation Total cost = the cost of developing + maintenance cost Maintenance cost = cost of understanding + cost of changes + cost of testing.
SharePoint slide libraries II: Use slides in the slide library MICROSOFT ® OFFICE SHAREPOINT ® SERVER 2007 TRAINING ADVANTAGE TALENT, INC. “Professionals.
S.T.A.I.R.. General problem solving strategy that can be applied to a range problems.
OPSM 639, C. Akkan1 OPSM 639 Project Management Introduction to Microsoft Project - Part 1: Creating the Work Breakdown Structure and Entering Activity.
Mrs. Chapman. Tabs (Block Categories) Commands Available to use Script Area where you type your code Sprite Stage All sprites in this project.
Algorithms and Problem Solving-1 Algorithms and Problem Solving.
Computer Programming and Basic Software Engineering 4. Basic Software Engineering 1 Writing a Good Program 4. Basic Software Engineering 3 October 2007.
1 Introduction to Software Engineering Lecture 42 – Communication Skills.
Program Design and Development
Programming Fundamentals (750113) Ch1. Problem Solving
Chapter 8: Introduction to High-Level Language Programming Invitation to Computer Science, C++ Version, Fourth Edition.
Chapter 4 Sec. 4.1, 4.2, 4.4 Procedures (User-defined)
CODING Research Data Management. Research Data Management Coding When writing software or analytical code it is important that others and your future.
The Project AH Computing. Functional Requirements  What the product must do!  Examples attractive welcome screen all options available as clickable.
Every week: Sign in at the door If you are new: Fill in Registration Form Ask a Mentor how to get started Make sure you are on the Athenry Parents/Kids.
CH07: Writing the Programs Does not teach you how to program, but point out some software engineering practices that you should should keep in mind as.
Introduction to High-Level Language Programming
1 Shawlands Academy Higher Computing Software Development Unit.
General Programming Introduction to Computing Science and Programming I.
1 The Software Development Process  Systems analysis  Systems design  Implementation  Testing  Documentation  Evaluation  Maintenance.
CSE 219 Computer Science III Program Design Principles.
Extended Prelude to Programming Concepts & Design, 3/e by Stewart Venit and Elizabeth Drake Chapter 2: Flowcharts.
Oct 15, 2007Sprenkle - CS1111 Objectives Creating your own functions.
Chapter 17 Creating a Database.
1 NORMA Lab. 5 Duplicating Object Type and Predicate Shapes Finding Displayed Shapes Using the Diagram Spy Using Multiple Windows Using the Context Window.
Chapter 7 Software Engineering Introduction to CS 1 st Semester, 2015 Sanghyun Park.
Software Engineering Chapter 3 CPSC Pascal Brent M. Dingle Texas A&M University.
Introduction to Software Development. Systems Life Cycle Analysis  Collect and examine data  Analyze current system and data flow Design  Plan your.
Making Good Code AKA: So, You Wrote Some Code. Now What? Ray Haggerty July 23, 2015.
Chapter 12 Object Oriented Design.  Complements top-down design  Data-centered view of design  Reliable  Cost-effective.
CS221 Algorithm Basics. What is an algorithm? An algorithm is a list of instructions that transform input information into a desired output. Each instruction.
The Software Development Process
Lecture 6: Writing the Project Documentation Part IV.
CPSC 871 John D. McGregor Change management Module 2 Session 3.
When collaborating, it is important to manage changes in the models. For example: –To create or edit a submodel E.g. Habitat suitability is replaced with.
HKOI Programming HKOI Training Team (Intermediate) Alan, Tam Siu Lung Unu, Tse Chi Yung.
Chapter 16 Quality Assurance Through Software Engineering Systems Analysis and Design Kendall & Kendall Sixth Edition.
How Are Computers Programmed? CPS120: Introduction to Computer Science Lecture 5.
Chapter Topics 2.1 Designing a Program 2.2 Output, Input, and Variables 2.3 Variable Assignment and Calculations 2.4 Variable Declarations and Data Types.
1 The Software Development Process ► Systems analysis ► Systems design ► Implementation ► Testing ► Documentation ► Evaluation ► Maintenance.
INFO 636 Software Engineering Process I Prof. Glenn Booker Week 10 – Process Definition 1INFO636 Week 10.
Today's Ninja Challenge: Write Your First Computer Game!
Today… Modularity, or Writing Functions. Winter 2016CISC101 - Prof. McLeod1.
Today… Functions, Cont.: –Designing functions. –Functional Decomposition –Importing our own module –A demo: Functional solution to assignment 2. Winter.
ICAD3218A Create User Documentation.  Before starting to create any user documentation ask ‘What is the documentation going to be used for?’.  When.
1 Documenting Progress Reviews in EmpowHR Attachment F.
Advanced Higher Computing Science The Project. Introduction Worth 60% of the total marks for the course Must include: An appropriate interface using input.
Algorithms and Flowcharts
CMSC 104, Version 8/061L16IncrementalProg.ppt Incremental Programming Topics Review of Incremental Programming Example of Incremental Programming Reading.
Advanced Higher Computing Science
ICS 3UI - Introduction to Computer Science
IL Marking Get out your CPU / Memory answers Swap with someone else
Algorithms and Problem Solving
Sample Wiki Comments?.
Functions Review.
Chapter Topics 2.1 Designing a Program 2.2 Output, Input, and Variables 2.3 Variable Assignment and Calculations 2.4 Variable Declarations and Data Types.
Decomposition.
CISC101 Reminders Assn 3 due Friday, this week. Quiz 3 next week.
Programming Fundamentals (750113) Ch1. Problem Solving
Programming Fundamentals (750113) Ch1. Problem Solving
[insert Module title here]
[insert Module title here]
CS 8532: Advanced Software Engineering
Programming Fundamentals (750113) Ch1. Problem Solving
Software Development Process
Programming Fundamentals (750113) Ch1. Problem Solving
Presentation transcript:

Computer Science and Software Engineering© 2014 Project Lead The Way, Inc. How To Program

Agile Design Process Frequently revisit earlier steps.

The design process starts here! Could be "Create for yourself" or "Meet client's needs." Define the Objective Things to Do Refine any objectives if unclear. Ask questions! Time here saves time later.

Some tasks are too large to think about at once. Form simple tasks. Break Down Complex Goals!

Write pseudocode. Make a flow chart or sketch. Strategize

Create a Skeleton Outline with skeleton comments. Meta-information (author, date, problem description) can be included here. It has to go somewhere!

Flesh Out Your Skeleton Fill in code between or next to the skeleton comments.

Flesh Out Your Skeleton A tracer is a temporary code designed to connect big pieces. Code small bits and test frequently. Reconsider problem definition and strategy when roadblocked. Add comments to explain tricky steps. Add headers for larger chunks.

Review Code Make sure what you’ve written is actually accomplishing your design goals. Frequently try to break code into shorter chunks that are more simple, clear, and/or more modular. Modular code can be reused later.

Avoid Duplicating Code If code appears twice, try to modify to appear once but function twice. Appears twice Appears only once

Beg, Borrow... But Don’t Steal Check online for similar code and incorporate it appropriately.

Help Documentation Right-click to get selection menu. Choose “help”

Debugging Retain code with “copy-disable-modify”. “De-Capped” old code New code to test

Debugging Save frequently. Name with version number.

Debugging Monitor values of variables during execution. Scripts panel Shows x, y, and direction values Only for selected sprite

Debugging Monitor values of variables during execution. On-stage monitors Add as many as you like “Check” the variable to monitor Visible on stage