What Software Engineering Process is best suited for Embedded Projects - Page 4

Do you have a question? Post it now! No Registration Necessary

Translate This Thread From English to

Threaded View
Re: What Software Engineering Process is best suited for Embedded Projects
Quoted text here. Click to load it


Let me zip up my flame suit....there ok much better.

First, you need a domain expert, and the engineers will need to have a very
good understanding of what is trying to be achieved.  Second, I suggest you
get QA or someone who's full time job is related to verification and
validation, involved at the beginning.  They need to understand the problem
as well as the engineers (how else will they write good tests?).

Demand your engineers to validate their code with unit testing before it
gets released into a build.  Don't let everyone dump their stuff into a
single development branch.  Reserve a "stable" branch for QA to use, and
only add to it when QA is ready to test new features/fixes.

Don't expect anything great from tools that make UML diagrams.  Keep the
paperwork to a minimum, and only document something if after reading it, an
engineer can say "Yeah, that is actually useful for me to know, and it'll
help me in 6 months when I come back to this area of the code".

Get your technical writer involved immediately.  They need to underatand the
problem too, otherwise they'll be nagging your engineers later when they're
busy fixing bugs.

The most important thing is to push back as much scope and features as you
possibly can.  Don't volunteer to prototype or demo anything unless it's
demanded.  I can't stress enough how these activities distract engineers
from getting core functionality completed and tested.  Demos tend to need
bells and whistles, and they generate new demands that marketing suddenly
seems to think is a must have for the first release.  Stay focused on the
smallest subset of critical functions that you can get away with.

Now here's where I need the flame suit (and I am a developer btw).  Every
developer should have the exact same environment.  Everyone uses the same
tools, the same build scripts, etc.  Get everyone their own dedicated
development box (separate from their R&D and general everyday tasks).  Avoid
proprietary methods from the start.  There will be a lot of whining over
IDEs and editors.  Tell them to shut it and deal with it.  Give them x
number of days to decide which tools they need to use, but after that,
everyone does it the same way.  If you have to bring new people onto the
project, it will make things much easier to get them up to speed, and they
can get help from any of the team members, not the same guy over and over.

I guess to summarize:

1. Minimize scope
2. Mandate clear understanding of what is trying to be achieved by all
members of the team
3. Begin QA activities on day 1
4. All developers use the same tools/compilers/etc
5. Mandate unit testing before code is released to the QA branch
6. Don't release until it's stable (requires yelling at your boss)



Re: What Software Engineering Process is best suited for Embedded Projects

Quoted text here. Click to load it

Only a couple of things I would debate but overall this seems like good
advice born of real experience.

Ian



Re: What Software Engineering Process is best suited for Embedded Projects
On Thu, 06 Nov 2003 22:11:57 +0000, Ian Bell

Quoted text here. Click to load it

    Spot on post from microman. In his post I'm assuming that
there's a good workable Software QA Plan in place before one starts.
What did you see as debatable?

Ken.

+====================================+
I hate junk email. Please direct any
genuine email to: kenlee at hotpop.com

Re: What Software Engineering Process is best suited for Embedded Projects

Quoted text here. Click to load it

a) 'Demand your engineers validate their code..'  Demanding anything is not
the way to create and maintain a healthy team spirit.

b)' Get your technical writer involved immediately' -  not until at leat the
spec is firmed up.

c) 'The most important thing is to push back as much scope and features as
you possibly can'.  This can only lead to a 'them and us' relationship with
marketing.  IMHO it is a knee jerk reaction to the typical demands of a
marketing dept but not the solution to the problem.

Ian


Re: What Software Engineering Process is best suited for Embedded Projects
On Fri, 07 Nov 2003 09:10:54 +0000, Ian Bell

Quoted text here. Click to load it

Hi Ian,
    Addressing your points:

a) I think you're right - "demanding" anything is not the right
approach. Actually , why is it necessary to "demand" that engineers
should "validate" their code. Isn't this really a requirement from the
Software QA Plan (and V & V Plan). If a certain level of "quality" in
the deliverable is desired then this governs the extent by which the
resultant code is "verified". It is possible that schedule timelines
could blow-out due to anal over-verification especially when the
verification has to be done manually and not through an automatic test
harness. Don't get me wrong, engineers usually have a "personal
process" by which they ensure the desired quality (which is
commendable), but every engineer is different & so a quality plan is
required to ensure the lowest common denominator is achieved. As I see
it, once the quality plan has been established then mandatory work
instructions can justifibly be put into place.

 Incidently the software engineer may "verify" his code (not
validate), but possibly he could have his design validated (against
requirements). In my area, the medical field (as dictated by FDA
guidelines), "Software Validation" is NOT carried out by the software
engineer. It is an activity which is formally carried out by an
independant tester.

