Title: Tool Setup Guide to CMPS 115 Spring 06
1Tool Setup Guide to CMPS 115 Spring 06
- Guozheng Ge
- CS Dept. UCSC
- April 4, 2006
2Software Development (SD) In General
3Software Development In Real World
- KPMG Canada Survey (1997)
- gt61 projects failed
- gt75 delayed
- gt50 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
4SD is about the Process
5SD 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
6SD 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.
7Recommended Tools for CMPS115 Spring 06
- Java
- Eclipse
- Subversion
- DForge
http//java.sun.com/
http//www.eclipse.org/
http//subversion.tigris.org/
http//dforge.cse.ucsc.edu/
8Java 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)
9Eclipse
- 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
10Eclipse Demo
- A simple demo to teach you how to use Eclipse JDT
by creating a Hello World project (no video)
11Why We Need Version Control
1
2
Harrys work is lost !!!
3
4
12Solution 1 Lock-Modify-Unlock
1
2
3
4
13Solution 2 Copy-Modify-Merge
1
2
5
6
3
4
7
8
14Version 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
15Subversion Client Programs
- Subclipse plugin for Eclipse (demo)
- video svn.avi
- install Subclipse plugin for Eclipse
- import code to svn server
- modify and checkin)
- Command line tool svn
16DForge 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)
17Useful 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
18Thank You and Good Luck for Your Projects!