Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • Home
  • SEARCH
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 558321
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 13, 20262026-05-13T12:07:10+00:00 2026-05-13T12:07:10+00:00

I am Developing a mid-size application and want to implement Application Architecture, I’ve read

  • 0

I am Developing a mid-size application and want to implement Application Architecture, I’ve read some Architecture Books and Approach and think about

AAFN (Application Arcitecture For .net) presented by Microsoft

SOA

SDLM

SDO

MVC

and vice versa …

this is a web application that will extended with some other small application ( just think about something like a M.I.S with a (or two) core)

Whitch Projects I should have I think about

Common // to use in all projects

Framework // main framework

DAO // data access object ( entityframework or nHibernate )

UI // will available in 2 variant web and windows(wpf) interface )

BusinessEntities // all subApplication project logic will goes there

ApplicationNameProject // each application have their Own Logic (in BussinessEntities)

ApplicationUnit // each application Entity will place here

ApplicationNameProject  // each application data Entity (in Application Unit)

Services // WCF Services goes here to contribute with all applications

this is the architecture witch I think about, I do not have any force to use this, I want to know whats the best fit for me, can Change all of it or add some other projects and remove these projects

any help appriciated

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-13T12:07:10+00:00Added an answer on May 13, 2026 at 12:07 pm

    There is no “best small or mid-size application architecture” as a silver bullet to fit any project, so drop that idea right now or you’ll be in for a world of pain down the road.

    The architecture for any given project will fit the purpose of that project. In some cases, ASP.NET WebForms with a direct queries into the database will be the most appropriate architecture, in some cases MVC will be the right architecture, in some cases a windows forms application built on top of a web service that connects to a relational database through an ORM like LINQ-to-SQL or NHibernate.

    You can’t decide on a one-architecture-fits-all approach, it just doesn’t work. Each architecture has its merits and weaknesses and thus projects for which it is well suited and projects for which it should be avoided. You should pick the approach that makes the most sense for the current project/scenario.

    Given that however, I tend to take a fairly uniform approach.

    If I need a quick utility project that does a very specific thing and is highly unlikely to be needed for anything else, I might use a console application with queries against my database hardcoded.

    If I need a common set of queries that I’m likely to need from multiple projects, I’ll write them as stored procedures to get the performance benefits and build a data access layer that will leverage these stored procedures to give me standardized business objects, in a standard DAL (data access layer)/BOL (business object layer)/BLL (business logic layer) approach. This is advantageous because it means that once I’ve got this set of libraries built I can float any application over the top – for instance a webforms or MVC application.

    MVC is advantageous because of separation of concerns – your controller can interact with your business library simply to access the data it needs and your views are really just that – a view of the data that the user can interact with. The views do nothing more than take the current data view to the user and transport any data changes back from the user to the controller – no logic is held in the view and as such it means that it’s far easier to unit test and make changes to components without affecting the rest of the application.

    The drawback to a multi-tiered or multi-layered approach like this though is that it takes time to architect it properly and if you’re only after a throw-away utility application like they demonstrate on stage at developer conferences then this is complete overkill and I wouldn’t bother with it.

    Think of it like this: Every layer, every library, every component requires justification. If there is less justification for than against, then don’t do it. The key is not to do something without reason – anything you do is correct providing that you have a well thought out reason for it, and by well thought out, I mean that you’ve found very good reasons for and against and you’ve made an educated decision, you’ve not made a decision based on half thoughts, or worse, no thought at all.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Ask A Question

Stats

  • Questions 350k
  • Answers 350k
  • Best Answers 0
  • User 1
  • Popular
  • Answers
  • Editorial Team

    How to approach applying for a job at a company ...

    • 7 Answers
  • Editorial Team

    What is a programmer’s life like?

    • 5 Answers
  • Editorial Team

    How to handle personal stress caused by utterly incompetent and ...

    • 5 Answers
  • Editorial Team
    Editorial Team added an answer Browsers are like people - they get old, they get… May 14, 2026 at 7:07 am
  • Editorial Team
    Editorial Team added an answer 1) The first thing I would check is if the… May 14, 2026 at 7:07 am
  • Editorial Team
    Editorial Team added an answer DELETE a, b FROM classified as a, $sql_table as b… May 14, 2026 at 7:07 am

Related Questions

I work in a mid size company as a Senior dev and work on
I am developing a Reporting Services solution for a DOD website. Frequently I'll have
I am developing a web site and need to see how it will look
I am developing a website that relies much on XML data. The web site
I am developing a GPL-licensed application in Python and need to know if the

Trending Tags

analytics british company computer developers django employee employer english facebook french google interview javascript language life php programmer programs salary

Top Members

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.