Field Session Projects 2005
Agilent
ATI
Avaya
Bureau of Land Management (BLM)
Colorado Performance Academy
CSM #1 Calc III Challenge
CSM #2 Tech Camp
CSM #3 NEES Shake Table
ESE Today
Medtronic
Quantum PM #1
Quantum PM #2
Rhythm and Hues #1
Rhythm and Hues #2
Rhythm and Hues #3
Thomas White Photography
ToBee
Toilers Research
USGS
Agilent
Client:
Jeff Harrell – Technical Marketing
Engineer – Agilent Technologies
Background:
Jeff Harrell is currently working with
the implementation of circuit board manufacturing test equipment for
process control. Simply taking the measurements and catching defects
is only a limited use of the equipment. However, the collection and
presentation of the data coming from the machine is the next step in
controlling the manufacturing process. Visualization and management
of this information is the overall scope of this project, and would
allow the project team to develop graphical tools, user interface,
and charts to provide efficient root cause analysis.
Project
Requirements
Develop software that reads data from a
measurement tool, and presents the data graphically through charts,
statistical calculations, and visualization methods:
-
Input
measurement data from machine (text file outputs)
-
Conduct
calculations on this data and plot the resulting figures
-
Develop
visualization for the graphs so that a single, non-cluttered screen
could give a snapshot of the current process performance
-
Develop an
“alarm engine” for the current data to see if the data represents an
error type situation
-
Develop user
interface for input of process limitations and calculation methods
-
Strong
emphasis on ease of use and clean presentation of data
-
Provide
smooth transition through software for more efficient problem solving
-
Real time
updating of software with new measurement data
Software Deliverables
The
code language preference is .NET C#. However, if the learning curve
of the new language heavily influences the scope of the project, then
C++ is acceptable.
ATI
The Project "Graphics
Performance Analysis":
ATI is the world's leader in graphics technology and performance. Our
objective is to develop and add features to an
existing performance framework. The project includes:
- Performance analysis on our new Linux3D graphics driver
- Develop/port some graphicsbenchmarks/applications to Linux.
- Students will learn Linux as well as X/Motif framework
We are looking for
motivated students who will want
assist in this state of the
art project. You will have an opportunity to work with 3D interactive
graphics/visualization.
The People
You will have the
chance to work with several of our senior engineers at AIT who have
over 15 years software engineering
experience in a variety of different industries (healthcare, business
to business, space, pharmaceutical, ...etc).
The Skills
ATI is seeking only
talented, creative, and energetic team players. This project will
require knowledge of
the following:
- C/C++, Computer graphics (plus)
- solid math skills
- Linux/Unix environment
- X Windows, Motif (plus)
- A willingness to learn about Visualization and how it is used in
graphics/gaming industry.
Avaya
Background on Avaya
Avaya designs, develops, and deploys
communication systems, applications, and services on a global level. As
a leader in the field of enterprise telecommunication systems,
Avaya is responsible for meeting the communication needs of small
businesses as well as 90% of the companies in the Fortune 500 and the
U.S. government.
Project Background
Like
many other large companies, Avaya has a significant number of
desktop, client-server, and web-based application development
projects underway. To ensure a consistent look and feel to users of
these applications, the purpose of this field session will be to
create a web-based repository for commonly used icons, design
templates, style sheets, and graphics.
Project
Objectives
The objective of this project is to create a
user-friendly web-based repository for uploading and downloading
icons that Avaya application developers use for common functions. Icons
will be collected from a number of existing Avaya sites and
posted on this repository. The icons will be indexed so that they can
be categorized and searched. Users of the web site will also be able
to use the site to email questions and request new icons. If time
permits, the site will be tailored to maintain other reusable GUI
assets. These include style sheets, HTML templates, JavaScript code,
etc.
Skills Required
The project requires knowledge of
database-driven web development, Java Servlets, XHTML, JavaScript,
and graphic design. Familiarity with XML and XSLT is also desired.
The architectural design can be flexible, but must be easily
maintained. The application will be deployed on a Windows-based
Apache Tomcat Web Server. Effective interpersonal skills are also
required.
How Do CSM Students Benefit?
The team that
works on this project will be afforded firsthand experience in
developing a web-based application for a company that is increasingly
investing in web-based application development. This project may give
the team members an opportunity to apply web experience they may
already have, as well providing them with the opportunity to develop
new skills building a real application framework using modern Web
technologies.
Bureau of Land Management (BLM)
Develop BLM Project web site for national application:. The website
will need to meet DOI/BLM website requirements, such as: Section 508 of
the Rehabilitation Act, privacy issues, links, logos, etc. The website
should be written in plain English, it should be easy to use, and
contain enough background information for the users to understand what
the site is used for. The website will be tested for 508 compliance
using screen reader programs and accessibility testing. The completed
website will be approved by our office, the NIRMC Internet manager, and
the BLM public affairs office. A list of BLM website requirements will
be given to the students for the project
CPA - Colorado Performance Academy
The Project "HP-Trainer":
"HP-Trainer" is a web based training tool to be used by personal
training coaches in training
their clients. Our objective to write this program using web-based
technology(using Java, C#, or PHP), Graphics(SVG), and Database
(MySql). Students will be working together with experienced
professional(s) for review, and guidance of the project.
The Process
CPA believes that a sound development process leads to sound solutions.
Our process involves aspects of solid software engineering process and
Extreme Programming (XP). Working on this project will provide you the
opportunity to work through all phases of the software development
cycle including requirements gathering, analysis, design, development
and testing.
The People
You will have the chance to learn from one of our senior engineers who
has over 15 years software engineering experience in a variety of
different industries (healthcare, business to business, space,
pharmaceutical, ...etc).
The Skills
CPA is seeking only talented and energetic team players. This project
will
require knowledge of web-based technologies ( Java Servlets/JSP(Struts)
or C#, PHP) Web Servers, and Databases (MySQL). An understanding of
these technologies will be important to the success of the project. If
you do not know them already, it is suggested you read up on them.
CSM #1
This goal of this project will be to create web-based materials to
support transfer students needing to take a challenge exam for the line
and surface integrals portion of Calc III. You will be developing
instructional material and practice questions that cover the material
from this portion of the course.
Time permitting, you will also be creating similar online materials for
the Laplace transform portion of MACS 315.
Technical Skills: Students should have strong math skills.
Students should either know or be willing to acquire the ability to
develop webpages. Development environment TBD.
CSM #2
Summer computer camps provide a fun environment for children to learn about many subjects that are not offered at the middle or high school level. Today's leading computer camps offer subjects such as programming, robotics, 3D modeling, web design, and digital video creation. Of course, the knowledge acquired at these computer based technology camps does not come free. These camps typically charge between $600 and $700 for a child to attend for one week, and these charges do not include food or lodging. In
other words, the valuable information presented at technology camps is often restricted to children from affluent homes.
The vast majority of technology camp attendees are white males. In computer science and technology, there continues to be a great deal of discussion and concern over the low numbers of women and minorities who participate in these fields. In 2001, only 27.9% of computer science bachelor degrees were awarded to women and only 5.3% and 9.9% of
the degrees were awarded to Hispanics and African Americans, respectively.
In order to increase the interest of minorities in technological fields, middle school students from Adams County District 50 will be invited to attend one of two week-long technology camps. Fifty-four percent of the students in this district are Hispanic and 42% of the students qualify for free or reduced cost lunches. This generates the need for a camp specifically designed to provide middle school students with the opportunity to learn about technology at little to no cost.
The first camp will be offered to an equal mix of male and female middle school students with diverse ethnic backgrounds. The second camp, which will have identical content, will be restricted to female students. Sixteen middle school students will attend each camp. There are four camp instructors. For field session you will:
- Create and implement lessons for the technology camp.
- Create and implement assessment to determine what the students learned at the camp and how the different environments in the two camps affected students.
- Attend every day of each camp and help the camp instructors. . The camps will run during the weeks of June 6th and June 13th.
- Create a binder with all lesson plans and camp materials for reproduction in the future.
- Help camp instructors with any other miscellaneous tasks with respect to the camp.
CSM #3
NEES Telereality Laboratory
The Network for Earthquake Engineering Simulation (NEES) is a national
collaboratory that provides revolutionary capabilities for earthquake
engineering research by linking world-class laboratories around the country
with a state-of-the-art network to make possible collaborative and remote
research on experiments, computational modeling, and education
(http://nees.org/index.php). A bench-scale NEES site has been established
here at Mines to test concepts and explore new ideas in distributed testing
with over $30k in funding from NSF, CSM and PCB. The Mines NEES site
includes bench-scale (small-scale) actuators and a shaking table (seismic
simulator). The mines site is fully connected to the NEES network and has
all of the functionality of one of the full NEES equipment sites.
This project will complete the development of the bench-scale NEES site here
at Mines that can be remotely operated (using a Java-based web page
interface) and observe (via streaming video and data) over the internet to
conduct bench-scale research and teach concepts in structural engineering
(e.g. courses such as Mechanics of Materials, Structural Theory, Vibrations)
here at CSM and around the world. The Field Session team will be responsible
for developing the front end internet-based interface for teleoperation and
teleobservation. Further details regarding the NEES network (NEESgrid) can
be found at: http://it.nees.org/
under documentation. The backend control of
the equipment and acquisition of data will be conducted in parallel by Dr.
Richard Christenson (Engineering Division) and associated engineering
students (to some extent at your direction).
MACS User Interface team developed a java-applet for teleoperation of the
bench-scale shake table last semester. To see their work go to:
https://neespop.mines.edu/
(Username: guest, Password: mines), click on the
tab "UCIST" at the top and then the side tab "Shake Table". Select an
available camera (Camera 1 is the only one working outside of the subnet
currently), adjust the amplitude (try 2 cm) and frequency (try 4 Hz) and
press "start". I am asking the Field Session team to greatly enhance this
teleobservation and teleoperation and will encourage your creativity and
ideas. NEES and NEESit are very interested in this project.
ESE Today
Goal: to develop an online component for a seminar provider's course
support.
Overview: MattSoft Publishing Inc (MPI) is developing online journals
for professional academic communities and would like to add the benefit
of web support for their client's short courses. These short
components should plug in as a cgi and/or use db structures to
articulate the various information (such as course, student, grade,
etc.) metrics to the provider.
MPI has built online journal proof of concept with a link to a
temporary course "brochure" which in the near future will further link
to an actual online course support structure. For this project,
MPI is seeking software engineers with an interest in gaining
experience in building cgi and/or db interface routines for its online
seminar support section.
There are several proposed projects for this client. For more
information, see the document included here.
Medtronic Navigation
Medtronic
Navigation is the world’s leading supplier of integrated
computer-assisted surgery (CAS) products. In less than 15 years,
Medtronic Navigation has grown from 8 inspired individuals to an
established team of more than 350 employees worldwide dedicated to
expanding the boundaries, utilization and variety of procedures for
computer-assisted surgery. With a mission to alleviate pain, restore
health, and extend life, Medtronic Navigation is committed to
providing leading-edge technology to assist in improving patient
outcomes today and in years to come. As part of the summer field
session project, you can take pride in the fact that your work may
contribute to enhancing or saving a life.
The
Project
CAS
systems perform similar to satellite navigation. System localizers
detect the position of surgical instruments by emitting and receiving
inferred or electromagnetic signals. Once the instrument position is
determined, it is visually illustrated on the system monitor
providing surgeons with real-time information allowing them to
increase their precision while decreasing the surgical exposure,
providing benefit to both the surgeon and the patient. In order to
increase understanding and usability of existing products, you could
be part of a team that will be responsible for designing,
implementing, and testing a product to enhance application
functionality across a variety of solutions. The software should be
implemented in C++ and will require some interactive GUI elements.
Experience Required
It is
important that participants be proficient in C++. Other
valuable skills include: GUI programming, familiarity with Linux and
software engineering.
Quantum PM #1
QuantumPM,
LLC is a Colorado-based project management professional services
company. We provide software products and consulting services in the
field of project management. We are highly respected in the field of
project management. We are a Microsoft Certified Partner, and will
soon publish a book, “Special Edition Using Project Server 2003:
Microsoft Office Project Server 2003 Unleashed”, through SAMS
Publishing on Microsoft’s product offering, Microsoft Office
Project Server 2003.
Over
the last two years, we have employed several Colorado School of Mines
students as interns and as full-time employees upon graduation. We
have found that experience to be very helpful to the students and to
our organization.
This
year we are revitalizing our website, www.quantumpm.com.
This will include a new visual design, architectural structure,
navigation structure, and publishing capabilities. We are currently
exploring the possibility of .php pages for dynamic update
capabilities. We are also incorporating web analytics software.
The Project:
- To work within
the new visual website structure to develop dynamic update
capabilities, integrate data base elements, purchasing capabilities,
system administrative functions, and dynamic reporting capabilities.
- To work with
the QuantumPM team (Marketing and Development) to find creative and
cutting edge solutions for website requirements.
- To work in a
team environment on a website that you can reference and visually refer
to after the project is complete.
Software
Products
Tools
that will be used to further develop the website include: Microsoft
Visual Studio .NET Enterprise Architect, Macromedia Dream weaver
UltraDev, Macromedia Fireworks 4, Adobe Illustrator, Adobe Photoshop,
Visual Studio, Visual Source Safe CodeRush, MS Office, Office Web
Components. Languages include VB.Net, C#.Net, ASP.Net, PHP, HTML,
DHTML, Flash, JavaScript, XML, and SQL. Platforms include Windows
Server 2003, SQL Server, and IIS.
QuantumPM
Web Site Evolution:
The site was originally designed in basic
HTML. JavaScript was used for the menu system. We then redesigned the
navigation and the site was converted over to ASP driven pages with
Visual Basic scripting and layers. The current site was converted to
.NET (aspx) pages keeping in tack the basic navigation structure
using dynamic HTML layers. The main template design of the site is
built using header/footer elements in .NET. The header.aspx and the
footer.aspx files combine to create an HTML table that contains
content and dynamic elements of the site.
We
look forward to the opportunity to work with you!
The QuantumPM Team
QuantumPM #2
QuantumPM, LLC is a Colorado-based
project management professional services company. We provide both
software products and consulting services in the field of project
management. Our customers are located primarily in the US and Canada
although we are beginning to reach to other parts of the globe as
well.
We are well-respected in the field of
project management and will soon publish a book through SAMS
Publishing on Microsoft’s product offering, Microsoft Office
Project Server 2003. Because we are a growing company that is
concerned about employee welfare, we want to facilitate employee
personal growth through a feedback and communication site that is
dedicated to maintaining employee satisfaction. This web-based
application will provide users with access to personalized
information, support questionnaires and feedback entry mechanisms.
The site will be the front-end of a secured MS SQL Server database
containing the personal input and information.
This development effort will proceed
through the full software development lifecycle. We estimate that
the scope of this project will be achievable within the field session
timeframe and will be scoped to fit into that timeframe. There will
most likely be a day or two of introduction to our development
environment, .NET, InfoPath and SharePoint. The technologies used
will be a combination of SQL database development, MS ASP.NET with
the possibility of leveraging MS InfoPath technology in combination
with a MS SharePoint Portal site and lists. Reports from the site
may leverage MS SQL Reporting services, with the reports themselves
being written in .NET.
Over the last two years, we have
employed several Colorado School of Mines students as interns and as
full-time employees upon graduation. We have found that experience to
be very helpful to the students and to our organization. The students
who have joined us have learned new technologies and have
participated in the creation of our Software Development Life Cycle
which is used on all of the products that we create.
We look forward to the opportunity to
work with you!
The QuantumPM Team
Rhythm and Hues #1
Project 1. Tetrahedralization:
We need to simulate elastic material such as flesh and muscles. In
order to do this we need to take a model
of an existing surface containing a solid and build a 3 dimensional
tetrahedral mesh in its interior. This information will then be used as
input for dynamical simulation of the material made up of tetrahedrons.
Four students (S1, S2, S3, S4) would be required of the project.
S1 - Write a visualization tool using GLUT so that we can visualize a
tetrahedral structure. See
http://www.xmission.com/~nate/glut.html
S2- Develop code that can read model input file formats and and design
data structures. - possibly borrow Maya's obj format. Read
from externally defined shape (maya obj)
Maya obj reference (search 'maya obj format' in google)
http://www.cs.huji.ac.il/~danix/modeling/Format_Obj.html
- develop a new file format for tetrahedra
S3,4 - Look at the work done by http://tetgen.berlios.de/index.html
and integrate this environment into their environment.
The end product would be to input a "obj" model and output its
tetrahedralization. You'll get to see the results of your work on the
BIG screen --- probably Garfield and maybe if its really successful
good Superman.
Rhythm and Hues #2
Project 2. Rigid Body simulation:
Refer mostly to http://www.d6.com/users/checker/dynamics.htm and papers listed there
S1 - Write visualization using GLUT http://www.xmission.com/~nate/glut.html
S2,3,4 - upgrade his code to support more general shapes and be able to correctly handle physical
quantities such as center of mass, moment of inertia, volume,....
Read from externally defined shape (maya obj)
Maya obj reference (search 'maya obj format' in google)
http://www.cs.huji.ac.il/~danix/modeling/Format_Obj.html
Rhythm and Hues #3
Algebraic Multigrid
This project is mathematical and will use numerical analysis skills.
At each stage of the "flesh"
simulation described above we need to solve a
large system of linear equations. The solver of this system needs to be fast
and robust. An excellent technique is to use the so called algebraic multigrid
method (an alternative is the conjugate gradient method.
At the end of
the project you would have a utility that would solve general linear systems
using the algebraic multigrid approach. The project would require linear
algebra and numerical methods. It could be implemented in either C++ or Matlab.
Thomas White Photography
Adobe has announced an upcoming upgrade to their Creative Suite
programs. Creative Suite 2 is tentatively scheduled to ship on May
15th. CS2 will feature upgrades to Adobe's Photoshop, Illustrator,
InDesign, Acrobat and GoLive products.
In addition to these industry standard graphics programs the new suite
will include a new program, Adobe Bridge.
Bridge is a new generation of digital-asset-management (DAM) software
replacing the "File Browser" in the previous Photoshop CS. Bridge
will allow users to caption, organize and manipulate digital images in
ways DAM software has not done in the past and enhance interoperability
between the Creative Suite applications. Adobe is hoping that
Bridge will quickly become a central tool for photographers shooting
digital images, replacing a suite of other utility applications.
The architecture of Bridge allows for a high level of customization
using javascript to automate program functions. Adobe provides a
detailed guide to the Bridge javascript DOM and a suite of interface
and cross platform script development tools.
Students in the project group will be asked to create a suite of
scripts to aid digital photographers and photojournalists using Bridge
to automate the digital-camera workflow. Because the final
product is still in the Beta development cycle the final guidelines for
the scripts to be created will not be determined until the project's
first week. The guidelines for the project will come from Adobe
software engineers, product managers, Adobe's Photoshop volunteer Beta
tester community and working photographers.
To be a valuable member of the project team a student should be
familiar with javascript and related languages like C and C++.
Students participating in the project may be using Adobe proprietary
materials and Beta software and may be required to sign Adobe
"non-disclosure agreements."
TōBee
Video Snipper
Intent
TōBee
provides very simple tools and a
web infrastructure that lets anyone quickly and very inexpensively
create and deliver streaming rich media presentations. One of the
major steps an “author” takes to build these presentations is
cutting out video clips from raw footage. This step is important but
can be made simple. Microsoft provides a tool with XP called Movie
Maker (and there are others out there including GNU) that performs
these functions but the GUI is cumbersome, non-intuitive, and laden
with features that make it’s use confusing and complicated to the
author. The intent of TVS is to provide very simple tools to do just
a few critical functions as preparation for our Composer product. If
more robust editing is to be done we will continue to recommend that
other products be used. Our software tools are free and intended to
be and remain simple to use.
Overview
TVS will
allow the author to select a
video file that has already been captured to his or her computer,
identify one or more parts of the timeline using start and end
markers, and export those parts or “snips” in a preset video
format. The snip markers and snip names will be saved along with
other basic information for the author to recall later if needed. The
GUI is to be as simple as possible. Flexibility typically means
complexity so the design will have limited variations.
Platform
TōBee is
based on Windows dotNET,
DirectX, Windows Media SDK, and XML. TVS will possibly be combined
with other existing dotNET projects in the future but the task at
hand is to build a standalone install version. We use dotNET
flavored Microsoft Installer for our installations currently.
Input video
formats to be supported are
all variations of wmv, avi, and mpg. Output format will be wmv as
defined by a separate profile (.prx) file. If time allows, and
“advanced” version of output for other format variations can be
included.
More
Details
For more details, see the document
included here.
Toilers Research Group
Client: The Toilers Research Group
http://toilers.mines.edu
Colorado School of Mines
Tracy Camp (MCS Faculty)
Stuart Kurkowski (MCS Ph.D. Student)
Tuli Mushell (MCS B.S./M.S. Student)
Background:
The Network Simulator 2 (NS-2) is a popular and powerful simulation
environment. The Toilers research group at CSM has recently developed a
new visualization and animation tool for use with NS-2 wireless
simulations. Visual analysis of a wireless environment is important for
three areas of NS-2 based simulation research: (1) validating the
accuracy of a mobility model's output and/or the node topology files
used to drive the simulation; (2) validating new versions of the NS-2
simulator itself; and (3) analysis of the resulting NS-2 trace files.
Our interactive NS-2 protocol and environment confirmation tool
(iNSpect) program can accurately handle all three of these areas.
iNSpect is freely available to researchers to improve the accuracy of
their simulations, and has already been shared with over 40 different
research groups in 15 different countries. See http://toilers.mines.edu for more
information about iNSpect and
http://toilers.mines.edu/EXTERNAL/twiki/bin/view/Toilers/NsInspect
for a small demo.
Skills required:
- Strong C++ programming
- ability/interest to learn new languages, API's, and packages
Technology:
- iNSpect is written in C++ using STL, GTK+, GtkGLext, and OpenGL
libraries
Project Goal:
The project goal is to extend iNSpect to support image and movie
capture. iNSpect is currently a research tool which we want to extend
to a teaching tool. By supporting image and movie capture, researchers
will be able to use the output from iNSpect in both classrooms and
conference presentations. iNSpect makes use of many object oriented
design principles including multiple inheritance, operator overload,
and large data structures. By the end of Field Session, you should be
able to add some shiny bullet points to your resume and speak
intelligently on:
- OpenGL
- GTK+
- Mid-size project development (iNSpect is ~4000 lines of code)
- Doxygen
- GNU Make and pkg-config
- Bash scripting
- GUI programming
- C++ programming
- Strong Object Oriented design
- STL (standard template library)
U.S. Geological Survey
Background:
The USGS office on Mines Campus is home of the National Earthquake
Information Center. We are developing new near real-time systems for
post-earthquake information, response, and recovery. This project
pertains to a new, prototype notification system, the Earthquake
Notification System (or ENS, see
http://ens1.gps.caltech.edu). ENS
allows individuals to sign up for completely customizable earthquake
notifications and alerts, delivered to them via pager/cell or email.
User information and geospatial notification requirements are stored in
a relational database. Currently the GUI is PHP/CGI scripts to a MySQL
database, but interactive mapping and other options suggest that a
JavaScript or pure Java applet would improve the interface
substantially.
Project Requirements:
Develop a web-based GUI for this database for a variety of use
notification options, in part geographically based, to replace existing
PHP GUI. (Example of a GUI with some similarities to what is needed:
http://www.pubsub.com/earthquakes.php)
Insure correct interaction with existing relational (MySQL) database.
Take full advantage of Cascading Style Sheets (CSS).
Test system on off-line production system. Produce documentation for
the interface and software developed.
Skills Required or to be learned:
UNIX, CGI/PERL scripting, CSS, MySQL, PHP and Web interface
development. JAVA or JavaScript. Some use in Generic Mapping Tools
(GMT).
What Students will get from this Project:
Real-world experience working with a Federal Agency on a practical tool
used widely for scientific and public information. Opportunities to
work with and learn widely-used development tools.