Questions tagged [architectural-patterns]

An architectural pattern is a general reusable solution related to the high level structure of software systems. For reusable solutions having a more specific scope (e.g. individual classes/components and their interactions), prefer the tag 'design-patterns'.

Filter by
Sorted by
Tagged with
0
votes
3answers
92 views

Dependency Inversion Principle and Lower-Level Code Reuse

I am wondering about how to make lower-level code reusable when the Dependency Inversion Principle (DIP) is used. In the book Clean Architecture by Robert C. Martin, the DIP is described such that ...
5
votes
1answer
152 views

Is My Data Access Layer Really My Domain?

I'm not an architect, but am trying to put together a diagram which represents the architecture of the application which I am maintaining. I have one question (but welcome any comments about the ...
0
votes
1answer
40 views

Wrapping ReactJS UX component library in another layer of abstraction, pros and cons?

There's AntD library with various UX components. Right now I required to wrap all components which I'm using in another layer, to make an abstraction. For example, if I'm using AntForm component I ...
0
votes
0answers
46 views

Should unused user-uploaded resources (e.g. images) be deleted from storage?

An example web application X allows its clients to upload various resources, e.g. images. These uploaded resources can also be removed by the user at a later time. My question is this: what are the ...
0
votes
1answer
34 views

Scaling inserting related optional objects to your collection

