+ All Categories
Home > Documents > The Evolution of Redwood Brian Westphal. Overview Motivation Multiphase Design Results Lessons...

The Evolution of Redwood Brian Westphal. Overview Motivation Multiphase Design Results Lessons...

Date post: 22-Dec-2015
Category:
View: 217 times
Download: 0 times
Share this document with a friend
Popular Tags:
19
The Evolution of Redwood Brian Westphal
Transcript

The Evolution of Redwood

Brian Westphal

Overview

•Motivation

•Multiphase Design

•Results

•Lessons

•Future Work

Motivation

•A development environment that supports the tasks of programmers should support the following:

Hierarchical designParallelismDirect manipulationAlgorithmic independenceObject-oriented designOpen/shared-sourceCommenting and design principles

Multiphase DesignPrior researchPrior research

Initial design Initial design documentdocument

PrototypePrototype

Beta I releaseBeta I release

Beta II (internal) Beta II (internal) releaserelease

Beta III releaseBeta III release

Prior ResearchPublication

Graphical Programming: A Vehicle for Teaching Computer Based Problem Solving (November 2003)

Prior researchPrior research

Initial design Initial design documentdocument

PrototypePrototype

Beta I releaseBeta I release

Beta II (internal) Beta II (internal) releaserelease

Beta III releaseBeta III release

Initial Design Document

Prior researchPrior research

Initial design Initial design documentdocument

PrototypePrototype

Beta I releaseBeta I release

Beta II (internal) Beta II (internal) releaserelease

Beta III releaseBeta III releaseApril 2003

PrototypeA “here’s what I’m thinking” demo for Dr. Harris and Dr. Dascalu (May 2003)

Prior researchPrior research

Initial design Initial design documentdocument

PrototypePrototype

Beta I releaseBeta I release

Beta II (internal) Beta II (internal) releaserelease

Beta III releaseBeta III release

Beta I ReleasePublications

Redwood: A Visual Environment for Software Design and Implementation (December 2003)

Snippets: Support for Drag-and-Drop Programming in the Redwood Environment (May 2004)

Prior researchPrior research

Initial design Initial design documentdocument

PrototypePrototype

Beta I releaseBeta I release

Beta II (internal) Beta II (internal) releaserelease

Beta III releaseBeta III release

Beta II (internal) Release

Publication

The Redwood Programming Environment (August 2004)

Prior researchPrior research

Initial design Initial design documentdocument

PrototypePrototype

Beta I releaseBeta I release

Beta II (internal) Beta II (internal) releaserelease

Beta III releaseBeta III release

Beta III ReleasePublication

(submitted for review)

The Redwood Programming Environment (March 2005)

Beta III will be published online in April 2005

Prior researchPrior research

Initial design Initial design documentdocument

PrototypePrototype

Beta I releaseBeta I release

Beta II (internal) Beta II (internal) releaserelease

Beta III releaseBeta III release

Results

•Redwood Beta III is the next release to be published online in April 2005

•Hosted on CSE web server

•Listed on freshmeat.net

Lessons

•The following pages contain a few of the “big picture” lessons I learned throughout developing Redwood

Lessons•Spending time to well-design your

product will save countless hours when it comes to implementing (and re-implementing) a project.

•Simplify, simplify, simplify - a little smart code makes up for a lot of dumb code.

•If a smaller part of a project can be made into a subproject, encapsulate it, unit test it, and remove it from the main project code.

Lessons

•If you’re unsure of how to use a key piece of technology required to implement your project, learn it ahead of time and work with it as a separate project for a while.

•Always think of better ways to do things, but evaluate the amount of resources it will take to implement any changes - it might not be worth implementing a “better way” if a working solution already exists.

Future Work•Online snippet browser integration

•Internationalization

•Increased platform and compiler compatibility

•GUI editor for developing snippets

•Expanded set of core snippets

•Security

Thank You!Questions, Comments, and Concerns


Recommended