click to play button
click to replay button
Throw the Switch on Rock Solid Embedded Systems - Flash (Medium) - 20110222 08.08.51PM
X
  1. Throw the Switch! on Kickass Embedded Applications
  2. Throw the Switch! on Kickass Embedded Applications
  3. An Introduction
  4. NOT
  5. An Introduction
  6. NOT
  7. Mike & Greg
  8. Instead
  9. An
  10. Embedded Software
  11. Moves
  12. Double-click to edit
  13. Nice City
  14. High Tech
  15. Starts Work Enthusiastically
  16. But, over the years...
  17. Double-click to edit
  18. Downsides to Embedded
  19. Not as Flexible as Other SW
  20. Limited Resources(Memory, CPU power, etc...)
  21. Hard Deadlines
  22. Culture(more EE than SW)
  23. There’s not many ways to handle such a situation
  24. High Tech
  25. High Tech
  26. There MUST be others... RIGHT?!?
  27. High Tech
  28. Developed
  29. Tools
  30. Community
  31. Like-Minded
  32. That’s what this presentation is about
  33. Mike & Greg
  34. C
  35. Not really OO
  36. Static
  37. Ruby
  38. Dynamic
  39. Power!
  40. Now what??
  41. Test Harnessing
  42. Assertions
  43. Unity
  44. Ruby to the Rescue!
  45. Grows Test Suites
  46. Eliminates Waste
  47. Double-click to edit
  48. But we are developing a system?
  49. Interactions
  50. Mock Objects
  51. CMock
  52. Interfaces
  53. Header Files
  54. Double-click to edit
  55. Ruby does the work...
  56. Link-time Binding
  57. Mocks Functions
  58. Creates Helper Methods
  59. Verifies Interactions
  60. Double-click to edit
  61. Empowers Tests
  62. Validate Error Handling
  63. Double-click to edit
  64. For REAL Functions
  65. ??????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????
  66. For REAL Functions
  67. Double-click to edit
  68. For REAL Functions
  69. ??????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????
  70. Error Handling
  71. Messy
  72. Hidden in Return Codes
  73. Interrupts Code Flow
  74. Nested Contraptions
  75. ??????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????
  76. CException
  77. Brings try/catch to C
  78. Supported by CMock
  79. ??????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????
  80. How do we wrangle all of this magic???
  81. ??????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????
  82. How do we wrangle all of this magic???
  83. Ceedling
