Presentation is loading. Please wait.

Presentation is loading. Please wait.

Private and Confidential – February 2003 This presentation and the information contained within are the property of GLO Ltd 1 GLO Ltd.

Similar presentations


Presentation on theme: "Private and Confidential – February 2003 This presentation and the information contained within are the property of GLO Ltd 1 GLO Ltd."— Presentation transcript:

1 Private and Confidential – February 2003 This presentation and the information contained within are the property of GLO Ltd 1 GLO Ltd

2 Private and Confidential – February 2003 This presentation and the information contained within are the property of GLO Ltd 2 Company Introduction UK Domiciled Company 4 Employees o Henk Bakker - technical support, documentation o Bill Pearson - technical lead o Michael Tanaka - operations, marketing o Pat Togia – HCI specialist Patents Pending Smart grant for innovation awarded Privately Funded

3 Private and Confidential – February 2003 This presentation and the information contained within are the property of GLO Ltd 3 Why We’re Here Soliciting Partnerships o Commercial Pilot Project Development Technology Licensing o Academic Research Technology validation o Investment In kind Capital injection

4 Private and Confidential – February 2003 This presentation and the information contained within are the property of GLO Ltd 4 Market Background Design and implementation of real-time, embedded/reactive software o Large Market – IDC estimates $1 trillion/yr o Diverse Products - 4 bit micro controller to fully automated factory process control. o Attractive Customers – Consumer Electronics, Telecoms, Military etc o Primary Implementers - Developers, Designers and Systems Architects

5 Private and Confidential – February 2003 This presentation and the information contained within are the property of GLO Ltd 5 Embedded Characteristics Of Systems: o Timeliness - real time and reactive o Resource fixed – minimal spec hardware requires efficient code o Resilient & Crash resistant – failsafe build with no reboot o Critical Roles – can be life or death roles in medicine, transport etc Of Projects: o Big Budgets – can be 1mln+ copies made or a $10bln project o Success Predicated on – time to market and rapid product evolution

6 Private and Confidential – February 2003 This presentation and the information contained within are the property of GLO Ltd 6 Why Design? Design increases… o Quality – Reducing errors o Speed – Delivery and modification o Testability – Simulation and characteristic Everyone does it, sort of… o Design in your head – unlikely to work for 1 person o Design on paper – usually done after development o Design on computer – designed and forgotten What’s the matter with software design tools? o Proprietary UIs and semantics o Niche product usage o Not end to end, and back again

7 Private and Confidential – February 2003 This presentation and the information contained within are the property of GLO Ltd 7 Go Charge Finding Empty Litter Pick Up Litter Go Dispose Pick Up Litter Go Charge Found Litter Picked Up Litterbot is a fictional robot that tidies up litter A State Transition Diagram (STD) showing the states of LitterBot and associated transitions o The system is always in one state, lets start with Finding o An event determine & initiates a transitions, dependant on the current state o If Litterbot runs out of power, all original states transition to Go Charge State Transition Diagram Picked Up Found Litter Arrived Full Empty Pwr Low Recharge Batteries Recharged Arrived Finding

8 Private and Confidential – February 2003 This presentation and the information contained within are the property of GLO Ltd 8 Collecting Recharged Pwr Low State Charts Simplify Found Litter Picked Up Found Litter Arrived Full Empty Arrived FindingEmpty Litter Pick Up LitterGo Dispose Recharge Batteries Go Charge Introducing hierarchy for clarity o The Collecting (litter) wraps up the four lower level states. Now a single Power low transition suffices. o Finding is the initial state within Collecting, started whenever Collecting is entered, in this instance by Recharged. o This introduces hierarchy which is widely understood manage complexity Recharged

