INFO 5100 Fall 2023,
Due Date 12/10/2023
Exploring the implementation of a communication ecosystem for multi-party applications
The objective of the final project is for you to explore and the design and implementation of software systems for complex problems. You will practice our building block techniques to program complex software. You will be play multiple roles in this project to build good understanding of what it means to experience the development and management of information systems. Such roles include: a functional architect (analyst) understanding the problem and designing the use-cases, and user processes, a designer where you develop the object model and user-interaction protocols, and a programmer where you do the java development, an innovator and communicator of new ideas where you find creative things that no one else thought about before. And you present your ideas clearly and completely.
The project focus will be on the construction and operations of a digital platform in some application domain. The software will serve as a communication system for specialists and operational personnel. The entities will be enterprises, organizations, departments, administrators, supplying companies, and most importantly individual persons who are users and subject of the work. Such connectivity opens the possibility for many useful uses that are critical to the safety and well-being of people, effectiveness in delivering quality service, and efficiencies to ensure that the services are affordable. There are a number of uses of such an eco-system.
Your job is to select a multi-party problem that will require the cooperative effort of multiple enterprises and associated organizational units cross national boundaries. The objective is to design and implement a system where the whole is greater than the sum of the parts. In other words, the collaborative effort of the partnership leads to greater value and benefit than the individual entities operating on their own.
1) A running swing application that addresses the challenges outlined above at an eco-system scale. A typical implementation must include the participation of at least 4 enterprises, 4-8 organizations, and 4-6 roles.
2) A presentation that outlines details specific to the design and implementation of your solution. This must include, the definition of the problem you solved, stakeholder and their contributions, use-cases, design, and implementation techniques followed. You must explain why each enterprise is essential to delivering the total value as outlined in your problem statement. .
3) A robust role-based authentication module with strong user name and password capabilities.
4) A reporting module with summarized view of the data in your system. This could include performance data that is important at the system or network level.
5) A configuration module with test cases that will populate your model and show the correctness of your solution. You might want to integrate with a Faker module from faker.com for random data generation.
You are required to defend your solution through an 45 minute live presentation. This examination will include detailed review of your code and validity of your engineering techniques.
This is a team project with up to 3 participants. However, each participant must be able to answer any questions in relation to the implementation of the project.