Skip to content

Latest commit

 

History

History
24 lines (16 loc) · 2.57 KB

File metadata and controls

24 lines (16 loc) · 2.57 KB

This repository contains a collection of labs completed for the Software Engineering 1 module during my second year of Computer Science at TU Dublin. Each lab focuses on different aspects of software design and engineering, utilizing various modeling techniques and programming practices.

Lab Summaries

Lab 1: Bank ATM Model

Developed use case scenario diagrams for a bank ATM system using StarUML. This lab illustrated user interactions, including account management and transaction processes, providing a clear understanding of system requirements and user experiences.

Lab 2: Library UML Modeling

Created comprehensive UML diagrams for a library management system. This included class diagrams to represent the structure of library entities such as books and members, along with use case diagrams detailing user interactions for borrowing and returning books.

Lab 3: Library Sequence Diagram & Java Banking Example

Constructed a sequence diagram for the library system to visualize the interactions between objects over time. Implemented a simple banking system in Java, demonstrating core functionalities like account creation, deposits, and balance retrieval, showcasing object-oriented principles.

Lab 4: Library Management System UML Models

Designed UML models for a Library Management System, including a detailed class diagram that outlines the relationships and attributes of key components. A use case diagram was also developed to illustrate the various user interactions within the system, such as searching for and reserving books.

Lab 5: Bank Account Model in USE

Modeled a banking system using USE (UML-based Specification Environment), focusing on the customer and bank account classes. Implemented methods for deposit operations and created a simple simulation to demonstrate the deposit functionality, emphasizing the software modeling process.

Lab 6: Advanced Banking System in USE

Expanded the banking model in USE by introducing savings and current accounts with specific attributes like overdraft limits. Simulated customer transactions, including deposits to both account types, and managed account balances, enhancing the understanding of account types and their behaviors.

Lab 9: Company Contracts Model

Developed a model to manage contracts between individuals and companies using USE. This lab defined the relationship between persons, job types, and companies, implementing functionality for calculating income based on contract hours and rates. Included constraints to ensure valid contract conditions, such as minimum age and working hours.