9 Private and Confidential – February 2003 This presentation and the information contained within are the property of GLO Ltd 9 Active OperatingAdvancingOperatingAdvancing Collecting Pwr Low Found LitterPicked Up Arrived Full Empty Arrived FindingEmpty Litter Pick Up LitterGo Dispose Recharge Batteries Go Charge Recharged Collecting Pwr Low Found LitterPicked UpFound Litter Arrived Full Empty Arrived FindingEmpty Litter Pick Up LitterGo Dispose Recharge Batteries Go Charge Recharged State Charts Simplify Arrived Stopped Moving To Introducing parallelism to control permutations o To find & dispose of litter and charge itself, LitterBot needs to move around searching until it receives a change of target o This parallel behaviour is now labelled Advancing and separated from the original behaviour, Operating, by a dotted line o Initial states are defined and Active becomes the superstate

10 Private and Confidential – February 2003 This presentation and the information contained within are the property of GLO Ltd 10 Empty Litter Moving Recharge Bat Moving Empty Litter Moving Recharge Bat Moving Complexity and Multiplicity become a problem o Multiply out all permutations of states o Label all transitions…and you have a mess with no similarity to the Litterbot But why? Take it back to STD Finding Moving Finding Stopped Go Charge Stopped Pick up litter Moving Pick up litter Stopped Go Dispose Moving Go Dispose Stopped Empty Litter Stopped Recharge Bat Stopped Go Charge Moving, then eliminate any invalid states

11 Private and Confidential – February 2003 This presentation and the information contained within are the property of GLO Ltd 11 Active OperatingAdvancing Collecting Pwr Low Found LitterPicked Up Arrived Full Empty Arrived FindingEmpty Litter Pick Up LitterGo Dispose Recharge Batteries Go Charge Recharged Collecting Pwr Low Found LitterPicked UpFound Litter Arrived Full Empty Arrived FindingEmpty Litter Pick Up LitterGo Dispose Recharge Batteries Go Charge Recharged Arrived Stopped Moving To And it gets worse… Our problem can spiral geometrically out of control o Consider when Litterbot loses its traction or falls over o This situation is easily modeled with an external state called Belly Up Belly Up RightedLost Traction

12 Private and Confidential – February 2003 This presentation and the information contained within are the property of GLO Ltd 12 Back to our STD Finding Moving Finding Stopped Go Charge Stopped Pick up litter Moving Pick up litter Stopped Go Dispose Moving Go Dispose Stopped Empty Litter Stopped Recharge Bat Stopped Go Charge Moving What was once ugly becomes Untenable (even without the labels!) Belly Up

13 Private and Confidential – February 2003 This presentation and the information contained within are the property of GLO Ltd 13 State chart benefits over STD Hierarchy o Scopes and simplifies transitions o Easy to add behaviour Parallel o Add parallel threads without disturbing original specification o Result remains comprehensible and elegant. Best possible fit to problem form o Intuitive understanding of the abstract design o Aids in traceability between the model and reality So how do we implement State Charts?

14 Private and Confidential – February 2003 This presentation and the information contained within are the property of GLO Ltd 14 Arrived Charged Power Low ArrivedFullFound Done Finding To Arrived Traction Lost Righted Arrived Charged Power Low ArrivedFullFound Done Finding To Arrived Traction Lost Righted Litterbot Active AdvancingOperating Hierarchy of states State charts represent an extended hierarchy of parallel as well as exclusive branches o The tree represents the structure of the state chart with Litterbot at the top o Active is the container for two parallel behaviours – Operating and Advancing o Litterbot, Operating, Advancing and Collection Litter all have exclusive sub- states or branches Belly Up Collecting Litter Empty Litter Go Dispose Pick Up Litter Finding Recharge Batteries Go ChargeStoppedMoving Active AdvancingOperating Advancing Collecting Litter Operating Let’s not forget the transitions! The event Arrived can be handled in three distinct places within the tree The implementation matches the event to the current state and determines what should happen next.

15 Private and Confidential – February 2003 This presentation and the information contained within are the property of GLO Ltd 15 Active Active OperatingAdvancingOperatingAdvancing An example –Pwr Low Collecting Found LitterPicked Up Arrived Full Arrived Finding Empty Litter Pick Up LitterGo Dispose Recharge Batteries Go Charge Recharged Arrived Stopped Moving To Collecting Belly Up Righted Pwr Low Empty To Lost Traction Litterbot is currently Stopped and Emptying Litter o There 2 active states Lost Traction To Pwr Low Empty and 4 transitions possible, 4 active superstates

