COCOMO Estimation Tool
Bachelor Project 2016 - Java desktop application for software project estimation

COCOMO estimation tool main interface
Project Overview
As part of a five-person team, we developed a Java desktop application that implements the Basic COCOMO model to estimate project effort, schedule, and staffing. The tool accepts project size in KDSI and mode (Organic/Semi-detached/Embedded) to compute effort, development time, average staffing, and productivity. This comprehensive software engineering project demonstrates advanced application development, database design, and professional software architecture principles.
Key Features
COCOMO Implementation
- Basic COCOMO model implementation
- Project effort estimation
- Development time calculation
- Average staffing computation
- Productivity metrics analysis
- Three development modes support
Advanced Features
- Phase/activity distribution analysis
- Maintenance effort via ACT
- Linear interpolation for non-standard sizes
- MySQL data storage integration
- XML export functionality
- Cross-platform compatibility
Technical Architecture
- Java Swing user interface
- MySQL database backend
- UML-driven design approach
- Professional software architecture
- Windows and macOS testing
- Team-based development workflow
User Interface

Main input interface for project parameters

Results display with effort and schedule estimates

Table selection interface for complete or partial analysis
Technical Implementation
The application implements the Basic COCOMO model using Java Swing for the user interface and MySQL for data persistence. The architecture follows UML design principles with clear separation of concerns between presentation, business logic, and data layers. The system supports linear interpolation for project sizes that don't match standard COCOMO categories, making it more flexible for real-world applications.
COCOMO Model Implementation
The tool accurately implements the Basic COCOMO model equations for three development modes: Organic (small teams, familiar environment), Semi-detached (medium teams, mixed experience), and Embedded (large teams, complex constraints). It calculates effort in person-months, development time in months, average staffing levels, and productivity metrics. The system also provides phase distribution analysis and maintenance effort estimation using the Annual Change Traffic (ACT) method.
Team Collaboration & Development
This project was developed as part of a five-person team, demonstrating collaborative software development practices. The team utilized version control, code reviews, and agile development methodologies. The project included comprehensive testing on both Windows and macOS platforms, ensuring cross-platform compatibility and reliability. The UML-driven design approach facilitated clear communication and maintainable code architecture.
Applications & Impact
This COCOMO estimation tool provides practical value for software project managers and developers who need accurate effort and schedule estimates. The implementation demonstrates understanding of software engineering principles, database design, and professional application development. The project showcases the ability to translate theoretical models into practical software tools, making complex estimation techniques accessible through an intuitive user interface.