Download presentation
Presentation is loading. Please wait.
Published byQuentin Anthony Modified over 9 years ago
1
Team S07 Metric NoName A0006361U AYE THET MON A0065958L NG SIEW LENG A0065772X PRAGATI A0019692X TIN LAI WAI A0065741E VARUN TAK A0065913A ZHANG SHUDONG
2
Agenda Scope of project Global use case diagram Analysis use cases High Level design (Software Architecture) Prototype stage challenges Technical risks and Mitigation Transition strategy Progress Tracking Plans for implementation phase Change Requests Question and Answers
3
Scope of Project
4
Customer Profile Management (Marketing Staff) Maintain customers’ profiles with their supplier information. Agent Profile Management (Marketing Staff) Maintain agents’ profiles with the branch details Shipment Tracking Management (Customer Service Staff) Track shipment by creating new shipment, updating shipment status with email notification feature Sea & Air Import Document Processing (Operation Staff) Maintain air & sea import jobs and generate all the necessary documents as required. Business Reporting (Operation Staff) User Administration
5
Global use case diagram
7
Analysis Use Case #1 Maintain Air Freight Job Records (Add)
9
Analysis Use Case #1 Maintain Air Freight Job Records (Update)
11
Analysis Use Case #1–Maintain Air Freight Job Records (Delete)
12
Analysis Use Case – Maintain Air Freight Job Records (Delete)
13
Analysis Use Case #2 Search Customer Profile
15
Software Architecture
16
Architectural changes and motivations behind the changes SNoChangeMotivation 1Traditional user interface approach dropped and adopted Rich User Interface Customer requirement of having enhanced UI with less number of steps to perform an operations. Intuitive UI. Non-Blocking UI experience. 2EJB centric approach has dropped, and Web centric approach adopted. Support to Rich UI framework, which does most of the processing by using client resources such as browser cache and client machine processor which doesn’t need the container to manage heavy EJB Instead an efficient and light weight container required to service Rich UI components
17
High Level design - Software Architecture
18
Software Components Third party Software Component and libraries VendorLicense JDK/ JREOracle Sun License (most of it also under GPL) Spring Framework 3.0Spring Source Spring libraries are licensed under the terms of the Apache License, Version 2.0.Apache License, Version 2.0 Ext JS 4.0Sencha ExtJs 4.0 is available in dual licensing scheme; however, we have used it under the licensing terms of GNU GPL license v3.GNU GPL license v3 Hibernate CoreJBOSS Community The GNU Lesser General Public License version 2.1 (LGPLv2.1) Tomcat 7.0ApacheApache Tomcat is developed under the Apache License version 2Apache License version 2
19
Dual layer MVC architecture
20
UI Layer Data Package
21
JSON Parsing 1 2 3 45
22
Following are key features of Spring framework, which ECMS application enjoys: Annotation Driven Architecture. IOC or Dependency Injection by its Component Scanning mechanism, which saves the time for instantiation of user objects. Decoupling between Dispatcher and Mapping and View resolving mechanism. Aspect Oriented Programming model Spring in-built role based security.
23
Spring MVC Architectural View
24
Data Base Layer
25
Prototype Stage Challenges
26
Prototype challenges (1) SnoChallengesAction Performed /Solutions 1To reduce the number of steps taken to complete a user operation Requirement of having many CRUD operation with less number of steps, this is challenging to achieve if we proceed with a traditional approach of UI using HTML forms and pages Used Rich UI components from third party open source libraries with AJAX to provide enhanced user interface, which capable of operations without leaving a page 2To reduce the latency time for a User action For non-blocking user experience of ECMS UI, it requires to reduce the latency time, which is time taken between data packets leaves and receive, from and by the client browser for given user command Ajax communication between UI and Service layer to meet this challenge
27
Prototype challenges (2) SnoChallengesAction Performed /Solutions 3Technological evolution (UI layer framework) Ext JS framework was revised in April 2011 from 3.x to 4.x which includes the MVC architecture. This change has required us to move to ExtJS 4.x and refactor the design at Client Tier to exhibit MVC architecture introduced in ExtJS 4.x. ExtJS 4.x documentation followed and revised the UI layer structure, integrated ExtJS 4.x together with ExtJS 3.x, to not to disturb existing modules. New features development with carry on using ExtJS 4.x, Ext3.x features shall be interchange with ExtJS4.x 4Novelty of Technology Ext JS 4.x and Spring framework 3.x are new technologies which have recently released in 2011. An important use case prototyped.
28
Technical Risks and Mitigation
29
SnoRiskRisk Mitigation 1Integration of two new frameworks at different layers (ExtJS (UI) and Spring framework (Service)), where team has no prior experience. Integrating two frame works performed in steps, as two unknown frameworks required good time of study and analysis. 1.UI layer integrated to the system with ExtJS framework, which communicates to the server using Servlet technology. 2.Spring Controller accessed by JSP at front end. 3.JSP interchanged with Java Script and Servlet interchanged with Spring MVC Controller to finally integrate both layer MVCs 2Exchanging Objects between layers Prototyped by sending JSON from UI Layer to Server and transform to JAVA object at Service Layer and vice versa.
30
SnoRiskRisk Mitigation 3Managing large number of records at UI Layer on general user queries (Risk realized proactively) Pagination Feature prototyped to mitigate the risk. Pagination component send Ajax request to get the limited number of records on Java Script loads. HibernateCallback implemented to get the limited number of records. 4Boundary objects from analysis phase requires realization using Java Script Components Main Job use case implemented using ExtJS and Spring MVC.
31
Transition Strategy User Interface Layer
32
Static Structure (1)
33
Static Structure (2)
34
Dynamic Structure
35
Asynchronous calls to server
36
Communication Between UI and Service Layer
37
Transition Strategy Service Layer
38
Static Structure
39
Dynamic Structure
40
Transition Strategy Persistence Layer
41
Static Structure
42
Dynamic Structure
43
Deployment Structure
44
Progress Tracking
46
Expended Effort Vs Budgeted Effort for Phase 2 Activities
47
Plan for Implementation Phase
49
1 team member to handle data persistence layer and creation of common objects ~ to complete by 7 th Oct 5 team member to handle detailed design spec (sequence diagram for 40+ use cases) in parellel ~ to complete by 7th Oct 1 team member (identified from above 5) to start working on system test plan by mid Sept, the rest continue with design spec Upon completion of design spec, 1 team member released from development to work on user guide and acceptance test plan Remaining 3 plus the database team member to start coding by 7 th Oct, task allocation by use case basis. Target to complete coding, unit testing, code reviews and system integration by 25 th Nov System testing preparation starts as early as 19 th Nov, estimate to complete testing and test results logging by end Dec Kick-start documenting end-of-project report by 22th Oct, estimate to take place throughout till end of project phase
50
Change Request
51
Change Requests ItemDescriptionType 1Customer requests to add one new function to allow user to view the jobs in a particular month sorted by the sale person. New Requirement 2During preparation of UCMS, the team feel that there are some implicit requirements which are not mentioned explicitly in the URS. However, they need to be delivered for a complete system. These implicit requirements are as follows: List all User Accounts Search User Account Editing of sub-job/Deleting of sub-job Search Job Records Search Customer Cargo Record to add to a new shipping tracking record Search Shipment Tracking Record Implicit Requirement 3Customer change request to move 'Import job from tracking’ function from Tracking Menu to Document Processing Menu. New Requirement
52
We are getting stronger now… By overcoming obstacles encountered in phase 2: Obstacle 1: Small team, Big System Strategy: Prototyping phase has produced a framework to help us in automating the dominating number of CRUD cases in the system Obstacle 2: Relaxing project tracking during early phase 2 Strategy: Practiced close project tracking in meeting tighter deadlines nearer the end Team power unleashed Obstacle 3: Manpower shortage closer to deadline Strategy: Swapping of roles leading to discovery of better roles for team member
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.