May 2002   Vol. 3 Issue 5

 

Inside This Issue  
     


Subscribe to DDC-I Online News and receive monthly updates automatically


Previous Issues



Success Stories

Current Products

****** NEW! ******
Custom Solutions


Three Year Anniversary for the
Danish Micro Satellite "Øersted"

DDC-I Ada Compiler System (DACS™) Onboard

By Erik Jensen
President DDC-I A/S

On February 23, 2002 the first Danish Micro Satellite celebrated it's 3rd birthday in orbit, transmitting information for 2 years longer than originally expected. The satellite continues to provide interesting data concerning the earth's magnetic field.

Before the satellite was launched into orbit on February 23, 1999 at 11.29.55 (Danish time) from the Vandenberg Air Force Base in California, Danish TV-watchers had witnessed a total of ten unsuccessful attempts to get Denmark onto the list of Nations building and controlling satellites. After waiting for many months, the Delta II rocket finally took off, and brought a little European nation into the space age. The long wait was brought to an end after the 11'th launch attempt had been delayed by 20 minutes to allow a local freight train to get out of the way.

The successful launch was appropriately marked by Danish authorities, with a stamp portraying the satellite in orbit around the earth. .

The Øersted satellite was named after the famous Danish physicist H. C. Øersted (born 1777, died 1851). "Dare to think" - Øersted once said and did the unthinkable: He combined two, at that time considered separate subjects - magnetism and electricity.

The satellite was placed in orbit 850 kilometers above the earth. Every day it circles around the earth 6 to 8 times, and transmit its data about the earth's magnetic field and particle radiation from the sun. The information is gathered by three different antennae located in Denmark on two universities and on the Danish Meteorological Institute in Lyngby close to DDC-I headquarters in the same suburb of Copenhagen.

In November last year, some of the scientific results were published by the international scientific magazine "Geophysical Research Letters" by a team of 27 scientists headed by Nils Olsen from the Danish Space Agency.


Click to
Enlarge

Front page of the Geophysical Newsletter, showing a detailed map of the Earths magnetic field in the year 2000. The results are considered the most accurate mapping made so far. (Source: Geophysical Research Letters, 2000).

The first picture shows the strength of the Earth's Magnetic Field. The field is the strongest (approx. 60.000 nanotesla) close to the magnetic poles in Canada and south of Australia, and the weakest (approx. 30.000 nanotesla) close to the equator. The Øersted satellite measures the field with an accuracy better than 3 nanotesla.

Ideas about making the first Danish micro satellite dates back to the early 90's, and initial funding was established in 1993. DDC-I became involved with the project early on and the software for the satellite was developed with the DDC-I Ada Compiler System (DACS) by engineers from several players in the Danish Industry including TERMA & DDC-I. Many other scientific organizations and universities have been involved with the program including the Danish Space Agency, DMI, DTU, Aalborg University, ESA, NASA and many more.

Additional information is available at www.oersted.dk (currently only in Danish).

[ Back to Top ]

On the Front Lines

Monica Holt
DDC-I, Inc.
Sales Support Administrator

As Sales Support Administrator for DDC-I, Inc, Monica Holt holds a key position in DDC-I’s ongoing commitment to being #1 in Customer Care. Monica began her career with DDC-I in 1998, where she worked as a Customer Care Coordinator. This background provided valuable experience for her current responsibilities which include sales of technical support packages as well as maintenance of all contracts, agreements, quotes & customer files. 

Acting as liaison for local traveling sales staff, Monica’s open & helpful personality is strategic in fielding customer issues. She is also responsible for working closely with the shipment department, coordinating necessary paperwork for product shipments. 

Monica grew up in Phoenix, and is currently an undergraduate at the University of Phoenix where she is studying Business/E-Business. She enjoys great food, wine, art, music and traveling to new places.

[ Back to Top ]

3rd Party Update

Top Graph’X Targets Embedded Systems

