HOME  |  NEWS  |  BLOGS  |  MESSAGES  |  FEATURES  |  VIDEOS  |  WEBINARS  |  INDUSTRIES  |  FOCUS ON FUNDAMENTALS
  |  REGISTER  |  LOGIN  |  HELP
Comments
You must login to participate in this chat. Please login.

Another approach on State Machines

http://www.conman.org/projects/essays/states.html

hth

 

Iron

For state Machines -- see Quantum Leaps:

http://www.state-machine.com/

There are entire frameworks that might be of interest.

Iron

Quick lesson on table driven methods:

http://www.codeproject.com/Articles/42732/Table-driven-Approach

Cheers!

Iron

Excel matrix to track code's development

@phoenixcomm : Thanks. Is that like Lucky Strike Makes Fine Tobacco (LSMFT) ? Only Joints ?

Sorry.

jsf = Joint Strike Fighter

I learned something new today - table driven methods. I will check it out. Thanks!

Iron

JSF:  Joint Strike Fighter?

Iron

Thanks Jacob for your great answer

thanks for the chat -- one note to all that there is a free version of misra-c floating around.. and btw & fwi misra is really evil, they used it on the JSF.. 

Thanks for another great presentation, Jacob!

Iron

Thanks for hte chat and presentation

Iron

I still do not create much code, de bugging the automobile, and maybe/eventually...

Good presentation, I am glad this is archival so I can reuse these talks.

Iron

but the header files may.. go across bounds.. that is sometimes like on my nav unit (hardware) hanging on two the ardunio which then hang off the the IOP or I/O proccessor which can handle multiple ardunio(s) and talks to the NavBus via ethernet.. at the other end of that pipe is the simcpu and that talks to the other IOP(s) broadcast a frame every 1/100 sec..

 

@aalbashar, We do a hybrid of both and put header and C file in the same folder unless the header has an interface (i.e. extern) to the outside world beyond the scope of its matching .c file.  For example, if we write a SPI driver, things that the SPI or other hardware need are in the "local" .h file.  (The SPI driver may be multiple files, for example.)  But if there are functions that you can call from your application, those are separated out into .h file in a different folder.  That way you could compile the driver into a library and just have this one folder to find .h files for your application.

Don't know if that's a great way to do it, but it's what we've started doing and so far, so good.

Iron

I usually separate them.  Then I know if I want the interface its in one folder and the implementation in another.  I've seen it done both ways.  It is a personal preference but be consistent!

Blogger

I do.. two source trees..

thanks again for a very good session

 

Iron

@Jacob: don't you think that having the header and the source file of one module in one folder, better than put them in two separate folders?

Iron

Jacob - re: pineapple - I wondered if it was just there to make us wonder :-)

Iron

in simulation I normally start from the documention of the equipment and then go from there 

but its never prittly.. and most of the time I am writing for two (2) platforms at the same time.. (a) the embedded cpu and (b) the host ... Its not cut and dry.. 

@ ginomai   :  cyclomatic complexity - found functions with numbers as large as 70 ; use that metric for code reviews as well.

 

Do you rewrite (or have the coder rewrite) any functions to "break it down" if deemed too high ?

Iron

I'm with @garysxt, I'd love to figure out how to really pull off unit tests in an embedded environment.  It seems like everything is so close to the metal that your test environemtn has to basically be a simultor for your whole HW stack

 

Iron

This "flat" dialog doesn't work with more than a few people.  But thank you for doing what you are and thank you Mr Beningo for taking the time to do this.

Iron

Ah... Pineapple.  The segments and slices are modular but make up the whole program?

Iron

thanks jacob, chuck, digikey and ieee........

 

btw CM: when do we hear about being awarded ieee hours??

Who knows what Pineapple Lurks in the hearts of men...

http://pineappletool.sourceforge.net/

 

Iron

Question: What do you think is the most important aspect of software construction?

Having "inherited" 10 year old code in a maintenance project (off a CVS server, no designer still in the company) and having to add functions into it, I have to say documentation / explanations.  Sure, there were comments, but it's like guessing you're doing a spaghetti sauce from the ingredients !

@Jacob (& all) : do you CVS all your design documents with the code ?   Put all in a .zip file (i.e. .doc, .xls, state diagrams, .ppt, .pdf) ?  Do you (can you) take time to explain how to read the doc to understand your architecting ?

Iron

@Jacob - you mentioned unit tests briefly. I am a big believer in their value but often find them more difficult to implement with embedded software. Any comments or suggestions?

Iron

Actually i do like pineapple but it is there to make you wonder and do something different.

Blogger

Pineapple - southern hospitality?

Iron

@Jacob, is it just because you love pineapple?  (Or pineapple rum, etc.?) :-)

Iron

