an introduction to programming using alice the program development cycle

21
An Introduction to Programming Using Alice The Program Development Cycle

Upload: aileen-shelton

Post on 30-Dec-2015

222 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: An Introduction to Programming Using Alice The Program Development Cycle

An Introduction to Programming Using Alice

The Program

Development Cycle

Page 2: An Introduction to Programming Using Alice The Program Development Cycle

An Introduction to Programming Using Alice

Program Development Cycle

Modern software developers base many of

their techniques on traditional approaches to

mathematical problem solving.

One such approach is based on the how

engineers solve problems.

Page 3: An Introduction to Programming Using Alice The Program Development Cycle

An Introduction to Programming Using Alice

Program Development Cycle

Engineers must:

• Design a solution to a problem

• Implement the solution

• Test the solution

• Fix any errors in the solution

Page 4: An Introduction to Programming Using Alice The Program Development Cycle

An Introduction to Programming Using Alice

Program Development Cycle

This approach can be used in computer programming:

• Design a solution to a problem (design a program)

• implement the solution (code the program )

• Test the solution (test the program)

• Fix the solution (debug the program)

Page 5: An Introduction to Programming Using Alice The Program Development Cycle

An Introduction to Programming Using Alice

Program Development Cycle

Once the software is working, improvements can

be designed into the system. This leads back to

design, creating a four-phase cycle.

Design

Code

Test

Debug

Page 6: An Introduction to Programming Using Alice The Program Development Cycle

An Introduction to Programming Using Alice

Program Development Cycle

Design

Code

Test

Debug

Page 7: An Introduction to Programming Using Alice The Program Development Cycle

An Introduction to Programming Using Alice

Program Development Cycle

Design

Many different techniques are used to design methods

in new software. Top-down development and modular

design are most common.

Tools include flowcharts, pseudo-code, storyboards,

and Universal Modeling Language (UML).

Page 8: An Introduction to Programming Using Alice The Program Development Cycle

An Introduction to Programming Using Alice

Program Development Cycle

Design

In the design phase of object-oriented programming,

objects must be chosen from libraries, or the

properties and methods for new objects must be

described.

Page 9: An Introduction to Programming Using Alice The Program Development Cycle

An Introduction to Programming Using Alice

Program Development Cycle

Design

Code

Test

Debug

Page 10: An Introduction to Programming Using Alice The Program Development Cycle

An Introduction to Programming Using Alice

Program Development Cycle

Code

The program development

cycle’s code phase includes

translating a software design

into a particular language,

and then entering that

language on the computer.

Page 11: An Introduction to Programming Using Alice The Program Development Cycle

An Introduction to Programming Using Alice

Program Development Cycle

Design

Code

Test

Debug

Page 12: An Introduction to Programming Using Alice The Program Development Cycle

An Introduction to Programming Using Alice

Program Development Cycle

Test

Testing can be rather complicated:

Does the new method do what it is supposed to do?

This is known as a test for correctness. Tests for

correctness measure whether the program meets the

original specifications.

Page 13: An Introduction to Programming Using Alice The Program Development Cycle

An Introduction to Programming Using Alice

Program Development Cycle

Test

Testing can be rather complicated:

Is the method reasonably efficient? How much time

does it take for the method to complete its task, and

how much space does it use?

Page 14: An Introduction to Programming Using Alice The Program Development Cycle

An Introduction to Programming Using Alice

Program Development Cycle

Test

Testing can be rather complicated:

Does the method have any undesirable side effects?

How does one program affects the performance of

another program, or one method affects another

method?

Page 15: An Introduction to Programming Using Alice The Program Development Cycle

An Introduction to Programming Using Alice

Program Development Cycle

Test

Programmers perform unit tests and integration tests.

A unit test checks to see if a method works as expected all by itself.

An integration test checks to see if a method works in combination with other methods.

Page 16: An Introduction to Programming Using Alice The Program Development Cycle

An Introduction to Programming Using Alice

New Software Method

Testing Shell

Overall Program

Other methods

Other methods

New Software Method

New Software Method

Unit Test

Integration Test

Page 17: An Introduction to Programming Using Alice The Program Development Cycle

An Introduction to Programming Using Alice

Program Development Cycle

Test

Programmers perform unit tests and integration tests.

A unit test checks to see if a method works as expected all by itself.

An integration test checks to see if a method works in combination with other methods.

Page 18: An Introduction to Programming Using Alice The Program Development Cycle

An Introduction to Programming Using Alice

Program Development Cycle

Design

Code

Test

Debug

Page 19: An Introduction to Programming Using Alice The Program Development Cycle

An Introduction to Programming Using Alice

Program Development Cycle

Debug

The causes of any problems discovered during testing need to be isolated. Here unit tests are most helpful.

Once you know the cause, you can develop a plan for fixing the problem, modify the necessary methods, and then test again.

Page 20: An Introduction to Programming Using Alice The Program Development Cycle

An Introduction to Programming Using Alice

Program Development Cycle

Design

Code

Test

Debug

Page 21: An Introduction to Programming Using Alice The Program Development Cycle

An Introduction to Programming Using Alice

An Alice Development Cycle

Design Describe the objects,

methods, and initial scene for the new Alice world.

ImplementAdd the necessary objects to the world, position them,

and code their methods.

Test Test each method to see

if it works by itself and with other methods.

DebugCorrect each method’s

design and coding, and the initial state of the world.