⚠️ This page has been archived

✅ New page with updated info: ssw.com.au

Home > Archive > SSW Standards > Developer .Net > SSW Application Design Architecture Supporting Web Services

This document outlines the design architecture of SSW's software development projects. We use a multi-tiered approach which can support the use of web services if need be - allowing our applications to have complete support for access from locations outside of our network.


web services Adam
Figure: Diagram of SSW Application Design - Adam's Version

Web services Ross
Figure: Diagram of SSW Application Design - Ross' Version

Frontend Windows

The front-end contains only the GUI and basic interface related code. A couple of examples of what the front-end filename could be are:

Our front-ends are always written in Microsoft Visual Basic.NET. Our reasoning for this is that:

The following concepts and rules are used in our development of this tier:

How This Layer Communicates

Example of a standard data entry form

Form Name Purpose
frmCustomer
(Inherits from frmBase - has standard style definitions and functionality such as action buttons, etc)
Data Entry form
frmCustomerSearch Form that lists records that match a user's search criteria
frmCustomerList Lists all records of a particular type

One to Many display strategy


Figure: Related data displayed in a sub-form

Frontend - Web

This area is also written in Microsoft Visual Basic.NET (our reasons for doing this are described in the above section )

Frontend - ASP.NET

Form Name Purpose
Customer.aspx Data Entry form
CustomerList.aspx Lists all records of a particular type

One to Many display strategy

Business Objects

Examples of Names:

Coding

The Middle Tier (or Business Objects) is essentially ADO.NET code written in C# talking to stored procedures - no direct actions (INSERT, UPDATE, DELETE) in inline SQL

Backend

The backend is our data store - it's typically running on SQL Server or MSDE.

Examples of Names:

Coding

Stored procs are better but they are more expensive for the customer. Therefore this is the suggested compromise. Stored procs for action for data integrity. SQL OK for SELECT

Web Connectivity/Web Services

The web services layer provides access to our business service via SOAP (an XML-based object access protocol that runs over HTTP).

Examples of Names:

This is then implemented by creating a virtual directory in IIS that points to a collection of ASP.NET web service files, which in turn serves as a pointer to the Business Objects class.

Coding

In order to provide this access, we need to make our Middle Tier web enabled. This is done by adding [WebMethod] attributes to all functions.

Security is a consideration that should be taken seriously - after all, having this layer present will provide a publicly accessible gateway to all data in your backend!