architecture_review_v2

Download Report

Transcript architecture_review_v2

Personal Tutor
Architecture Review
Peter Pratt/Lee Stobie/Defeng
Ma/Morag Iannetta/Chris Giles/Frank
Bergeret
22/04/2013
Content
•
•
•
•
•
Current High Level Architecture
Issues/limitation/areas to be improved
What we have learned since last year
Suggested Architecture for the future
Action for next step
Current Architecture for Personal Tutor System
SITS
eVision
ColdFusion
Staff
Inline
Frame
eVision
DATABASE (STAR)
Inline
Frame
Student
SITS
STUDSUP
Web
proxy
Read/Write
Read only
MyEd
Additional Information for current
Architecture
• Data: two sets of data:
– SITS schema: existing SITS data
– STUDSUP schema: any other personal tutor data not from
existing SITS
• eVision: developed within eVision using SITS
technology/processes; read/write to SITS schema, and read
data only from STUDSUP
• ColdFusion Application: Two interfaces with similar
structure/components. User can access directly via URL.
Read access to SITS, read/write access to STUDSUP.
– Staff interface: for staff user. eVision page via inline frame
– Student interface: for student user. eVision page via inline frame
• MyEd
– Student channel: web proxy for the student
Issues/limitation/areas to be improved
• It works now
• But
–
–
–
–
–
–
–
–
–
Two applications (SITS, and ColdFusion App) put together via Inline-Frame.
No directly integration between them, and no interaction?
Number of support issues related to the layout (scrollbar etc.)
Difficult to expand for include further application/system/new function?
Need coordinate between the development work in two applications from
two teams (SSP, SW DevTeam)
Using both applications require two skillsets for project/maintainance
Notification (email to PT) and done in CF. This could be advantage to do it
outside eVision as they could be added into MyEd notification in the future.
Need more tests between two applications
Difficult for automated tests
• The current architecture was based on the requirements, what our
experience/knowledge with SITS/ColdFusion, and the resources available
from IS Apps
What we have learned so far
• Using bootstrap framework to developer “facebook”
like web applications with ColdFusion application
• Bootstrap is adopted in the eVision (e.g. paperless
admission)
• Fix the issue with conflict between jQuery/Bootstrap
within eVision
• Student self service project working for the integration
between eVision and MyEd
• Deeplink into Task and SRL in eVision
• SITS StuTalk funcationality and interface API for
integrating with other systems
If we do it again
• Given what we have developed until now, and
what we have learned so far, will we do it in the
same way?
• Assumption:
– Resource is available
– We have time to develop it properly
– We can throw the current version away, and build
from scratch, thus no migration
• The answer is NO, and a better architecture
would be like the following
Suggested Architecture for Personal Tutor System
SITS
eVision
eVision
DATABASE (STAR)
Staff
SITS
StuTalk
Student
STUDSUP
Web
proxy
Read/Write
Read/Write via StuTalk
MyEd
Why it is better?
• Data storage: no changes, SITS data in SITS, other data in STUDSUP.
• Web proxy into MyEd for eVision (similar as before, but direct to
eVision)
• Build one application instead two, one design for the personal tutor
application
• SITS is preferred option (use of SITS data and access/reuse existing
processes within SITS)
• Use bootstrap framework to build the self contained application
within eVision, and access the SITS data and STUDSUP data directly
• Potential to use StuTalk within eVision to retrieve/store the data to
develop re-usable function/component
• Easy integration with other system/application via SOA/StuTalk
• Can be extended for future requirements/development
Next Step
• Need spend more time to look at using StuTalk to
improve the eVision functionality. A project is
required.
• Need look at what are planned for the future
development for the personal tutor and decide
whether it is now time to switch to new
architecture
• Need look at the resource impact on the time,
and get people working together
• Anything else?