Top Graph’X has been developing high quality middleware components in Ada for more than a decade. Their initial product, XInAda, is the only X-Windows environment that correctly supports Ada tasking. Recently Top Graph’X has been focusing on various Object Management Group™ (OMG™) specifications. These products facilitate object-oriented distributed programming, using the Common Object Request Broker Architecture (CORBA™). In 1997 Top Graph’X was one of the first ORB vendors to support CORBA application development in Ada.

During the 2001 fiscal year Top Graph’X initiated a vigorous development effort, culminating first quarter, 2002, to bring new products to the field. They now support CORBA applications developed in Ada95, Java, and C++ as well as real-time CORBA. This makes high quality, reliable CORBA technology available for almost any environment. Fourth quarter 2002 will bring OrbRiver-Critical, providing effective, trustworthy CORBA technology for embedded systems applications.

OrbRiver-Critical implements the minimum CORBA, CORBA messaging, and real-time CORBA OMG specifications. It is based on standard OrbRiver technology, and provides a complete set of configuration parameters to tailor resources to your precise needs. These features, together with pluggable transport, inherent reliability, and high performance, provide an unprecedented opportunity for using middleware to reduce the cost and complexity of embedded systems development.

http://www.topgraphx.com
Europe (33) 1 69 26 97 88
U.S. (719) 479 2297
Email: info@topgraphx.com

[ Back to Top ]

Tech Talk:

Associating DACS/NT with File Types 
in the Windows Shell

By Richard L. Frost
Senior Software Engineer; DDC-I, Inc.

The Windows shell may be configured to automatically launch the DACS Integrated Development Environment (IDE) (version 4.7.15 and newer) when a file is opened from the Windows Explorer or Command Prompt. The DACS GUI supports two methods of opening files.

  1. File added to the invocation command line. Using this method, a new instance of the GUI will be launched and the file will be opened in a window of that GUI.
  2. Using Dynamic Data Exchange (DDE). Using this method, a DDE conversation will occur between the Windows shell and an existing GUI instance. If the GUI is not already running, a new instance of the GUI will be launched and the Windows shell will start the DDE conversation with that GUI. The Windows shell will then inform the GUI via the DDE conversation about the file to open.

Both approaches require the registry to be updated with information associating the DACS GUI with the file extensions that should launch the tool. The following steps describe the process for adding file associations to the Windows shell.

  1. Open the registry. Type regedit in a Command Prompt window. 
  2. Create/Edit a key in HKEY_CLASSES_ROOT for each file extension that should be associated with DACS. Specify the value of the key to be a string such as DACSFile. For example, HKEY_CLASSES_ROOT\.ada should be set to DACSFile
  3. Create a key in HKEY_CLASSES_ROOT named DACSFile
  4. Create a key in DACSFile named shell
  5. Create a key in shell named open
  6. Create a key in open named command
  7. Assign the command key the value "<DACS installation dir>\dacs.EXE" /dde "%1". For the 1st approach using a new GUI for each file, remove the /dde from the invocation command. 
  8. If the DDE approach is desired, create a key in open named ddeexec, and assign it the value [open("%1")]
  9. A DACS icon may also be associated with the file type by creating a key DefaultIcon in the shell key. The value of this key should be the path to dacs.exe followed by a comma and the icon number. The DDC-I logo is icon 1. For example, “<DACS Installation dir>\dacs.exe”,1. This should result in the following settings in the registry: 
     HKEY_CLASSES_ROOT
          .ada DACSFile
          .alb DACSFile
          DACSFile
              shell
                   open
                       command "<DACS installation dir>\dacs.EXE"/dde "%1"
                       ddeexec [open("%1")]
    
              

[ Back to Top ]

Postmortems and Checkups

If You Knew at the Beginning What You Knew at the End, 
How Much Would You Have Saved?

By Linda Rising

Many software development organizations use postmortems to improve their processes. This can be effective but it doesn’t really help the project that has just ended. Not only should teams stop at the end of a project to capture lessons learned but there should also be checkups before the project ends. In much the same way that good health involves preventive care to help us live longer, healthier lives, projects can pause for a quick reading and take corrective action while there is still time to apply the lessons learned.