00:00 / 00:00
CC
Copyright © 2011 Mike Karlesky, Mark VanderVoord, Greg Williams Copyright © 2011 Mike Karlesky, Mark VanderVoord, Greg Williams Double-click to edit Double-click to edit Double-click to edit Double-click to edit Double-click to edit Double-click to edit Double-click to edit Double-click to edit Double-click to edit Double-click to edit Double-click to edit Double-click to edit Double-click to edit Double-click to edit Double-click to edit Double-click to edit Double-click to edit Double-click to edit Double-click to edit Double-click to edit Double-click to edit Double-click to edit Double-click to edit Double-click to edit Double-click to edit Double-click to edit Double-click to edit Double-click to edit Double-click to edit Double-click to edit Double-click to edit Double-click to edit Double-click to edit Double-click to edit Double-click to edit Double-click to edit Double-click to edit Double-click to edit Double-click to edit Double-click to edit Double-click to edit Double-click to edit Double-click to edit Double-click to edit Double-click to edit Double-click to edit Double-click to edit Double-click to edit Double-click to edit Double-click to edit Double-click to edit Double-click to edit Double-click to edit Double-click to edit Double-click to edit Double-click to edit Double-click to edit Double-click to edit Double-click to edit Double-click to edit Double-click to edit Double-click to edit Double-click to edit Double-click to edit Double-click to edit Double-click to edit Double-click to edit Double-click to edit Double-click to edit Double-click to edit Double-click to edit Double-click to edit Double-click to edit Double-click to edit Double-click to edit Double-click to edit Double-click to edit Double-click to edit Double-click to edit Double-click to edit Double-click to edit
. . when I did . more one who . for you . . then . it's been brought . I want to get into it . the biggest fight of it . only . Robinson . why indeed . let . we . the room . . the and or we don't go we go . if you . Darren . the or . it is to eyes . and . while a result . or is a delay in an e Lots . . governor . do not stop unit were available . I will . we will use by everyone and what about the submitted a lot whole thing in the world . and she's eating . a little less able . so . . the the the . the author . . so on . . protected . if you love . it direction . . ok so . I'm not going to be of starting off introducing Mike and Greg . did the normal thing to do . instead the use them though . this is a guy who one would read to his doctor and so became a . had a good scientist the software Pentagon . that is the first group win so he says . since he looks around to need Agile EU moves to always . this booklet is that you know it's certainly conceivable that the tools needed to steal the NICU . High detective something like that . Team says elsewhere and is enthusiastic and getting us were confused learned all sorts of new things is looking to use all sorts of the tools and all sorts of stuff . it's slow to operate the years . he was on . Snowsill had been in those Double judges were so much any more . Scott a certain courage and our . really . it is the long run stopping smoking over here Instance is not as traders use to the slope . he's kind of rule as some downsides to give and go to work . and of stitches . if no one will dollars less for work . I was doing limited resources . if you Powered something like that it's defense got all this extra constraints of you people don't have . that is really hard deadlines . if you don't make it the hard work people are not paid or whoever home . culture is definitely more of the Agile interior kind of place and software once each . that means . we're talking about process and your identity talking about all the latest way to test your data thing like that you're just kind of . engineering Mr Douglas Wood Performing years and talented people . the true to her and when the animal sticky situation . basically you do need to be forgotten . he JoeDouble sky ready to edit and CTO the is always great Teams these guys off with his insane Double CCR . six years and maybe we don't know his critique of the code . this the guy which is the evidence saying two things to try every single in the talk was that was to try that is contrived IDEs can fix all problems . the details that are you to become that guy . this particular go up to competition the two . use the F Team Nazis try anything . sequence of the critical eye that sees burn Really one lot right . so all these years . Discovery other people all the religious right . Cleveland's all details . there are few . what then . though . though . smaller soft in default to the tools of the waltz this community . and so Job . don't the people that it's trying to improve the situation of them but software and so we editThat's school presentations can be about . though about going bald Owner is dressed it's going to be of Michael Greg so . . . then . . . after seventies . own . and what the meeting us in those FeatureSlide . this effort is sponsored by the talk I did it . recently . realize that there are significant differences . though . and so we took the initiative Team . stood up and didn't come Focus . software . realize that you can hire gymnast . effectively they can be read Development Leppitsch Development desktop software and that he gets students Team . it also Low BIG now a reality that . and to taste Team causes to work in sight . so we to this initiative . increasingly . and for me . Vision and the Epic invented solely focused . the silence tool . these tools by the eighty I or our free open source tools for you . and that . course . so I'll be used in treating On site three games for helping Process blitz . is that the tools we went to shit in the water Working . entries are those insanity . so when we get this open source . tools and other leader Mark to tell you the Team tribe was based on for the . so . . he starts three C . Medium Value rules Teams Most with the sun . relies investigators . this the language itself . as previously takes . Sydney tomorrow Testers carefully . . these tools are focused on doing Development NC . see here that really Story . on the second Establish . . France's and . patterns to me see three outdoor . Walton on the scene . so when we get these silly . sequence was Development invaded . indeed the general status . see what was is great for language . contrary list . it uses more memory and memory location . which in some industries does it . particular that . so we need to stick to C . he to overcome limitations . he said language . it's fully compiled down and doesn't have the flexibility . I will stick to one Team or even be the object oriented . facilities builds this the last four . well we've done . does . we brought Release to edit the film yes . for Embedded . Andrew we had an easy source tools . right when we are . a little in the back or to discuss that . this is for his tools and everything but get a . we will be a great friend of yours we Team Carol's the details so that have to worry . Unknown must feel to it upright . the Feature mentally he's tools in the building of more list to read all the details . wish me the most magical of the seats . he then editWhat . he sticky . drinks much power . so . our . we will see . we what we started doing it and invited development . we started in Britain tests to test the code . the sun was lot of them unless results in treating these tests . in the and treaties test suites from these test functions . and when the initial idea is most editRuby to the sparse her file gravel these functions and trade Estate alone executable . he teaches us sequence . so that's all what Ruby in that . credited with the bleach . Generate is as it means function and writing tests . so the results the top part is those Testing who text me . and the whole . . files and tests and the BBC today . the overall status issues . see this . in this bill and radiation . tools is to provide search . so the assertion barriers . Teams Team autumn Team check things happen right . so hit up the whole collection of surgeons . usually at some other Frameworks of four . for C Development . if anything it is . so we're Owner . any duty . so . it's in Texas City Unit test for her . I'm Use all business . Prior to go . sequence the spirit impact . you can even tailored to the star in the . . . to find out so . right . the Rescue . we hope Releases estimates about and worry about . tree decorations for our test functions . Billy using the Agile targets for Testing models the classes all in play and Execution rather than as a Pull CD . and as stated editHow book which he continues to fight Owner is all of these smart . you so . so the . we twenty eight weeks . extra time to spend list . . you get some game that it's expensive . is your table this time Team architects for her sweets but today . so we get the Story Map to . . Example so he is a question of mackerel is . . that said . go through and you can view these beauties insurgents the lives areas . Slide has . it's . wherever he Feature trainer Co expected . predators the act . this is not really a worthwhile tests . it's certain . the . so . the views of you can necessary Analyst . there will to stay here . and he had up . this slide . first you seem to this I decided itself . leisure . ends . he and others . words . . he . surgeons . Create status . QUESTIONS key to getting CTO . here detection and reporting that goes . . . developing a system . and . in the system is now test one . CNY . here's my top two other models . it just so he tried Team titled a lie . pretty nice contraptions and slapping incident to get it and I'll do we are the combinations and Trend Saito other models . so they can trigger conditions . we go first started . Testing real . internet age . besides those treaty . . tool the file them several similar patterns . and so that basically what we wanted Testers interactions between smile . seventy tons . mock objects . used my before . . now do this partly an event Development . especially and see . it should be . in the heat ghee the tools to make it happen so you know the season . Prior added to his new and seemingly . irrigation senior treated to the remodel that preaches airconditioned When and some tequila or stimulus . for a reason why to which he Team full control over . the interaction . the test . . the birds . see my . C silage and again . We uses Ruby . Team All generally consume us . a model the talk and see what is . . the interstates . to the modeling how are those interface is best . this the saddest . decorations . the league in between meetings Generate cannotDouble . he is all we need to know is whether the city Ensure that assumption is . whether to turn something with the user . so she goes Religious governs of this . Andes . senior stylist . with the decorations . we were . she's this magic by . Lead Time . Leads and writing . a lot of trees in our cats . . since Testing signatures the link directly to my tests . so the model that Estimate Alston . what a model editTest faces is the real pro . you might talk to . we were told . sanctions . the trade scope of its to be able to specify what all happened under what conditions . and even return the rebellions Team belly area of this . to verifying these interactions . so this is basically . the scenario what seemed . so . for the parts to this option . we are free and it's not four . we had ourselves a second here . Terry is a sign extended . the call . in the future something it is that you just us but can be returned back Instance its own . the . more advanced features . Low comes into the falling number of Zionist be much of the . Listen that's is a precise specifications and Testers sometimes . click to get it yet . to completion . legal we're straight . . so . these were then features come into play . an ABC stereotype . Vision and so them all . so that we all of this function . you'd stop by function . it's called when your mind comes to his calling be useful tool to do with everyone site does not function to leave . possibly still in the case treated with the . . . so there's . Double said a different variations that you all are . to tests showed the smocked for happens . in politics Team Validate ear handling . and anything else C was to serve five . on the Allah has full list of requirements and click to be specific . data . he's unit tests . tensions to read documentation . but a lot of purchasing my sober and . this is doing four . unit tests . the sources he seemed well as we used the we use that as test means . instead he has what to stitch . so you tests themselves service documentation . this documentation is delegation as well . it's Split proving that this thing actually happens . . straight into the talk . he loves the slide . Cr expert and he'd get . so simple . . . though . the senior citizen the user name and she starts out in all a little in the . and so we C et-cetera . does he features . the star . in this little . but we need also to hear me . my . one of the medicine in the new model . see execute the sex . we all know how it is an action one . and he features than the next . you can do for Easter core reason that Options be all in particular ordered Switch . . it is here and now . does he realize that . sequence is . four . so . Owner ordered . readings . the explicit messages . and then use it is over . with . it is . everything happens Inception . . real solutions . we're not talking about Testing States aunties were doctored functions . the intent is to leave functions . it will be is if these things Testing . so here is the . agents from . for some fast . Lucy didn't know that you're are treated staff going out for file stuff . he Test Code resides . we would have parallel tree up all our test files . and source of fire . so the completely separate note here tests . mention goes into your released . it also created a . for years . on . . . . BC It's our . the Canadians . editHidden features . so . status . this is Worth and it is brand . wishes that dependency unit . more . any teaching that the how . Removing said Feature whose . so we all use of these . they usually fall day in the data Associate . so that's we go back . also into unit tests . status Business Porter The Business . . so don't . there's a crazy Utah I go . he . this is an anti . Dennis . what is this instance . in all seasons . zero decision the of test . SEO has been about this . . so it . . it is . . . two years and one . to view a win C House nearly done . his style list . dear oh two Team nasty stuff . it breaks that slow your code as the Lead sticks trainee is shown . you'd year . here is our duty in Return list . the city . and so . later Stephen C plus . the exceptions . CNN's . so this lovely presumably . another tool . . see of these . leading around so slow in the preseason and nested contractions . but our will and seek with me . so why Call wordy set a for the predators and five At successful . in the go ahead and call the next function with the laws one verify that . and I'm big on others stayed with another function Team . and finally . . so and from seeds . . so C section rates try catch to see . use of city life with Inception Mondo . if I didn't see Santa reads . so it will work in any system that . dad's compilers see to it least . lessons . to get his mechanism in which is the most . that's right they are . use . on Tuesday . They . sure it's there to mechanism that would be teenagers . so we really do . we Testers snap . and so this the framework itself . it's fully tested . though . this policy . so it is very lightweight easy setup want to see what was exception handling . um . she noticed Most systems this the street . and guess what it is over . the C section is very lightweight . . basically all you do during to throw in here . is Steve Cost ruling . in America and use it is an air goes into being in a scene . here is Mrs . so . all yesterday . her contractions and see . Ireland has a light tagging . blue Tuesday ten Analyst a lovely houses . doing something similar to slice the point . there's . . it's supported by sea . this the US which is what I've seen the configuration that enables . C section . he test all the streets here conditions . so on . so here's and an example of all that . still Example . the team that addressed . by using Inception . see what . you see and try why . . though . only the seat while you and I was always User . it's insane an artist slow to actually . eighty years as ego in check he Feature and its . so we just all one can see one . as they happens . entire cast . the sun . Inception . the other things . he's . in other models . the sessions the bowling of your false Task until it is . it's sure to catch flights . he rang . that's another reason he tests his in an old enforce a decent match . . so here it is a problem . . . Tuesday eighties and . the show . . . but I see in the cupboard . we can reset Risk REAL whatever we have to do we get back in a state . so it's simple . Vision is your years now . one of this . . this . the . when the losses . tools Low harrowing and . Ruby said Woods . Ruby . the great seal editEven messages . . should . is there no . we clarify that . inspecting . C Sutton is . just a likely model for reading . seventy one . . so and codeCeedling associated with it . really has no real entire team testing . so it's just CTO music Human has been used as Testing chief edit always tools so they can be stated . let's In Museum and credits of them together in utilizing Testers affairs I was here of the decree . PS editSupported CI so that you can actually . all songs in . and what limited market also can you can Acceptance expects . in return . the the seventh row . so . the trees of NATO . because you are three sessions certain maximum slow so we only accept his treated . the assumption does not able to stay in goes out to the first test . . . oh and my shoe . the outside . for twenty one . They who eight years I was Inception cashflow . . this is just a river the weirdest . Meadows C . yes Meadows and see some very light . so this is far easier to use of the sea so slightly in fully and see . all the stuff together and didn't yesterday . so what the situation well sometimes we try to come up with the number Solution foreigners in the accident . Sarah . geared up . Dennis used in this area . the discovery to take with this approach . in terms . C . . cheer . Ceedling name . it is too long . I was . . . . . . . . . . . the city here . . then to return . . . what will . started yet . he . . Mike the study of one to several people . it work in the stools to the Cuban started this the way back our . you can spend editEliminates half dozen people in touch the stuff one . these tools to get Unity text . simple task Remember Timah for interaction based Testing mock objects C section Bad section tailored to C . so let's gather . I've takes the glue . to make your environments . he's due to setup . when Stephen . which honestly . see for C and then decide you are growing our build Environment . it's based on another tool rather Ruby tool called Rake pseudonym . While O'Toole all those tyrants . They here we are not many of you have dollars will environments . especially since usually deny you . he gets congested . he never lost . this little thing builds this little project this I will singles this other project one guy likes Make . Sally likes some other cool . and after Rob becomes a nightmare . nine is the main thing especially if you guyDouble projects . we're trying to upgrade your build environments . it this is tricky . even then when you get generic tools for Build Byron Bay for instance . it takes a lot of work to tailor your make files to work with your system full an external schools in an Alaskan thing . the QPR team and we're looking . more so that more senior don't buy into not going to . XD support . Testing which is well a lot of this work we've done is is to empower . the Build what other reasons Testing gives it is because you're making that a lot of what people's . you have a file with test functions that is popping Gather was for source file into test . with unity with maths . and possibly the the exception handling need to run a black results at Up Wilson's also do something with it . if you want to go about the fast one and use of advanced dependency checking all the stuff adds up . sticky to support testing so Ceedling was developed specifically to make . running . to be quick easy and specifically to make the team testing . real simple . youths . so configuration year ago . basics . two things in does two things well remains Testing enemies . he is based on . Ruby the scripting language Ruby has a tool called Rake which is Ruby version of Make . and dislike Make that dependency . handling is well as the ability to setup the basic targets and Testers massive thing . so does so is Rake has the added functionality of the above include Actual Ruby sticky coating so it's it's even more flexible off . so that Ceedling is to provide editBuild . and also to configure and tie together Unity CMock C exception and of course for source . you can build a Ruby started compile all your stuff together link it and have a BIG Besar that you can also run individual test files one at a time or want us for all to Change files new projects all command line . all based on Make movie and it takes a lot of the . the magic . this beer . we used in a single cell . that sort of a lie you can do more testing multiple files but Museum . stands for . yellowsticky marketplace . he was initially yet another mark of twenty this time to get was and is a very readable text . he died Human . do in real text file format for the that serialization . and so he can easily read it you can represent thing but to raise and Testers and all sorts of good stuff in it . and it's supported by . why at all Estimate public sixteen different languages Ruby has native support for him . the team building a more file with various configuration options to get to second . and that is the and but after that you can write or command line . there is tests to execute us or what about that happens in the background . sixteen shows an example to them and see how students to go . . we Ceedling is technically free Really slow stuff was premature this is the youngest of the tools already said its pre Double unthinkable . the number of people using it . organizations we know about using it again text . in fact has funded a lot of the Gulf . allowed us to make it freely available . even our This and some groups that we work with us Department faster you drive . serve with some to talk about features . we'll source files you've got a Feature concedes that you're gonna get any work done . it's editSearch file dependency to such fun . second file changes than It's All likely that the test executable Mike Duffy for one file and source tree changes your entire release should be between . trust me postage to be linked together . Ceedling takes care dependency . by doing that to rest next to Sparks around . rates . he needs dependency . what she said environments . since you don't have to setup and system wide with you and that of fun shell magic . there's a Pull section was in the no follow two said Byron variables . language setup in the animal . to represent command line tools . although the vagaries of RAM and options . resenting that stuff a nice meal readable format so they can execute things in the background . edit just one file one place two Feature and the tools compilers linkers simulators . what's that . unit tests . lots of search is for source on Test files . licensing Slide Wallace Solution in use since implementation to represent all summer Feature Kirsten below . you gotta raise preprocessing symbols that you're going to need to Process clearance the idea for various Build targets were . conditional compilation of one sort Another . supports all of that . it also provides configuration options for of the usual disregard . and is a little over blue . needed to make the software . Production Doolittle the earlier blue like the right to file Instance Dawson basic setup the next turns into test while to get all that you're the Task functions exactly where means the to do Testers coupons . Ceedling takes care of all of its . he then some . Management features for controlling the process . see what Christmas is really smart a dozen yet . before long C the process . so consequently gets really ugly legacy code or some to code that has conditional build . capabilities . sometimes you wanna does make that stuff go away so . Ceedling has a default so the tools that it's setup to use . the GCC to change . he likes to make available the preprocessing you make your life will be here that's all . available with one single rule command line option . Steve Medium file . this I waited . I'm sorry . six years as is all reporting so . each one you Test files gets converted into an actual test executable . to use you have hundred Test files to end up of hundreds Testers pupils each one of them is processing writing tests and collector metrics and provided them to the Wrap Celeste of the books . do we have some some . plugins in extensions to make things your friends two of . allowed things like oh coverage . we have use a tool called balls items Pull is a plugins . two decorator code and and watercress and C were covered product supply . or use evening . and . the Deploy affected grain . keep it going . and yes . . Dada Dada . I don't know . I'm . giving commentary that soon . . Omar . this . sure he's straight . . our . it's . . They Testable stuff list . oh also get this CD . it's . . sequence and blue . it's . . . Mike . . . the overall idea is that . Porter will file for Story products . he support across the behavior of their schools the problem we lose and what the problem Unity . what about you don't see talk . is it is . see my former . always so . people are hypocrites . Story was an . Paul . people interested in Stakeholders . the other . also all together and stitch does any of the tools the exciting reasoning or whatever . . one of one slight where people go to learn about how to tests . CTO . it's some good practices sequence and patterns . it's called assisted to go here and yes QUESTIONS you can get some tips and stuff like that . so . when we started it . maybe two weeks . but what is right now . but I can actually read no slow . home . the diesel interesting . it's been concluded . this talk . see here . the room . . . plus nobody was Solution salons Project resumes . of this blog a little one wonders what the hell Twitter . heads . is there actually are . part of . we're always single here . this is all bloodied home . teams can do little blurry or use the terms Feature and on your blog to see all the fit into their . CodesDouble also sequence dance . we tried quite . your ration this song . on top the type of thing without also to talk to C . home some of my working life more by the school hall . it was fun toolsDon't goes on on this bike and getting more more based on what you want to do . as of today . most people want to question the government so . how retarded Rouse one . on the talk when things don't always look up to specific IDDB uses tools that it's slow people in his . well . we're going without real . sure you can be made . one tools to work with top model Story selected into requests and so one units . he . . three . . . four . he . . spoon the LCC since the fall what is the Thornton's onto and maybe we can all in silver metallic slow . let's hope we Releases go . palm two . all the stuff these ideas into words just what to do is the stuff . . . as for treason to see large . all Multi discussion on the floor . palm . so . to show the . what would . Form has one top which is my wall one noticed Unit Suri was long we have a lot to him to grow . . . the best . shh it's a good start and only see a consummate weekend we were sold off . home . Double is little point for the slow ones . . you . site away . you may thousand and two one . and . . . Management . I knew how .