16 Private and Confidential – February 2003 This presentation and the information contained within are the property of GLO Ltd 16 Arrived Charged Power Low ArrivedFullFound Done Finding To Arrived Traction Lost Righted Arrived To Litterbot Active AdvancingOperating Belly Up Collecting Litter Empty Litter Go Dispose Pick Up Litter Finding Recharge Batteries Go ChargeStopped Moving Arrived Charged Power Low ArrivedFullFound Done Finding To Arrived Traction Lost Righted Arrived To Litterbot Active AdvancingOperating Belly Up Collecting Litter Empty Litter Go Dispose Pick Up Litter Finding Recharge Batteries Go Charge Stopped Moving Hierarchical transformation The current state is a hierarchical marking of the tree o Valid events can occur at any one of 4 points o Pwr Low event matched to currently active state of Collecting Litter o Exit Actions must be executed up to the highest common state, Operating o Implementation must assert new hierarchial state and execute entry code Power Low

17 Private and Confidential – February 2003 This presentation and the information contained within are the property of GLO Ltd 17 Implementation is worthwhile State based formalisms model dynamic systems o Such systems are ubiquitous and vital State Charts transform State Diagrams o Analysis of complex systems becomes easy State Charts are ideal for design, test and simulation o Direct execution, would lead to effortless implementation State Chart execution is a complex problem o Find the appropriate transition, assert the new extended state o Multiple parallels, entry code, exit code to consider o Transition code execution on transitions o GLO has a proprietary solution that solves these problems

18 Private and Confidential – February 2003 This presentation and the information contained within are the property of GLO Ltd 18 Current ‘Solutions’ Hack it together in C or assembler. o No comment Analysis, design, implementation & test o An amalgam of separate and iterated steps o Labour intensive and poor quality o No coherency between steps o Impossible to read, write or modify final code High level formalism with code generation o Results in incomplete code ‘framework’ o Need go back to 2 nd solution to complete product o No contact with original model on further iterations o Cannot reverse engineer or modify

19 Private and Confidential – February 2003 This presentation and the information contained within are the property of GLO Ltd 19 Current Auto Code Gen ‘if’ and ‘switch’ statements o Slow o Bloated o Unreadable code Use State Transition Table o Represents ALL states and transitions o Quick, however… o Very resource hungry in complex system o Not maintainable

20 Private and Confidential – February 2003 This presentation and the information contained within are the property of GLO Ltd 20 What’s Important Rapid Generation of high quality code o Direct from design to run-time without errors o Determines success of new product Ease of understanding and modification o One-to-One mapping - problem to solution o Determines profitability of product line Efficient run-time code o Speed and Size are optimal o Determines resource usage Elegant and powerful mechanism o Easy to implement o Determines actual usage

21 Private and Confidential – February 2003 This presentation and the information contained within are the property of GLO Ltd 21 GLO’s Technologies allow- Full Implementation of Harrel state charts Generation of ultra efficient run time code Reverse engineering from code back to design Iterative development Flexible and maintainable software OO style state chart inheritance The reduction of structural errors The elimination of coding errors…

22 Private and Confidential – February 2003 This presentation and the information contained within are the property of GLO Ltd 22 ‘THE’ Solution - Has been implemented and can be delivered Is currently in three components: o C macro library o State chart compiler o An interactive run time engine. Can be integrated with o Software tool developers o Large embedded systems companies Can be modified and implemented o For any hardware and software platform o For any software design semantics

23 Private and Confidential – February 2003 This presentation and the information contained within are the property of GLO Ltd 23 Thanks For Your Time


Download ppt "Private and Confidential – February 2003 This presentation and the information contained within are the property of GLO Ltd 1 GLO Ltd."

Similar presentations


Ads by Google