540 likes | 643 Views
Spring 2008 Reflections & Are we ready for Summer?. Bosch Buzzers Liang-Yun Wang (Mac) Yun-Yin Huang (Melody) Darpan Saini Vytesh Ramesh Yongjoon Choi. Outline. Project Overview Gathering the architecture drivers Creating the architecture Getting ready for summer Summary Q&A.
E N D
Spring 2008 Reflections & Are we ready for Summer? Bosch Buzzers Liang-Yun Wang (Mac) Yun-Yin Huang (Melody) Darpan Saini Vytesh Ramesh Yongjoon Choi
Outline • Project Overview • Gathering the architecture drivers • Creating the architecture • Getting ready for summer • Summary • Q&A Bosch Buzzers - EOSP Spring 2008
The team Bosch Buzzers - EOSP Spring 2008
Clients, mentors & technical advisors • Client • Robert Bosch LLC Research &Technology Center, North America • Representatives: • Dr. Chris Martin • Dr. Charles Shelton • Dr. Marcelo Cataldo • Mentors • Mel Rosso-Llopart • Felix Bachmann • Technical advisor • Dr. Jim Herbsleb • Tony Lattanze Bosch Buzzers - EOSP Spring 2008
Project goal • Short research report in GSD best practice • Produce a prototype for software to assist in collaboration and conformance checking during the design phase • This prototype could later be extended by the client Bosch Buzzers - EOSP Spring 2008
Context diagram Bosch Buzzers - EOSP Spring 2008
Architecture centered process Stage 1: Discover architecture drivers Stage 2: Establish project scope Stage 3: Create notional architecture Stage 4: architecture review 5. Production Go? No-Go? Stage 6: Experiment planning Stage 6: Production planning Stage 7: Experiment executing and refine architecture Stage 7: Production Bosch Buzzers - MOSP Spring2008
Functional requirements stability Collaboration experiment Re-scope • Paper prototypes, • Talking to experts Bosch Buzzers - EOSP Spring 2008
Constraints • Technical • Must plug into Eclipse • Windows 2000 or XP should be used as the operating system for development • Business • Schedule – Initial delivery by August 15th • Resources – 5 member MSE team Bosch Buzzers, MSE, CMU 2007-2008
Mac: Looks good Mac: class1 blah blah Mac: class 2 blah blah Darpan: sure does Darpan: No class 3, I am not even looking at what you are saying man!! Mac Darpan Bosch Buzzers - EOSP Spring 2008
Mac: Looks good Mac: class1 blah blah Mac: class 2 blah blah Darpan: sure does Darpan: No class 3, I am not even looking at what you are saying man!! Mac Darpan Bosch Buzzers - EOSP Spring 2008
Mac: Looks good Mac: class1 blah blah Mac: class 2 blah blah Darpan: sure does Darpan: No class 3, I am not even looking at what you are saying man!! Darpan: Move this to the Whiteboard Mac Darpan Bosch Buzzers - EOSP Spring 2008
Mac: Looks good Mac: class1 blah blah Mac: class 2 blah blah Darpan: sure does Darpan: No class 3, I am not even looking at what you are saying man!! Darpan: Move this to the Whiteboard Mac Darpan Bosch Buzzers - EOSP Spring 2008
The architecture • Used Attribute Driven Design (ADD) to create the architecture • Architecture review • Did experiments to answer questions in the architecture • Eclipse • Graphical Editing Framework (GEF) • Eclipse Modeling Framework (EMF) • Java EE Bosch Buzzers - EOSP Spring 2008
QAW - High Bosch Buzzers - EOSP Fall2007
QAW - High Bosch Buzzers - EOSP Fall2007
Deployment View Bosch Buzzers, MSE, CMU 2007-2008
High-level client C&C View Pattern used: Call-return Implicit invocation Bosch Buzzers, MSE, CMU 2007-2008
Important quality attribute scenarios Flexibility Bosch Buzzers - EOSP Spring 2008
Architecture alternatives • For UML modeling, the underlying tool we are going to use is Papyrus (open source) • Since it is off-the-shelf, we could • Either look into the code of Papyrus and modify it so that it presents a PosterBoard instead of standalone diagrams • Or write adapters, so that a generic PosterBoard understands it Bosch Buzzers - EOSP Spring 2008
Posterboard module view Bosch Buzzers - EOSP Spring 2008
Technical risks Bosch Buzzers - EOSP Spring 2008
Reflection on creating the architecture • The diagrams help the understanding of the system among team members better • But, it takes too long to write the text • Some of us still think a connector and component is the same thing • The time needed to experiment is hard to estimate • Architecture helped us identify technical risks Bosch Buzzers - EOSP Spring 2008
Are we ready for Summer ? Bosch Buzzers - EOSP Spring 2008
Preparation for Summer Bosch Buzzers - EOSP Spring 2008
Estimation technique used Baseline estimation: 100 hours Baseline estimation: 20 hours Bosch Buzzers - EOSP Spring 2008
Earned value MOSP Bosch Buzzers - EOSP Spring 2008
Reflection on Earned Value • To improve our earned value : • Re-planning helped • We planned for higher granularity of tasks • We decided to prioritize our planned tasks over unplanned tasks • Increased time sheet tracking • Our earned value slipped at times during heavy load of core courses and electives. • Common time of studio members in cave helped Bosch Buzzers - EOSP Spring 2008
Risk Status (Top 3) Bosch Buzzers - EOSP Spring 2008
Process for summer • Iterative development • 3 iterations of 4 weeks each • Scrum approach to project management • Six sprints of two weeks each • Daily standup meetings • Product backlog using customer prioritization • Burn down chart for progress tracking • Sprint retrospective at the end of each sprint • Three releases of four weeks each • Why Scrum ? • Team has some experience • Tracking using Scrum worked in Fall Bosch Buzzers - EOSP Spring 2008
Team roles for Summer Bosch Buzzers - EOSP Spring 2008
Load balancing • Going from 12 to 48 • Start working a week in advance • In the first month, there is no flexi time. Be in the cave at 10 AM everyday. (Big Boss’s order ) • Weekly team activities to handle burnout Bosch Buzzers - EOSP Spring 2008
Knowledge transfer sessions • Experiments revealed that team needs more technological training in Eclipse and related technologies • We conducted knowledge transition within the team • Some of them include, Eclipse plug-in, Java EE Bosch Buzzers - EOSP Spring 2008
Design, development and QA Process Critical modules only (assigned by chief-architect, based on complexity) • Code • Informal Code Review Create Smoke/ Stress/Functional Test Cases Formal Code inspection Design Design Review Create/runUnit Test MODULE Bosch Buzzers, MSE, CMU 2007-2008
Proposals • Updated existing proposals • Planning proposal • Operational proposal • Problem definition proposal • Statement of work • Created • Design proposal • Implementation proposal • Quality assurance plan Bosch Buzzers - EOSP Spring 2008
Release plan Chat Server, Command manager Chat Client Collaborative UML tool Release 0.1 – 15% 15th June 2008 Administration Collaborative Posterboard Standalone WhiteBoard 13th July 2008 Release 0.2 – 50% Snapshot Manager UML 2 Whiteboard transform Playback Collaborative Whiteboard 10th Aug 2008 Release 0.3 – 100% Bosch Buzzers - EOSP Spring 2008
Quality assurance plan • Determined quality goals • Twenty or fewer defects per thousand lines of code after unit testing • Broken builds are not left unfixed overnight • Plan for unit testing, integration testing and regression testing in place • Mantis to be used for defect tracking • Atleast 80% code coverage to be achieved for junit testing • Plan for system testing should be ready during detailed design Bosch Buzzers - EOSP Spring 2008
Time allocation • 20% operating and planning • Historical data from previous team • 16% buffered time • Nice to have functions & estimation calibration
Infrastructure setup • Set up Wiki athttp://buzzers.webhop.net/ • Version control – Subversion • Defect tracking – Mantis • Development environment • Ant for nightly builds • Nightly backup (Don’t rely on SCS ) Bosch Buzzers - EOSP Spring 2008
Summary • Accomplishments • Conducted SRE early this semester • Scope negotiation • Detailed requirements • SRS delivered • Proposals • Architecture defined Get set go for summer Bosch Buzzers - EOSP Spring 2008
Thanks ! Bosch Buzzers - EOSP Spring 2008
Knowledge sharing process Bosch Buzzers - EOSP Spring 2008
Time allocation from previous team Development Detailed design QA Fixing QA Appraisal Hermes EOSP (Summer 2007)
Earned value (Actual hour spent included) Bosch Buzzers - EOSP Spring 2008