Wednesday, March 07, 2007

The software that drives NASA Space Shuttle

If you read my previous blog, i have extracted a few paragraph from an article that appeared at http://www.fastcompany.com/online/06/writestuff.html called The right stuff kicks in at T-minus 31 seconds.

I have repeated the opening section of that article because i thought it is really interesting

The right stuff kicks in at T-minus 31 seconds.
As the 120-ton space shuttle sits surrounded by almost 4 million pounds of rocket fuel, exhaling noxious fumes, visibly impatient to defy gravity, its on-board computers take command. Four identical machines, running identical software, pull information from thousands of sensors, make hundreds of milli-second decisions, vote on every decision, check with each other 250 times a second. A fifth computer, with different software, stands by to take control should the other four malfunction.
At T-minus 6.6 seconds, if the pressures, pumps, and temperatures are nominal, the computers give the order to light the shuttle main engines -- each of the three engines firing off precisely 160 milliseconds apart, tons of super-cooled liquid fuel pouring into combustion chambers, the ship rocking on its launch pad, held to the ground only by bolts. As the main engines come to one million pounds of thrust, their exhausts tighten into blue diamonds of flame.
Then and only then at T-minus zero seconds, if the computers are satisfied that the engines are running true, they give the order to light the solid rocket boosters. In less than one second, they achieve 6.6 million pounds of thrust. And at that exact same moment, the computers give the order for the explosive bolts to blow, and 4.5 million pounds of spacecraft lifts majestically off its launch pad.
It's an awesome display of hardware prowess. But no human pushes a button to make it happen, no astronaut jockeys a joy stick to settle the shuttle into orbit.
The right stuff is the software. The software gives the orders to gimbal the main engines, executing the dramatic belly roll the shuttle does soon after it clears the tower. The software throttles the engines to make sure the craft doesn't accelerate too fast. It keeps track of where the shuttle is, orders the solid rocket boosters to fall away, makes minor course corrections, and after about 10 minutes, directs the shuttle into orbit more than 100 miles up. When the software is satisfied with the shuttle's position in space, it orders the main engines to shut down -- weightlessness begins and everything starts to float.
But how much work the software does is not what makes it remarkable. What makes it remarkable is how well the software works. This software never crashes. It never needs to be re-booted. This software is bug-free. It is perfect, as perfect as human beings have achieved. Consider these stats : the last three versions of the program -- each 420,000 lines long-had just one error each. The last 11 versions of this software had a total of 17 errors. Commercial programs of equivalent complexity would have 5,000 errors.
This software is the work of 260 women and men based in an anonymous office building across the street from the Johnson Space Center in Clear Lake, Texas, southeast of Houston. They work for the "on-board shuttle group," a branch of Lockheed Martin Corps space mission systems division, and their prowess is world renowned: the shuttle software group is one of just four outfits in the world to win the coveted Level 5 ranking of the federal governments Software Engineering Institute (SEI) a measure of the sophistication and reliability of the way they do their work. In fact, the SEI based it standards in part from watching the on-board shuttle group do its work.
The group writes software this good because that's how good it has to be. Every time it fires up the shuttle, their software is controlling a $4 billion piece of equipment, the lives of a half-dozen astronauts, and the dreams of the nation. Even the smallest error in space can have enormous consequences: the orbiting space shuttle travels at 17,500 miles per hour; a bug that causes a timing problem of just two-thirds of a second puts the space shuttle three miles off course.
NASA knows how good the software has to be. Before every flight, Ted Keller, the senior technical manager of the on-board shuttle group, flies to Florida where he signs a document certifying that the software will not endanger the shuttle. If Keller can't go, a formal line of succession dictates who can sign in his place.
Bill Pate, who's worked on the space flight software over the last 22 years, says the group understands the stakes: "If the software isn't perfect, some of the people we go to meetings with might die.


For the entire article please refer to the link above

Ammar Sajdi
www.e-ammar.com
www.informobility.com
Amman Jordan
Oracle consultant

Software Craftsmanship (I)

