Improving Software Development Processes with Multicriteria Methods
All software development processes include steps where several alternatives induce a choice, a decision-making. Sometimes, methodologies offer a way to make decisions. However, in a lot of cases, the arguments to carry out the decision are very poor and the choice is made in an intuitive and hazardous way. The aim of our work is to offer a scientifically founded way to guide the engineer through tactical choices with the application of multicriteria methods in software development processes. This approach is illustrated with three cases: risks, use cases and tools within Rational Unified Process.
💡 Research Summary
The paper addresses a pervasive problem in software development: many tactical decisions—such as selecting risks to mitigate, choosing which use cases to implement, or picking development tools—are made intuitively, without a solid analytical foundation. The authors propose a scientifically grounded decision‑support approach that integrates multicriteria decision‑making (MCDM) techniques into the software development lifecycle. Specifically, they combine the Analytic Hierarchy Process (AHP) for eliciting and weighting decision criteria with the Technique for Order Preference by Similarity to Ideal Solution (TOPSIS) for ranking alternatives.
The methodology begins with a clear definition of the decision problem and the construction of a hierarchical criteria model. Experts perform pairwise comparisons of criteria and sub‑criteria, producing a weight vector that reflects relative importance. Consistency ratios are calculated to ensure the reliability of judgments. The weighted criteria are then used to normalize performance scores of each alternative, after which TOPSIS computes the Euclidean distance of each alternative to an ideal (best) and an anti‑ideal (worst) solution. The resulting closeness coefficient yields a ranked list of alternatives.
Three empirical case studies illustrate the approach. In the risk‑management case, the authors identify risk factors (probability, impact, detectability) and apply AHP to determine their relative importance. TOPSIS then ranks individual risks, enabling the project team to focus mitigation efforts on the most critical items. The second case concerns use‑case selection within a Rational Unified Process (RUP) context. Criteria such as functional value, implementation difficulty, business impact, and maintenance cost are weighted via AHP, and TOPSIS produces a prioritized set of use cases, revealing that some seemingly “core” cases are less valuable when evaluated against the full criteria set. The third case evaluates development tools, balancing cost, performance, learning curve, community support, and extensibility. The hybrid AHP‑TOPSIS analysis yields a tool recommendation that aligns with project constraints and team capabilities, demonstrating cost savings and productivity gains.
Across all three scenarios, the authors report several benefits: decision processes become transparent and auditable; stakeholder consensus is facilitated because the rationale is explicitly documented; and the resulting decision models are reusable for future projects, reducing the time required for similar evaluations. The paper also discusses limitations, such as potential bias in expert judgments, the subjectivity inherent in criteria selection, and information loss during data normalization. To mitigate these issues, the authors recommend diversifying expert panels, conducting sensitivity analyses, and integrating automated data‑collection tools.
In conclusion, the study validates that multicriteria methods can systematically improve tactical decision‑making in software development, moving from ad‑hoc intuition to evidence‑based practice. Future work is suggested in the areas of real‑time decision support for large‑scale projects, machine‑learning techniques for dynamic weight estimation, and the integration of the proposed framework with Agile and DevOps pipelines. The research thus offers a practical roadmap for engineers seeking to embed rigorous decision analysis into everyday software engineering activities.
Comments & Academic Discussion
Loading comments...
Leave a Comment