Fundamentals of Software Development 1Slide 1 Today’s summary Attitudes toward learning:Attitudes toward learning: –Working in groups –Learning by doing.

Slides:



Advertisements
Similar presentations
Fundamentals of Software Development 1Slide 1 Today’s Summary Statements: Conditionals (if-then-else)Statements: Conditionals (if-then-else) Investigated.
Advertisements

CS0004: Introduction to Programming Introduction to Programming.
Copyright © 2002 W. A. Tucker1 Chapter 1 Lecture Notes Bill Tucker Austin Community College COSC 1315.
Systems Software.
Introduction to Computer Programming in C
Please open your laptops, log in to the MyMathLab course web site, and open Quiz 6.1. If you have any time left after finishing the quiz problems, CHECK.
Gild Project – Explorations….. CSc 115/160 (S01) Pair Programming.
March 25, 2002R McFadyen a lightweight approach to software development. about 5 years old has been used at: Bayerische Landesbank, Credit Swiss.
Fundamentals of Software Development 1Slide 1 Today’s Summary Hello World concepts – –main, static, console Programming patterns involving assignment and.
Fundamentals of Software Development 1Slide 1 Today’s Summary UML class diagrams – –Why classes are important – –UML class diagrams – relationships – –UML.
Computer Concepts 5th Edition Parsons/Oja Page 546 CHAPTER 11 Software Engineering Section A PARSONS/OJA Computer Programming.
CIS105 Chapter 1 Theory Review. Page 2 Hardware and Software are the two major components o any computer system Hardware is the set of physical devices.
Fundamentals of Software Development 1Slide 1 Pair Programming: What is it? What is it?What is it? Two programmers working side-by-side, collaborating.
CS 410 Applied Algorithms Applied Algorithms Lecture #1 Introduction, class information, first problems.
COMP4710 Senior Design Software Development Process.
Chapter 1 Software Engineering. Homework ► Read Section 2.2 (pages 79-98) ► Answer questions: ► 7, 8, 11, 12, & 13 on page 134. ► Answer on paper, hand.
About the Presentations The presentations cover the objectives found in the opening of each chapter. All chapter objectives are listed in the beginning.
CS 101 Problem Solving and Structured Programming in C Sami Rollins Spring 2003.
Fundamentals of Software Development 1Slide 1 Summary of one kind of computation: Instruction Followers Step by step instructions that produce a desired.
Fundamentals of Software Development 1Slide 1 Today’s Summary Things, types and names – –What are names? types? – –Why use names? – –How to use a name:
Types of software. Sonam Dema..
Copyright 2003 Scott/Jones Publishing Brief Version of Starting Out with C++, 4th Edition Chapter 1 Introduction to Computers and Programming.
Your Interactive Guide to the Digital World Discovering Computers 2012.
Fundamentals of Software Development 1Slide 1 Outline Designing a computational community for WordGamesDesigning a computational community for WordGames.
Introduction to Programming G50PRO University of Nottingham Unit 1 : Introduction Paul Tennent
Introduction 01_intro.ppt
Introducing Java.
Introduction COMP104: Fundamentals and Methodology.
One Key to Success.  Review homework & respond to questions ◦ ng%20Companion%2006/Personal/time/index.htm.
Testing. What is Testing? Definition: exercising a program under controlled conditions and verifying the results Purpose is to detect program defects.
COMP Introduction to Programming Yi Hong May 13, 2015.
Chapter 1.4 Programming languages Homework Due: Monday, August 11, 2014.
Copyright © 2012 Pearson Education, Inc. Chapter 1: Introduction to Computers and Programming.
Instructor: Tina Tian. About me Office: RLC 203A Office Hours: Wednesday 1:30 - 4:30 PM or .
Lesson 6. GCSE Computing – programming languages Candidates should be able to:  describe common tools and facilities available in an integrated development.
© 2012 Pearson Education, Inc. All rights reserved. 1-1 Why Java? Needed program portability – Program written in a language that would run on various.
Programming Concept Chapter I Introduction to Java Programming.
Guide to Programming with Python Chapter One Getting Started: The Game Over Program.
Fundamental Programming: Fundamental Programming K.Chinnasarn, Ph.D.
Pair Programming (PP). What Is Pair Programming [1] XP (Extreme Programming) practise ”Two programmers working side-by-side, collaborating on the same.
1 COMS 261 Computer Science I Title: C++ Fundamentals Date: September 05, 2005 Lecture Number: 4.
Compiler Construction (CS-636)
© 2012 Pearson Education, Inc. All rights reserved types of Java programs Application – Stand-alone program (run without a web browser) – Relaxed.
Computer Science Reaching Wider Summer School 2012.
1 Overview of Programming Principles of Computers.
25-Feb-16 Extreme Programming. 2 Software engineering methodologies A methodology is a formalized process or set of practices for creating software An.
Administrative Preliminaries Computer Architecture.
Chapter 1: Introduction to Computers and Programming.
Programming 2 Intro to Java Machine code Assembly languages Fortran Basic Pascal Scheme CC++ Java LISP Smalltalk Smalltalk-80.
Software Engineering Algorithms, Compilers, & Lifecycle.
Programming Logic and Design Seventh Edition Chapter 1 An Overview of Computers and Programming.
Your Interactive Guide to the Digital World Discovering Computers 2012 Chapter 13 Computer Programs and Programming Languages.
Programming Language Basics. What is a Programming Language? “A computer, human-created language used to write instructions for a computer.” “An artificial.
Introduction to Algorithm. What is Algorithm? an algorithm is any well-defined computational procedure that takes some value, or set of values, as input.
Fundamentals of Software Development 1Slide 1 Today’s Summary InterfacesInterfaces –What are they? –Why are they important? –How do they relate to WordGames?
Why don’t programmers have to program in machine code?
Recap: The design of Word Games
Introduction to Eclipse
Sections Basic Concepts of Programming
DDC 1023 – Programming Technique
Developing Applications
Translators & Facilities of Languages
Assembler, Compiler, Interpreter
Assembler, Compiler, Interpreter
Programming Language Basics
Fundamentals of Software Development 1
 Is a machine that is able to take information (input), do some work on (process), and to make new information (output) COMPUTER.
