Top Banner
Tool Setup Guide to CMPS 115 Spring 06 Guozheng Ge CS Dept. UCSC April 4, 2006
18

Tool Setup Guide to CMPS 115 Spring 06 Guozheng Ge CS Dept. UCSC April 4, 2006.

Dec 21, 2015

Download

Documents

Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Tool Setup Guide to CMPS 115 Spring 06 Guozheng Ge CS Dept. UCSC April 4, 2006.

Tool Setup Guide to CMPS 115 Spring 06

Guozheng Ge

CS Dept. UCSC

April 4, 2006

Page 2: Tool Setup Guide to CMPS 115 Spring 06 Guozheng Ge CS Dept. UCSC April 4, 2006.

Software Development (SD) In General

Page 3: Tool Setup Guide to CMPS 115 Spring 06 Guozheng Ge CS Dept. UCSC April 4, 2006.

Software Development In Real World

KPMG Canada Survey (1997)– >61% projects failed– >75% delayed– >50% substantially over budget

Chaos Report (1995)– 31.1% projects got cancelled before completion– 52.7% cost over 189% of their budget– Only 16.2% on-time and on-budget

Page 4: Tool Setup Guide to CMPS 115 Spring 06 Guozheng Ge CS Dept. UCSC April 4, 2006.

SD is about the Process

Page 5: Tool Setup Guide to CMPS 115 Spring 06 Guozheng Ge CS Dept. UCSC April 4, 2006.

SD is about Tools

Programming languages Component libraries Editors, IDEs Compilers Debugger Testing tools Configuration management tools, e.g. version

control, distributed collaboration, etc. Modeling and design tools

Page 6: Tool Setup Guide to CMPS 115 Spring 06 Guozheng Ge CS Dept. UCSC April 4, 2006.

SD is about Humans

Different roles in SD process– Domain expert, architect, designer, developer,

testing engineer, release and deploy engineer, maintainer, end user

Teamwork and collaboration Management and scheduling Other non-tech factors

– Trust, devotion, passion, etc.

Page 7: Tool Setup Guide to CMPS 115 Spring 06 Guozheng Ge CS Dept. UCSC April 4, 2006.

Recommended Tools for CMPS115 Spring 06

Java

Eclipse

Subversion

DForge http://dforge.cse.ucsc.edu/

http://www.eclipse.org/

http://subversion.tigris.org/

http://java.sun.com/

Page 8: Tool Setup Guide to CMPS 115 Spring 06 Guozheng Ge CS Dept. UCSC April 4, 2006.

Java SDK

Sun J2SE 5.0 (recommended) Others

– IBM JDK (more legacy OS support, AIX, OS/2)– Apple J2SE– Bea JRockit– Kaffe + Classpath (open source under GPL)– Apache Harmony (open source under Apache

License)

Page 9: Tool Setup Guide to CMPS 115 Spring 06 Guozheng Ge CS Dept. UCSC April 4, 2006.

Eclipse

Most popular IDE in Java developers

Java Development Tools (JDT) sub-project is one of the most advanced Java development environment out there

– Intuitive GUI– Code insight– Real time errors and warnings– Powerful refactory– And more…

Eclipse is more than an IDE, but a general platform– Everything is a plugin

Page 10: Tool Setup Guide to CMPS 115 Spring 06 Guozheng Ge CS Dept. UCSC April 4, 2006.

Eclipse Demo

A simple demo to teach you how to use Eclipse JDT by creating a “Hello World” project (no video)

Page 11: Tool Setup Guide to CMPS 115 Spring 06 Guozheng Ge CS Dept. UCSC April 4, 2006.

Why We Need Version Control

1 2

3 4Harry’s work is lost !!!

Page 12: Tool Setup Guide to CMPS 115 Spring 06 Guozheng Ge CS Dept. UCSC April 4, 2006.

Solution 1: Lock-Modify-Unlock

1 2

3 4

Page 13: Tool Setup Guide to CMPS 115 Spring 06 Guozheng Ge CS Dept. UCSC April 4, 2006.

Solution 2: Copy-Modify-Merge

1 2

3 4

5 6

7 8

Page 14: Tool Setup Guide to CMPS 115 Spring 06 Guozheng Ge CS Dept. UCSC April 4, 2006.

Version Control with Subversion

Subversion supports both solutions

• Most CVS features

• Directory and metadata versioning

• Renames

• Atomic commits

• Constant branching and tagging time

• and many more…

Page 15: Tool Setup Guide to CMPS 115 Spring 06 Guozheng Ge CS Dept. UCSC April 4, 2006.

Subversion Client Programs

Subclipse plugin for Eclipse (demo)– video svn.avi

1. install Subclipse plugin for Eclipse

2. import code to svn server

3. modify and checkin)

Command line tool svn

Page 16: Tool Setup Guide to CMPS 115 Spring 06 Guozheng Ge CS Dept. UCSC April 4, 2006.

DForge: a Collaborative Online Development Tool

Developed based on GForge code base Features

– Multi-user, project-based management– Forum, wiki, shared documents– Bug tracking, release management– Project statistics– Subversion repository

Demo (dforge-final.avi)

Page 17: Tool Setup Guide to CMPS 115 Spring 06 Guozheng Ge CS Dept. UCSC April 4, 2006.

Useful Docs

CMPS 115 Project Setup Guide Version Control with Subversion (an open

source book under Creative Commons) Eclipse.org tutorials and examples java.sun.com for Java tutorials, examples

and Javadoc

Page 18: Tool Setup Guide to CMPS 115 Spring 06 Guozheng Ge CS Dept. UCSC April 4, 2006.

Thank You and Good Luck for Your Projects!