Thursday, May 22, 2008
Software from a Systems (Engineering) Perspective
No doubt about it. Software which used to be the b*** stepchild of systems, only given attention rudely, and when there was no other alternative, has now moved to a position of prominence in the system equation.
Why? Forces moving in two directions: (1) the capability of software to perform more and more complex tasks; (2) the heavy expense required to build ASICs to carry out tasks that software can perform. Add to this the complexity being demanded by customers, and software is now appearing as the only way to go.
Can MDA help? Yes it can. SE is moving away from imperative code to declarative code (viz. Flex and MXML) and looking to graphical modeling notations such as UML and SysML for help in working with components at a higher level of abstraction.
What's different when software is a system component?
The code is no longer the focus of attention. In the Royce iterative Waterfall Model, one needed code to keep things going. Now the big three (from SysML) are:
- Requirements
- Tests that validate the requirements
- An implementation block (of either hardware or software)
Wednesday, June 06, 2007
Mashup Class
Mashup Time. Had the first meeting of the summer 2007 seminar on building mashups with an eye toward semantic web integration. Topics we hope to explore include: AJAX via Google Web Toolkit, RDF, Topic Maps, MindMaps (with XML output!), JavaFX, Flex, and Voice XML. The first of five articles on Voice XML has been submitted to InformIT (www.informit.com). For a preview, have a look here.
A recent posting by Bruce Eckel (Thinking in C++ guy) makes a compelling argument for Flex and Flash. The XML language, MXML, is compilable into Flash. As we get closer to the release of iPhone (for better or worse) the role of our cell phone is definitely changing. Thus, the ability to auto generate Voice XML AND MXML (Flash) means that a server, with a bit of XSLT can dynamically generate Voice and Flash Animation that will run just about anywhere.
Keep on mashin!
Thursday, May 10, 2007
GoogleWeb Toolkit
Had a look a t the Google Web Toolkit (GWT) in action. GWT is an open source Java software development framework that makes writing AJAX applications like Google Maps and Gmail easy for developers who don't speak browser quirks as a second language. I've played around with Javascript but find its lack of modularity a problem and testing a nightmare. With the rise of AJAX, one would like to do Javascript and now GWT lets you avoid the pain. You write your front end in Java programming and the GWT compiles your Java into Javascript and HTML. Very cool.
Labels: google, GWT, javaone 2007, javascript, scripting
JavaOne
As usual, lots of activity at JavaOne. The main theme this year seems to be a recognition of the fact that scripting languages such a Ruby, Javascript, Groovy and others are enabling rapid deployment of applications and that Java needs to get on board this train. Many sessions dedicated to how to integrate scripting into the Java platform. One thing that got my attention was the Google Web toolkit, which allows developers to write Java code and have that code compiled into Javascript for use in AJAX styled applications. This alleviates the problem that plagues Javascript developers, namely how to maintain and debug their scripts. With the google toolkit, the Java developer can create and maintain Javascript without having to actually program in Javascript! Leave it to the folks at google!
Labels: javaone 2007 scripting google
Wednesday, May 02, 2007
Voice XML
Labels: XML