I have spent most of my spare time last week to read an interesting book called SOFTWARE CRAFTSMANSHIP. The book basically evaluates the suitability of Software Engineering approach to Software Development; and compares and contrast its effectiveness in developing successful application. The book tries to emphasis the effectiveness of skilled Software developers (craftsmen). In essence, the author (Pete McBreen) is inclined towards stressing the role of craftsmanship as major factor in making software development successful, while advocating the Software Engineering should be left to huge projects.

I tend to agree with the author and i will attempt to touch upon some of the ideas that the book surfaces in this regard

In the beginning, let me articulate how IEEE defined software Engineering (1)

Software engineering is the application of a systematic, disciplined, quantifiable approach to development, operation, and maintenance of software, that is, the application of engineering to software

(1) IEEE standard computer Dictionary, Software Craftsmanship ISBN 0-201-73386-2 page 7

the software that runs NASA space shuttle was developed using Software Engineering approach (2)

What makes it remarkable is how well the software works. This software never crashes. It never needs to be re-booted. This software is bug-free. It is perfect, as perfect as human beings have achieved. Consider these stats: the last three versions of the program -- each 420,000 lines long-had just one error each. The last 11 versions of this software had a total of 17 errors. Commercial programs of equivalent complexity would have 5,000 errors.

But this amazing work comes with a price tag

"Most people choose to spend their money at the wrong end of the process," says Munson. "In the modern software environment, 80% of the cost of the software is spent after the software is written the first time -- they don't get it right the first time, so they spend time flogging it. In shuttle, they do it right the first time. And they don't change the software without changing the blueprint. That's why their software is so perfect."

"As the rest of the world struggles with the basics, the on-board shuttle group edges ever closer to perfect software. Admittedly they have a lot of advantages over the rest of the software world. They have a single product: one program that flies one spaceship. They understand their software intimately, and they get more familiar with it all the time. The group has one customer, a smart one. And money is not the critical constraint: the groups $35 million per year budget is a trivial slice of the NASA pie, but on a dollars-per-line basis, it makes the group among the nation's most expensive software organizations"

(2) http://www.fastcompany.com/online/06/writestuff.html

But if we do not have the leisure to spend $35 Million per year, may be software engineering is not for us!

The book then raises an interesting point based on the team that created SCRUM software development approach

"If a process can be fully defined, with all things known about it so that it can be designed and run repeatable with predictable results, it is known as a defined process. and it can be subjected to automataion. If all things about a process aren't fully known -- only what generally happens when you mix these inputs and what to measure and control to get the desired output -- these are called empirical processes"

If you think about software projects that you were involved in, who close did you ever get to the defintion given above.

With this introduction to the subject, you have probably gotton a feel about what the book is about. I will try, in later blogs, to shed more light about other ideas the the book presents

Ammar Sajdi
www.e-ammar.com
www.realsoft-me.com
www.palco-me.com

Monday, March 05, 2007

Smooth Sophisticate

The car that drives itself has arrived

I am facinated, not about cars themselves, rather about the technology being used in the realm of cars.
Do not get the impression that i am a car freak,,, but when you read on , you will appreicate the reason for this writing

The new Mercedes-Benz 2007 S Class is equipped with an adaptive cruise control system that comes with a short-range radar, yes a RADAR, mind you this is not an aircraft, it is a car.
This means that if you're stopped at a traffic light, and a car is in front of you, all you have to do is sit and watch. The S-Class will hold down the brakes for you, then accelerate when the lead car starts moving. Then it will brake when necessary. You could drive the length of Gardens Street with your feet on the dashboard; ALL YOU HAVE TO DO IS STEER.


Ammar Sajdi
www.e-ammar.com
oracle consultant

Saturday, March 03, 2007

CARdiac Confusion

I keep thinking of changing my 2003 BMW 525i car that i really like. There is a large assortment of modern cars with hefty price tags that induce CAR cardiac problems.


Yes price tags of >70000 USD are becoming easy on the ear for an entry 5 Serier BMW or 200 Mercedes.


anyway, let me not get into the discussion of whether one conscious should let go and accept driving such cars while the world is full of atrosities; carnage in Iraq and Palestine, Poverty in the third world contries, hunger is Africa etc.


the following is a list of cars that i potential could own soon .. help me choosing