@mihai_cuciuc @chris.j  Another example for ARM is Atollic TrueSTUDIO.  It has some MISRA 2004 checking built-in.  (It's Eclipse based, so I imagine there's lots of other plug-ins, too.)

Iron

Thanks Jacob, Chuck, and all involved

Iron

thanks for info davewr........ (I second)

Iron

@DAveWR thanks for that I am actually also currently exploring formal tools for that with no budget will check it out

 

Iron

Hi from Forest , MS. I will be on time tomorrow, but thanks for your presentation and hard work on software integrity.

Iron

EmbedXControls I try to use a standard API or HAL.  Most MCU peripherals have common features that would be used from one application to the next so I have a HAL I use which allows me to abstract out how the hardware works in the design stage.  Then when I construct I dig into the details.  There are always a few gotchas that require updates to the architecture and design.  Remember that it is a two way path.  Architecture feeds design but design does push back on the architecture.

Blogger

thanks for info davewr........

I propose that questions be prefaced with "QQ:"

Answers copy the question and be prefaced with "AA:"

Even if you used a Reddit sub for the chat... this way questions and answers could be kept together... and an actual discussion could ensue.

 

As is now, like 100 people talking at the same time, there is no way to follow anything.

Iron

Flowcharter/ModelerFREE! For those who want a simple tool -- free for "light use" try this.

https://www.lucidchart.com/

I have moved a lot of my architecture work to this as well as module diagramming and state / flow charts. It seems to work so far.

The paid version is relatively cheap and much better. I have no budget $$$ so...

Iron

@Jacob, Could you please mention some tools you use to keep metrics of software?

Iron

Chris.j I've had one person over the last year who has guessed correctly at the pineapple.  :)

Blogger

@chris.j - thanks, I'll look into them

We always try to design code to be testable as well as maintainable.

Iron

Jacob, One problem I found in Embedded Software Projects is One cannot fully do the design of software unless the full understaning of Hardware interfacing is fully understood and 3rd party libraries and driver interfacing is understood. 

Do you recommend a way to easily First Design Embedded Software before reading all the 100's of Hardware Data Sheets and Library Manuals ? Or there is not easy way out of it ?

Thanks Jacob good presentation

Iron

DJack, I've looked at TDD and read James Grennings book on it.  I'm excited about it but I've found it difficult to implement in my design cycle.  It is a very unique way to design things and I struggle with certain aspects myself on it.  I haven't totally bought into it yet but I see where it could be useful.

Blogger

Slide 20.....what's with the pineapple?  :-)

Iron

I don't have any tools that I use for Tip #2.  This is an area that I'm working on learning more about and that I personally have ignored.  I bring it up even as a tip for myself that I need to design with security in mind.

Blogger

There must be a better way to do this....

 

Iron

Thank you for the great topic.

Iron

thanks for the presentation

Iron

@Jacob: you've asked about metrics; which tools do you recommend to measure software metrics ?

Iron

EmbedXControls - do you know you are moving to an RTOS and which one prior to bare metal coding? If so I have created a RTOS abstraction layer in the past adn coded to that which alloed the RTOS to be added later if needed.

Iron
@mihai_cuciuc - depending on your target - some compilers / IDEs have some level of static analysis built in, and some can help with MISRA.  CCS from TI has some MISRA rules, for one example.
Iron

@jacob Regarding (slide3>S/W Construction Fundamentals>Constructing for Verification)

Any comment on the practical use of Test-Driven Development technique in this context?