Programming Logic and Design Eighth Edition
Presentation transcript:

Fundamentals of Software Development 1Slide 1 Today’s summary Attitudes toward learning:Attitudes toward learning: –Working in groups –Learning by doing An example of the design of a computational community (Word Games)An example of the design of a computational community (Word Games) –Today, without Java. Next session, with Java. Nelson MandelaNelson Mandela Using an Integrated Development Environment (IDE)Using an Integrated Development Environment (IDE) –Pair programming –Estimating effort –Compiling a program –Running a program Summarized on the next few slides

Fundamentals of Software Development 1Slide 2 Design of WordGames, part 1 We have answered (at least partially):We have answered (at least partially): –System behavior? Allows a user to play various word gamesAllows a user to play various word games –Members of the community? (one) User interface and User, (many) Transformers, (many) Connections(one) User interface and User, (many) Transformers, (many) Connections –How do they interact? User operates user interface, which creates Transformers and ConnectionsUser operates user interface, which creates Transformers and Connections Transformers communicate through ConnectionsTransformers communicate through Connections –What goes inside a transformers: ConnectionAcceptors,... plus an instruction-follower with rules, such as for Capitalizer: 1.Read input 2.Produce capitalized version of it 3.Write output Next session: how to implement such rules!Next session: how to implement such rules!

Fundamentals of Software Development 1Slide 3 Pair Programming Two programmers working side-by-side, collaborating on the same design, algorithm, code or testTwo programmers working side-by-side, collaborating on the same design, algorithm, code or test –One programmer, the driver, has control of the keyboard/mouse and actively implements the program –The other programmer, the observer, continuously observes the work of the driver to identify tactical (syntactic, spelling, etc.) defects and also thinks strategically about the direction of the work –On demand, the two programmers can brainstorm any challenging problem You learn faster when a partner is helping double checkYou learn faster when a partner is helping double check –Two sets of eyes are more likely to notice errors than one set You learn better whenYou learn better when –a partner is helping you understand –you are challenging your partner to master the material

Fundamentals of Software Development 1Slide 4 Integrated Development Environment (IDE) A single, integrated tool that helps you:A single, integrated tool that helps you: –Compile and run a program –Edit a program (JavaEyes, Part 2) –Much more too! Compile:Compile: –Translate the source code into machine instructions Run (execute)Run (execute) –Run the program, by executing the machine instructions

Fundamentals of Software Development 1Slide 5 What’s Ahead? Before the next session:Before the next session: –Do Homework 2 (no late homework!) Including the reading and the associated online quizIncluding the reading and the associated online quiz Next session:Next session: –An extended example of a design of a computational community, in Java –Reading, understanding and editing Java programs Using an Integrated Development Environment (IDE)Using an Integrated Development Environment (IDE) Reminder: Find the homework assignment from the Schedule page of the CSSE 120 Angel site angel.rose-hulman.edu Suggestion: Routinely do your homework in F-217 (CSSE lab). A student assistant is there every Sunday through Thursday evening, 7 pm to 9 pm, so you can get immediate answers to any questions you might have.