Certification Objective 8.05: Validating the Physical Design


The final step of the physical design phase is to validate the design. Like conceptual and logical designs, physical designs are validated against the business and user requirements to ensure that the system meets the needs of the user. Since the physical design phase has approached the design from a technical view, the following eight items in particular should be taken into consideration during the validation:

  • Performance

  • Maintainability

  • Extensibility

  • Scalability

  • Availability

  • Deployability

  • Security

  • Accessibility

In this section, we will review the effectiveness of the proposed design against those fundamental technical requirements.

Reviewing the Effectiveness of the Proposed Physical Design

The effectiveness of application performance is a bit difficult to judge when you are still in the design phase of application development. Certainly the best conclusion that you can come to about application performance is that all of the potential bottlenecks in the system have been identified, and efforts have been made to mitigate those problems. If you realize that the wide area network (WAN) will be the slowest part of the system for your users, and then ensure servers are being physically placed as close to users’ office locations as possible, one can conclude that adequate thought has been given to performance.

We talked a bit about maintainability earlier in this chapter. Basically, the application should be easy to support over a period of many months and years. This includes the ability to find and fix bugs, and implement some minor new features every once in a while.

Extensibility is the ease with which an application can have new features added to it. Obviously, an application’s design should not unnecessarily limit what features get added to an application over time.

Scalability is the ability for an application to handle increased load. This is not to say that an application needs to support 1 million concurrent users on its 32 MB Pentium 333 MHz computer. But could an application support 1 million users were there a powerful server farm for it to run on? You should at least understand the upper limit to how many users or transactions your application will be able to support, to ensure it meets the current and future needs of the business.

Availability is the requirement that an application be available for use during certain periods of time. Availability is usually expressed as a percentage, where 100 percent availability implies absolutely no downtime allowed during defined periods of time. For 24 hours-per-day, 7 days-a-week systems, 100 percent availability is very difficult (and very expensive) to achieve.

Deployability, which was discussed earlier in this chapter in the section entitled “Developing an Appropriate Deployment Model”, is the ability of an application to be deployed. Some application architectures, such as ASP.NET web sites, are easier to deploy—deployment can literally be done in a second by copying an updated .ASPX file to a specific location. However, other applications require significant planning and effort to deploy, such as distributed, highly available n-tier applications.

You should validate the application design to ensure that it meets the user and business requirements in terms of security as well. Will the application be able to properly identify users using authentication? And will it be able to block out unauthorized users using authorization?

And finally, accessibility is a measurement of how easily your application can be used by people with disabilities, especially the various forms of blindness. Does it rely too much on colors to differentiate between items, thereby making it harder to use for people with color blindness? Does your web-based application follow the W3C’s Web Accessibility Initiative (WAI) standards? These standards can be read at http://www.w3.org/WAI/.

Author's Note

Visual disabilities are only one of the disability categories accessibility tries to address. Other disabilities that need to be considered include hearing, mobility, and cognitive.

At this point, the physical application design is complete. There is only one step in the application design process remaining, before coding can begin on the application, and that is incorporating standards into the design. This will be the topic of the next chapter.




MCSD Analyzing Requirements and Defining. NET Solutions Architectures Study Guide (Exam 70-300)
MCSD Analyzing Requirements and Defining .NET Solutions Architectures Study Guide (Exam 70-300 (Certification Press)
ISBN: 0072125861
EAN: 2147483647
Year: 2003
Pages: 94

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net