540 likes | 652 Vues
This report presents an overview of the Bosch Buzzers project, detailing our architecture-driven design process and preparations for the upcoming summer phase. It covers essential stages, from identifying architecture drivers to creating software prototypes for design collaboration. Key reflections include the effectiveness of tools like Eclipse and Papyrus, managing team communication, and addressing technical constraints. Our focus on earned value and risk management has fostered continuous improvement in project delivery and collaboration.
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