Tuesday, June 12, 2012

Some More Comments on Overambitious Projects

I previously asked readers to share their experiences with overambitious projects. Here were some of the replies:

Creative people always desire to create a perfect product. And it is very difficult to stop perfecting it… It’s not easy to differentiate between essential and supplementary features.

Also interesting fact from the “big science” molecular biology – the Human Genome project (that was also saturated with computation and programming). Finishing sequencing took as much time as the first 90% of sequencing work.

So true. There's an understandable amount of pride that creatives and entrepreneurs feel about their work--sometimes to their detriment.

And also this suggestion on how to handle feature-hungry clients

As a product manager, I have dealt with this issue many times.  It always helps to ask the client (internal or external) to estimate the additional sales that will occur if the new feature is added.  Invariably they either realize the answer is zero, or understand they have no way to credibly answer. No additional sales, no money for development. Simple but effective.

What a fantastic idea. It lets the client clearly see the value of each additional requirement.

-Judi

The Value of Defect Prevention

Steve McConnell reported in 1996 that "early upstream defects generally cost 10 to 100 times as much to remove late downstream as they do to remove close to the point where they are created.”

So why is it that we spend far more time, effort, and dollars on defect removal than defect prevention? Because, sadly, preventing problems is not sexy.

Many programmers and people in general, love to be the hero. Finding and fixing that critical error provides a great adrenalin rush. But when you consider time-to-market or cost issues, this model just doesn’t make sense.

A few of my go-to defect preventative tactics include:
• Requirements reviews
• Design and Code reviews
• Coding standards
• Writing test cases and plans early
• Automated build and smoke tests

-Judi

Embrace Change

I’m amazed how many developers and companies are reluctant to adopt modern technologies in their projects, especially when it could cut significant costs from the development process.

I even recently met a team who is still designing serial communication ports for their external interface. Ouch.

Thus, I'll focus my next few emails on development technology areas that have significantly benefited from recent innovations:
• Display technologies: highly integrated graphic chips and capacitive screens
• Wireless communications: near field communication, Bluetooth, WiFi
• Location-based systems: low-cost integrated GPS chips

-Gary

[Video] 4 Critical Pieces of Software Development Processes

I just finished up a video explaining the most critical aspects of software development processes.

It's an issue that I'm fanatical about, especially because it involves basic software development strategies that can save companies tons of money and time. (And who doesn't love extra money and time?)

Anyway, the video is 4:23 long, and introduces the below topics.

  • Requirements

  • Design

  • Testing

  • Source Control



-Judi

 

P.S. Let me know what you think of it!

Wednesday, June 6, 2012

Is Android Viable for Medical Devices?

I recently attended the RTECC Boston Conference and was not disappointed.

Of particular interest was the keynote address by Alan Cohen of LogicPD about the viability of using the Android operating system for medical devices.

I approached the conference with 3 key questions, which I've since answered below.

1. Why Android?

Android is a complete framework built on embedded Linux with a fully implemented GUI right out of the box. It can begin developing an application very quickly, is a terrific development environment to rapidly develop a proof of concept, and is highly customizable.

2. Is the Android operating system suitable for medical electronics?

Android is only suitable as an adjunct to time-critical or life-critical processing. It is not a Real-Time Kernel (RTOS) and therefore not suitable for hard real-time applications.

3. Will Android be relegated to display-only functionality?

Mostly, but relegated is too strong a word. It is ideal for user-interactive applications since, according to Alan Cohen, there is a convergence in the medical device world and the consumer world.

Some key Android points:

• Built on Linux

• Built-in power management module is non-trivial since it is geared to phone/data devices

• Application licensing can be tricky (the kernel is GPL license). Even though Android is free, some Android Device manufacturers nonetheless pay royalty fees to Microsoft?

• Android allows very easy creation of embedded Linux applications with GUIs

 

-Gary

Monday, June 4, 2012

Creating Software Requirements Processes

It's hard to perfect your software development process without a solid requirements process in place.

I just finished up this video about software requirements processes that covers

  • How requirements are done in different software processes

  • Proper requirements formats

  • Who should be involved in the requirements writing


Enjoy!

Wednesday, May 23, 2012

The Popularity Contest

 


























Having trouble viewing this email? View it in your browser.


 
Advanced Decisions








The Popularity Contest


Header

In an effort to keep our subscribers happy we've decided to allow segmentation of newsletters.


 

This means you can now choose if you want to receive


 

 

 

 

 

Click one of the links above to segment yourself. (Note: the links will direct you to our website in addition to recording your newsletter preference.)


 

We'll provide this option in all newsletters from now on, so you can resubscribe or unsubscribe whenever you please. Thanks.


 

-Judi and Gary


 

Back To Top Header


 

Header

Know someone who might be interested in this email? Click here to forward it.


 

Not interested anymore? Unsubscribe.


 

 
Footer