Skip to main content
8 votes

Repository Pattern vs DAL Object Creation

My understanding is: DAL (Data Access Layer) refers to a layer in your software that sits between your persistence technology and your application logic. Its purpose is to keep data access concerns ...
MetaFight's user avatar
  • 11.6k
8 votes
Accepted

How does Object-Oriented Design fit into N-Layered Architecture?

OOD fits inside the layers. Multitier or N-layer architecture is the fancy grown up version of MVC. The big thing they have in common is separated areas of focus. Here, they're called layers (or tiers)...
candied_orange's user avatar
4 votes
Accepted

Is my three layer architecture well implemented?

Your Service class is redundant. The Repository should return the 'real' object, not the EF object. Do all your retrieval and mapping inside your Repository. Your Unit test doesn't really test ...
Ewan's user avatar
  • 84.4k
4 votes
Accepted

Is it proper to inject the configuration to the business logic layer?

In any situation where information needs injecting into part of an app, remember the "tell, don't ask" principle. If you pass configuration into the business logic layer directly, then you are ...
David Arno's user avatar
  • 39.6k
4 votes
Accepted

In the usual "3-layer" architecture pattern, where would one best create dynamic, user-readable strings?

this "feels" like an inherently UI-related concern, Definitely not. Thought experiment: next major release you want to change your UI technology - the title string for the unsaved document ...
Doc Brown's user avatar
  • 220k
4 votes

Relationship between monolithic architecture and n-tier

In the beginning there was the big ball of mud. The application was without architectural structure. Then Trygve Reenskaug said let there be Model View Controller. And he saw that having three modules ...
candied_orange's user avatar
3 votes

In the usual "3-layer" architecture pattern, where would one best create dynamic, user-readable strings?

How I've done it before is by having a code construct (class/interface, function...) that is able to answer "Give me the translation for this string key in the current user's language". ...
guillaume31's user avatar
  • 8,694
3 votes

Should i create a Core library for all business applications ? or each one individual?

Creating frameworks and reusable components takes time and a lot of experience, and often several iterations of production use and redesign based on user feedback. You should not assume that you can ...
Hans-Martin Mosner's user avatar
3 votes

Repository Pattern vs DAL Object Creation

You are comparing two different and complementary concepts: The Data Access Layer is an architectural layer that intends to abstract access to data. It doesn't say how the access shall be ...
Christophe's user avatar
  • 82.1k
3 votes

Should the web client (web browser) be counted as a tier in n-tier architecture?

The challenge in answering this question is that we are dealing with terms, in this case "tier", that have imprecise meanings and different people use the term differently. For example, a common view ...
David Arno's user avatar
  • 39.6k
3 votes

Breaking 3-tier architecture into multi-tier architecture

On the front-end side Your requirements seem to cover two very different needs and functionalities: one, is the management of the application and its security (authorisations, accounts, logging) ...
Christophe's user avatar
  • 82.1k
3 votes
Accepted

Model "Clones" Adding Complexity to N-Tier MVC Project?

It sounds like your friend is suggesting a more ADM (Anaemic Domain Model) approach. Essentially you just have your Method-less DTO model and use it through all the layers. Your Data layer is not ...
Ewan's user avatar
  • 84.4k
3 votes

How does Object-Oriented Design fit into N-Layered Architecture?

Let us flip the statement around, without an N-tier architecture how could your object design look? Your classes would be doing data persistence (for instance to a database), data validation, ...
Tommy Andersen's user avatar
2 votes
Accepted

Client Server Model for N-Tier Architecture - Mapping chained client>>server>>server>>client request / response

It sounds like your central complaint is routing: The server has to queue a response message to the (right) Client Engine, then when the Client Engine processes that message, it has to send a ...
J_H's user avatar
  • 7,891
2 votes

ASP.NET Web API and MVC Architecture for Web Application

It looks like you are missing a service layer between you business logic and your websites. If you draw in a horizontal slice on your diagram for it you can see immediately that you have a choice of ...
Ewan's user avatar
  • 84.4k
