|
Embedded C++ Now Supported By DDC-I’s SCORE® IDE
Phoenix, AZ — August 22, 2003 — DDC-I today
announced the addition of support for the Embedded C++ programming
language to the latest release (v2.4) of the versatile SCORE®
(Safety Critical, Object-oriented, Real-time Embedded)
multi-language IDE (Integrated Development Environment).
"Embedded C++ is a subset of the full C++
language focusing on support for embedded applications, offering
most of the functionality of C++ without the complexities and
overhead associated with that language. Adding support for Embedded
C++ not only offers more options to our customers developing
safety-critical systems, it also complements our C compiler by
adding new C++ capabilities," explains David Mosley, DDC-I
Engineering Manager and Product Champion for SCORE®.
According to Mosley, omitted from Embedded C++
are multiple inheritance, virtual base classes, run-time type
identification, exception handling, namespaces, and dynamic casts.
While the Embedded C++ subset also calls for the exclusion of
templates, the DDC-I implementers (long familiar with the
usefullness of Ada generics)
included support for templates. However, in keeping with the spirit
of Embedded C++, the complexity of the templates supported is
limited and the Standard Template Library from C++ is not supported.
Nevertheless, what remains is a fully functional subset which
provides the embedded application developer the capabilities they
require.
Embedded C++ fits snugly under the SCORE® umbrella
with the existing C and Ada compilers, using a single interface to
provide multiple-language application development and debugging.
Based on Win32 and OSF/Motif, the Windows-oriented
"point-and-click" character of the SCORE® GUI incorporates
project management tools, online help functions, tool activation and
a number of other efficient features, with a command-line interface
option always available.
The nature of SCORE's architecture offers the
ability to easily retarget legacy applications and fast retargeting
to future architectures. Major benefits include: development cost
reduction via shorter design cycles, better time-to-market for new
and/or redesigned products, fewer total programmer hours per
project, automated testing utilities, overall risk reduction through
improved code reuse/upgrade ability and simplified migration from
Ada 83 to Ada 95, or from Ada to C/Embedded C++.
"DDC-I has broad experience with developers
in the safety-critical embedded systems field in projects of every
size, and our focus as we continue expanding the capabilities of
SCORE® remains getting the best possible application performance out
of each target processor at the lowest possible cost to the
customer," Mosley concludes.
[
Back to Top ]
|
3rd Party Update |
 |