Mercedes 350 SL

BMW 530i
Audi A5 -- Will be revealed this week
The All-mighty Cadillac
Ammar

Friday, March 02, 2007

in the Pursue of Zen

According to wikipedia

"Zen is a school of Mahayana Buddhism that places great importance on moment-by-moment awareness and 'seeing deeply into the nature of things' by direct experience"

Say what??

Moment-by-moment Awareness ... It is a moving statement,,, i must be missing something,, Can each of us ask the question, do we have moment-by-moment awareness, and what is that supposed to mean??

Let us move on.. Seeing deeply into the nature of things .. this is even more intereting!! it makes me feel joy when profound meaning are revealed after pausing at things and think about them rather than let them just fly by.

What is also more importnat is that Zen has been around for so long, but it went by me un-noticed for so long as well,,

The two lines of defitions mentioned above really cought my attention and are pushing me to further explore Zen in a practical way; maybe it sheds light onto shinny things that my mind just fails to see and enlighten me to see beyond what my direct senses can comprehend. If i can explore such things, it will make me more excited about life as i am just bored of the Normal issue that my 5 senses can reveal.

Here are some extracts from articles i read on the internet


"Zen trains the practitioner simply to observe plainly, quietly, and non-judgmentally the thoughts and feelings passing through the mind, instead of being pulled along reflexively by them.
With consistent practice paying bare, unembellished attention to the moment-by-moment flow, the practitioner begins to awaken from the cloud of aboutness and self-referential thinking that has built up through lifelong habit.

How can Zen be learned as part of a contemporary lifestyle?
In a sense, the practice of Zen is simply to stop thinking, by quietly relinquishing the inner mental dialogue within which we habitually wrap our experience.


Why do we seem to be trapped inside our own experience?
We can all say that "no matter where I go, there I am." At first that seems too obvious for comment, but on second thought why should our mental floor plan be set up this way?

What is the tiny observer that we call our "self", that peers out onto the world and into ourselves, and that reacts to what it sees? Is that observer who we are?

When a train of thought or a feeling passes through our mind, we can observe it within ourselves, but when we observe the observer within ourselves, then who or what is doing the observation?

Because our own experience is all we really know, we take ourselves so seriously that we seem almost to forget that an entire world exists outside ourselves. "

I feel happy because somehow i had these ideas in my mind, but somebody was able to organize the thoughts and have them written for me. I always believed that one should alway have enough tolerance to accept what his mind and senses fail to realize, as during my life i was stunned about things that i could not have believed if i had not experienced
(like gravity). The question is how many of these things really exist, but we, mankind, resist to believe just because our senses fail to directly realize (or because they have not been scientifically proven ........................wait ..YET ??) Religions clearly go under such category

Ammar Sajdi
www.e-ammar.com
www.realsoft-me.com
www.palco-me.com
www.informobility.com
Amman jordan

Thursday, February 15, 2007

LAMP

recently, i came across the "LAMP" term; I was excited to know that it is an acronym for Linux, Apache, MySQL and PHP programs (description later). I thought it is a cool term. I am the kind of person who spend lots of time browsing the net and always eager to learn about new technologies, platforms, tools, etc ..Having said that, i would expect that LAMP is a pretty new term. To my surprise, the term has been around since 1998 and was first used by the Michael Kunze. in an article for the German computing magazine c't in 1998 (12/98, page 230). At a later stage it has become more popular among English readers by O'Reilly and MySQL AB.

Each program (LAMP) is an open source standard in its own right: Linux is the operating system; Apache is the most commonly-used Web server; MySQL is a relational database management system (RDBMS) with add-on tools for Web-based administration; and PHP is a popular object-oriented scripting language that encompasses the best features of many other programming languages to make it efficient for Web development.

Many of the world's largest organizations, including Yahoo!, Sabre Holdings, Cox Communications, The Associated Press, Google, and NASA, are realizing significant cost savings by using open source products to power web sites, business-critical enterprise applications and packaged software.

ammar sajdi
Oracle consultant
Amman - Jordan
www.e-ammar.com
www.realsoft-me.com
www.palco-me.com
www.informobility.com