Checkups are especially appropriate if your team is following an iterative development process. At the end of each iteration, take time to reflect. The benefits are easier to identify because you’re more likely to remember things that happened a few weeks ago and a checkup takes a lot less time than a full-blown postmortem.

But, wait, let’s back up. I made one of those blanket assumptions at the beginning of the first paragraph. Just in case your organization needs a reminder about the benefits of postmortems, let’s have a little review.

First of all—the word "postmortem." It calls up a vision of a group of concerned analysts gathered around a cold, dead body. Most of the projects I’ve been on produced something worthwhile. The team should celebrate success as well as mourn mistakes. A good postmortem, or as I would prefer to call it, and will from now on in this article, a good retrospective provides an opportunity to see what went well as well as those oh-so-easy-to-identify-things-that-didn’t-go-well that we don’t want to repeat.

Conducting retrospectives is one of my professional interests. As an independent consultant, I help teams by facilitating retrospectives and supporting the follow-on activity of building on the knowledge captured in the process to make future projects better. There are others who are in the retrospective business. We met recently in the first ever retrospectives facilitators’ conference in a little town on the Oregon coast. We met to create an identity and to begin to share information about how we conduct our businesses and how we can improve. We also plan to create patterns: both patterns for retrospectives and patterns for projects based on our collective experience. In my next article, I will talk more about these patterns.

Let me tell you a story about a retrospective, one of the most valuable I’ve ever facilitated. You can judge for yourself whether this kind of experience would help your organization. All names have been changed to protect the company and the team.

The team lead called me in early January. His voice was full of despair, "Linda, our project has just been cancelled. These guys are really upset. Some have already given their notice. I can’t blame them. They worked over Christmas to get last minute fixes done and now management says it’s over. I want to make sure that this kind of thing never happens again. I don’t know whether there are patterns here but we need to learn from this." Of course I took on this messy assignment. Failed projects happen. But when they do, team members take that failure personally. They carry that guilt and anger with them to the next project—even if the project is in another company. If these issues are not addressed and continue to build in subsequent projects—burnout is inevitable.

Fred, my good friend and colleague, agreed to help me with what promised to be an especially challenging retrospective. This was a large team that had been together for over a year. I would need someone with me to manage this session.

My mentor, Norm Kerth, has written an excellent book [Kerth01] on this important part of the development cycle. He advises taking teams off-site for three days for an end-of-project retrospective. I usually don’t have the luxury of either the off-site location or the extensive amount of time. Most managers are lucky to find a couple of hours and the budget to buy lunch and count themselves lucky to have that! In our story, I had two hours to get 50 people through a retrospective.

Since the group was so large, we decided to use "quiet storming," a technique that allows each person on the team to write his feelings about any part of the project on a large index card and then post the card on the wall. We had categories across the top of the wall: Requirements, Design, Coding, Testing, Customer Interaction, and so on. Sometimes a card won’t fit the existing categories and a new category is added. As cards are written, they are brought to the wall and posted. Writers peruse the posted cards and as they do, ideas for more cards are generated. Anyone can write anything and all cards are anonymous.

As the wall began to fill up, people were spending more and more time, reading the cards. At one point, nearly everyone was standing at the wall. It was eerie. It reminded me of the Vietnam War Memorial. People were re-living the history of the project, dredging up bits and pieces, flashes of insight, painful moments, happy moments. I let them have time for this.

At this point, it was clear that no more cards were being added, so I asked them to look at the cards in each category and see if they could detect any trends. I asked them to look at the bigger picture, look beyond the details on the cards and see if we could capture: (1) What went well. We need to document those good things—and there are always good things—that we’re afraid of forgetting. (2) What should be done differently? Let’s not make the same mistakes again. (3) What do we still not understand? What puzzles us?