2 votes

Is my Architecture correct?

Here's how I would do it: I would put the EDMX in the DAL, since Entity Framework is an ORM (Object Relational Mapper), and that is a data access concern. The classes it generates are laden with EF-...
Eric King's user avatar
  • 11k
2 votes

How can I resolve circular dependency within service layer in a n-tier architecture system?

There is a clear data relationship of Course with Student. That's where primary domain modelling should terminate. If not, it infects design decision making for the worse. Orchestration instead ...
Kind Contributor's user avatar
2 votes

How should I design a 3-tier-architecture application with Entity Framework?

How can I prevent other developer from calling saveChanges() at the upper layer? The only sane way to do that is to enforce a true separation between layers, and the only reasonable way you can do ...
Robert Harvey's user avatar
2 votes
Accepted

In an n-layer architecture with MVP in the presentation layer, how the presentation layer interacts with the business layer?

Where will I put the information that an id cannot be negative, for example? Validation of input data from the user is typically accomplished in two places. You do validation in the UI for the user's ...
Robert Harvey's user avatar
2 votes

Where to convert int to enum in a 3-tier architecture?

Am I supposed to get the int returned by the Data layer from the Business Logic Layer, map it to a BLL object, and do the conversion while mapping? Yes - that's what we are doing in our application. ...
Ninja In Pajamas's user avatar
2 votes

What are the relations between the presentation/application/data logics, client and server, and MVC?

Do the figures specify the presentation/application/data logics? If so, how? They don't specify them in any precise sense, but they do show a high level logical organization of the system. ...
Filip Milovanović's user avatar
2 votes

Should the web client (web browser) be counted as a tier in n-tier architecture?

Based on this definition of an n-tiers architecture, a tiers is a multilayered architecture where the layers are made of components. In fact, this definition proposed by one of our peers is very close ...
Christophe's user avatar
  • 82.1k
1 vote

3-layer / 3-tier system

The two concepts are indeed distinct yet somewhat correlated: The layered architecture decomposes a system into layers of related software elements, where one layer communicates in principle only ...
Christophe's user avatar
  • 82.1k
1 vote
Accepted

How does the DAO design pattern decouple the persistence layer from other layers?

I would suggest that a lot of your questions and the surrounding context would be answered in more detail by looking up guidelines on the specific architecture you're working with. For the purpose of ...
Flater's user avatar
  • 59.5k
1 vote

Best mapping practices in an enterprise application

The simple answer is 'it depends'. If your team/organisation doesn't have a settled consensus then you need to agree the approach with them - 'best practice' is less about choosing one approach over ...
Ben Cottrell's user avatar
  • 12.1k
1 vote

Confusion about layered architecture

There are different understandings of the presentation layer. The traditional layered architecture that you describe predates the internet and in fact originates from the three tier architecture ...
Christophe's user avatar
  • 82.1k
1 vote

Confusion about layered architecture

A presentation layer is a presentation layer regardless of how the rest of your app is built. You mention single page web apps (spa), rest, angular, spring, n-tier, etc. but a presentation layers job ...
candied_orange's user avatar
1 vote
Accepted

Where to place the business logic for an external application that is tightly coupled with an internal application and how to adapt the architecture?

Making two APIs, in this case, is probably causing a bit of confusion as far as where business logic should live. For me, I would avoid having two APIs, if possible. If there is some company specific ...
eparham7861's user avatar
1 vote
Accepted

Does reference logic belong on DAL or BL?

Checking if data provided for creating or updating an object complies to some rules or constraints is typically a BL layer responsibility. For this reason, checking if EmployeeId are valid should ...
Christophe's user avatar
  • 82.1k
1 vote

What are the relations between the presentation/application/data logics, client and server, and MVC?

MVC (model-view-controller) is an architectural pattern, but it does not map directly into N-tier architecture: Those are more or less orthogonal, and in principle each layer can have their own (even ...
Roman Susi's user avatar
  • 1,803

Only top scored, non community-wiki answers of a minimum length are eligible