Designing Extranet Farm – SharePoint 2016

I am in the process of designing SharePoint 2016 environment for our organisation. We have so many intranet web applications and also has many anonymous public facing sites existing in different Farms (WSS 3.0,MOSS,SharePoint 2010,SharePoint 2013 etc). We are planning to migrate all these sites to SharePoint 2016 platform.

I am thinking to create 2 separate Farms – One for Intranet and another one for internet sites.I am planning to use host named site collection approach to host intranet sites so that all the site collections can be created and managed under the same web application.

Still I am in a confusion whether it will be a better idea to host anonymous sites as host named site collections under the same web application or create separate web application for each site. Anonymous sites are accessed by our various vendors and each site is targeted to different set of users.

Request your suggestions.

Designing for Healthcare website, what do you guys think its the limit of clinic cards to show for each page?

So, I am working on a clinic search website where people can look for the clinics/hospitals to book the treatments they need. I was wondering how many clinic cards would be best to show per page. Currently I decided to go for 10 each page. They are not too big -420×550- and so,I am trying to find best solution for both SEO purposes -page speed and keywords- but also in terms of bouncing rate. Is there and guidelines I could also refer to -maybe from ecommerce websites or in general?.

Thank you so much.

P.S: I attached an actual picture of a clinic card from ANOTHER website so that it would be clear what I’m talking about.enter image description here

Designing a generic associative table

I need the ability to associate two entities of the same or different types. Take the concept of planes and trucks that have the ability to radio to each other.

+----------------------+ |        Airplane      | +----------------------+ | AirplaneId           | | Wingspan             | | MaxTakeoffWeight     | | etc...               | +----------------------+  +----------------------+ |         Truck        | +----------------------+ | TruckId              | | CargoCubicFt         | | IsResidential        | | etc...               | +----------------------+  +----------------------+ | CommunicationBetween | +----------------------+ | [AirplaneOrTruckId]  | | [AirplaneOrTruckId]  | +----------------------+ 

What’s the best way to accomplish these associations?

Notes

I can’t combine or abstract out the two entities (e.g. can’t combine planes and trucks into a Vehicles table) because each entity has many unique properties that the other doesn’t have.

The only other idea I have is to create a table like this:

+----------------------+ | CommunicationBetween | +----------------------+ | Entity1              | -- "Airplane" or "Truck" | Id1                  | -- AirplaneId or TruckId | Entity2              | -- "Airplane" or "Truck" | Id2                  | -- AirplaneId or TruckId +----------------------+ 

… but that’s not an elegant solution.

Designing custom page template and reuse across sites

In my SharePoint online tenant, I have several communication sites, all of them are associated to a Hub site. I am designing a solution which should provide consistent layout for news pages, pages should also include custom properties and web parts.

For this I have created custom content type in content type hub, all news pages will use this content type. In one of the site I have included this content type in Pages library and designed a page by including custom page properties and webparts. Then I saved this page as template. I am able to create news posts using this template in this particular site.

But now I want to reuse this same page template in all other sites as well. There is no download and upload option in Pages library. Somehow I downloaded page template by PowerShell, but when I try to upload it in anther site by drag and drop, its not working.

Any thoughts how this can be achieved? How to provide consistent custom layout for news pages across modern sites?

Designing for landscape mobile view

A lot of RWD websites cater for 3 major breakpoints (phone, tablet, desktop) and make the design fluid between that. However, the thing that’s hardly ever included is the landscape view. Rotate your phone into landscape and the website usually falls apart. Often the problem doesn’t lie on the horizontal axes, but on the vertical one: there is simply not enough height to cater for the content.

How are you dealing with this? Do you include landscape view in your design process? How, and what are the biggest problems you came across?

Designing Rest API endpoint for viewing bearer access token

We have several endpoints which were authenticated using a bearer access-token. There was another endpoint which will renew/generate a new bearer access-token on passing valid secret_id and client_id.

Now a client is asking for a new endpoint which will give them their already generated bearer access-token as a response from DB on passing valid secret_id and client_id but I feel that it was wrong to have such an endpoint based on several other APIs that I have used in the past.