|
BAE
SYSTEMS Platform Solutions
600 Main Street Room 786
Johnson City, NY 13790
(607) 770-3582
(607) 770-2954 (Fax) |
The Real-Time Operating System Buying Decision
BAE SYSTEMS is a leading developer of complex systems for customers
worldwide. As such, we continually evaluate
and select real-time operating systems.
Our software and systems engineers have years of experience
making the same kinds of decisions facing you, the RTOS buyer.
We recognize that the needs of every customer and every program
are unique. And above all, we know that you need facts, not hype,
to make a sound decision.
So let’s discuss the buying decision…
Performance. Some
vendors will quote numbers to you that have little relevance to your
application. The fact is that the RTOS must have the performance
you need for your application.
While some of the numbers you will see in the sales literature can
sound impressive, typically, the performance you need is related
more to system design than it is to those numbers. The RTOS vendor
should be able and willing to support your system design for the
performance you need.
DO-178B "Level A Certifiability".
DO-178B provides guidelines for the production of
software for airborne systems and equipment. It discusses those
aspects of airworthiness certification that pertain to the
production of this software used on aircraft and aircraft engines.
When an RTOS has attained "Level A certifiability," it has
to have undergone a thorough review by a Federal Aviation
Agency-designated engineering representative (DER). The DER follows
a disciplined process to ensure that the objectives of Level A of
the DO-178B standard have been met.
FAA certification.
The FAA (acting through certified DERs) certifies systems,
not software. To certify a system, the DER reviews process,
software and system documentation and test results against FAA
guidelines. The software component of this review consists of the
documentation of the RTOS, as well as the applications code,
including the artifacts created during the development process.
Software maturity.
The development steps and documentation suggested in
DO-178B closely align with the software engineering processes
recognized by the Software Engineering Institute as maturity levels
3 and above. The Capability Maturity Model (CMM) for software is a
model for judging the maturity of the software processes of an
organization. When making your choice of RTOS, be sure to check on
the vendor’s SEI maturity level.
Tools. There
is a difference between "one-stop shopping" and getting
the right combination of development tools that you need to get the
job done. In today’s environment requiring extremely short
time-to-market solutions, a software developer does not want to be
tied to one solution. Nor do software engineers want to be locked
into having experience with only one development environment. Make
sure that the RTOS you choose is compatible with multiple vendors’
tools.
Life-cycle costs.
It is easy to be swayed by advertising touting
"royalty-free" software. As nice as that would be, this
doesn’t mean that there is no cost to the customer. More
important, each developer should look at overall life-cycle costs,
including development license fees, support fees, run-time fees and
any add-ons. Other considerations are:
-
The development environment. Does the vendor
require you to buy its development environment in order to use
their RTOS? If so, you are missing the opportunity to use other,
perhaps more productive, better-supported, and less expensive
development environments.
-
The RTOS design. Some ARINC-653 RTOS
implementations require software in previously tested partitions
to be recompiled when new applications are added to new
partitions. The testing costs associated with such an approach
can be huge — and even higher in safetycritical applications.
-
The certification package. Creating a
certification package that will meet rigorous system audits is
not a simple task. It should nott be taken lightly, since the
failure of the overall system could have catastrophic
consequences. The documentation in an RTOS certification package
has to support the system certification. Before
purchasing a certification package for an RTOS, review its
contents and understand the development process used to create
it.
Consider the CsLEOS™
Real-Time Operating System
Performance. CsLEOS™
RTOS performance has been proven on the C-17 program and on the
Pegasus unmanned air vehicle. The experienced CsLEOS™ RTOS product
team is
prepared to support you with the
performance you need for your application.
DO-178B "Level A Certifiability." Many
of you — our customers — were involved with the development of
this standard. We recognize this because we also helped to author
the DO-178B standard. No other COTS RTOS vendor has this
pedigree or experience base.
Many RTOS vendors use standard commercial
software development practices to develop and test their products.
They are only recently beginning to look at what the DO-178B
standard means to them. Consequently, they are trying to force-fit
their prior software design methodologies into the DO-178B process.
The CsLEOS™ RTOS product team has followed the
software development practices advocated by the DO-178B document
since before the document was released, continues to do so,
and will do so in the future (after all, as a major systems
supplier, the CsLEOS™ RTOS is our own operating system of choice,
too). We understand your DO-178B needs better than any other COTS
RTOS provider. Because developing systems certified to DO-178B
Level A standards is our legacy.
FAA certification.
Because we developed the CsLEOS™ RTOS following
DO-178B, Level A guidelines, we are able offer a standard
certification package covering the entire kernel, the ARINC 653
applications programming interface, and the processor support
package. As with any RTOS, the user will need to produce
certification artifacts for system-unique software. The CsLEOS™
RTOS certification package has already undergone the DER review,
saving our customers the expense. You, the customer, are provided
with support for the RTOS components of the artifacts you need for
your system certification. The CsLEOS™ RTOS certification package
results in lower risk to you and significantly
lowers your system certification costs.
Software maturity.
BAE SYSTEMS is proud to be one a handful of companies
with software teams working at SEI CMM level 5, with more than 60%
of our software engineers at Level 4. What does this mean to you?
You can be confident that the software behind the CsLEOS™ RTOS was
developed using high-quality development processes. You can be
confident that the CsLEOS™ RTOS was developed to the highest
levels of configuration control and management, independent software
quality assurance, and thorough software testing methodologies —
all through a rigorous software development process.
Tools. Since
the CsLEOS™ RTOS was designed to be independent of any specific
development tool, our customers decide which development
environment to use. Of course, we have alliances with tool vendors
to help them provide even better products, but our customers
buy a vendor’s toolset because it is their tool of
choice, not ours.
Life-cycle costs.
BAE SYSTEMS Platform Solutions has developed scores of
safety-critical systems requiring FAA certifications, for Boeing and
Airbus civil aircraft as well as for General Electric, Rolls Royce,
Snecma and CFM International aircraft engines. We have developed
flight controls and avionics for virtually every aircraft flown. Our
development processes have met the tough standards of the Department
of Defense as well as the United Kingdom’s Ministry of Defense.
When it comes to understanding safety-critical
aircraft hardware and software systems, BAE SYSTEMS has no peer.
What this means to you, as an RTOS buyer, is that we understand all
the issues you face in having your product certified, not just those
related to the RTOS.
The approach taken in the development of
the CsLEOS™ RTOS reduces your overall life-cycle costs. The CsLEOS™ RTOS approach to implementing the ARINC-653
open operating system standard reduces your testing costs and
decreases your software development costs. The CsLEOS™ RTOS
employs multiple scheduling modes, multiple partition durations,
separately loadable images, and real-time extensions that add design
flexibility not offered by any other COTS RTOS.
Our tremendous legacy supporting safety and
flight critical systems gives the CsLEOS™ RTOS product team the capability to provide you
with both software and systems support for the life of your product —
at a level of competence
unparalleled by anyone in the COTS RTOS industry!
The CsLEOS™ RTOS is in it for the long haul …
and for you.
Trademarks referred to in this paper are the
property of the identified trademark owners.
For more information about the CsLEOS™ RTOS,
see our web site at http://www.csleos.com,
contact us at 607-770-3082 or e-mail csleos-support@baesystems.com.
© Copyright 2003, BAE SYSTEMS Platform
Solutions, All Rights Reserved.
[
Back to Top ]
DDC-I Offers Current TADS-68xxx Customers A
Budget-Conscious Windows Migration Package
Phoenix, AZ — August 15, 2003 — Streamlining the
transition from VAX or UNIX-hosted development systems for their existing
TADS user base, DDC-I today announced the availability of their Windows™
(NT/2000/XP) migration package, now also available for TADS-68xxx customers.
Fully customizable, it offers current TADS (68xxx, 1750A & i960)
customers a direct, affordable migration path to the most popular PC-based
network and enterprise computing platform.
"Allowing customers to define which tools and
support they require, rather than handing them a rigid list of tiered
options, is why we created a flexible TADS for Windows migration
package," explains Harold "Bud" Blum, DDC-I Senior Software
Engineer and Product Champion for the TADS product line.
Customers dictate their package parameters to create a
least-cost migration path with DDC-I’s expert guidance. To keep
recurring costs level, software support from any current license agreement
carries over, and the customer has complete freedom to select the quantity
of seats to rehost and whether to upgrade their software versions during
the migration. All necessary license transfers and keys to replace current
TADS licenses are included.
Two days of onsite consulting are also included in the
package — at no additional charge — to assist with rescripting, tool
adaption, memory and segment set up, related Ethernet work, board support
packages and a final project report with detailed recommendations.
"Our customers safety-critical software
development tools have to keep pace with the latest development
environments, and upgrading the TADS products to the Windows platform
gives them the ability to handle such taxing upgrades with minimal
disruption to the development environment they depend on," concludes
Blum.
[
Back to Top ]
Keeping
the Customer Happy
By Linda Rising
risingl@acm.org
www.lindarising.org
When I teach a class on Customer Interaction
Patterns, I always emphasize the "root" pattern, which I
believe is the key to all customer interaction. This pattern is
called "It’s a Relationship, Not a Sale." I described
this pattern in a previous article [http://www.ddci.com/news_vol3num2.shtml#Customer].
However, the pattern that usually generates the most discussion in
the class is called "Customer Relief," the pattern that
addresses the challenge of dealing with an angry customer.
We all know that it costs more to attract new
customers than to keep the old ones. All the investment in
attracting and keeping customers can be lost in a single moment—when
the customer has a problem. How customer problems are handled and
how your customer feels during the process are critical in your
customer relationship management. If customers cannot get the help
they need, or the process is laborious and frustrating, there is a
good chance you will lose them.
No one likes to get a complaint from a customer,
but it’s worse when customers don’t complain. If some customers
are walking away unhappy without letting you know, then you’re in
trouble. The damage they can do to your business is a lot worse than
if they let you know they’re dissatisfied. What they don’t tell
you, they’ll tell other people—a lot of other people. An unhappy
customer spreads a virus of negativity about your business
[Abrams02].
A customer who never tells you about a problem
doesn’t give you a chance to correct it. If a salesperson is
unpleasant to me and I don’t let the manager know, I allow that
person to continue to do more harm. If I complain, then the manager
can train, counsel, or if necessary, fire the person.
In the long run, profits depend on your company’s
ability to satisfy your customers. The following findings from a
summary of recent studies conducted by Technical Assistance Research
Programs, Inc. (TARP) of Arlington, Virginia, should be sobering to
any business owner:
-
About 50% of the time, customers who have a
problem with a product or service are not likely to tell a
company about it.
-
50% to 90% of these "silent
critics" will probably take their future business to a
competitor.
-
Even when a customer does complain, one out
of every two will not be thoroughly satisfied with the company’s
efforts to solve the problem.
-
Dissatisfied customers typically tell between
eight to 16 other people when they have had an unsatisfactory
experience with a company.
-
Negative information has twice the impact of
positive information on purchasing decisions.
-
Word-of-mouth is one of the most important
factors influencing a customer’s decision to buy from a
company.
-
It costs between two to 20 times as much to
win a new customer as to retain an existing one who has a
complaint.
As the TARP studies show, complaints are one of
your most important business opportunities; often returning five
dollars in revenue for every one dollar spent on complaint handling.
See a complaint for what it is: an opportunity and not a
confrontation. Customers who complain are giving you a chance to
improve your company and create a stronger relationship with them.
If you handle the complaint well, you can turn a dissatisfied
customer into a customer for life. [Abrams02]
I guess too many of us have had something like
the following experience:
You’re at a trade show, wearing a badge that
clearly identifies you as an employee of a given company. There are
some customers who feel that this clear association means you are
fair game for resolving their latest complaint about any product
your company might produce. One of these disgruntled customers spies
you standing in the aisle and strides up to buttonhole you angrily
and regale you with the details of his latest frustration with a
particular product. Let’s listen in to one angry exchange.
Customer: Hey! Do you know I’ve been trying to
get through to you for months!
You: Huh?
Customer: I’ve been having problems with the
gizmos on that latest Framitz your so-called development team dumped
on me!
You: Framitz? I work in the Whatists division. I
really don’t know anything about the Framitz area.
Customer: Let me tell you, that Framitz is a
piece of garbage. It not only won’t install properly but I can’t
connect with the database and our best people can’t seem to come
up with a workaround! What are you going to do about it? I’ve been
thinking about buying a Framitz from Microhard instead of you guys!
What do you think about that?
You: Well, er, I don’t know what I can do. I’ve
only been with the company a few months and I’m not even sure who
the Framitz people are. Maybe you could go talk to one of the guys
at the booth? It’s a couple of aisles over (pointing vaguely).
Customer: That’s it! Shirk responsibility! That’s
the way you people always treat your best customers! That’s why I
can never get through to your so-called help desk! I never get any
help from you people! I’m going to tell my boss about this! He’ll
have something to say about it! What’s your name?
OK. You’ve got the picture Sound familiar? You’re
caught. It’s not your fault that this guy’s Framitz doesn’t
work. What’s a person supposed to do?
It’s easy in some situations to write off a
belligerent customer. This guy is unreasonable! He’s angry and isn’t
making sense! He didn’t even hear that you don’t know anything
about the Framitz! How do you help someone like that? Someone who
doesn’t even hear what you say?
The answer—the solution in the pattern
"Customer Relief"—recommends something like the
following substitute scenario.
Customer: Hey! Do you know I’ve been trying to
get through to you for months!
You: I’m sorry? What did you say? You’ve been
trying to get through to me?
Customer: I’ve been having problems with the
gizmos on that latest Framitz your so-called development team dumped
on me!
You: I’m very sorry to hear that! I work in the
Whatists division, but I’m concerned about the quality of all our
products. I promise to help you in any way I can. I’m Dudley
Affable. Please tell me your name and company. What seems to be your
problem?
Customer: I’m Querulous, Henry Querulous from
Case Sensitive. OK. Now we’re getting somewhere! Let me tell you,
that Framitz is a piece of garbage. It not only won’t install
properly but I can’t connect with the database and our best people
can’t seem to come up with a workaround!
You: I’m glad to meet you, Henry. Let’s walk
over to the booth. The Framitz product manager is there and I’m
sure he can help you. By the way, here’s my card. I’ve only been
with the company a few months, but regardless of division, we all
know that customer concerns on any product concern all of us.
Customer: OK. Well, thanks, Dudley. I hope this
guy can help.
You: Here we are. Fred, this is Henry Querulous
from Case Sensitive. He’s having some problems with our Framitz
and I thought you would be able to help him out.
Let’s hope that Fred understands the pattern,
too.
For both Dudley and Fred, it’s important to
stay calm, no matter how heated the customer’s attacks become.
When you remain calm, you keep the discussion from escalating. Focus
on the clear difference between your role in the company and you. It
keeps the customer’s attacks from being taken personally. Focus on
the service or the product and not on personalities.
Don’t panic. No one knows all the answers and
customers know that. If you are asked a question you can’t answer
then take down the question and promise a response later. You now
own that question and must be sure to honor that commitment. Never
lie to a customer.
When you’re calm and clearly listening and
responding honestly and with concern, "I understand. That must
be very upsetting. I can see how you would be worried about
that," the customer may respond by matching your tone and
demeanor. Apologize. Saying you’re sorry is an important first
step and lets customers know that you care about their problem.
Always use tact, courtesy, and a professional manner.
Don’t give excuses like, "It’s company
policy." The only company policy you should have is: "We
do our best to solve every problem. We want our customers to be
completely satisfied." Don’t blame the customer, "You
ordered the wrong item. You didn’t follow directions." The
customer is not always right, but they always believe they are. When
you blame a customer, they see it as a personal attack and will ask
themselves, "Why go back to a company for insults?"
[Abrams02]
Admit your errors and solve the problem. Every
business makes mistakes. Don’t take complaints as personal
attacks. Just be determined to get to the root of the problem and
make things better for the customer. If something is wrong, fix it.
In some situations, exchanging names and cards
gives you something to do to keep the customer busy. We all like to
deal with people we know, so exchanging this small amount of
information is a step in that direction. Be sure to remember the
name and use it to reassure the customer that a solution will be
found.
In some cases, if possible, consider taking the
customer to a private area or office so the customer can voice his
concerns without upsetting others near-by.
Listen, listen, listen. Try to understand what
the problem is. Show consideration for the customer. Be sensitive to
what the customer is saying and the feelings behind the words.
Showing respect quickly, especially when dealing with an irate
customer, can in many cases, help diffuse the situation.
However, you can only empathize to a point.
Everyone has a different level of tolerance. When someone crosses
your personal line, escalate the problem—take it to your manager.
Do it before you lose your temper!
Until you’ve identified the real problem, you
can’t solve it. It's easy to just weigh in and start telling the
customer what to do. Often we hear part of a customer’s problem
and then quickly respond with a solution that does not work. Ask
questions. Get the customer to say what is happening. The customer
may change the story a few times or focus on different aspects but
continue to ask questions until you can state the problem from the
customer’s point of view with confirmation from the customer that
you understand the problem. Listen to what’s being said and then
say it back to them. You may have to iterate through this several
times to finally isolate the real problem.
If the customer has ideas, take suggestions and
discuss possible solutions. Be sure to describe the cost of each
proposed solution and any effect on the next release of the product.
Don’t hide any information; that will only cause dissatisfaction
later. Sometimes it’s difficult to see what the customer really
wants, even when the problem has been identified. Sometimes
customers can surprise you with how little it will take to make them
happy.
Even when the customer remains stubborn, focus on
what can be done instead of resisting every suggestion by focusing
on what you can’t do. Sometimes there will be a personality clash
– if you’re smart enough to recognize this – call in someone
else who is more compatible to resolve the customer’s issue.
Be sure you and the customer both have the same
understanding of what the solution will be. Repeat it and get a
favorable response from the customer. Yes, we both agree that this
will happen by this date. After the problem has been solved,
follow-up with the customer to make sure the solution was
satisfactory.
Never overpromise. Customers always want their
problems solved yesterday but when you can’t deliver on an empty
promise, you’ll add fuel to the fire. "Trust Account" is
another important pattern. Your job in developing a relationship
with the customer is to build that relationship on trust. Nothing
destroys trust faster than failing to fulfill a promise made to
solve an unhappy customer’s problem. It’s strike two and you’re
out!
Stephen Covey [Covey89] sees customer complaints
as opportunities to build the customer relationship. He tells the
story of a department store chain that has created a loyal customer
base. Any time a customer comes into the store with a problem, no
matter how small, the clerks immediately see it as an opportunity to
build the relationship with the customer. They respond in a
cheerful, positive way to solve the problem and make the customer
happy. They treat the customer with respect, giving such second-mile
service that many of the customers wouldn’t dream of going
anywhere else.
This principle is also true in sales. An
effective sales person first seeks to understand the needs, the
concerns, and the situation of the customer. The amateur salesman
sells products; the professional sells solutions to needs and
problems. It’s a totally different approach. The professional
learns how to diagnose and how to understand. He learns how to
relate potential customer’s needs to his products and services.
And, he has to have the integrity to say, "My product or
service will not meet that need," if it will not.
It’s important for you to listen to what your
customers do not like—and to show that you have heard them.
Problems with a product or purchase do not necessarily drive
customers away. Poorly handled problems do.
Sometimes, even small concessions can make a big
difference in customer satisfaction. Here’s an interesting story
from an interesting book [Greene98] about a customer interaction
guideline: If it means essentially no effort and it makes your
customer happy, do it—make the change, add the feature, re-word
the document, whatever the customer wants.
Winston Churchill was an amateur artist, and
after World War II his paintings became collector’s items. The
American publisher Henry Luce, creator of Time and Life magazines,
kept one of Churchill’s landscapes hanging in his private office
in New York. On a tour through the United States, Churchill visited
Luce in his office, and the two men looked at the painting together.
The publisher remarked, "It’s a good picture, but I think it
needs something in the foreground—a sheep, perhaps." Much to
Luce’s horror, Churchill’s secretary called the publisher the
next day and asked him to have the painting sent to England. Luce
did so; mortified that he had perhaps offended the former prime
minister. A few days later, however, the painting was shipped back,
but slightly altered: a single sheep now grazed peacefully in the
foreground.
"If it makes 'em feel better, do it!"
said a co-worker, when asked why he added some information to a new
trouble report form our team was developing. When the team began to
discuss whether the information should have been added, my colleague
pointed out that as long as it didn't hurt, he thought just doing it
would make the requestor feel better and mean a better acceptance
for the new document, so we made the change.
The way to be successful in solving customer
problems is to have a customer-centric mentality throughout your
organization. There must be a continuing effort on the part of all
employees to constantly improve. It’s impossible to get it right
the first time. The important thing is to continue to learn and
improve.
It’s really all about treating others as you
would want to be treated, accepting responsibility, and
understanding that your customers are your business. The customer
isn’t always right, but it’s your job to make them feel that
they are always important.
References
[Abrams02] Abrams, R., "Silent
Dissatisfaction can be bad for business," The Arizona Republic,
June 24, 2002, D2.
[Covey89] Covey, S.R., The 7 Habits of Highly
Effective People, Simon & Schuster, 1989.
[Greene98] Greene, R., The 48 Laws of Power,
Penguin Books, 1998.
About the Author
http://www.lindarising.org
risingl@acm.org
Linda Rising has a Ph.D. from Arizona State University
in the area of object-based design metrics. Her background includes
university teaching as well as work in industry in telecommunications,
avionics, and strategic weapons systems. She is the author of numerous
articles and has published three books: Design Patterns in Communications,
The Pattern Almanac 2000, and A Patterns Handbook. She is currently
writing a book with Mary Lynn Manns: Introducing Patterns (or any
Innovation) into Organizations, to appear in 2003.
[
Back to Top ]
|