Skip to content

MerApost/ASSL2025-26

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

59 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Software Analysis & Design: Individual Project

This repository contains my individual project work for the Analysis and Design of Software Systems course at the Department of Informatics and Telecommunications, National and Kapodistrian University of Athens (NKUA).

The project was developed during the Spring Semester 2025 and focuses on software analysis, requirements modeling, UML diagrams, structured analysis and basic implementation/testing.

Student Information

Project Theme

The project is based on modeling the human body as an organization/system, using concepts from software analysis and design.

The goal was to represent biological systems and their interactions through software engineering models, such as UML diagrams, data flow diagrams and basic object-oriented code.

Subprojects delivered on time:

  • Sub01
  • Sub02
  • Sub03
  • Sub04
  • Sub05
  • Sub06

Subprojects Overview

Sub01 – Use Case Diagram

In this subproject, I created a Use Case Diagram representing the human body as a system/organization.

The diagram includes:

  • System boundary
  • Actors interacting with the system
  • Main use cases
  • Associations between actors and use cases
  • Include, extend and generalization relationships

This task helped me understand how to identify system actors, define system functionality and represent user-system interactions at a high level.

Sub02 – Class Diagram

In this subproject, I created a Class Diagram that models the human body and its main systems using object-oriented design principles.

The diagram includes:

  • The human body as a main class
  • Several human body systems as classes
  • Attributes and methods
  • Abstract class
  • Enumeration
  • Static attribute
  • Relationships such as association, aggregation, composition, dependency and inheritance

This task helped me practice object-oriented analysis and understand how real-world entities can be translated into software classes and relationships.

Sub03 – Sequence Diagram

In this subproject, I created a Sequence Diagram representing the interactions that take place during the breathing process.

The diagram includes:

  • Multiple objects/lifelines
  • Synchronous messages
  • Asynchronous message
  • Combined fragment

This task helped me understand how to model dynamic system behavior and the order of interactions between objects over time.

Sub04 – Statechart Diagram

In this subproject, I created a Statechart Diagram based on a class from the previous Class Diagram.

The diagram focuses on the different states of an instance and includes:

  • States
  • Transitions
  • Triggers
  • Guards
  • Activities

This task helped me understand how to describe the lifecycle and behavior of an object depending on events and conditions.

Sub05 – Data Flow Diagram

In this subproject, I created a Level-1 Data Flow Diagram (DFD) for a selected subsystem.

The diagram includes:

  • Processes
  • External entity
  • Data store
  • Data flows

This task helped me practice structured analysis and understand how data moves through a system.

Sub06 – Python Implementation & Unit Testing

In this subproject, I implemented one class from the Class Diagram using Python and created unit tests for it.

The subproject includes:

  • A Python class implementation
  • At least one attribute and one method
  • Unit testing using pytest
  • A GitHub Actions workflow for automated testing
  • A requirements.txt file for dependencies

This task helped me connect software design with actual implementation and basic testing practices.

Resources

Specifications:

Guidelines

Repository Structure

ASSL2025-26/
│
├── Sub01/              # Use Case Diagram
├── Sub02/              # Class Diagram
├── Sub03/              # Sequence Diagram
├── Sub04/              # Statechart Diagram
├── Sub05/              # Data Flow Diagram
├── Sub06/              # Python implementation and unit tests
│
├── requirements.txt    # Python testing dependencies
└── README.md           # Project overview

About

Academic software analysis and design project for the Analysis and Design of Software Systems course at the Department of Informatics & Telecommunications, NKUA. Includes UML diagrams, DFDs and structured design deliverables.

Topics

Resources

Stars

0 stars

Watchers

2 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages