Integration of Assertion, Design by Contract, and Defensive Programming: A Study Case in an Open Source Employee Management System Project

Dimas Adista Perdana, Rafly Ivan Khalfani, Raka Indra Rahmawan, Akmal Hadi Syaputra

Abstract


Open source software development has emerged as a paradigm that encourages transparency, flexibility, and collaborative innovation. A core part of this paradigm are techniques such as Statements, Design by Contract (DbC), and Defensive Programming that are useful for improving code quality, security, and readability. This research examines the implementation and impact of these techniques in an open source Employee Management System (EMS) project. It addresses the unique challenges posed by open source collaboration, including diverse developer backgrounds, differing priorities, and the imperative for high-quality and secure code. Through detailed analysis, this research evaluates how the integration of assertions, DbC, and defensive programming affects code quality, developer collaboration, and bug detection. In addition, it also identifies important factors that influence the successful adoption of these techniques in open source environments. This research aims to provide actionable insights to improve the reliability and security of open source projects, thus contributing to the broader discourse on best practices in collaborative software development.


Keywords


Assertion; Defensive Programming; Design by Contract; Java; Open Source;

References


“What is open source software?.” IBM. https://www.ibm.com/topics/open-source (Diakses 28 Mei 2024).

Firesmith, D. (1999). A comparison of defensive development and design by contract. Proceedings of the Technology of Object-Oriented Languages and Systems, 258-267. http://dx.doi.org/10.1109/TOOLS.1999.787554

Meyer, B. (2002). Design by contract. Upper Saddle River: Prentice Hall.

Secall, J.M. & Jr, J.B.. (2007). Comparative evaluation of defensive programming in safety critical applications. Proceedings of the European Safety and Reliability Conference 2007, ESREL 2007 - Risk, Reliability and Societal Safety. 1. 655-661.

https://www.youtube.com/watch?v=IeQ7t1P6_0A&list=PL_6klLfS1WqE1-_MJgZiJqAaccjLGHh0H&index=7




DOI: https://doi.org/10.17509/seict.v6i2.70735

Refbacks

  • There are currently no refbacks.


Copyright (c) 2026 Journal of Software Engineering, Information and Communication Technology (SEICT)

Creative Commons License
This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.

Journal of Software Engineering, Information and Communicaton Technology (SEICT), 
(e-ISSN:
2774-1699 | p-ISSN:2744-1656) published by Program Studi Rekayasa Perangkat Lunak, Kampus UPI di Cibiru.


 Indexed by.