hts.StevenWood.com

Activity 2-1

Home ] Up ] [ Activity 2-1 ] Activity 2-2 ] Activity 2-3 ] Activity 2-4 ] Activity 2-5 ] Activity 2-6 ] Activity 2-7 ][ Last Page ]

Problem Solving
SW Development
IPO Chart
IPO & Problem Anaysis
Flowcharts

Problem Solving & Software Development   

Unit 2 Activity 1

Time:  160 minutes

Description  

Students study problem solving and the software development process. They use IPO charts and flowcharts to organize their program planning.

Strand(s) & Learning Expectations  

Strand(s): 

A. Programming Concepts and Skills  B. Software Development  C. Computer Environments and Systems  D. Topics in Computer Science

Overall Expectations
B1. use a variety of problem-solving strategies to solve different types of problems independently and as part of a team;
B3. design algorithms according to specifications;
Specific Expectations
B1.1 use various problem-solving strategies (e.g., stepwise refinement, divide and conquer, working backwards, examples, extreme cases, tables and charts, trial and error) when solving different types of problems;
B1.2 demonstrate the ability to solve problems independently and as part of a team;
B1.3 use the input-process-output model to solve problems.
B3.1 design simple algorithms (e.g., add data to a sorted array, delete a datum from the middle of an array) according to specifications;
B3.2 solve common problems (e.g., calculation of hypotenuse, determination of primes, calculation of area and circumference) by applying mathematical equations or formulas in an algorithm;
B3.3 design algorithms to detect, intercept, and handle exceptions (e.g., division by zero, roots of negatives).
B4.1 describe the phases (i.e., problem definition, analysis, design, writing code, testing, implementation, maintenance), milestones (e.g., date of completion of program specification), and products (e.g., specification, flow chart, program, documentation, bug reports) of a software development life cycle;
   

Prior Knowledge & Skills  

  • none

Planning Notes  

  • Select from the following possible preparations for this activity:

    • Gather examples (possibly from videos, articles, or web sites) of development processes in other industries (e.g., auto industry and food industry).

    • Consult with broad-base technology teachers about development processes used in their courses and relevant industries.

    • Inventory the programs or applications used by students and staff in the school.

    • Gather examples of the software development process in the creation/production of large programs.

    • Contact a computer professional (programmer, analyst, or project manager) at a local company and inquire about the use of the software development process within the company.

  • Prepare a handout, overhead presentation, multimedia presentation, or web page on the software development process.

  • Prepare in-class task to help students understand different steps in the software development process.

  • Prepare a homework assignment to help students understand the software development process.

 

Teaching/Learning Strategies  

  • ask students how they solve problems
  • look at Problem Solving methods (Appendix 2.1.1) with
  • discuss with the students the need to organize the work to create a program;
  • introduce the use of an IPO Chart (Appendix 2.1.2) and a Flowchart (Appendix 2.1.3) by using an example program;
  • use a simple math concept that makes use of a constant;
    • such as finding the area of a circle (uses pi);
  • demonstrate the use if the IPO and flowcharts using the example;
  • design and administer a quiz on the use of the IPO chart and flowchart;
  • design and administer a test based on this activity.
  • Introduce the concept of a development process and present examples of how products are created.

  • Introduce the concept of the Software Development Process (Appendix 2.1.4) and stages of this process. See Waterfall model (Appendix 2.1.5) and Iterative Model (Appendix 2.1.6) and Guideline model (Appendix 2.1.7).

  • Present a development process from another industry and compare it to the software development process.

  • Discuss how needs of various industries shape their design processes.

  • Students participate in a class discussion about the development process .

  • Facilitate discussion on students’ programming experience and how they have carried out programming tasks.

  • Query students about the programs they have used at school, at home, or at work.

  • Facilitate discussion regarding the creation of large programs or applications (e.g., word processor, spreadsheet, photo-editing tools, web browser, and operating system).

  • Present examples of the use of the software development process in the software industry.

  • Discuss the ethical implications of the design process.

 

Assessment & Evaluation of Student Learning

Thinking/Inquiry X Application X Communication X Knowledge X

As Learning

Students will be given time to:

  • reflect on their progress/ understanding/areas of concern based on teacher/student/peer suggestions (e.g. after test take up)
  • journalize their reflections
  • reflect on the work of others

For Learning

The teacher will

  • observe student progress/performance
  • ask questions based on student work
  • check homework correctness/completion when appropriate
  • review formative quiz results

Of Learning

Accommodations

Resources

  • Hume, J.N. Patterson and Stephenson, Christine. Introduction to Programming in Java. Toronto, Ontario, Canada. Holt Software Associates Inc. 2000.
    ISBN 0-921598-39-4
  • Lambert, Kenneth A. and Osborne, Martin. Java Complete Course in Programming & Problem Solving. Cincinnati, Ohio, USA. South-Western Educational Publishing. 2000.
    ISBN 0-538-68707-X
  • Arnow, David M. and Weiss, Gerald. |Introduction to Programming Using Java: An Object Oriented Approach. Don Mills, Ontario. Addison-Wesley. 2000.
    ISBN 0-201-61272-0
  • Deitel, H.M. and Deitel P.J. Java: How to Program. 3rd ed. Upper Saddle River, New Jersey. Prentice Hall.1999.
    ISBN 0-13-012507-5
  • Eckel Bruce. Thinking in Java. 2nd ed. Upper Saddle River, New Jersey, USA. Prentice-Hall. 2000.
    ISBN 0-13-027363-5 available for download from http://www.mindview.net/Books/TIJ/ in various formats
  • Eck,  David J. Introduction to Programming Using Java 3.1 ed.  2001. Open Publication License. 2000. <http://math.hws.edu/javanotes>
  • Stein, Lynn Andrea. Interactive Programming in Java. Morgan Kaufmann Publishers. 1999. 
    ISBN 1-55860-557-6 Available for download from http://www.mkp.com/ipij/
  • Roedy Green. How to write unmaintainable code. http://mindprod.com/unmain.html
  • John Malouff. Over Fifty Problem Solving Strategies Explained. http://www.une.edu.au/about-une/academic-schools/bcss/study-areas/psychology/research/psychology-community-activities/over-fifty-problem-solving-strategies-explained
Home ] Up ] [ Activity 2-1 ] Activity 2-2 ] Activity 2-3 ] Activity 2-4 ] Activity 2-5 ] Activity 2-6 ] Activity 2-7 ][Last Page]
All material on this site is copyright © 1997- by Steven Wood or as credited. All right reserved. Use of this site indicates you agreement with the  terms of use.
Send comments or questions to about this page.
Every attempt has been made to credit work under copyright. If there are any claims that copyright has been missed please contact the .
+SDG+