b) Basically specs don't really get firmed up until near the release
date. This sadly is a fact of life. All one can do is have a process
in place that can handle it & at least show accountability (so you
don't get dragged over the coals in the post mortem).

c) As you have implied a "softly softly" approach is required here.
Basically everyone has to be aware that there are trade-offs of
features, delivery date & measurable quality. I only mention
"measurable quality"  because it is possible to deliver software, say
1 week in advance, but it may not have been subjected to a degree of
verification. If you're producing a product that has a lower customer
acceptability threshold, then this may be OK.

Ken.

+====================================+
I hate junk email. Please direct any
genuine email to: kenlee at hotpop.com

Re: What Software Engineering Process is best suited for Embedded Projects
Quoted text here. Click to load it

How can you demand the Engineers to validate there code ? Is there not
another way such as Scipt interface ? or ?

Re: What Software Engineering Process is best suited for Embedded Projects
Quoted text here. Click to load it

Yeah, there IS a way to get perfect, known-good code at the push of a
button, with no apparent human intervention. Actually, two ways:

1. Time travel.
2. Magic.

If you don't have access to either of these technologies, I suggest
you persuade your "engineers" to get involved in code validation.

Re: What Software Engineering Process is best suited for Embedded Projects
In my opinion you're totally on the wrong track from day 1. The model is
irrelevant if the team doesn't gel, and the team is irelevant if the
project planning is poor.

1. make the interface between the different sub-systems as minimal as
possible, and thoroughly define this first.

2. Create a device independant test fixture that can certify the
interface from any sub-system, and create this first.

Create suitable test fixtures and procedures for each sub-system, then
incrementally verify each significanyt stage of development.


4. Plan and meticulously specify the function of each sub-system. The
teams are now free to utilise whatever methodolgy suits them best. I
assume that the 15-20 is split into smaller teams, one per sub-system or
whatever. One large team working on everyhting seems assinine.


Al



Gerald Maher wrote:

Quoted text here. Click to load it



Re: What Software Engineering Process is best suited for Embedded Projects
Quoted text here. Click to load it

What do you mean by keeping interface to a minimal ?

Quoted text here. Click to load it

What do you mena by device independant test fixture ?

Thanks
Gerald

Re: What Software Engineering Process is best suited for Embedded Projects


Um. Haven't you just partially defined a process?

There seems to be some confusion here between Process, Model and
Methodology. They are being used as thought they were interchangeable
terms and they are not.

I'm not going to start a definition war here, but see any SW
Engineering textbook for clarification of terms.
Cheers
TW

Re: What Software Engineering Process is best suited for Embedded Projects
snipped-for-privacy@ornette.freeserve.co.uk (Ted Wood) wrote in message
Quoted text here. Click to load it

A process contain Methods, for example there when you devlope one
component you could this a process, a method is this case is the
requriments, interface, codeing and testing

Another example of a process is when you deliver to customer a example
of methods are Verifaction reports, Feature passed as stated in the
Requriments e.t.c

Re: What Software Engineering Process is best suited for Embedded Projects
Dude, you'll get much more respect and credibility if you could spell

Quoted text here. Click to load it



Re: What Software Engineering Process is best suited for Embedded Projects

Quoted text here. Click to load it


Not only do you top post and seem unable to construct
a sentence using the correct tenses AND you're rude to
boot but...

Gerald is posting from an Amsterdam server (that's in
The Netherlands btw) so his first language is probably
Dutch therefore he's writing in a second language which
he does very well and, I suspect, a bloody site better
than you could write in Dutch or any other language.
In addition I'll bet Gerald speaks at least one other
language too? How many do you speak?

The parochialism of some Americans never ceases to
amaze me!

Mike Harding


Re: What Software Engineering Process is best suited for Embedded Projects

Quoted text here. Click to load it

I taught my Real-Time Fundamentals course in Amsterdam last year and the
people who brought me over there from my home in Canada were great. They
all spoke English fluently, which made my job a whole lot easier since I
don't speak a word of Dutch. All the merchants I dealt with also spoke
English.

As an instructor and former manager of software developers I've had to
work with people from all cultures with varying levels of command of the
English language. Spelling and grammar mistakes are the norm but you
just look beyond that because they're doing a heck of a lot better
communicating with me in English than I could communicate with them in
their native language. Besides, I'm no English major myself.

Although I definitely know the difference between their, there and
they're, I still make slipups, and I get mad at myself, but I hope
nobody shoots me for it.  :-)

I do ask that people taking my course notify me of even the smallest
typo in the material because I find my own errors especially annoying.

...Tom

--
Remove "SpamMeNot-" from address if responding via email.

Tom Sheppard
We've slightly trimmed the long signature. Click to see the full one.
Re: What Software Engineering Process is best suited for Embedded Projects
Quoted text here. Click to load it

Keep to the subject

Site Timeline