190 likes | 334 Views
PUMA. PUMA SPRING 2002 EOSP. May 6, 2002. Agenda. Introduction Project organization Process Benefits from mini-SRE Architecture Achievements Project demonstration Next steps. Who we are. PUMA P ortable U biquitous M iddleware A rchitecture Team members
E N D
PUMA PUMA SPRING 2002 EOSP May 6, 2002
Agenda • Introduction • Project organization • Process • Benefits from mini-SRE • Architecture • Achievements • Project demonstration • Next steps
Who we are • PUMA Portable Ubiquitous Middleware Architecture • Team members Adrian Sia, Hernan Eguiluz, Venkat Govi, You Jung Kim Constantin Kostenko, Bhuricha Sethanandha (MSIT) • Technical writer Kimberly Callaghan • Mentors Anthony Lattanze, Cliff Huff • Client SEI: Dan Plakosh, Scott Hissam
PAMD project overview • Plug-in Architecture for Mobile Devices • an architectural style for a run-time infrastructure to allow applications to interact with plug-ins • Deliverables • a plug-in architecture for the Palm devices • applications & plug-ins to demonstrate PAMD concepts • an SEI technical note describing the architecture and its rationale • a programmer’s reference document
Team roles Team leader <Adrian> Process/Support Manager <Venkat> Planning Manager <Hernan> Development Manager <You Jung>
Process improvement Management • Risks identification and tracking (mini-SRE) • Weekly tracking of action items • Weekly review of plans • Cycle planning (stabilized) • Regular time slots for project activities Technical • Develop prototypes to minimize risks • Peer review • Code walk-through • Document review
Benefits of mini-SRE • Identified risks from team and client’s perspective • Re-aligned our understanding about requirements with client • Improved communication between client and team • Gained confidence in project
Prototyping • Strategy • Creating throw-away prototypes • Mitigating technical risks • Prioritizing by requirements • Distributing work and sharing knowledge • Prototypes • Plug-in manager: Plug-in invocation, Beaming, Hot-sync • Plug-ins: Complex data type passing, a plug-in using another plug-in • Sample PAMD-aware applications
Driving qualities • Developer-friendly • Usability • PAMD should be easy to use • Performance • PAMD should meet users’ working pace in terms of response time • Availability • PAMD should be available for service when PDA is turned on • Portability • PAMD should be portable on Palm OS 3.1 – 4.0
Architecture Indirect Invocation/Shared Memory Plug-in manager Shared memory Memory Plug-in PAMD-aware application PAMD plug-in Application Database Service Launch Plug-in manager Method invocation DB connection Plug-in registry Palm OS system DB Direct memory access PAMD Port
Achievements • Received customer approval of SOW • Finalized SRS, revised SPMP • Developed RMP • Developed several risk-reduction prototypes • Improved customer satisfaction • Developed an architecture • Developed a detailed draft of technical note
Next steps • Verification of requirements • Developer’s reference document (API) • Formal methods • Activate QA role for code & document • Develop reference implementation • Develop test plan • Perform daily plan-tracking • Prepare for ATAM
Lessons learned • KISS – Keep it simple, s….. ! • Benefits of mini-SRE • Benefits of prototyping • Benefits of architectural reasoning • Importance of tracking actions and plan reviews
PAMD Demonstration Questions?
Lessons learned last semester • Stand-up meetings are needed • Deep domain knowledge is needed • Formal plan tracking is needed • Early cycle planning is needed
System Context PAMD PAMD Application Application Plug Plug - - in in 2: Ask for the available 2: Ask for the available plu plug - in list to PAMD 4: Load the plug-in 4: Load the plug - - 1: A plug 1: A plug - - in is registered 3: Ask for the execution 3: Ask for the execution and run it. and run it. in PAMD in PAMD of the selected of the selected plug-in PAMD Legend Service Launch Plug-in registration Plug-in manager Plug-in Application Method invocation