You are on page 1of 7

2017S2 

ITP213
EADP

ITP213 @ 2017S2
Enterprise Application Development & Project
LECTURE 1
INTRODUCTION TO ENTERPRISE APPLICATION DEVELOPMENT

Enterprise Application Development Project COPYRIGHT © 2017 SIT 1

Learning Outcome
Illustrate enterprise applications
Explain N‐Tier applications
Describe challenge in enterprise development

Enterprise Application Development Project COPYRIGHT © 2017 SIT 2

1
2017S2 ITP213
EADP

Enterprise Applications
An enterprise application is a business application.

They may be deployed on a variety of platforms across corporate 
networks, intranets, or the Internet.

Often the work is divided between the computers used by the end 
users and a main and powerful server – Client‐Server model.

Enterprise Application Development Project COPYRIGHT © 2017 SIT 3

Enterprise Applications  

Web
Desktop Browser Smart Devices
client

Central Database Web Server/Application Server

Enterprise Application Development Project COPYRIGHT © 2017 SIT 4

2
2017S2 ITP213
EADP

Enterprise Applications Development
To support the increase in work load and large number of clients, various 
technologies and techniques evolved.

In these days, large enterprise applications are developed based on the proven 
N‐tier model.

Basically, an enterprise application is divided into 3 different tiers.  Each tier has 
its own specific roles to play. The 3‐tiers work together to form an application or 
provides a service.

Enterprise Application Development Project COPYRIGHT © 2017 SIT 5

3‐Tier Application Architecture
User

Interacts with the users by capturing input and  sent to 
Business Layer and  finally present information to UI. Presentation Layer

The Business Logic  layer communicates with presentation 
layer and data layer. It contains  all the calculations and 
Business Logic Layer
Business Rule validations that are required in the 
application.  

Handles the data required by the application.  Usually an 
database server (SQL server, Oracle etc) Data Layer

Enterprise Application Development Project COPYRIGHT © 2017 SIT 6

3
2017S2 ITP213
EADP

Physical Layer of N‐Tier Application
Web Browser interacts with end 
End Users users

IIS Server with ASP.NET codes 
Web Server (IIS) implementing business logic

SQL Server containing
Microsoft SQL Server data.

Enterprise Application Development Project COPYRIGHT © 2017 SIT 7

Challenges of Enterprise Application
Developing large‐scale enterprise application is not an easy task.
The following slides will show some of the challenges involves in developing 
enterprise applications.
◦ Scalability
◦ Performance
◦ Security
◦ Reliability
◦ Reusability
◦ Testability
◦ Maintainability

Enterprise Application Development Project COPYRIGHT © 2017 SIT 8

4
2017S2 ITP213
EADP

Challenges of Enterprise Application
Scalability
◦ The ability for the application to serves a larger number of users than it was originally 
designed for.
◦ Scaling Up (Vertically) 
◦ Increase in hardware (better machine, more memory, faster process etc).
◦ Scaling out (Horizontally)
◦ Adding more machines

Performance
◦ The main goal of performance is to minimize response time to the user’s request.
◦ When system is under tremendous stress with concurrent users access require the 
application to be properly tuned for optimal performance

Enterprise Application Development Project COPYRIGHT © 2017 SIT 9

Challenges of Enterprise Application
Security
◦ Web application is vulnerable to virus, worms, Trojan horses and hackers.
◦ Implement proper security policies and practices to protect system from being attacked.

Reliability
◦ The probability that a system could perform with minimum failure. This is named fault 
tolerant.
◦ N‐Tier applications development enables system to be implemented on multiple distributed 
parts that minimize the risk of single point of failure

Enterprise Application Development Project COPYRIGHT © 2017 SIT 10

5
2017S2 ITP213
EADP

Challenges of Enterprise Application
Reusability
◦ Software components can be easily reused.
◦ Interoperability between software modules or components.
◦ Portability of components from on application or platform to another.
◦ Examples
◦ Write a class in C# and reuse it in many projects.

Testability
◦ Building applications in a loosely‐coupled manner increases the testability.  
◦ Implementing large enterprise application into various tiers, enable each component to be  
tested individually effectively.

Enterprise Application Development Project COPYRIGHT © 2017 SIT 11

Challenges of Enterprise Application
Maintainability
◦ Developer point of view
◦ Good OO‐programming practices will  make a system easier to modified for future 
enhancement 
◦ Administrator’s point of view
◦ Ease in monitoring the system.
◦ Ease in changing the operations of the systems.
◦ How easily can a system be repaired in the event of a failure.

Enterprise Application Development Project COPYRIGHT © 2017 SIT 12

6
2017S2 ITP213
EADP

Enterprise Application Platforms
There are various software development platform for developing 
Enterprise applications.
Most commonly platform
◦ Oracle and Sun Microsystems Java 2 Enterprise Edition (J2EE).
◦ Microsoft .NET.
◦ Linux 

This module will be looking at using the Microsoft.NET platform for 
enterprise application development.

Enterprise Application Development Project COPYRIGHT © 2017 SIT 13

Summary
Enterprise applications and N‐Tier Architecture

Discuss challenge in enterprise development

Enterprise Application Development Project COPYRIGHT © 2017 SIT 14

You might also like