In PHP, you can have a collection as an array as a class property. This collection can have a function add that takes multiple (type-hinted) parameters, as such: add( Markup $markup, Style $style = ...
0
votes
1answer
107 views

Architectural pattern for testable C code [closed]

I wrote a lot of software in C# and Python. I tried to make the overall architecture testable by using the "Clean Architecture" and Dependency Injection. This works well for C# (and python). Now I ...
0
votes
2answers
60 views

Why and how are Server-side Web MVC and client-side/desktop MVC not the same?

In MVC, does the view component deliver a new view to the user directly or indirectly via the controller component? says The first thing to realize is that Server-side Web MVC (e.g. ASP.NET MVC &...
1
vote
3answers
152 views

Using Salesforce as Single Source of Truth

From a software architecture perspective, are there major issues with using Salesforce as an application's single source of truth? Context: We are building the software architecture for a high touch ...
4
votes
2answers
89 views

What are the distinction and relation between batch processing and stream processing systems?

Design Data Intensive Applications says Batch processing systems (offline systems) Chapter 10 A batch processing system takes a large amount of input data, runs a job to pro‐ cess it, and ...
0
votes
1answer
84 views

Authentication and Signup with Microservices

I am looking for the best practice to do authentication (login) and signup using microservices, given that microservices are not supposed to share the same data. At the moment I am thinking: Two ...
1
vote
2answers
42 views

Aggregating data between microservices in twitter-like application

I'm developing a Twitter-like app and I have some doubts about my service oriented architecture. I have a User Service with a REST endpoint POST /users/{userId}/follow so the "connected" user starts ...
1
vote
2answers
105 views

Is MVC an architectural pattern for user-interactive applications only?

Is it correct that MVC is an architectural pattern only for user-interactive applications? (That is my understanding.) An application can interact with users via GUI or CLI. Does MVC apply to both ...
16
votes
3answers
5k views

Is using Observer pattern a good idea while building a Chess Game?

I am trying to design a Chess Game using OOPs concepts that has a UI element to it. My idea is to show the number of squares / cells a piece can travel to when selected. Basically I want to show the ...
2
votes
1answer
90 views

Multiple clients of the same server - how to refactor while keeping the benefits of current architecture?

Background I have a system that comprises of 3 components: a web application that displays data and allows data manipulation by users (React) a server application which serves the data to the web ...
1
vote
0answers
45 views

Do MV* architectural patterns apply not only to OO languages but also functional languages?

I am learning about MV* architectural patterns, thanks to the help from several answers here. I learned that they are used for designing the architectures of user interactive applications. I also ...
1
vote
3answers
65 views

In MVC, does the view component deliver a new view to the user directly or indirectly via the controller component?

In MVC, the view component doesn't receive user input directly, but the controller component does. When the view component creates a view, does the view component deliver the view to the user ...
1
vote
1answer
53 views

How does controller work with view in MVC?

http://geekswithblogs.net/dlussier/archive/2009/11/21/136454.aspx says MVC – Model View Controller Let’s look at MVC first. You’ll notice a few things about the diagram: The input ...
1
vote
1answer
137 views

What should I name this area of my architecture?

I am developing an architecture for a new MVC system. The legacy system has a layer it calls "facade", but it is not the classic GoF Facade. It is more like a service aggregator. It is used as a ...
1
vote
0answers
21 views

Consumer triggered entity data agregation

I am currently using RabbitMQ to aggregate the output of various data sources. Functionally the process is the following: The user enters a product name. The request is sent to the different sources ...
2
votes
2answers
92 views

Where should objects be built from view-models in a layered architecture?

Having the following classes: Person.cs namespace Project.Domain { public class Person { public int Id { get; set; } public string Name { get; set; } public decimal ...
1
vote
2answers
76 views

Looking for clarification on pub/sub systems and how an API gateway comes into play

I'm new to micro service architecture and I'm looking to understand how services should/can interact with each other. The acceptance for my current story requires me to: Email a document Backup the ...
3
votes
1answer
114 views

Where should I implement Ports with Hexagonal Architecture?

I have been doing some research on the Hexagonal/Ports & Adapters architecture. For the most part, it makes a lot of sense. My initial understanding was that "Driver Ports" were to be implemented ...
0
votes
1answer
142 views

Saga vs. Unit of work

What's the relationship between the two? Both are for atomic operations. Both results need to be either success, or failure with rollback to original state.
0
votes
0answers
68 views

What could be a good scalable alternative to polling data and then looping over a list of objects for triggering some action on those?

So I have some naive implementation for the following problem: We have a list of objects with action methods that have to be trigger at some value of interest. This value is polled (or is streamed) ...
2
votes
3answers
298 views

Is there an architecture pattern for “microservice as a plugin”?

Long story short - I would like to make a web application, solely for self-education purposes, that should allow user to add additional functionalities via plugins - just like Jenkins - https://...
0
votes
0answers
50 views

Restrict functionality to paying customers - updating a legacy system

What architecture patterns and/or practises should I consider to elegantly restrict certain functionality to paying customers, causing redirect behaviour to request payment if they're not (or in some ...
0
votes
2answers
78 views

Is peer-to-peer a variation of client-server architectural pattern?

According to Software Engineering: Theory and Practice book by Pfleeger and Atlee, Peer-to-peer architectural style is different than Client-Server architectural pattern. But in Mocrsoft's Microsoft ...
0
votes
3answers
368 views

Cyclic dependencies in microservices

Just wanted to know if cyclic dependency is something one should avoid in mecroservices design. For example, let's say we have a simple web store that sells fruit. We have Account Service - where ...
1
vote
1answer
240 views

What can I do to make adding new concrete classes (of abstract/interface classes) easier across the code base?

A real (but simplified) example from the program that I'm currently working on. We have an abstract Request class and two classes that extend it: FooRequest and BarRequest. They both have dao's used ...
3
votes
2answers
170 views

How to make cross-service transactions in a microservice architecture? [duplicate]

One question im struggling with is how to make linear, cross-service operations/transactions in a distributed system. For example, I have two services: Orders and Payments. How would the Orders ...
0
votes
1answer
67 views

Designing a system of loadable resources with dependencies

Context: For a video game, I need to load an arbitrary amount of resources which when combined would form a complete level of the game. These resources would be 3D models, textures, sound, etc. Some ...
0
votes
1answer
42 views

Adding authentication and filtering in the service layer

I am currently developing a simple web-based application that consists of various layers: Model Layer Performs simple CRUD operations and provides access to the databes. Implements functions such as ...
0
votes
1answer
104 views

Who is responsible for GUI timeouts: the GUI or the app?

I have an application written in C#. This app uses a GUI for message display and user input, and the GUI is connected to the app via an interface class: public interface IEndUserInterface { void ...
1
vote
2answers
116 views

Microservice Decomposition and Inter-service communication

I read theory but I need practical architectural advice on the actual implementation in java language for microservices. In the context of the attached screenshot. Here is my setup. Order Project ...
1
vote
2answers
99 views

How to scale complex node.js application

Imagine a large node.js app with a multi-purpose api for mobile and frontend with a serving static files, with a websocket server, lot of cron jobs and workers. Basically I can horizontally or ...
0
votes
1answer
64 views

Should repositories always return Rx Single or Observable?

Let' assume we have an IFiltersRepository repository that provides data about a list of "filters" that are used on the search screen of an app (filter by color, by price etc). The repository has the ...
1
vote
1answer
130 views

Implementing Business Logic in Architecture

I am currently making architecture for one application in which we have different types of user and every user has different types of functionalities to perform. I am confuse in one point if i try to ...
1
vote
5answers
363 views

Microservices - Are retries enough?

I have been asked to look at moving our current architecture to microservices. I am aware of the warning to always assume a request could fail. So I am aware we should always be prepared to retry ...
0
votes
1answer
362 views

Update Entity for Repository Pattern and UOW Pattern C#

In one mock solution, I have created 3 mock projects to implement layered architecture design mainly the - Presentation Layer (Web) - Domain Model Layer - Infrastructure Layer. I haven't yet to add ...
2
votes
0answers
153 views

Extensible / Plugin Architecture in Python - overwriting methods deep in the inheritance tree?

Current situation I'm developing a test-framework in python for end-to-end tests for a large ERP application. The AUT (application under test = ERP system) is structured in modules and provides a lot ...
2
votes
1answer
179 views

How can I allow interaction between user-only modules & admin-only modules without polluting with privilege checks?

Important note: This is PHP (5.3+). PHP is stateless and everything you do dies when the request is over unless saved to a persistent storage, but if the answer provided gives me pseudo-code, I'd also ...
3
votes
1answer
295 views

Why using ViewModel when using also Repository?

I read this guide about recommended app architecture for Android. Here is a graphical summery: The role of ViewModel is clear, but I don't understand why we need it if we use Repository. The purpose ...
0
votes
1answer
71 views

Replacing a shared library with a shared microservice

I understand that generally shared libraries are a microservice antipattern, and the disadvantages of shared libraries in a microservice world are well documented. However, I have not been able to ...
2
votes
1answer
213 views

JAMstack vs Serverless architecture: what's the difference?

So I've been reading a lot about this new front-end architecture called the JAMstack, which is basically the modern way of building static web applications. Any dynamic pages are pre-built at build ...
1
vote
2answers
79 views

Creating a “pass-through” dynamic model

We have a layer that exists in our architecture that, for lack of a better term, bears the responsibility of defining the common models. In other words, when systems need to communicate, rather than ...
2
votes
3answers
257 views

How do you decide if data should be stored persistently or calculated at runtime?

I'm designing a service that contains different plans and features. I want to freely assign and remove features from plans. The service needs to tell the client both an ID's plan and the features it ...
4
votes
2answers
2k views

Domain driven design project structure [closed]

I have recently started reading about domain driven design and most of the places it's explained or discussed more in conceptual terms. Being a design philosophy it helps to understand the concepts ...
0
votes
3answers
510 views

How to handle views and logic in a Winform C# app? [closed]

I come from a webdev background so I'm used to MVC to handle the separation between the views and the logic (and the data/models). I'm starting to develop using Winforms in C# and I want to know what'...
1
vote
1answer
160 views

Where do JavaFX FXML controllers belong in an ECB architictural design pattern?

I am wondering where does the fxml controller belong in the Entity-Control-Boundary model? When designing a JavaFX application with the help of Scene Builder, Scene Builder generates an fxml file ...
0
votes
0answers
37 views

What layer should resolve pre-existing Hibernate entities?

Imagine an application that consumes an external data stream and creates objects of this type: @Entity public class Event { @OneToOne(cascade = CascadeType.ALL) private EventInfo info; @...