Are there any drawbacks on providing such an endpoint? Are there any security issues that i should be worried about?

How do you conquer the challenge of designing for large screen real-estate?

This question is a bit more subjective, but I’m hoping to get some new perspective. I’m so used to designing for certain screen size (typically 1024×768) that I find that size to not be a problem. Expanding the size to 1280×1024 doesn’t buy you enough screen real estate to make an appreciable difference, but will give me a little more breathing room. Basically, I just expand my “grid size” and the same basic design for the slightly smaller screen still works.

However, in the last couple of projects, my clients were all using 1080p (1920×1080) screens and they wanted solutions to use as much of that real estate as possible. 1920 pixels across provides just under twice the width I am used to, and the widescreen makes some of my old go to design approaches not to work as well. The problem I’m running into is that when presented with so much space, I’m confronted with some major problems.

  • How many columns should I use? The wide-format lends itself to a 3 column split with a 2:1:1 split (i.e. the content column bigger than the other two). However, if I go with three columns what do I do with that extra column?
  • How do I make efficient use of the screen real estate? There’s a temptation to put everything on the screen at once, but too much information actually makes the application harder to use. White space is important to help make sense of complex information, but too much makes related concepts look too separate.
  • I’m usually working with web applications that have complex data, and visualization and presentation is key to making sense of the raw data. When your user also has a large screen (at least 24″), some information is out of eyesight and you need to move the pointer a long distance. How do you make sure everything that’s needed stays within the visual hot points?
  • Simple sites like blogs actually do better when the width is constrained, which results in a lot of wasted real estate. I kind of wonder if having the text box and the text preview side by side would be a big benefit for the admin side of that type of screen? (1:1 two-column split).

For your answers, I know almost everything in the design is “it depends”. What I’m looking for is:

  • General principles you use
  • How your approach to design has changed

I’m finding that I have to retrain myself how to work with this different format. Every bump in the resolution I’ve worked through to date has been about 25%: 640 to 800 (25% increase), 800 to 1024 (28% increase), and 1024 to 1280 (25% increase). However, the jump from 1280 to 1920 is a good 50% increase in space–the equivalent from jumping from 640 straight to 1024. There was no commonly used middle size to help learn lessons more gradually.


To help focus the question a little bit, I had a project that was somewhat similar to Atlassian JIRA, an issue management system. There were about six different types of records the client wanted to keep, all of them could potentially be related to each other. Gathering data wasn’t the core problem, although it did play a part.

The more important side of the problem was creating a system which would suggest potential relationships between the records and helped the analysts recognize patterns in the reported incidents.

There were different types of analysts that focused on the different problem domains, and due to the nature of their exploratory type of work, they didn’t know what they wanted. They just knew they had to make sense of a lot of data, draw correlations, and characterize classes of issues.


(Originally asked here: https://softwareengineering.stackexchange.com/questions/45864/how-do-you-conquer-the-challenge-of-designing-for-large-screen-real-estate, but told that this might be more appropriate)


For the bounty: Stretch your minds a bit. The pat answer “Make everything bigger” has a limit to how useful the answer is. We are talking about users who have to make sense of a lot of data and find relationships between records. If I simply bump up the size on everything they are going to be very limited in what they can see on the screen–particularly because the vertical is so constrained.

Designing Models from complex ERP SQL tables

I have a project coming up where im supposed to upgrade an existing access app to a .net architecture. Im wondering how to design object oriented models from the giant tables and mutliple relationships between them in an ERP like system.

For example, if i have an Order object, the orders table alone has 20+ columns where a lot would translate to normal properties, but an order has multiple foreign keys which all map to their own complex objects like items, customers, supplier etc.

Obviously im also not super familiar with the database and the tables and fields in detail, so do i just translate every colmumn? Do i try to only do the relevant stuff and fix it later if it turns out i need column/property X after all?

Also, since its an upgrade of an access app, the queries are already written and it would be silly not to reuse them, so no Entity Framework i think? Im also wondering how to best initialize them from the database.

What i usually end up with in these bigger systems is something like this to initialize an order completely: get all orders, get all items, get all customers, get all suppliers -> loop through the orders and add the appropriate item/curstomer/supplier from the lists.