( eg. As described by the authors/promugators of JUnit, Cunit. etc ?

Do you personally use?

Rigorously?

Iron

 

I agree this was a great presentation

 

Iron

with practice flowcharting we do into the brain not on a paper

Iron

EmbedXControl s, if you write modular code then whether you are using a bare metal round robin loop you should be  able to still transfer that modular code to an RTOS based system without much more effort

Blogger

Thanks Jacob, Chuck, and Digi-Key!

Iron

Thanks Jacob.  This was a good session.

Iron

@Jacob: Do you know of any resources which deal with Tip #2 on slide 11? repeated question?

Thanks great presentation

 

Iron

Lepuckited, the strict agile teams i've worked with I haven't seem them do much flowcharting but that doesn't mean that they shouldn't be.  

Blogger

Jacob, If we Design Software for Bare Metal then move onto a RTOS, is there any efficient way to port ?

The old version Chrome32 worked perfectly for me today. I see others saying Chrome worked for them. I assume they are using the current version Chrome33. 

Iron

For tracking metrics I use RSM from R Squared although I'm sure there are other tools that are free.  I just happen to like their tools best

Blogger

@Jacob are there any free code metrics tools you can suggest for C? Also, can any of these check for MISRA?

will have to pick up audio later...

Iron

Thanks Jacob, DN, Digi-key, et.tal.

Iron

@Jacob: Have you seen or do you know if those whose use an agile development technique use flowcharting?  I've seen scrums of two weeks for a major SW drop and there doesnt seem to be time for flowcharting.

Iron

Thank you.  I have not used tables much, but will certainly look into them more in the future.

Iron

Modular techniques are used. 

Iron

Today's lecture is further verification of the value of the way I do code.

Iron

QQ: Did we ever decide on a format for questions so that would be easy to find and link to the answers?

I've used static analysis on every project in addition to code reviews.  I've explored TDD but haven't yet made it something I do in my project cycle.

Blogger

Thanks Jacob, good information and food for thought

Iron

Thanks pretty useful

Iron

Than you Jacob! Thanks DigiKey!

Iron

Thamk you,

Jacob, DK, and DN

 

Iron

Thanks!  Just a Note:

2/26/14  IE did not work; audio bar never appeared.

Installed Chrome; the audio appeared to 'lag' the LiveChat questions.

 

 

Iron

What tools did you use to track lines of code and create the file function summary?

 

Iron

@Jacob: Can you give us a link with more information on table driven methods?

Iron

What is the complexity that you usually write to?

Iron

@Jacob: what about TDD ?

Iron

Thanks Jacob and Charles.

Iron

Just got out of a meeting.  When will the lecture be archived?

Iron

Good stuff! Thanks Jacob and all.

Iron

Thank you Jacob and Chuck.

Iron

It also allows us to debug the problems easily

Thanks everyone for your attention!

Blogger

Thank you.  Good refresher.

Iron

Q: Do you use modular software design techniques?
      If so what are some of the benefits you've seen?
      Disadvantages?

A: Yes, benefits are better upgradability and maintainability.
     Slightly increased coding time is the only disadvantage I can think of.

Iron

Thank you Jacob, Design News, and Digi-Key.

Gold

Would you touch a little bit on Integration? ref slide 5 in practical considerations column.

 

Iron

@Jacob: Do you know of any resources which deal with Tip #2 on slide 11?

Thanks Jacob. Good information.

Iron

We use modular concepts.  This has shown to increase productivity, and reduce bugs.  Reuse has not been a big issue as when a new project happens we use the opportunity to learn from our mistakes and revap the whole structure.  The biggest problem with being modular is lose of speed.  Currently we are not pushing the hardware limits so it is not an issue.

Iron

Thanks Jacob, Chuck & Digi-Key! See all y'all tomorrow!

Iron

Tables are great, but if you are working low level (assembly) watch your page boundries!

Iron

Jacob, thank you for today's lecture

 

Iron

Q.Do you use modular software design techniques?  If so what are some of the benefits you've seen?  Disadvantages?
A.yes i do.i work with different sensors and interfaces so using modular software techniques allow me to organize my code and to add more devices to my platform and reusing old code.disadvantages: more planning, more code.

Iron

So, what about peer code reviews, static analysis, and/or test driven development? These three practices are some of the best practices during the coding phase that have excellent payback later in the lifecycle.

Iron

yes, reusing and maintantablity are some of advantages. Sometimes work look is harder, but in time it goes faster

Iron

Tip #9 - very interesting!

Iron

new programmer who hated state driven designs. i always use state driven.

I use modular software techniques.  The plus is keeping of what the code is doing and code reuse.  The Down side is interfacing the modules together. 

Iron

modular - YES

encapsulate, reuse

Iron

We're curently using various abstraction layers. The main benfit is a common point for various formulas and calculations etc. Thi disadvantage that I've observed is  things tend to morph as you go through layers. That means it can be unclear what a function actually does!

Iron

J? always liked flowcharts, any good flowchart api's?

disadvantage: bug in one module affects all products that uses that module

Iron

Using modular design sometimes has the difficulty of tracking duplication.

Iron

Modular design is the process I use. It allows demonstrations of features as they are produced. There is some execution penalty which seldom becomes a problem.

Iron

The main disadvantage of extra modularity is a bigger binary (application) file size, but the benefits outweigh the disadvantage.

Iron
modular, less time consumption for coding
Iron

WE frequently use modular design on larger projects it expedites code reuse.  Have not seen any negatives.

Iron

Moving toward modular design.

Iron

Almost always use modular code techniques.  Easier to debug, some benefit in reuseability. Takes longer at beginning but almost always pays dividends.

Iron

Easier to debug and modularity advantages

Iron

I use modular technique, so the same application can run on micro-controllers or DSPs with only low-level hardware modules that need to be adapted.

Iron

Use modular techniques: Yes

benefits: use the same libraries everywhere, fix a bug once and it's backported already.

Issues: too much nesting of modules, particularly when some become system libraries,can make tracking down a specific behavior more difficult.

 

Iron

lotts and lots of benefits for architecting modular software

I use modular, easy to maintain

Flowcharting first = planning ahead, which resuts in better design

Modular techniques not used.  

Iron

Yes modular.  Disadvantages can be code and schedule bloat if done inappropriately (see the object-oriented toaster story for an extreme example).  Many many advantages, ease of use, keeps you from going crazy if you have more than a few functions etc., and many many other

Iron

Yes, I use modular techniques.  It's been successful enough to scale our embedded code to support about 50 devices over 3-4 generations.

Iron

Just starting to split code into app vs. driver/BSP/HAL layer.

Iron

The main disadvantage of extra modularity is a bigger binary (application) file size, but the benefits outweigh the disadvantage.

Iron

used to put all code in one big file during my hobby work, but at work I learned to write things in a modular fashion. It cleared code up quite a lot

Modular techniques allow different subprocesses to draw from a pool of packaged functions.

Iron

One of the few good techniques we use is good modular design.

Iron

yes, I use modular techniques, it is very helpful for portability.

so far no problem. may the only one is, I get a lot of files

Iron

I was able to reuse a bunch of common modular code in other related projects

 

Modular is easier to read and debug.

 

Modular techniques are used.  Reduced retesting is an advantage when only one module need changing.  Everything must be retested when a line is changed.

Iron

We use minimal modular code as you define it (separate project). We do use separate files with headers - but one project is used.

Iron

Yes, is reusable the code and legible.

Iron

Disadvantage: If API poorly documented, you find that modules may not do exactly what you think it is doing!

 

Just making the transition to modular programming as I get a bit more experience under my belt and learn more. Love the reusability aspect. To get started in embedded programming, though, I was a typical "single lump file" programmer.

Iron

didn't know there was any other way (modular)

Iron

Strictly modular. Re-use of code from project-to-project and easier to maintain. No real issues.

Iron

Use modular code. Easier to read and debug. Easier to swap out pieces. Have not found any down side.

Iron

Modular design.  Benefit wrt Testing.

Iron

we use modular software design techniques. advantage is that some components can be reused. we used to have completely different architecture from product to product. recently we have gone to an evolutionary release process.

Iron

I certainly use Modular software design techniques

Regression also helps with validity. Version control and test automation/regression will help to maintain the health of the code.

Iron

I do follow modular methods. May take a little longer up front but makes code portable and easier to maintain later!

Iron

I use modular design.  I've found if I don't it comes back to bite me.

Iron

We make modular component libraries for reusable pieces.

Iron

Yes, I use modular software.  Config tables and #define.  I try to make the state machine obvious in the code.

Gold

J's? modular? when ever i can.

Yes mostly use modular techniques, lot of advantages because each module remains independant and an individual can work on one without others involvment

Iron

modular for small projects is a bit messy.

 

Iron

my applications have been "standalone", meaning no internet connection, so unless somebody could de-compile and get it off a flash chip...

Iron

Try to use modular design techniques.  others can read the code much easier. and it is easily reused.

Iron

Prior to me joining, my company did not...  We are moving that direction now, and a new project just starting WILL be using modularity.

Iron

we use modular techniques.  The advantage is maintainability

Iron

100% modular, helps keep me focused during development and eases future maintenance.

Iron

HaHaha...  Yes, modular 

Iron

I do use modular techniques.  The greatest benefit is being able to port code between different processors.

Iron

yes. modular

easier to read, modify and debug

Iron

modular, cost reductions

Iron

Modular, makes it easy to return to a project and find stuff

Iron

Modular software definite!  Re-usability.

Iron

I use modular software techniques. It easier to debug and modify

Iron

have variables reporting about something is going wrong...

Iron

Best place to verify valid data is at the earliest point... AT THE INPUT!

Iron

Question: Do you use modular software design techniques?  If so what are some of the benefits you've seen?  Disadvantages?

Blogger

essentially writing portable code, I guess.

Iron

about tip5: 100% agree based on don't left the work to others

Iron

test for invalid inputs too!

 

Iron

Only security for refllashing firmware: firmware is CRC protected + a little more to ensure application code is 'valid'.

Iron

We don't consider sercutiry for the ind. apps

Iron

Hi from MA. Sorry I am late

 

Our security efforts are around preventing unauthorised access.

Iron

i only do small firmwares so far.when i get involved with great projects i will implement software organization.

Iron

Just installed Chrome.  Audio bar is place. 

Iron

Very little security is thought of due to the limited external access available to device.

Iron

For code only used a work, I don't think about security.  Personal code is a different story.

Iron

Security is not considered to be an issue at this time.

Iron

so far I have'nt considered security related issues

Iron

Yes. I try to mainly look for the buffer and stack overflows and memory allocation. Still learning a lot about this, though.

Iron

My software is typically in a computer not connected to the internet.  So it is security by obscurity.

Iron

Most of our code is networked so yes we look at security issues -- passwords, logions authenticaion and authorization etc.

Iron

Most of our security efforts are around preventing unauthorised access to the device rather than code level techniques. e.g https ans ssh rather then http and telnet.

 

Iron
no security issues until now
Iron

Just beginning to consider security. I might divide the code into two chips to prevent control takeover.
Also, don't outsource the firmware burn or assembly if possible.

Gold

only heard of secure boot

Iron

I have not, we have another department does when appropriate.

Iron

@jtarbotton: there's lint of various sorts, which I haven't tried, and also Understand by Scitools which I've used their demo - very powerful and very handy, much more than metrics, it will generate all kinds of graphs and diagrams of relations between files, where variables are used, etc. etc.

Iron

Not thinking about security but do check buffer limits and array indexes.

Iron

Google: "C code complexity tool"

Iron

Yes, security is important.  Currently use CRCs, Hasshing, etc. to prevent unauthorized code or access in our products.

Iron

We think very little about security, our embedded systems are not intended to connect to internet or other possible sources of security breaches.

Iron

With our floating point core we have less of an issue with overflows.  Simulink catches a lot of array issues when we compile.

Iron

Don't tend to do much more on security than check inputs bounds and buffer overflows.

Iron

Security is usually done at a higher level and not in what we do.

Iron

I think about security in the sense that I try to imagine every way the user can mess things up.

Iron

how about #bugs reported by QA per X lines of code?

we never considered security until now

Never added a thing related to security..

Iron

Yes. Always.

Use code reviews, independent testers, breakers (persons who attempt to break into the code)

Iron

So far I have not considered security related issues

Iron

I consider buffer overflows and array index bounds.  I utilize static analysis via PC-Lint for my code and when doing code reviews.

Iron

no security measurements so far

Iron

J's? all firmware is internal, so security isn't not considered.

Haven't considerd 'security' before. Only fault prevention.

Iron

Security is not my primary concern right now.

about tip#2: when using arrays and buffer i always check its boundaries when creating and after writing, reading

Iron

In-house use only - considered open-source for all in the department personnel to maintain and offer modification suggestions.

Iron

Yes, code reviewed by non-team members

Iron

AES encryption and SAM modules to protect data between world and Micro.

Iron

Yes we have considered.  Not sure how we implemented.

Iron

Use code reviews and verify all parameters for unexpected values.

 

Iron

loss of IP is considered a security related issue

Iron

We lock the keyboard and ports, and airgap from networking.

Iron

All the time, JPL code standards and CERt standards

Iron
code size and time consumption
Iron

any free tools to test metrics ?

 

Iron

Sadly we do not. 

 

Iron

@gordonmx - Audio is still clear and flowing for me.

Not using security mesures for now

Iron

I don't keep track of the process other than to turn out a functioning product. The first nonfunctioning stub version of the code contains modules for all the features. The modules are worked on one at a time using test data until the project is complete. So completing the modules would be the closest to progress tracking that I use.

Iron

Mostly look for objects not destoyed, memory not freed etc.

LOC etc not that interesting. SOmetimes lines per function iof calculations are significant.

Almost never do the tools find anything we need to fix. We try to get it right up front.

Iron

I personally disagree with using the nuber of lines of code as a metric.  A single line to do a lot, but make it unreadable or difficult ot understand.  For those that use the number of lines how do you avoid this problem?

 

Iron

Q: What types of metrics do you use when creating software?
A: None at the moment; i.e. no support from management for doing this!

Iron

not alot really - timings, size of code

Iron

Question: Do you consider security related issues when developing software?  If so what types of techniques do you use?

Blogger

No metrics yet, other than: did it ship yet?

Iron

We currently use no metrics but are starting to investigate this.  

Any tools you could suggest would be great.

Iron

@K-Dog: Code complexity tool search keywords: "cyclomatic complexity". e.g. there is an Eclipse plugin called "metrics".. I'd also like to know what tool Jacob used..

Iron

we track:

issues, enter all issues even if fixed immedietely

Development estimate vs actual time.

 

We've not found value in LOC

Iron

metrics have kept are: idle time, development cost, % reused code

Iron

lines of code removed with added functionality 

Iron

Q.What types of metrics do you use when creating software?
A.code size and measuring time-consuming tasks timings

Iron

I personally utilize cyclomatic complexity - particularly if I am reusing code from on older codebase.  I have found functions with numbers as large as 70.  I like to use that metric for code reviews as well.

Iron

Don't keep any metrics for code.

Iron

Metrics are modules coded and tested.

Requirements addressed and verified.

Iron

Lines of code metrics.  formal design review.  Automated test

 

Iron

Overall functionality, Number of rewrites and customer satisfaction, in addition to what you have, is what we track.

 

Iron

metric: compiled code size

Question: What types of metrics do you use when creating software?

Ans: lines of code, # errors, Time.

Iron

Meeting desired performance .

Iron

The time and the code programmed.

 

Iron

J's? meterics?  other then time for management, none... (if micro, ram/rom space).

no metrics. Not sure how informative "lines of code" really is.

Checking off the implementation list..

Iron

Only mimimal. A little on test coverage and some sprint stats (time taken, over and under estimates)

Iron

fixed bugs to new bugs ratio

Iron

not seen metrics to track progress

Iron

not keeping any  metrics at this time

Iron

Working with templates and try to follow procedures as close as possible, otherwise no metrics right now

Iron

sadly, hours actual vs hours planned

 

Iron

We keep track of Lines of Code, Maximum module size, Data Coupling analysis, Control Coupling

Iron
@KaRobotics: Look for questions in chat window if you don't have audio.  They are entered by Charles Murrray with a "Question:..." prefix.
Iron

lins of code, size, modules, etc.

Iron

must be readable

 

Iron

well other than making sure that I have enough space in my part

Iron

Lines of code, functions developed, tests completed, ....

Iron

No formal metrics tracking. Just thoroughly debug and maintain.

Iron

Do not use any metrics:  can't do lines of code with LabVIEW.

Iron

lines of code and size of embedded code

Iron

Module level completion status.

 

Iron

Types of metrics:  I've not used any, but it looks like fun. 

Source Monitor

Complexiity, make all code look the same

Iron

Metrics: compiled code size, number of lines of code

Iron

No LOC metrics.  Maybe Req'ts metrics tracking.

Iron

I have not kept track of lines of code

Gold

not keeping metrics at this time.

Iron

Modularity and readability is most important. Other benefits are derived from those.

Iron

I think planning and verification is the most important

Iron

Question: What types of metrics do you use when creating software?

Blogger

Most important aspect:  planning ahead.

Iron

Most important aspect would be code re-use.

Iron

Code must be readable with enough well written comments so that it can be maintained and understood

Iron

Readability and maintainability.

Iron

In my opnion, it's testability.

Iron

Come later to listen to archive. Can't waste my time.

Iron

Slide 9 - there's that tool again... what is it?

Iron

I think construction planning should also include an assessemnt of which components are most risky for the purpose of risk mitigation.

Iron

Q: What do you think is the most important aspect of software construction?

A: "Design for maintainability."

Iron

What do you think is the most important aspect of software construction? Maintanability, functionality

Iron

we adquire reuse ability through practice practice and more practice...

Iron

If i can't get the audio to work - then i cant participate in the discussion

Iron

important aspect of software construction: modularity, simplicity, reusability and testability

Iron

recommend us tools for embedded software verification and how to use those tools?

 

Iron

yes this is terrible - I have struggled with Audio through out this series too!!!!!!!!

Iron

Readablility is most inportant to me.  I know this code will be having feature updates and maintaince for 10 years.

Iron

Embedded software construction I presume -- with RTOS or Without? Without RTOS State Diagrams and dlow diagrams -- maybe -- depends. With RTOS -- module descriptions and timing allowances.

Iron

dgkohler - agree, I want to know also.

 

Iron

correctly implementing the requirements as they are known.

Iron

Have audio now from Chrome

Iron

I had audio for Chrome, but wasn't logged in.  The audio cut out after logging in from Chrome.  Probably my companies network.

Iron

Question: I (also) am curious about what tool was used to generate the report on Slide 6.

Iron

The more modular the easier to reuse

Iron

No audio bar even after refershing. Sorry to say but talking about new technologies using old ones.

 

Iron

modularity everywhere  it possible

Iron

important aspect of software construction: Reusability.  The next project is as or morimportant than this one and needs to be done faster too.

 

Iron

Modular - definitely agree.

 

Iron

No audio bar for IE no audio for Chrome for me

Iron

I'm curious what tool was used to generate that report on slide 6?

Iron

I switched from Firefox to Chrome and audio is working now.  The problem is not with the browser.

Gold

Modularity abd following standards

Iron

Modular design to minimize complexity and aid in maint

Iron

Flow charts.. in brail

Iron

Specifications/requirements

Iron

A athoughtful thorough design from which to construct the code.

Iron

Probably simple flow diagrams

Iron

Anticipating change is what I think is important.

Iron

Specificcation. You don't even know if it works if you don't know what it's supposed to do. 

Audio is terrible on IE and Firefox - constantly cutting out.

Iron

Unit testing and Integration I believe are the most important aspects of construction.

Iron

Knowing what to build

 

Iron

What do you think is the most important aspect of software construction? flow diagrams

Iron

getting a working version out the door is the most important feature

Iron

J's? software construction? algorithum?

no audio bar displayed

Iron

no audio today on IE.  worked fine mon & tues

Iron

IIE is working for me... had to refresh once....

 

Platinum

Question: What do you think is the most important aspect of software construction?

Blogger

Funny Chrome seems to be working today

 

Iron

Chrome and Firefox will always delay 8-9 minutes before playing!

Iron

Audio bar is not displayed.

 

Firefox not working for me, went to IE.

Iron

Chrome is working for me today...

Iron

check install or update adoble flash player

Iron

Chrom has it and works fine

 

Iron

No audio on IE and my Firefox always starts with a 8-9min delay

Iron

ie11 working fine for myself. i had hard time setting up firefox. (getting thru avertizing crap)

Switch to Chrome - it seems to be working today

Iron

This is the second day that I'm not able to get sound.  I did not have a problem on Day 1.  What changed?  HELP

junkmann

I gave up listening! probebly later can use archive.

Iron

No audio bar today (IE)

Iron

New one for me no Audio bar....... even after several refreshes

 

Iron

Firefox works very well.

Iron

FYI: FireFox 26.0 works fine for me.

Iron

IE did not work, but Firefox is working

 

Iron

I don't know what is the reason, no audio fro me.

Iron

 

audio is working for me

I put back chrome32 after disabling the automatic update feature and removing chrome33

 

Iron

+ to cj: and i missed yesterday...  design distraction...

Good evening from Iasi

Iron

Greetings from Plymouth, MN

Iron

firefox v27.0 working well

 

Iron
safari is OK until now.
Iron

Hello From Beirut Lebanon... 

Iron

Welllllll.....Firefox is no better

Iron

I'm on Firefox. Audio comes on for two seconds then I have to hit the Pause/Play button twice to keep it flowing.

Gold

I don't see audio bar, refreshed it but no audio!

Iron

Chrome seems to be working for me today.

 

Iron

Hello again!

If I can make a logistical suggestion - I appreciate the "connect to Outlook" feature with the downloadable calendar thing.  But can you set that up with a default reminder, say 15 min before?  I almost missed today!

Iron

hi all from upstate New York

Iron

Hello from Toronto, Ontario!!

Iron

Good Morning from Calgary

Hello from Chicago also.

Iron

Hi all -Audio is live! If you don't see the audio bar at the top of the screen, please refresh your browser. It may take a couple tries. When you see the audio bar, hit the play button. If you experience audio interruptions and are using IE, try using FF. Also, make sure your flash player is updated with the current version. Some companies block live audio streams, so if that is the case for your company, the class will be archived on this page immediately following the class and you can listen then. People don't experience any issues with the audio for the archived version.

Hi from Arlington Heights

Iron

Greetings from Minnesota.

Iron

Greetings to all from Chicago.

Iron

Hello from Thornville, Ohio

Iron

Hello from Longmont, CO

Iron

Hello from Long Island, NY

Iron

Hello from beautiful Desert Hot Springs!

 

Hello from Buffalo, NY

Iron

Hello from Western PA

 

Iron

@bobybacs

Exactly, FF 27.0.1 and FP 12 wok perfectly.

Iron

Another 18-deg day here i nRochester, NY

Iron

Firefox 27.0.1 with latest Adobe Flash Player 12.0.0.7 should work fine

Iron

Yesterday Firefox work fine to me who be at 5000 miles for USA :-/

Iron

 

hello from Mishawaka

 

Iron

Good morning from Valladolid, Spain, the new lander of Germany

Iron

I had a problem with Chrome, but Firefox 14.0.1 worked well for me.

Iron

IE v8 seems to be working well for the past two lectures

Iron

greeting from Lincoln, NE

Iron

good afternoon from Indiana ... cold again.

Iron

also look at IE 11, firefox DID NOT work for me or others.

 

Iron

I would use firefox if I were you. Forget about chrome

Iron

It was still a problem for me yesterday

 

Iron

Hello everyone - Welcome to day 3! We are working on a permanent fix for the Chrome issue and recommend that you use Firefox for today's class.

Hello from Azcapotzalco, DF, Mexico.

Iron

Is anyone still having trouble using Chrome to listen to the audio?

 

Iron

@D.Jack Well, out in panahandle country all of Texas is south. :-)