As we became more analytical, people began to think ahead and move beyond some of the painful recollections of this project. They could easily identify good things. They could see that there had been successes—things they could be proud of. They were able to talk about things that hadn’t worked well and what they would like to correct before the next project.

We were able to identify some potential patterns—from the good things and some action items—from the things that should be corrected on the next project. Follow-on meetings were planned and responsibilities assigned for the patterns and the action items.

Toward the end of this part of the exercise, someone in the back of the room said, "What good is all this anyway? We know nothing will come of it. We’re just going to go out there and do this all over again. We’ve already started to make some of the same mistakes on the next project and we’ve only been on it a few days!" To my very great surprise, the team lead jumped up and said, "I promise all of you that what we have captured today will be presented to every other manager in this company. This will not just go into some web page where no one will ever read it. I’ll take it all the way to the executive council." I was impressed—I think the other team members were, too, because no one said anything for nearly a minute. They were all taking this in. Maybe this company really could learn from its mistakes. Maybe things really would get better on the next project. Maybe there really was hope.

I guess that’s the point of the whole story. Without the retrospective, the team would never have found any hope. Each team member would have carried his burden onto the next project and the next, maybe never completely recovering. Good companies understand that what people produce reflects the things people bring to it.

One of my favorite stories about this phenomenon is from a book by Ruth Sawyer [Sawyer76].

He was Bavarian, little, very old. He had come to measure our davenport for re-covering. With painstaking care he got out of his coat and into his apron of blue-and-white-striped ticking, adjusted his pincushion, his shears, hung his tape measure about his neck. He got only as far as measuring the front; and there he sat, on his heels, while he told me about his experience as an under-master in the palace of King Ludwig. He talked about a special event held every year when everyone who worked for the king took part in an opera. Those who could sing were in the chorus. Those who played instruments made up the orchestra. A conductor from Dresden was brought to direct. The soloists came from the big cities. The great Wagner came. For a week the celebration was held; then everyone went back to work.

What the Bavarian upholsterer said at the last I have always remembered: "All the goodness, the lift of the heart that we got from playing those operas, we would put back into our work—in the draperies and tapestries we hung, in the cabinets we made. Nothing was lost. That is how it should be when you have experienced something great and beautiful. And so, my lady, something of those operas will go into your sofa."

There it is. Software developers or creators of any product put into their work the joy they find in their lives. When the joy has been taken away by hopeless schedules, 60-hour-weeks, missed ball games or piano recitals, it becomes harder and harder to retain that optimism and heart we software junkies are so proud of. One of the best ways of getting that back is a retrospective.

Our story has a happy ending. The team lead really did spread the word about lessons learned from the project. A report really was presented to the executive council. Several good patterns were also written and I’ll pass some of those along in the next article where I’ll share some ideas for making sure that the lessons learned in a retrospective or checkup don’t get lost.

For more information on retrospectives, please send me some e-mail: risingl@acm.org and check out the Retrospectives web site: http://www.retrospectives.com/

References

[Kerth01] Kerth, N., Project Retrospectives: A Handbook for Team Reviews, Dorset House, 2001.

[Sawyer76] Sawyer, R., The Way of the Storyteller, Penguin Books, 1976.


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 Fall 2002.

[ Back to Top ]



Upcoming
Training:

Introduction to Ada95:
The Language for Safety Critical Applications
Nov. 13, 2002

---------------

FAA DO-178B Basic Seminar
Nov. 14, 2002

---------------

FAA DO-178B Applied Seminar
Nov. 15, 2002

---------------

Seating is Limited!

Click Here for More Info




Check out DDC-I's

Support Program

 

DDC-I Online News is published by DDC-I, 400 N. 5th Street, Phoenix, AZ 85004. Editor Jennifer Sanchez.
 Comments and submission of articles are welcome and should be sent to the editor at the address above or via email at editor@ddci.com.

Copyright © DDC-I A/S and © DDC-I, Inc. August, 2004 - Last Updated August 09, 2004 01:26 PM webmaster@ddci.com