Programming Methodology


Stanford School of Engineering



This introduction to the engineering of computer applications emphasizes modern software engineering principles with a focus on the first three of the four “D’s” of development: Design, Develop, Debug, and Deploy . Using these key topics, particular focus will be on good programming style and the built-in facilities of the Java language. Learn why programming requires a much higher level of artistry than simply the science of syntax.

Students will be required to develop software applications, primarily using the Java programming language.


  • Laura Cruz-Albrecht
  • Sarai Gould


This is an introduction to software development. No prior programming experience required.

Topics include

  • Object-oriented design
  • Decomposition
  • Encapsulation
  • Abstraction
  • Testing

Note on Course Availability

The course schedule is displayed for planning purposes – courses can be modified, changed, or cancelled. Course availability will be considered finalized on the first day of open enrollment. For quarterly enrollment dates, please refer to our graduate certificate homepage.


Software Requirements

Students will use a special version of the Eclipse development environment, written specifically for use in this class. There are PC and Macintosh versions of the software. Installation instructions are available in the Downloading Eclipse handout. Additionally, you will need the newest version of Java SDK installed on your computer. Further details of the software are below:

Windows Users:
  • Stanford Eclipse for Windows (Windows 7 or higher)
  • Java SDK for Windows
Mac Users:
  • Stanford Eclipse for Mac (will only work on MacOS 10.6 (2009) or higher)
  • Java SDK for Mac
068 Summer 2018-19 Online

Enroll Now

Dates:June 24 - August 15, 2019
Days: Mon, Tue, Wed, Thu
Times:10:30 am - 11:20 am
Units: 3.00-5.00
  • Laura Cruz-Albrecht
  • Sarai Gould
Delivery Option:
For Credit $6,300.00 ?


Enrollment Dates: April 14 to June 17, 2019

Computer Science Department Requirement
Students taking graduate courses in Computer Science must enroll for the maximum number of units and maintain a B or better in each course in order to continue taking courses under the Non Degree Option.

This course may not currently be available to residents of certain states.