Skip to content

EdoBaz/smart-logistics-requirements-engineering

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Smart Logistics for Fragile and Sensitive Goods

This repository contains a complete Requirements Engineering project for a university exam.

The main report is in English, and this README provides a clear guide to what was designed, why it matters, and how to navigate the artifacts.

Quick Navigation

Project Goal

The assignment was to model a logistics system that tracks fragile and sensitive products during shipment and storage, with a focus on:

  • route and timing visibility
  • environmental monitoring (temperature, humidity, vibrations)
  • trustable and verifiable tracking data
  • secure and role-based data access
  • scalable and reusable IoT infrastructure

What Was Actually Delivered

  • A full report: RequirementsEngineeringReport.md
  • A complete Objectiver model: IngDeiRequisiti.ob
  • A full diagram set in images/ covering all analysis views

This is a design and analysis repository (not an implementation repository).

Engineering Method Used

The work applies Goal-Oriented Requirements Engineering (GORE):

  • define high-level goals
  • refine them into sub-goals
  • identify obstacles and risks
  • map goals to operations, responsibilities, and behavior

This creates end-to-end traceability from requirements to system structure and dynamic behavior.

English Summary

The report is organized into the following analysis layers.

1. Intentional View (Goals and Obstacles)

Main goals include:

  • CreateOrder
  • MinimizeIoTCost
  • WriteReadTrackingData
  • EnsureStakeholderTrust

Each goal is refined into sub-goals and linked to obstacles (for example invalid addresses, sensor failures, upload issues, unauthorized access) with mitigation strategies.

Representative diagram:

Goal Model - Ensure Stakeholder Trust

2. Structural View (Conceptual Class Diagram)

Core domain entities:

  • Shipment
  • Package
  • IoT Device
  • Tracking Event Log
  • Server

The model shows how shipment data is created, associated, transmitted, and stored.

Structural View - Object Model

3. Responsibility View (Agents and Capabilities)

System responsibilities are distributed across specialized agents:

  • AlertManager
  • AssetManager
  • IntegritySecurityController
  • TrackingSoftware
  • AuthorizationAuthenticationSystem

This clarifies who monitors what, who controls what, and which operations each agent performs.

Responsibility View - TrackingSoftware

4. Functional View (Operationalization)

Goals are operationalized through concrete actions such as:

  • checkAddress
  • collectData
  • uploadData
  • publishData
  • provideAPI
  • checkRole

The diagrams connect operations to entities and supporting requirements.

Functional View - Server Operations

5. Behavioral View (State and Sequence)

Dynamic behavior is modeled with:

  • Shipment lifecycle state machine
  • IoT device lifecycle state machine
  • Sequence flow for anomaly detection and alert handling

Behavioral View - Shipment Status

Why This Repository Is Useful for Requirements Engineering Study

This repository can be used as a reference example for a Requirements Engineering course project. It collects the main analysis views in a single set of artifacts and shows their relationships.

  • stakeholder needs can be mapped to explicit requirements
  • goals, risks, responsibilities, operations, and behavior can be represented consistently
  • diagrams can be used to support discussion and verification
  • trust, security, and data quality can be treated as part of system definition

Learning Outcomes

For study purposes, the project can be read as an example of:

  • goal modeling and goal refinement
  • obstacle identification and related mitigation choices
  • requirement traceability across multiple views
  • responsibility allocation among software agents
  • dynamic behavior representation through state and sequence diagrams

Repository Map

Path Content
RequirementsEngineeringReport.md Main report
IngDeiRequisiti.ob Source model for Objectiver (binary archive).
images/goalModel/ Goal and obstacle diagrams.
images/agent/ Responsibility view diagrams.
images/operation/ Functional/operationalization diagrams.
images/behaviourView/ State machine and sequence diagrams.
images/ObjectModel.PNG Structural domain model.
LICENSE MIT License.

How To Explore the Project

  1. Read RequirementsEngineeringReport.md for complete details.
  2. Open IngDeiRequisiti.ob in Objectiver to inspect the editable model.
  3. Browse images/ for a quick visual walkthrough by view.

Team

  • Bazzotti Edoardo (VR518747)
  • Xiao Simone (VR519027)

Report date: 04 June 2025.

License

Distributed under the MIT License. See LICENSE.

About

Goal-oriented Requirements Engineering project for IoT-based tracking of fragile goods, developed with Objectiver

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors