A dynamic constraint-directed ordered search algorithm for solving constraint satisfaction problems
IEA/AIE '88 Proceedings of the 1st international conference on Industrial and engineering applications of artificial intelligence and expert systems - Volume 1
The Dynamics of Software Project Staffing: A System Dynamics Based Simulation Approach
IEEE Transactions on Software Engineering
Software project dynamics: an integrated approach
Software project dynamics: an integrated approach
Different perspectives of the N-Queens problem
CSC '92 Proceedings of the 1992 ACM annual conference on Communications
The mythical man-month (anniversary ed.)
The mythical man-month (anniversary ed.)
Journal of the ACM (JACM)
Building Knowledge through Families of Experiments
IEEE Transactions on Software Engineering
Experimentation in software engineering: an introduction
Experimentation in software engineering: an introduction
Proceedings of the Conference on The Future of Software Engineering
A Validation of the Component-Based Method for Software Size Estimation
IEEE Transactions on Software Engineering - special section on current trends in exception handling—part II
Backtrack programming techniques
Communications of the ACM
SEMINAL: software engineering using metaheuristic INnovative ALgorithms
ICSE '01 Proceedings of the 23rd International Conference on Software Engineering
Proceedings of the Genetic and Evolutionary Computation Conference
GECCO '02 Proceedings of the Genetic and Evolutionary Computation Conference
Search Heuristics, Case-based Reasoning And Software Project Effort Prediction
GECCO '02 Proceedings of the Genetic and Evolutionary Computation Conference
Heuristic Methods for Over-Constrained Constraint Satisfaction Problems
Over-Constrained Systems
A System Dynamics Software Process Simulator for Staffing Policies Decision Support
HICSS '98 Proceedings of the Thirty-First Annual Hawaii International Conference on System Sciences-Volume 6 - Volume 6
A Queue Theory-Based Approach to Staff Software Maintenance Centers
ICSM '01 Proceedings of the IEEE International Conference on Software Maintenance (ICSM'01)
Search-based software test data generation: a survey: Research Articles
Software Testing, Verification & Reliability
Staffing a software project: a constraint satisfaction approach
EDSER '05 Proceedings of the seventh international workshop on Economics-driven software engineering research
ICSM '05 Proceedings of the 21st IEEE International Conference on Software Maintenance
Evolutionary Algorithms for Solving Multi-Objective Problems (Genetic and Evolutionary Computation)
Evolutionary Algorithms for Solving Multi-Objective Problems (Genetic and Evolutionary Computation)
A Task Allocation Optimizer for Software Construction
IEEE Software
Proceedings of the 2003 international conference on Genetic and evolutionary computation: PartII
GECCO'03 Proceedings of the 2003 international conference on Genetic and evolutionary computation: PartII
The Current State and Future of Search Based Software Engineering
FOSE '07 2007 Future of Software Engineering
Special Issue on Search-Based Software Maintenance
Journal of Software Maintenance and Evolution: Research and Practice - Search Based Software Engineering [SBSE]
Automatically finding patches using genetic programming
ICSE '09 Proceedings of the 31st International Conference on Software Engineering
Value-Based Multiple Software Projects Scheduling with Genetic Algorithm
ICSP '09 Proceedings of the International Conference on Software Process: Trustworthy Software Development Processes
Proceedings of the 11th Annual conference on Genetic and evolutionary computation
A recommendation framework for allocating global software teams in software product line projects
Proceedings of the 2nd International Workshop on Recommendation Systems for Software Engineering
Optimizing IT process management
ACM SIGSOFT Software Engineering Notes
Dynamic scheduling of emergency department resources
Proceedings of the 1st ACM International Health Informatics Symposium
Disruption-driven resource rescheduling in software development processes
ICSP'10 Proceedings of the 2010 international conference on New modeling concepts for today's software processes: software process
Cooperative co-evolutionary optimization of software project staff assignments and job scheduling
SSBSE'11 Proceedings of the Third international conference on Search based software engineering
Dynamic resource scheduling in disruption-prone software development environments
FASE'10 Proceedings of the 13th international conference on Fundamental Approaches to Software Engineering
Yield management of workforce for IT service providers
Decision Support Systems
Representations and operators for improving evolutionary software repair
Proceedings of the 14th annual conference on Genetic and evolutionary computation
Solving software project scheduling problems with ant colony optimization
Computers and Operations Research
Search-based software engineering: Trends, techniques and applications
ACM Computing Surveys (CSUR)
Controversy Corner: Search Based Software Engineering: Review and analysis of the field in Brazil
Journal of Systems and Software
Not going to take this anymore: multi-objective overtime planning for software engineering projects
Proceedings of the 2013 International Conference on Software Engineering
Current challenges in automatic software repair
Software Quality Control
Hi-index | 0.01 |
Software development is a people intensive activity. The abilities possessed by developers are strongly related to process productivity and final product quality. Thus, one of the most important decisions to be made by a software project manager is how to properly staff the project. However, staffing software projects is not a simple task. There are many alternatives to ponder, several developer-to-activity combinations to evaluate, and the manager may have to choose a team from a larger set of available developers, according to the project and organizational needs. Therefore, to perform the staffing activity with ad hoc procedures can be very difficult and can lead the manager to choose a team that is not the best for a given situation. This work presents an optimization-based approach to support staffing a software project. The staffing problem is modeled and solved as a constraint satisfaction problem. Our approach takes into account the characteristics of the project activities, the available human resources, and constraints established by the software development organization. According to these needs, the project manager selects a utility function to be maximized or minimized by the optimizer. We propose several utility functions, each addressing values that can be sought by the development organization. A decision support tool was implemented and used in an experimental study executed to evaluate the relevance of the proposed approach.