320 likes | 335 Views
Explore the features of Socratenon, an educational web system that helps navigate the complex world of web technologies. Learn how to deal with complex requirements and tight schedules, and discover the tools and infrastructure needed to implement these technologies.
E N D
SocratenonEducational Web System D. Milicev, M. Milicevic, N. Nikolic,M. Trajkovic, V. MilutinovicUniversity of Belgrade Faculty of Electrical Engineering emiliced@etf.bg.ac.yu Find Your OwnRight Paththrough theDense Forest of the ContemporaryWeb Technologies!
Outline • Socratenon: The features • The forest: Contemporary web technologies and the complex requirements • The roadmap: The concepts and the method • The path: The infrastructure and the tools • Conclusions
Socratenon: The Features Why is Socratenon interesting? Purpose and main interfaces Students, courses, and curricula Virtual classroom Technical features
Socratenon’s Purpose • Education over Internet • Courses in industry and R&D • Adapt curriculum to student’s skills and preferences • Provide virtual classroom features • Log student’s activities and preferences
Socratenon’s Main Interfaces Student’s Teacher’s
Socratenon’s Main Interfaces Administrator’s Provider’s
Students, Courses, and Curricula • A course consists of learning objects; learning objects: presentations and tests
Students, Courses, and Curricula • Learning goals may be defined for each course; a learning goal is achieved by covering concepts
Students, Courses, and Curricula • A curriculum is created for each student • A curriculum may be changed according to student’s cognitive state and preferences
Socratenon’s Virtual Classroom • Grouping of students and other users • Messaging system • Forum • Logging and reports
Socratenon’s Technical Features • Simple and clear architecture • Light-weight implementation • Ideally portable • Extensible • Adaptable to client’s specific needs and preferences
The Forest: Contemporary Web Technologies... How to deal with complex requirements and tight schedule? Complex requirements and tight schedule Three-tiered internet architectures Infrastructural web technologies Integrational web technologies
The Complex Requirements • The story of the complex requirements... • The story of the tight schedule… • What we knew before...
Web Browser Client Web pages Internet Web Server &Application SQL Server Application Server Intranet Database Server Three-tier Web Architectures HTML Page HTML Request Query Result SQL Query
The Infrastructural Web Technologies • HTML/XML • COM/DCOM/ActiveX • CORBA/IDL • Java/JavaBeans/JavaScript • Applets/Servlets • DBMS/ODBC/JDBC
The Integrational Web Technologies • Visual HTML Editors and Site Managers • Web-Enabled Hypermedia Authoring Tools • HTML-DBPL Integrators • Web Form Editors, Report Writers, and Database Publishing Wizards • Model-Driven Application Generators
The Roadmap: The Concepts and The Method What is the right way through the forest? SW-RISC principle and SW-Amdahl’s law Typical man-machine interaction cycle The concepts The method
The SW-RISC Principle and the SW-Amdahl’s Law • SW-RISC: Find a small set of elements to combine and cover the complex domain • SW-Amdahl’s Law: Find a general pattern that covers 80% of use-cases; support it by the architecture that is open to be enhanced by classical methods and tools to cover the rest. 80% 20%
Starting Form Query Result Post SQL Update SQL Select Send HTML Client Application Server Database Server Ending Form Typical Man-Machine Interaction Cycle Data to fill the Page? Reformat HTMLwith the retrieved data Submit Find Next Page
Perform SQL Update query for C,with data from A’s controls as params Find the next form B Perform SQL Select query for C Fill the B’s controlswith the query results Send the filled form B to the browser Concepts: Forms and Commands Application Scenario Command C Form A Form B
course content +partsOfCourse +knowledgeContainer Course LearningObject * * * * PassivePresentation MultipleChoiceTest 1 1 * * Use casestextual definition Key abstractionstextual definition TestQuestions OO class model Database scheme OO use casedecomposition OO scenario definition The Method
Filled metadatabase Web applicationgeneration tool Working... OO scenario definition Running application Interpretation The Method (cont’d)
The Path: The Infrastructure and the Tools How to implement all these? The client side: HTML and web page designer The server side: Java and servlets The database: DBMS and JDBC The modeling: UML and Rational Rose
The Client Side • HTML • Web designer: Dreamweaver • Any other HTML page design tool
The Server Side • Java • Java and servlet environment: Kawa • Any other servlet-supporting Java programming environment
The Database • Relational database and JDBC • DBMS: Microsoft Access orSQL Server • Any other JDBC-supporting relational DBMS
The Modeling • UML • OO modeling tool: Rational Rose • Any other UML-supporting OO modeling tool
Conclusions What is done Lessons learned Further improvements Acknowledgements
Conclusions-What is done • Educational Web System that is: • rich in functionality • flexible and extensible • portable • Web-app development method that is: • flexible and extensible • rapid • easy to comprehend and apply
Lessons Learned • Do not get confused by the technology market • Choose the smallest set of methods and tools that can solve your problem • Apply the incremental and iterative, architecture-centric, risk-elimination driven approach
Further Improvements • Improvements of the infrastructure and method • Improvements of the user interface • Improvements of functionality • Development of graphical course design tools • Meeting the users’ needs...
Acknowledgements • The authors wish to thank toDejan Marjanovic who considerably contributed to the product implementation