Monday, February 12, 2007

Welcome to Joomla!

Finally, i spared sometime to install JOOMLA
I read about it several time and browsed the website so many times, i wanted to try it out; and i had no way to do that but to install it.
I installed it on our Linux machine 192.168.0.1 which is also used as the companies Proxy (not a very nice idea) It required MySQL, PHP and Apache server which were already installed by me due to earlier experimentations. It is an open source thing and it fully utilizes LAMP (short for Linux, Apache, Mysql, PHP).

But what is Joomla, well here is what the website says

Cutting Edge Content Management

"Joomla! is one of the most powerful Open Source Content Management Systems on the planet. It is used all over the world for everything from simple websites to complex corporate applications. Joomla! is easy to install, simple to manage, and reliable"

and this is what the defautl template has to say

"If you've read anything at all about Content Management Systems (CMS), you'll probably know at least three things: CMS are the most exciting way to do business, CMS can be really, I mean really, complicated and lastly Portals are absolutely, outrageously, often unaffordably expensive. ....
Joomla! is set to change all that ...
Joomla! is different from the normal models for portal software. For a start, it's not complicated. Joomla! has been developed for the masses. It's licensed under the GNU/GPL license, easy to install and administer and reliable. Joomla! doesn't even require the user or administrator of the system to know HTML to operate it once it's up and running. "

I am going to pursue this beast and see where i end up at!
wish me luck

Sunday, January 14, 2007

Visiting Bahrain

I am here in Bahrain visiting the Central Bank of Bahrain to make an assessment for migrating their J2ee and portal software application to the latest releases of Oracle Application Server. This is probably my 6th visit to Bahrain. The following are some of the comments

1- Taxis are overpriced. They are equipped with meters but drivers do not use them. A short trip costs around 12 USD.

2-You cannot stay in non-5-star hotels. Unless newly innovated, even the 5 starts are not all that good. I tried Hilton some time back and it was horrible (I noticed that its name has been changed to Golden Tulip). Holiday Inn was also horrible (the name has now changed to Crown Plaza and I hope it is better). The 5-star hotels cost something like 180 USD +20% without breakfast. I felt that this was also overpriced compared to the standard and the service offered.

3- The weather is fine during the day, however, it turned a bit cool in the evening. You need a jacket, which is something I do not use in the Gulf Region. But it seems that Bahrain is cooler than UAE and Oman during winter.

4- I came to Gulf Air, which left on time, but the AirBus 320 seat space is limited and as such is uncomfortable for a 191 cm guy

5- I am leaving tomorrow back to Amman after less than 36 hours, which is long enough to miss Amman.


Ammar Sajdi
www.e-ammar.net
www.realsoft-me.com

Tuesday, January 02, 2007

Seven for all mankind jeans

hey all of you women of jordan, if you do not wear "7 for all mankind jeans" ($180), sorry, you have not quite made it!!!! yet (http://www.7forallmankind.com/pl/c/3.html)

Ah and do not forgret Juicy

Monday, January 01, 2007

Eid


3id in Arabic comes from E3adah (return , repetition). Saying Happy Eid implicitly means that one wishes the happy return of this occasion. On the personal front, 2006 was a good year for my career. However, on the regional and global domain, i hope it never repeats. I am really sad that year after year, we have pieces of our land still occupied. Both Arab and Muslim worlds have a lot of catching up to do, and i am unable to see the first step towards catching up being taken. i hope next year comes with a reason for us to be happy and wish the return of same occasion

Peter Answers - Interactive Soul Engine

A couple of years back, one of the kids in the family logged into www.peteranswers.com and started asking me questions and letting the Web engine write back the correct answers. A couple of days back, we checked it out again for fun to see how the elderly would react to it.
try it out yourself. Depending on the level of spirituality embedded within you, your level of interaction with the soul engine would be stronger. Try it out

Ammar Sajdi
www.palco-me.com
www.realsoft-me.com
www.e-ammar.net

REALSOFT, PALCO, 

Fundamentals of Software Testing

Originally posted on jan , 23 2009, Published again on Sept,18,2024 extracted completely from    http://testingsoftware.blogspot.com/2005/1...