@BruceMcLaren As a Potter County native.... That's not North.

Iron

@D.Jack How specific? I'm in Corinth, just south of Denton, not too far north of Dallas and Fort Worth.

@BruceMcLaren  "North Texas" is a whole lot'ta territory? More Specific?

Iron

@jacob Regarding (slide3>S/W Construction Fundamentals>Constructing for Verification)

Any comment on the practical use of Test-Driven Development technique in this context?

( eg. As described by the authors/promugators of JUnit, Cunit. etc ?

Do you personally use?

Rigorously?

Iron

You are eligible to earn IEEE Professional Development Hours by attending these courses and participating in the chat function. Additionally, we are no longer using the points system, offering "graduation", or giving grades. The IEEE hours are taking the place of that. There are some important things for you to know about earning the hours. The most important ones are that you need to attend these courses live, you need to attend a minimum of two of them per semester, you need to fill out a course evaluation form within 2 weeks of the end of the class, you need to attend 4 out of the 5 classes per course, and you need to participate in the chat function every day you attend. Please click on the link at the top of this page that says "How do I earn IEEE professional development hours" to read all of these important details and more.

Blogger

That will be useful as it takes a few seconds for the audio stream to appear in IE

Iron

Please join our Digi-Key Continuing Education Center LinkedIn Group at http://linkd.in/yoNGeY and be sure to follow @designnews and @DigiKeyCEC on Twitter for the latest class information. We encourage you to tweet about today's class using #DigiKeyCEC.

Blogger

Hi everyone!  Looking forward to part 3!

Iron

@bobybacs - Thank you for the suggestion. We are actually currently looking into whether that can be done for future classes.

background music, propaganda, whatever. really good idea,

sell digi key or others air time for ads, bone head algebra or code

Iron

@Charles Murray: isn't possible to setup an audio player for test purpose 10 minutes before the show starts ?

Iron

hello everyone from Timisoara, Romania

Iron

Hi from Guatemala City, Guatemala.

Iron

Hi from Rainy Panama City, FL.

Iron

Howdy from Tomball, TEXAS

Iron

The streaming audio player will appear at the top of this web page when the show starts at 2 PM Eastern time today. When you see it, click on the play button to start the audio. Note however, that some companies block live audio streams. If when the show starts, the audio bar doesn't appear or you don't hear any audio, try refreshing your browser. If that doesn't work, try using Firefox or Google Chrome as your browser. Some users experience audio interruptions with IE. Also, make sure your flash player is updated with the current version. If that doesn't work, the class will be archived immediately following our live taping. You shouldn't experience any problems with the audio when listening on-demand.

Blogger

Hello from sunny Chicago, where the temperature is up to 6 degrees F.

Blogger

Morning hump day starbucks

Iron

Hello everyone - Welcome to day 3! We are working on a permanent fix for the Chrome issue and recommend that you use Firefox for today's class.

Hello from sunny Montana mountains.

Gold

Be sure to click 'Today's Slide Deck' under Special Educational Materials above right to download the PowerPoint for today's session.

Blogger

Hello from Hudsons Hope BC

Iron

@TomBee

We too are experiecing another deep freeze in Aurora Ohio. -10C with a low of -12C tonight!!!

We are experiecing another deep freeze in Aurora Ontario.

I would be nice if the audio didn't freeze again today.

Iron

February 26 - Day 3: Implementation Strategies-I hope that this session will dig into the details of writing embedded software

Iron

Morning from Valladolid, Spain

Iron

Hump day weather is on it's way,

another hour of daylight, finally.

Iron

Hump day finalizing February . Come on, spring.



Partner Zone
Latest Analysis
From pitchers and forwards to quarterbacks and defensemen, we offer a peek at some of the more memorable engineers in sports history.
IBM announced it is dedicating $3 billion of funding over the next five years to research and development of new processor technologies.
A soundproofing invention called Acoustiblok recently won a television challenge to silence an air horn with only a fraction of an inch of polymer material.
Rethink Robotics has upgraded Baxter the Robot so it can be easily trained by co-workers who simply show the robot how to move.
Robots came into their own in the 1970s. Gone were the low-budget black-and-white B movies. Now robots roamed in full-color feature films with A-list actors.
More:Blogs|News
Design News Webinar Series
7/23/2014 11:00 a.m. California / 2:00 p.m. New York
7/17/2014 11:00 a.m. California / 2:00 p.m. New York
6/25/2014 11:00 a.m. California / 2:00 p.m. New York
5/13/2014 10:00 a.m. California / 1:00 p.m. New York / 6:00 p.m. London
Quick Poll
The Continuing Education Center offers engineers an entirely new way to get the education they need to formulate next-generation solutions.
Jul 21 - 25, Design Products With Bluetooth Low Energy
SEMESTERS: 1  |  2  |  3  |  4  |  5  |  6


Focus on Fundamentals consists of 45-minute on-line classes that cover a host of technologies. You learn without leaving the comfort of your desk. All classes are taught by subject-matter experts and all are archived. So if you can't attend live, attend at your convenience.
Next Class: August 12 - 14
Sponsored by igus
Learn More   |   Login   |   Archived Classes
Twitter Feed
Design News Twitter Feed
Like Us on Facebook

Sponsored Content

Technology Marketplace

Copyright © 2014 UBM Canon, A UBM company, All rights reserved. Privacy Policy | Terms of Service