BillG
BillG

Reputation: 1

Architecture Question

I am on a team developing an app in Silverlight that has multiple modules. Think of an app like QuickBooks that has AP module, AR module, Inventory module, payroll module.

I want to create the app with a desktop look to it with the ability to have multiple different modules open on the desktop. The screens can be move around and positioned on the desktop and even minimized to a application taskbar. The only restriction obviously is that a screen cannot be moved outside of the desktop container.

Another member says that this concept is too confusing to the user and each module should be developed as a separate .exe. with the ability to open each .exe separately and move them anywhere on the windows desktop instead of an application desktop area.

What are some feelings in here about either concept?

Upvotes: 0

Views: 128

Answers (3)

dthorpe
dthorpe

Reputation: 36072

I think it depends a lot on how your users will be using your app. If a typical user will be working with multiple modules at the same time, presenting a single app console with multiple modules makes sense.

If a typical user is normally only going to be using one module, then presenting a multimodule UI is overkill and potentially confusing.

End users usually need your help to keep them focused on what they need to get done. Having multiple options presented when the user really only wants to do one thing creates confusion.

Be careful in how you survey the prospective user base about this question: If you ask "decison makers", they tend to operate across functional domains and will project their multi-module use case as the typical end user scenario. If you ask the grunts that actually do the work, though, chances are high that their answers will differ from the boss's. ;>

Upvotes: 0

Spencer Hakim
Spencer Hakim

Reputation: 1553

I feel that an MDI approach is preferable. I don't know if you plan on allowing users to have multiple instances of the application open, but if you do, having multiple windows of the same module open without any sort of group would definitely not be simpler for the user.

Upvotes: 0

Justin Niessner
Justin Niessner

Reputation: 245389

If all of the modules interact with each other and compose a single cohesive application, then keep them all as modules in a single application.

If you have the concept of modules but each module is disjointed from the others (provides its own look/feel, functionality, or doesn't interact with the other modules in any way) then break each out into a separate application and bundle them together as a package (which would allow users to open multiple applications simultaneously and move them anywhere on their desktop).

Upvotes: 2

Related Questions