310 likes | 322 Views
This case study highlights the journey of Shohei Kuki at Ricoh, where he applies BridgePoint for effective object-oriented development training. The background, tools used, challenges faced, and improvements made over the years are detailed. The focus is on enhancing software modeling skills and achieving quality software outputs.
E N D
Case Example of Applying BridgePoint to OO Development Training Shohei KUKI Ricoh Company, LTD.
KUKI, Shohei • Started working as an embedded system engineer at Ricoh in 1999. • First project was UI (User Interface) common component development, where he gained experience and skills on object-oriented software modeling. • Has been training new engineers to improve their abilities and skills in object-oriented software modeling, as well as creating a system of skill development in object-oriented software modeling since 2003.
Contents Case Example of Applying BridgePoint to OO Development Training • Background • Introductory OO Development Training • Road to the effective training • Use BridgePoint • Lecture the concept of domain • Iteration evaluation review • Conclusion
Background History Practical OO Development Training Initial skill level of trainees
History 2000 2001 2002 2003 2004 1996 Model based OO development(the differential development) Rose was chosenas the major tool. Practical OO development training for newly hired employees Modeling technique was learned from SMM at the beginning. developed a part of printer engine controller by Bridge Point with a consultant. Bridge Point was one of the proposed tools. Then,proposed MDD to a production side. Trying to adopt MDD again but, stillautomatic code generation was promising. MDD was not adopted. Bridge Point was not chosen as the major tool. OMG began advocating MDA.
Practical OO Development Training • Purpose • Developing software modeling engineers • Making constitution of building the quality into software at upper process • Making a set of software as outputs • Trainees • Newly hired employees who assigned as software engineers • Period • About 1 year
Initial skill level of trainees • Academic background • University or master course graduates • Programming experience • Some have development experience, some have no knowledge of programming language example in 2004: • Experience of OO development • Nobody has
Introductory OO Development Training Positioning and purpose Spec of Training Spec of Subject Development plan Training style and System
Positioning and purpose • Positioning • Initial training of “practical OO development training” • purpose • Aware of the fun in developing embedded software • Aware of the base of OO thinking
Spec of Training ※This subject is the same as the one used for UML robot contest. (requested spec is simplified) URL of UML robot contest: http://www.otij.org/umlforum2004/robocon/(Japanese Version Only)
Spec of Subject • Pathfinder • Self-steering vehicle • running along the line • Proceed • Stop • Pause for 2 seconds • Detect line • Detect out-of-track • Maintenance • Correct threshold level of sensors • Check motors
Development plan • Achieving functions incrementally
Training style and system • Training style • Lecture + exercise(group work) • Promote understanding by many exercises • Training system • lecturer • Give lectures • advisers • Support reviews • 2 advisers for about 3 groups • trainees • Form a group with 4 to 6 members
We did various kaizen rate of achievement of total groups UP! UP! UP! Not good progress Little time for analysis Not best progress Kaizen2: Lecture the concept of domain Kaizen3: Iteration evaluation review Kaizen1: use BridgePoint
Result in 2002 • No group could achieve additional func. 2 rate of achievement of total groups No group could achieve additional function2 despite my efforts in preparing this function!
Problem in 2002 • problem • Not good progress • Many trainees deadlocked at design and implementation • Some trainees didn’t have experience of programming • Little time for analysis • cause • Mismatching between training level and trainee’s skill level • Especially, design and implementation were difficult for the trainees We used Rose as development tool, with which implementation is necessary
Kaizen1 in 2003: using BridgePoint • Changed development tool • Switched from Rose to BridgePoint • With BridgePoint, design and implementation is not necessary
Result in 2003 • Speed up of development rate of achievement of total groups • Had a lot of time for analysis UP! UP! But some groups could not achieve additional function2
Problem in 2003 • problem • Not best progress • Couldn’t separate semantics • pathfinder and device • Model quality varied depending on each group • cause • Didn’t lecture the concept of domain • Concept of domain and bridge was not understood well • Lack of quality management • Couldn’t take hold of each group
Kaizen2 in 2004: lecture the concept of domain • Added the concept of domain lecture to program • Increased training days, lecture and exercise
Problem in 2003 • problem • Not best progress • Couldn’t separate semantics • pathfinder and device • Model quality varied depending on each group • cause • Didn’t lecture the concept of domain • Concept of domain and bridge was not understood well • Lack of quality management • Couldn’t take hold of each group
Kaizen3 in 2004: Iteration evaluation review • Iteration evaluation review • Review for outputs in each iteration • We can take hold of each group’s status and quality of outputs. • Late group can increase the speed by doing some review intensively
Result in 2004 • All groups achieved all functions! • Could shift the semantics • Developed the models in excess of a certain level rate of achievement of total groups
Comments from trainee • Satisfaction level No data
We accomplished the purpose • Aware of the fun in developing embedded software • All groups achieved all functions • Aware of the base of OO thinking • Focused on analysis • Could shift the semantics • Developed the models in excess of a certain level
What we learned about education • Take care of trainee’s skill level ! • Newly hired employees may not have implementation skill • Focus OO thinking ! • Take a lot of time to analyze • Beginners cannot separate semantics • Make trainees be fun to develop software ! • Rapid development BridgePoint is an excellent tool for education and future development
Thank you for listening!Case Example of Applying BridgePoint to OO Development Training Shohei KUKI Ricoh Company, LTD.