Open Source Project Management Artronic Development
Sponsor Information:

The sponsor is Artronic Development, a business which provides World Wide Web design, consulting, site crafting, and hosting, and software development and software configuration management consultation. The project contact is:

Dave Eaton
Artronic Development
4718 E. Cactus Rd., #224; Phoenix, Arizona 85032
email: dwe@arde.com
web: www.arde.com


Project Overview:

This intent of this project is to design the architecture, define the APIs, and create the infrastructure and funtioning core of a system which can be expanded over time into a world-class, multiplatform, Open Source project management tool. Its functions include such core capabilities as the ability to create and manage a schedule for a software development project.

Why? Because project/program management is always part of every software (and other) undertaking. It may be done manually in a lot of cases, but it must be done. Unfortunately, most "popular" management tools are proprietary, fairly expensive, do not lend themselves particularly well to software projects, and run only on Microsoft Windows® platforms even if the project being managed is developed for other platforms such as Unix® and Linux®. Furthermore, most existing products are not integrated with the development process, such as with the Software Configuration Management system. This means that work items may be marked as "completed" on the schedule even though no work has begun on them yet.

This is different from and more ambitious than most past Capstone projects, because by design it will require multiple teams over multiple years before it will be "complete". However, one advantage that provides is that just like most "real world" projects, each team must expect that someone other than themselves themselves will need to read, modify, and extend their design and code and that they will need to work within certain boundaries set by others.

This project is to be released as an Open Source project under the terms of the GNU General Public License (GPL). The software must be designed to be platform independent, and the source must be able to be processed by the open source compiler "gcc" (which supports several languages). Also, adherance to standards is required to improve the chances that the source will be able to be processed by the platform-specific compilers provided by vendors. Execution on Linux is required. Eventually, execution on other Unix-like platforms is desired, as is an MS Windows version, but those may be deferred until later projects.

A few of the requirements are:

  • Gantt chart
  • Multiple resources per task
  • Applied time considerations
  • Web browser user interface

A more comprehensive list will be provided to the team once the project is selected.


Prerequisites:

Required: Understanding of programming and the ability to read and code in a language supported by "gcc"; Familiarity with Unix/Linux software development and operating systems;

Helpful: Familiarity with program management and software configuration management


Equipment Requirements:

Required: The team will need access to at least one Linux workstation which includes a gcc compiler.


Deliverables:

The student team will be expected to propose and deliver:

  • an acceptable solution to the problem in the form of a final software package that works correctly on at least a Linux platform; also desired is availability on HP-UX, Sun Solaris, and Windows platforms
  • demonstrations and working upgrades in regular increments; well designed and documented code; and user and programmer documentation.

Electronic delivery of all final documentation in spec-compliant, mutiplatform, HTML 4.01 or XHTML is required.