0% found this document useful (0 votes)
36 views2 pages

Arch Tech Proposal

This document proposes using Java technologies to build a website with a database and APIs. It recommends Java for its clear separation of tasks into loosely coupled web, core, and database tiers using interfaces. Hibernate would be used for the database abstraction layer and JUnit for testing. Spring would provide integration of the components. PHP was considered but rejected due to disadvantages for future modifications. The roles, technologies, and tools described could provide extensibility, ease of development, and robustness.

Uploaded by

Francia Cadiz
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
36 views2 pages

Arch Tech Proposal

This document proposes using Java technologies to build a website with a database and APIs. It recommends Java for its clear separation of tasks into loosely coupled web, core, and database tiers using interfaces. Hibernate would be used for the database abstraction layer and JUnit for testing. Spring would provide integration of the components. PHP was considered but rejected due to disadvantages for future modifications. The roles, technologies, and tools described could provide extensibility, ease of development, and robustness.

Uploaded by

Francia Cadiz
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOC, PDF, TXT or read online on Scribd
You are on page 1/ 2

Architecture/Technology proposal

What do we need to do:

- Web site
- Database
- Interaction with apis
a) Google/yahoo/ms maps
b) Google Earth
c) Panoramio & others
d) Rss/xml
- Additional enhancements
a) Pda/phone support/midlets

How can we do that:

1) .NET = ASP (1 person familiar = no chance)


2) PHP
- 2-4 persons skilled
- Lack of database abstraction + manual sql cmd
- component model – how to program independently
- Testing?
- IDE?
3) Java
- Everybody familiar
- Clear separation of tasks (loosely coupled components through interfaces)
(web/core/database)
- Hibernate for database
- Easy independent testing (Junit)
- IDE – Eclipse/Netbeans

Roles:

 Core
- Business logic (all business functionality); exports services for web tier; uses
database tier; additionally might export services for midlet/mobile/WS
 Database
- Implementation of database interface, database management (stored
procedures etc; database maintenance)
 Web
- User interface (doesn’t matter if jsp/struts/php-java bridge/anything); uses
business services
 Core web 2x
- Web flow; authentication; integration of web tier technologies;
 Javascript
- Google maps & other javascript apis
 Management
- Integration & testing all parts together; assigning tasks; documentation;
common management
Technologies:

- Project management
 Code repository – SVN
 Task/bug assignments – bugzilla
 Documentation - svn/doc repository on FER
 Team collaboration – forum/news/im/mail

- Coding
 Web tier – jsp/struts/tapestry/wicket/(php-java bridge?)
 Business tier – pojo
 Data tier – hibernate
 Integration – spring
 Testing – junit

- Other tools
 Eclipse
 Tomcat

Notes:

Reasons for this kind of separation (web/core/db) is extensibility (programming through


interfaces - quick implementation swap). If Igor is serious about this project, we should
consider future modifications/extensions. It also provides good distributed development
model. If we write everything in php it can be huge disadvantage for this reason.

Spring is leading framework for enterprise applications - IoC, DI and AOP is what we need.
Nice integration of all parts, enforces programming through interfaces – easy to test, easy to
swap, easy to extend.

Hibernate provides unseen compatibility, scalability, performance and ease of use.

Eclipse+subclipse+mylyn(bugzilla) is all distributed development needs.

Junit testing can provide solid robustness.

Performance of our code can be analyzed with many java tools; performance of overall
application can be extended with clustering (support in tomcat).

Usage of OSGi can be considered.

References:

later

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy