Software Development Life Cycle (SDLC) Simulation
This project simulates the phases of the Software Development Life Cycle (SDLC) using Python, the SimPy library for discrete-event simulation, and Matplotlib for visualization. Project Overview The SDLC phases are modeled as sequential processes with specific durations:
Requirements Gathering Design Development Testing Deployment
The simulation records the start and end times of each phase and visualizes them in a Gantt chart-style plot to display the flow of the SDLC timeline.
Features Simulates Each SDLC Phase: Utilizes SimPy with time-based delays to represent each phase.
Outputs Start and End Times: Records and displays the timing of all phases.
Visual Timeline Generation: Creates a Gantt chart using Matplotlib to visualize the SDLC phases.
Modular Design: Each SDLC phase is implemented as a separate function for clarity and maintainability.
Requirements
To run this project, ensure you have the following dependencies installed:
Python 3.x
SimPy (for simulation)
Matplotlib (for visualization)
You can install the required libraries using the following command:
pip install simpy matplotlib
How to Run the Project
Clone this repository to your local machine:
git clone https://github.com/Yordinaa/SCD
Navigate to the repository folder:
cd SCD Run the Python script:
python3 SDLC_Simulation.py
License
This project is licensed under the MIT License.
Authors
Yordanos Negusu
Yoseph Zewdu
Rediet Teklay
Yoseph Shemeles
Contributions
Contributions are welcome! If you'd like to add new features (e.g., parallel processes, resource constraints), feel free to fork the project and submit a pull request. Thank you for your interest in our SDLC Simulation project! We hope you find it useful for understanding and visualizing the software development process. If you have any questions or feedback, please don't hesitate to reach out!