Agile2011 Session
Agile Education by Object Game
Most HISSATSU Way to understand it.
This session has an another article, Object Card. please download with it
Behaviour Driven Development (BDD) is an approach than encourages teams and stakeholders in general to reason about requirements in terms of “executable specifications”, and focus on implementing features with demonstrable business value. BDD is more than just a development technique: in fact, it introduces a whole new dynamic to interactions between team members and stakeholders, a dynamic that increases communication, improves productivity and reduces waste. Through ongoing conversations between business stakeholders and team members, a team applying BDD principles will explore the business goals, capabilities and behaviour that the stakeholders need. They then propose features that the system will need to deliver these capabilities, and use concrete examples and counter-examples to explore and understand these features more fully. In this talk, you will learn about the principles and benefits of BDD for the whole team, how BDD works in practice, and how it affects the various team members in a project. Finally, you will discover the relationship between behavior driven development and automated acceptance testing.
Developing a software project is definitely not like building a house. If you focus on the learning aspects instead of the simple building you'll probably discover something interesting and unexpected.
Behaviour Driven Development (BDD) is an approach than encourages teams and stakeholders in general to reason about requirements in terms of “executable specifications”, and focus on implementing features with demonstrable business value. BDD is more than just a development technique: in fact, it introduces a whole new dynamic to interactions between team members and stakeholders, a dynamic that increases communication, improves productivity and reduces waste. Through ongoing conversations between business stakeholders and team members, a team applying BDD principles will explore the business goals, capabilities and behaviour that the stakeholders need. They then propose features that the system will need to deliver these capabilities, and use concrete examples and counter-examples to explore and understand these features more fully. In this talk, you will learn about the principles and benefits of BDD for the whole team, how BDD works in practice, and how it affects the various team members in a project. Finally, you will discover the relationship between behavior driven development and automated acceptance testing.
Developing a software project is definitely not like building a house. If you focus on the learning aspects instead of the simple building you'll probably discover something interesting and unexpected.
UX Basics Workshop at General Assembly London by Tricia OkinTricia Okin
This workshop will help you think through your current sites and projects from your users' perspectives by physically mapping out their concerns in space. First we'll review the various techniques to gather user research, then practice them in groups, organize the issues and plan execution. We'll cover the following methods:
- Mind mapping Paper prototyping
- Narrowing down concepts to features and uses
- Talking to your users (targeted and off the cuff prototyping)
- Wireframing
This course is for people reviewing their current products who need address user issues or people who just need to integrate these techniques into their organizations. Students can expect to leave with some new paper prototyping skills, along with some apps and methodologies to translate to digital materials.
Essential Questions for using iPads in Education. What is the difference between transformative use and automated use of iPads in the classroom?
Six activities to try out as a teacher. Many apps to get teachers started in creating with their students. QR codes available to link to apps.
Learning Solutions 2011 #LS2011 presentation on Learner Experience Design. Address what instructional design can learn from Ux (User Experience Design).
This slideshow is a PDF export of a presentation given to tech leaders in Montreal. It was focused on the effective use of interactive whiteboard technology. This slideshow is not interactive itself, just a series of still slides.
Similar to Agile2011-Agile Education by Object Game (20)
A New Business Model of Custom Software Development For Agile Software Develo...Tsuyoshi Ushio
Successful business model of custom software for agile development.
22nd ACM SIGSOFT International Symposium on Foundations of Software Engineering
November 16-21, 2014, Hong Kong
Easy to add, hard to remove. It is the case in many situations including software development, process improvements etc. How we can stay lean eliminating unnecessaries and be agile? We’ll explore the solutions with pattern mining workshop sessions. Stay Lean, Be Agile!
AgileRoots 2014
This slide is for Ultimate Agilist Tokyo in Japan. 2012.Nov.
I want to think about agile programmer's skill set. and I want to introduce ICAgile to Japan.
I analyzed agile value, principles, practices and ICAgile.
and participant members created some mandatory skill set in this session.
See this blog entry , that will be better.
http://simple-architect.blogspot.jp/2012/11/agile-programmers-skill-set-ultimate.html
About Agile Programmer's skill sets
Ultimate Agilist Tokyo 2012
This presentation will be used tomorrow. after that session I have a plan to update this slide.
DevOps and Testing slides at DASA ConnectKari Kakkonen
My and Rik Marselis slides at 30.5.2024 DASA Connect conference. We discuss about what is testing, then what is agile testing and finally what is Testing in DevOps. Finally we had lovely workshop with the participants trying to find out different ways to think about quality and testing in different parts of the DevOps infinity loop.
Threats to mobile devices are more prevalent and increasing in scope and complexity. Users of mobile devices desire to take full advantage of the features
available on those devices, but many of the features provide convenience and capability but sacrifice security. This best practices guide outlines steps the users can take to better protect personal devices and information.
zkStudyClub - Reef: Fast Succinct Non-Interactive Zero-Knowledge Regex ProofsAlex Pruden
This paper presents Reef, a system for generating publicly verifiable succinct non-interactive zero-knowledge proofs that a committed document matches or does not match a regular expression. We describe applications such as proving the strength of passwords, the provenance of email despite redactions, the validity of oblivious DNS queries, and the existence of mutations in DNA. Reef supports the Perl Compatible Regular Expression syntax, including wildcards, alternation, ranges, capture groups, Kleene star, negations, and lookarounds. Reef introduces a new type of automata, Skipping Alternating Finite Automata (SAFA), that skips irrelevant parts of a document when producing proofs without undermining soundness, and instantiates SAFA with a lookup argument. Our experimental evaluation confirms that Reef can generate proofs for documents with 32M characters; the proofs are small and cheap to verify (under a second).
Paper: https://eprint.iacr.org/2023/1886
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...James Anderson
Effective Application Security in Software Delivery lifecycle using Deployment Firewall and DBOM
The modern software delivery process (or the CI/CD process) includes many tools, distributed teams, open-source code, and cloud platforms. Constant focus on speed to release software to market, along with the traditional slow and manual security checks has caused gaps in continuous security as an important piece in the software supply chain. Today organizations feel more susceptible to external and internal cyber threats due to the vast attack surface in their applications supply chain and the lack of end-to-end governance and risk management.
The software team must secure its software delivery process to avoid vulnerability and security breaches. This needs to be achieved with existing tool chains and without extensive rework of the delivery processes. This talk will present strategies and techniques for providing visibility into the true risk of the existing vulnerabilities, preventing the introduction of security issues in the software, resolving vulnerabilities in production environments quickly, and capturing the deployment bill of materials (DBOM).
Speakers:
Bob Boule
Robert Boule is a technology enthusiast with PASSION for technology and making things work along with a knack for helping others understand how things work. He comes with around 20 years of solution engineering experience in application security, software continuous delivery, and SaaS platforms. He is known for his dynamic presentations in CI/CD and application security integrated in software delivery lifecycle.
Gopinath Rebala
Gopinath Rebala is the CTO of OpsMx, where he has overall responsibility for the machine learning and data processing architectures for Secure Software Delivery. Gopi also has a strong connection with our customers, leading design and architecture for strategic implementations. Gopi is a frequent speaker and well-known leader in continuous delivery and integrating security into software delivery.
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfPaige Cruz
Monitoring and observability aren’t traditionally found in software curriculums and many of us cobble this knowledge together from whatever vendor or ecosystem we were first introduced to and whatever is a part of your current company’s observability stack.
While the dev and ops silo continues to crumble….many organizations still relegate monitoring & observability as the purview of ops, infra and SRE teams. This is a mistake - achieving a highly observable system requires collaboration up and down the stack.
I, a former op, would like to extend an invitation to all application developers to join the observability party will share these foundational concepts to build on:
UiPath Test Automation using UiPath Test Suite series, part 6DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 6. In this session, we will cover Test Automation with generative AI and Open AI.
UiPath Test Automation with generative AI and Open AI webinar offers an in-depth exploration of leveraging cutting-edge technologies for test automation within the UiPath platform. Attendees will delve into the integration of generative AI, a test automation solution, with Open AI advanced natural language processing capabilities.
Throughout the session, participants will discover how this synergy empowers testers to automate repetitive tasks, enhance testing accuracy, and expedite the software testing life cycle. Topics covered include the seamless integration process, practical use cases, and the benefits of harnessing AI-driven automation for UiPath testing initiatives. By attending this webinar, testers, and automation professionals can gain valuable insights into harnessing the power of AI to optimize their test automation workflows within the UiPath ecosystem, ultimately driving efficiency and quality in software development processes.
What will you get from this session?
1. Insights into integrating generative AI.
2. Understanding how this integration enhances test automation within the UiPath platform
3. Practical demonstrations
4. Exploration of real-world use cases illustrating the benefits of AI-driven test automation for UiPath
Topics covered:
What is generative AI
Test Automation with generative AI and Open AI.
UiPath integration with generative AI
Speaker:
Deepak Rai, Automation Practice Lead, Boundaryless Group and UiPath MVP
GraphRAG is All You need? LLM & Knowledge GraphGuy Korland
Guy Korland, CEO and Co-founder of FalkorDB, will review two articles on the integration of language models with knowledge graphs.
1. Unifying Large Language Models and Knowledge Graphs: A Roadmap.
https://arxiv.org/abs/2306.08302
2. Microsoft Research's GraphRAG paper and a review paper on various uses of knowledge graphs:
https://www.microsoft.com/en-us/research/blog/graphrag-unlocking-llm-discovery-on-narrative-private-data/
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...DanBrown980551
Do you want to learn how to model and simulate an electrical network from scratch in under an hour?
Then welcome to this PowSyBl workshop, hosted by Rte, the French Transmission System Operator (TSO)!
During the webinar, you will discover the PowSyBl ecosystem as well as handle and study an electrical network through an interactive Python notebook.
PowSyBl is an open source project hosted by LF Energy, which offers a comprehensive set of features for electrical grid modelling and simulation. Among other advanced features, PowSyBl provides:
- A fully editable and extendable library for grid component modelling;
- Visualization tools to display your network;
- Grid simulation tools, such as power flows, security analyses (with or without remedial actions) and sensitivity analyses;
The framework is mostly written in Java, with a Python binding so that Python developers can access PowSyBl functionalities as well.
What you will learn during the webinar:
- For beginners: discover PowSyBl's functionalities through a quick general presentation and the notebook, without needing any expert coding skills;
- For advanced developers: master the skills to efficiently apply PowSyBl functionalities to your real-world scenarios.
Pushing the limits of ePRTC: 100ns holdover for 100 daysAdtran
At WSTS 2024, Alon Stern explored the topic of parametric holdover and explained how recent research findings can be implemented in real-world PNT networks to achieve 100 nanoseconds of accuracy for up to 100 days.
Maruthi Prithivirajan, Head of ASEAN & IN Solution Architecture, Neo4j
Get an inside look at the latest Neo4j innovations that enable relationship-driven intelligence at scale. Learn more about the newest cloud integrations and product enhancements that make Neo4j an essential choice for developers building apps with interconnected data and generative AI.
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024Neo4j
Neha Bajwa, Vice President of Product Marketing, Neo4j
Join us as we explore breakthrough innovations enabled by interconnected data and AI. Discover firsthand how organizations use relationships in data to uncover contextual insights and solve our most pressing challenges – from optimizing supply chains, detecting fraud, and improving customer experiences to accelerating drug discoveries.
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...Neo4j
Leonard Jayamohan, Partner & Generative AI Lead, Deloitte
This keynote will reveal how Deloitte leverages Neo4j’s graph power for groundbreaking digital twin solutions, achieving a staggering 100x performance boost. Discover the essential role knowledge graphs play in successful generative AI implementations. Plus, get an exclusive look at an innovative Neo4j + Generative AI solution Deloitte is developing in-house.
Monitoring Java Application Security with JDK Tools and JFR Events
Agile2011-Agile Education by Object Game
1. tand it.
AY to Undes
SATSU W
Most HiS
Agile Education
by Object Game
Tsuyoshi Ushio
www.takumi-businessplace.co.jp
2. Tsuyoshi Ushio
v Consultant, Samurai of Agile
v Agile, OO, Business Analysis , Project Manager
v 2001 - 2005 Agile Programmer, PM , Join Community(XP-Jug in Japan)
v 2003 Agile2003, wrote OO/Agile Best Seller Book in Japan
v 2006 - 2009 Consultant
v 2009 CEO of SimpleArchitect
v 2011 Established E-Agility(Community)
v Vocalist of Za Michael.
www.takumi-businessplace.co.jp
3. The mean of “HISSATSU”
Mondo Nakamura
HISSATSU
Osaka no Obachan
Samurai Term.
If you use HISSATSU technique, you’ll always kill the enemy.
Extremely effective.
http://jitekichi.blog26.fc2.com/blog-entry-872.html
http://ansaikuropedia.org/wiki/ _
www.takumi-businessplace.co.jp
4. Agenda
v Why Object-oriented needed for agile? (20 min)
v How to obtain Object Brains with Object Game?(60min)
v Reflect of the Object Game(10min)
v Appendix
www.takumi-businessplace.co.jp
5. Why Object Oriented is needed for Agile?
Embrace Change!
Evolutionary Design
TDD, Refactoring
Continuous Integration
Object Oriented
Iteration
Mechanism
But , some people never understand it.
Communication
:
www.takumi-businessplace.co.jp
6. Why some people couldn’t understand OO?
v No Time
v Fear of OO
v Threshold
www.takumi-businessplace.co.jp
7. Learning carve of Object Oriented
Skill
Awareness
Object Brain
Join OO Project
First BIG
Awareness of OO
Learners can’t feel
progress before Threshold
First BIG
Awareness
Time
Obtain Object Brains!
www.takumi-businessplace.co.jp
8. What is Object Brain?
v Learner can imagine Behavior and Role
of OO
v Learner can grab OO concepts and
implementations
v Learner can feel the merit of OO
v A-Ha!
Object Game is the solution!
www.takumi-businessplace.co.jp
9. A-Ha
Learner can feel
“Oh! Finally I’ve got an object oriented brain!”
www.takumi-businessplace.co.jp
10. Object Game
v Simple and effective
v Goal is to understand real Application.
v If you understand that’s overview of role
and behavior, stage cleared. No details.
v No Cording
v Has been created since 2006
Just do it!
www.takumi-businessplace.co.jp
11. Game Process
How to play Object Game
Prepare a pencil, eraser and real app.
By default, A person
per a card
Place the cards But allow to have
multi cards.
Take a part of a card
Execute real
applications.
Execute the program
If you don’t
understand it, repeat
Execute the scenarios by object game It 3times.
Listen to the
Compare the result explanation and
Feel the concept.
Copyright(C) 2009 Takumi Business Place Corporation All Rights Reserved.
www.takumi-businessplace.co.jp
12. First Step
Scenario
This is the “Command the Singer” program.
This program has a Manager class to command
he singer.
Setting and parts
Place the cards
Screen
Person B
Person A
Person C
Take a part of cards
Java
Manager
Singer
Execute it
Copyright(C) 2009 Takumi Business Place Corporation All Rights Reserved.
www.takumi-businessplace.co.jp
13. First Step Cards
Java Screen
Execute the class what name of the first parameter
Manager Singer
Person Role
Manager Role Manage “name” data
execute Manage “height” data name
instantiate Programmer and give it to the data Sleep
height
“name = “Michael”, height = 5.5” Display “(name) is
sleeping.”
Eat
Display “(name) is
sleeping.”
Copyright(C) 2009 Takumi Business Place Corporation All Rights Reserved.
www.takumi-businessplace.co.jp
14. HISSATSU example to obtain Object Brain!
v Experience Polymorphism, instantiate,
behavior, inheritance and encapsulation.
v Experience “exception”.
v Experience “change”.
v Learner can feel real application.
v and OOP Merits.
This example cover these!
www.takumi-businessplace.co.jp
15. President commands “stand up!”
Situation
Brand new Employee , Tommy
Mid-Level Employee, Michael
Experienced Employee, Steve
will stand up.
President realize Stand up
All of them are Employees.
that the man is his
employee.
Stand up but it has different style.
Brand new Employee : Just Stand up
Mid-Level Employee : Quickly Standup
Experienced Employee : Slowly Standup
President
Waiting room
Copyright(C) 2009 Takumi Business Place Corporation All Rights Reserved.
www.takumi-businessplace.co.jp
16. President command “Stand up!” Step1
Scenario
Let’s understand this Application
No such a level of an employee.
Position and Role Person C
Employee Factory
Screen
Person A
Person B
Java
President
Employee
Person D
BradNewEmploye MidLevelEmploye ExperiencedEmpl
e(Employee)
e(Employee)
oyee(Employee)
Copyright(C) 2009 Takumi Business Place Corporation All Rights Reserved.
www.takumi-businessplace.co.jp
17. President command “Stand up!” Step2
> java President new 100
Scenario A brand new employee just stands up!
Add a new function Employee's salary is 100yen.
>java President mid 100
Brand New Employee A mid-level employee quickly stands up!
salary = base Salary.
Mid-Level Employee
Employee's salary is 201yen.
salary = base Salary x 2 + 1 > java President exp 100
Experienced Employee
salary = base Salary x 3
A experienced employee slowly stands up!
Employee's salary is 300yen.
Position and Role Person C
Employee Factory
Screen
Person A
Person B
Java
President
Employee
Person D
BradNewEmploye MidLevelEmploye ExperiencedEmpl
e(Employee)
e(Employee)
oyee(Employee)
Copyright(C) 2009 Takumi Business Place Corporation All Rights Reserved.
www.takumi-businessplace.co.jp
18. President command “Stand up!” Step3
> java President new 100
Scenario A brand new employee just stands up!
Employee's salary is 100yen.
Quiz How to add this
function? >java President mid 100
A mid-level employee quickly stands up!
Employee's salary is 201yen.
Brand New Employee >java President exp 100
salary = base Salary. A experienced employee slowly stands up!
Mid-Level Employee Employee's salary is 300yen.
salary = base Salary x 2 + 1
Experienced Employee
salary = base Salary x 3 >java President snr 100
Senior-Level Employee A senior-level employee wearily stands up!
salary = base Salary x 4 + 2
Position and Role
Copyright(C) 2009 Takumi Business Place Corporation All Rights Reserved.
www.takumi-businessplace.co.jp
19. President command “Stand up!” Step3
> java President new 100
Scenario A brand new employee just stands up!Employee's
salary is 100yen.
This is it.
>java President mid 100
A mid-level employee quickly stands up!Employee's
Brand New Employee
salary is 201yen.
salary = base Salary.
Mid-Level Employee >java President exp 100
salary = base Salary x 2 + 1 A experienced employee slowly stands up!
Experienced Employee Employee's salary is 300yen.
salary = base Salary x 3
Senior-Level Employee
>java President snr 100
salary = base Salary x 4 + 2
A senior-level employee wearily stands up!
Employee’s salary is 402yen.
Position and Role
Employee Factory
Screen
Java
President
Employee
BradNewEmploye MidLevelEmploye ExperiencedEmpl Senior-Level
e(Employee)
e(Employee)
oyee(Employee)
Employee(Employee)
Copyright(C) 2009 Takumi Business Place Corporation All Rights Reserved.
www.takumi-businessplace.co.jp
20. President command “Stand up!” Step4
Scenario >java President new 100 >java President exp 100
A brand new employee just stands up! A experienced employee slowly stands up!
Add function Employee‘s salary is 100yen. Employee's salary is 300yen.
Employee’s Bonus is 300yen. Employee’s Bonus is 300yen.
Calculate bonus
>java President mid 100 >java President snr 100
A mid-level employee quickly stands up! A senior-level employee wearily stands up!
Employee's salary is 201yen. Employee’s salary is 402yen.
Employee’s Bonus is 300yen. Employee’s Bonus is 300yen.
Position and Role
Employee Factory
Screen
Java
President
Employee
BradNewEmploye MidLevelEmploye ExperiencedEmpl Senior-Level
e(Employee)
e(Employee)
oyee(Employee)
Employee(Employee)
www.takumi-businessplace.co.jp
21. Point of making Object Brain
v Experience and Explain
v Observe them
v Don’t be too strict.(like baby learning)
www.takumi-businessplace.co.jp
22. Results of the Object Game
v Learner can easily understand OO based
technique
v Can experience and feel OO and patterns.
v Can understand an architecture.
v No coding and Fast!
http://store.shopping.yahoo.co.jp/sincere-inc/shuriken.html
www.takumi-businessplace.co.jp
23. Do you understand it? nd e
nd it
rsta e
v
an u on’t ha
sc yd
ner g.
Lear n if the of codin
Eve rience
<XML> <XML>
expe
struts-config.xml
web.xml
Request from browser
Table
http://localhost:8080/sample/LoginAction.do
Tomcat user_id :Yoda
user_name:Tomoo
Login Form
password sennuki
Login
Controller
User
user
pass
User
login
Action
Service
login.jsp
User
DAO
menu
.jsp LoginAction
Hello! ViewAction
User table
Tomoo!
Object
Game Learners can understand it in 4 hours.
www.takumi-businessplace.co.jp
24. Results of the Object Game
v Learner can easily understand OO based
technique
v Can experience and feel OO and patterns.
v Can understand an architecture.
v No coding and Fast!
v Learner thinks “finally, I can handle the
Object Oriented!”
www.takumi-businessplace.co.jp
25. Side Effects Story
Gain Motivation!
Reduce Fear!
I can handle it!
I can understand!
Side Effects
Learner gets
Object Brain
www.takumi-businessplace.co.jp
26. Thanks for enjoying this session!
If you want to get an object brain, please talk to me after this session.
I’ll do this method for you in this conference.
Tsuyoshi Ushio ( )
Twitter :@sandayuu
E-mail : ushio@simplearchitect.com
www.takumi-businessplace.co.jp
27. The rule of the Object Game.
APPENDIX
www.takumi-businessplace.co.jp
28. Unit of program
Class
Small piece of a program. Represented by a card in this game.
Divided by Responsibility
Template of instance
Just Experience It!
A class is a collection of objects. Class Name
Ex. Product, Order, etc… Person Attribute
Responsibility of Represent Person name
class
Manage “name” data height
Manage “height” data
sleep
Display “(name) is Class Role
sleeping.”
eat
behavior
Copyright(C) 2009 Takumi Business Place Corporation All Rights Reserved.
www.takumi-businessplace.co.jp
29. Rule
Instantiate(new)
Before you ask a work to class, make instance from class.
Instance Card
Class Card
1:Person
Person Person Role
Manage “name” data name
Michael
Manage “height” data
Person Role height
5.11
Sleep Unique number
name
Display “(name) is (Address)
Manage “name” data
sleeping.”
Manage “height” data height
Sleep Eat 2:Person
Display “(name) is
sleeping.”
Eat
Person Role
name
Stevie
Manage “name” data
Manage “height” data height
6.00
Sleep
Display “(name) is
sleeping.”
www.takumi-businessplace.co.jp
30. Non Class Card
Runtime, Configuration File, others.
Runtime , screen , configuration files .. become cards.
Name of Application
Execute the first attribute name’s class.
Screen
Michael is sleeping.
Behavior
Write it by pencil.
www.takumi-businessplace.co.jp
31. Message Patterns
v Send Message
q No parameter pattern
Tap the card owner’s shoulder
Stand up!
Point your own card.
Copyright(C) 2009 Takumi Business Place Corporation All Rights Reserved.
www.takumi-businessplace.co.jp
32. Message Patterns
v Send Message
q With parameters
Give me a Employee!
This is an experienced
Order the job with Post-it. Employee, OK?
Copyright(C) 2009 Takumi Business Place Corporation All Rights Reserved.
www.takumi-businessplace.co.jp
33. Message Patterns
v Send Message
q With an Instance
Pass the person with
card.
Pass the card
Order with passing the card. Order with passing the person.
Copyright(C) 2009 Takumi Business Place Corporation All Rights Reserved.
www.takumi-businessplace.co.jp
34. Inheritance
Ex. Brand new Employee, Mid-Level Employee and Experienced Employee Are an Employee
Interface Employee
Abstract class
Or Class
Represent an
Employee
You can write abstract method. standup
Manage
“baseSalary”
GetSalary
Shows Is-a releation
BrandNewEmployee Employee MidLevelEmployee(Employee) ExperiencedEmployee(Employee)
Represent a brand new Represent a mid-level Represent an experienced
Employee Employee Employee
standup standup standup
getSalary
getSalary getSalary
You don’t need to write
Superclass method in
the concrete class methods
NOTICE: This example is not a good model for OO-Modeling. See Baby Learning Section.
www.takumi-businessplace.co.jp
35. Polymorphism image Mr.B
President
Employee
EmployeeFactory
Point the cards
Mr.C
Mrs.A BrandNew Emp
Mid Emp
Exp Emp
Instantiate
Instantiate Mid-Level Employee
Return Mid-Level Employee ( Employee )
Mr.C hide Mid-Level Employee card from
Others and point the Employee card.
Mr.B returns Mr.C with cards to Mrs.A
Mrs.A realize Mr.C as an Employee.
Mrs.A dosen’t realize Mr.C as
a mid-level employee.
Copyright(C) 2009 Takumi Business Place Corporation All Rights Reserved.
www.takumi-businessplace.co.jp
36. Exception
Object Game can represent the exceptions.
Just throw and catch it!
Pass the Exception card
If card has not
Role to catch it,
throw it to caller
Throw the
Exception Exception
Exception
Java
President
EmployeeFactory
Catch the Exception
Java can catch it. President has
Process the no role to catch it
Exception!
Copyright(C) 2009 Takumi Business Place Corporation All Rights Reserved.
www.takumi-businessplace.co.jp
37. Rule
References
employees belongs to a division.
2:Employee
1:Division
3:Employee
Division Role name
Stevie
employees
2
3
Manage “name” data
Manage “code” data Manage “sales” data
Employee sales
Role 1,000,000
Manage “name” data
code
name
Stevie
SL01 Manage “name” data
add(Employee) Manage “sales” data sales
name
1,000,000
sales
calcTotalSalary
www.takumi-businessplace.co.jp