Tools
1 Required Tools
There are a variety of tools that you must use this
semester. Note that, unless it is explicitly
stated otherwise, you
must install the versions specified, even if they are not
the most recent (so that your development environment is consistent
with the one in the labs and of your fellow students).
1.1 Java Development Tools
Information about how to install the Java development tools is
available on the course "Help" page.
Java Development Kit Standard Edition v21 (Compiler and Runtime)
Eclipse v2024-06 (Integrated Development Environment)
Checkstyle v10.17 (Static Analysis Tool)
JUnit v5.10 (Unit Testing Framework)
EclEmma v3.1.9 (Coverage Tool)
1.2 Engineering Design Tools
Visual Paradigm for UML v17.2
For compatibility
reasons, you must use the version that is installed in the
Department's labs. The installer is available
on
stu.cs.jmu.edu
(see the
course "Help" page for help).
. Note that thare are two
OS/X versions. For Apple silicon, you must use
Visual_Paradigm_17_2_OSX_AArch64.dmg
, and for Intel
silicon you must use
Visual_Paradigm_17_2_OSX_WithJRE.dmg
.
You must register your installation using the
JMU CS Department Activation Codes.
(Note:
Through the Academic Partner Program,
James Madison University is granted license for modeling software -
Visual Paradigm
for educational use.)
1.4 Project Planning and Management Tools
Function Point Calculator (Software Size Tool)
WWW App
COCOMO II (Time/Cost Estimation Tool)
WWW App
1.5 Telepresence/Communication/Collaboration Tools
GitHub (Code Management Tool)
GitHub Login
Note: You must create an account that uses your JMU "dukes" eID (e.g.,
bernstdh@dukes.jmu.edu)
2 Other Useful Development Tools
There are a variety of other development tools that you might find useful
as the semester progresses, including:
If you would like to use a stand-alone file transfer client
you can use:
If you would like to use a terminal client you need to use an SSH
client. In OS X and Linux/Unix you can use ssh
from the
command line. In MS-Windows you may be able to use ssh
but, if not, you can use:
3 Other Useful Project Planning and Management Tools
If you have trouble at a Project Planning meeting you can randomly
assign tasks to people using:
4 Alternative Tools That Might Interest You
Though we will use a specific set of tools this semester, there
are alternatives that you may want to consider for other purposes,
including: