TweetFollow Us on Twitter

Aranda
Volume Number:6
Issue Number:8
Column Tag:Kelly's Corner

Aranda on the CASE

By Dave Kelly, MacTutor Editorial Board

The Ideal Programming Environment

The ideal programming environment doesn’t exist. That is, as hard as they try, programmers are not perfect. I’m not talking about what compiler is used, or even which language. I’m talking about the software development process.

In the typical programming scenario, Joe Programmer has a defined objective to accomplish. The specifications are clear, precise and there are no last minute changes. He knows his job and how to do it.

Joe begins his program with a plan. He plans his programming task in advance and flow charts the entire program. The flow chart is documented well so that another programmer, the one that will later provide support to Joe’s program, can understand how the program works.

Joe documents his source code and keeps accurate notes describing the function of each part of the source code. He writes a detailed user manual which describes how to use his program.

Sounds far fetched, huh? Whether your name is Joe or not, sooner or later someone is going to try to understand your work. You should want to make it as easy as possible. Organization is the key. The problem is that many programmers don’t take the time to plan their program before they start and document their work as they go along. So, what do you do when you come across someone else’s (or even your own source code) and it isn’t documented well.

Aranda™ from Soft-SET™ (version 1.01 is referred to here) is designed to help you understand existing code making it easier to reuse, modify, and maintain. It is the latest in computer-aided software engineering (CASE) products for the Macintosh. It doesn’t generate any code and it doesn’t write your program for you. As a matter of fact, you must provide the source code before Aranda will even do anything.

Aranda parses source code and builds an abstract syntax tree (AST) of the source code information. This tree allows Aranda to provide context sensitive information about the source code. For example, you can apply a Used By tool to a global variable and Aranda will produce a listing of only those identifiers that use this global variable even if another variable has the same name. Identifier names that are used in source code comments are not reported in the usage analysis report.

Aranda allows you to selectively hide source code detail and graphically summarizes identifier relationships. Each identifier in the tree has its own unique symbol: shadow boxes for routines, ovals for variables, layered boxes for methods, etc. You can trace your way through a routine by applying the Used By tool to get a list of all the other identifiers that use the routine. A new chart comes up that shows the identifiers that use that routine. By using other tools you can get a report that shows where variables get set and which routines call a particular routine. If you double-click on a symbol in the tree, you can show/hide detail.

If you are interested in studying the logic of a particular routine, you can use the Flow Chart tool to generate a flow chart. If you hold down the command key and clicking on a block of the flow chart then Aranda will display the full source code statement to clarify the block. Tools like this one let you explore the source code and help you to develop a better grasp of how the program is put together.

Traditionally, documentation has been on the bottom of the list of the programmer’s priorities. Aranda has made it much easier to document a program. As you explore different parts of the source code, Aranda builds a collection of reports which can be the basis for all of the documentation for the project. Aranda supplies documentation templates called Notes that automatically extract identifier information and organize it onto a note that has a hypertext link to the identifier.

Notes templates are provided for routines, variables, data types, constants, and units. The Notes tool for a routine creates a form listing the routine’s name, its input and output parameters, what uses it, and what it imports. The form is automatically filled out. What’s more, the identifier names are active and can be queried just like in the other Aranda charts. There is room on the Notes form to add your own remarks, such as design diagrams, system requirements, task descriptions, comments about the use of a routine, or even add other Aranda charts or your own PICTs.

Aranda’s greatest strength is its ability to help a programmer get familiar with code that someone else wrote. There are several ways that this strength helps the programmer. Often, when a programmer is given code to work on it is to make changes or additions. Aranda helps the programmer analyze existing code in order to document how they are to integrate new units into the code. Aranda helps new program team members to get up to speed on a project. One of SoftSET’s beta tests sites said that it cut the learning time for their new programmer in half.

Aranda is a great way to learn about MacApp. Aranda’s Classes tool generates a class hierarchy for object oriented code. This may be the first CASE application that addresses object oriented code. SoftSET’s beta test sites have used Aranda to learn MacApp and the integration of MacApp into their project.

One feature that was left out in version 1.01 is multiple windows. Currently, each report or chart uses the same window to display in. This makes it difficult to view two parts at the same time. Soft-SET has assured me that multiple windows will be included in the next update which hopefully will be in August. Since they plan to update this feature I won’t complain about, but it is something that would make Aranda considerably better.

Another feature of the product that was not ready for the initial release is the ability to edit your source code within Aranda. Soft-SET is currently working on this and it will be included in an update which should be available by the time you read this. This editor is not meant to replace the text editor you are already using, but as people use Aranda more and more they want to be able to do more of their work in the Aranda environment. Also, the update will give the capability to showing you graphically (and almost instantly) how the procedure you wrote (for example) affects the rest of the project. Multiple windows and editing will be updated for no additional charge. They also plan to update the printing and layouts. There needs to be more flexibility for an organization to format their output to match company procedures and formats.

Along these same lines, the C version is in work should be in beta-test about the time you read this. It will also handle C++. The release date for this version will be September/October In early 1991, Aranda will support COBOL

Other than enhancements to the basic functionality of Aranda (more code analysis tools, page layout, etc.) and some metrics tools such as McCabe and Halstead metrics, the next major area of functionality for Aranda in 1991 will be testing tools with two planned. (1) a profiler-branch coverage tool and (2) a test driver generator that automatically generates a scaffolding so that the tester can exercise their code.

Aranda’s 80 page manual includes a reference section and a quick guide. A short tutorial gives users a quick overview of all of Aranda’s functions. The tutorial doesn’t go into much depth about how you can apply Aranda to source code documentation. Soft-SET is working on application notes which will eventually be included in an application users guide. The manual leads the user (step-by-step) through each function/tool.

Aranda is now available for Apple’s MPW Pascal, and Symantec’s THINK Pascal™. Aranda runs under both Finder and Multifinder. A 68020 or 68030 based Macintosh with a minimum of two megabytes of RAM is required. The other requirement is money. Aranda is designed for programming teams which need to work together and keep their work organized and easy for each other to understand. If you are a small (1 or 2 programmers) developer then Aranda is probably too pricey.

[Aranda, I would hope, will no doubt be essential to every developer no matter how small the project or the development group. As compilers make increasingly smaller advances in code generation quality, they will begin competing on features and ease of use. The use of tools, such as Aranda, will benefit everyone.-ed]

Aranda is available from:

Soft-SET Technologies, Inc.

1847 W. Broadway, #301

Vancouver, B.C. V6J 1Y6

phone:(604) 734-1622

fax: (604) 733-5294

AppleLink: SOFTSET

PRICE: $995 first unit

$750 unit 2-10

$675 unit 11-25

$495 unit 26-50

Education discounts apply to bonafide educational institutions at 66% off the regular list price. A special student version of Aranda limited to projects less than 5000 lines of source code is available for $50 which must be purchased through the institution.

Technical Support: free updates to Pascal version for 12 months after purchase and 30 days of free technical support. The annual rate for technical support will be $150 which will be provided free of charge to Aranda buyers who make their purchase prior to August 1.

 
AAPL
$467.36
Apple Inc.
+0.00
MSFT
$32.87
Microsoft Corpora
+0.00
GOOG
$885.51
Google Inc.
+0.00

MacTech Search:
Community Search:

Software Updates via MacUpdate

VueScan 9.2.23 - Scanner software with a...
VueScan is a scanning program that works with most high-quality flatbed and film scanners to produce scans that have excellent color fidelity and color balance. VueScan is easy to use, and has... Read more
Acorn 4.1 - Bitmap image editor. (Demo)
Acorn is a new image editor built with one goal in mind - simplicity. Fast, easy, and fluid, Acorn provides the options you'll need without any overhead. Acorn feels right, and won't drain your bank... Read more
Mellel 3.2.3 - Powerful word processor w...
Mellel is the leading word processor for OS X, and has been widely considered the industry standard since its inception. Mellel focuses on writers and scholars for technical writing and multilingual... Read more
Iridient Developer 2.2 - Powerful image...
Iridient Developer (was RAW Developer) is a powerful image conversion application designed specifically for OS X. Iridient Developer gives advanced photographers total control over every aspect of... Read more
Delicious Library 3.1.2 - Import, browse...
Delicious Library allows you to import, browse, and share all your books, movies, music, and video games with Delicious Library. Run your very own library from your home or office using our... Read more
Epson Printer Drivers for OS X 2.15 - Fo...
Epson Printer Drivers includes the latest printing and scanning software for OS X 10.6, 10.7, and 10.8. Click here for a list of supported Epson printers and scanners.OS X 10.6 or laterDownload Now Read more
Freeway Pro 6.1.0 - Drag-and-drop Web de...
Freeway Pro lets you build websites with speed and precision... without writing a line of code! With it's user-oriented drag-and-drop interface, Freeway Pro helps you piece together the website of... Read more
Transmission 2.82 - Popular BitTorrent c...
Transmission is a fast, easy and free multi-platform BitTorrent client. Transmission sets initial preferences so things "Just Work", while advanced features like watch directories, bad peer blocking... Read more
Google Earth Web Plug-in 7.1.1.1888 - Em...
Google Earth Plug-in and its JavaScript API let you embed Google Earth, a true 3D digital globe, into your Web pages. Using the API you can draw markers and lines, drape images over the terrain, add... Read more
Google Earth 7.1.1.1888 - View and contr...
Google Earth gives you a wealth of imagery and geographic information. Explore destinations like Maui and Paris, or browse content from Wikipedia, National Geographic, and more. Google Earth... Read more

Meet Daniel Singer, the Thirteen-Year-Ol...
Ever had the idea for an app, but felt like the lack of programming and design ability was a bit of a non-starter? Well, 13-year-old Daniel Singer has made an app. He’s the designer of Backdoor, a chat app that lets users chat with their friends... | Read more »
Flashout 2 Gets Revealed, Offers Up An E...
Flashout 2 Gets Revealed, Offers Up An Enhanced Career Mode and Exciting New Circuits Posted by Andrew Stevens on August 13th, 2013 [ permalink ] | Read more »
Mickey Mouse Clubhouse Paint and Play HD...
Mickey Mouse Clubhouse Paint and Play HD Review By Amy Solomon on August 13th, 2013 Our Rating: :: 3-D FUNiPad Only App - Designed for the iPad Color in areas of the Mickey Mouse Clubhouse with a variety of art supplies for fun 3-... | Read more »
Strategy & Tactics: World War II Upd...
Strategy & Tactics: World War II Update Adds Two New Scenarios Posted by Andrew Stevens on August 12th, 2013 [ permalink ] Universal App - Designed for iPhone and iPad | Read more »
Expenses Planner Review
Expenses Planner Review By Angela LaFollette on August 12th, 2013 Our Rating: :: PLAIN AND SIMPLEUniversal App - Designed for iPhone and iPad Expenses Planner keeps track of future bills through due date reminders, and it also... | Read more »
Kinesis: Strategy in Motion Brings An Ad...
Kinesis: Strategy in Motion Brings An Adaptation Of The Classic Strategic Board Game To iOS Posted by Andrew Stevens on August 12th, 2013 [ | Read more »
Z-Man Games Creates New Studio, Will Bri...
Z-Man Games Creates New Studio, Will Bring A Digital Version of Pandemic! | Read more »
Minutely Review
Minutely Review By Jennifer Allen on August 12th, 2013 Our Rating: :: CROWDSOURCING WEATHERiPhone App - Designed for the iPhone, compatible with the iPad Work together to track proper weather conditions no matter what area of the... | Read more »
10tons Discuss Publishing Fantasy Hack n...
Recently announced, Trouserheart looks like quite the quirky, DeathSpank-style fantasy action game. Notably, it’s a game that is being published by established Finnish games studio, 10tons and developed by similarly established and Finnish firm,... | Read more »
Boat Watch Lets You Track Ships From Por...
Boat Watch Lets You Track Ships From Port To Port Posted by Andrew Stevens on August 12th, 2013 [ permalink ] Universal App - Designed for iPhone and iPad | Read more »

Price Scanner via MacPrices.net

15″ 2.3GHz MacBook Pro (refurbished) availabl...
 The Apple Store has Apple Certified Refurbished 15″ 2.3GHz MacBook Pros available for $1449 or $350 off the cost of new models. Apple’s one-year warranty is standard, and shipping is free. Read more
13″ 2.5GHz MacBook Pro on sale for $150 off M...
B&H Photo has the 13″ 2.5GHz MacBook Pro on sale for $1049.95 including free shipping. Their price is $150 off MSRP plus NY sales tax only. B&H will include free copies of Parallels Desktop... Read more
iPod touch (refurbished) available for up to...
The Apple Store is now offering a full line of Apple Certified Refurbished 2012 iPod touches for up to $70 off MSRP. Apple’s one-year warranty is included with each model, and shipping is free: -... Read more
27″ Apple Display (refurbished) available for...
The Apple Store has Apple Certified Refurbished 27″ Thunderbolt Displays available for $799 including free shipping. That’s $200 off the cost of new models. Read more
Apple TV (refurbished) now available for only...
The Apple Store has Apple Certified Refurbished 2012 Apple TVs now available for $75 including free shipping. That’s $24 off the cost of new models. Apple’s one-year warranty is standard. Read more
AnandTech Reviews 2013 MacBook Air (11-inch)...
AnandTech is never the first out with Apple new product reviews, but I’m always interested in reading their detailed, in-depth analyses of Macs and iDevices. AnandTech’s Vivek Gowri bought and tried... Read more
iPad, Tab, Nexus, Surface, And Kindle Fire: W...
VentureBeat’s John Koetsier says: The iPad may have lost the tablet wars to an army of Android tabs, but its still first in peoples hearts. Second place, however, belongs to a somewhat unlikely... Read more
Should You Buy An iPad mini Or An iPad 4?
Macworld UK’s David Price addresses the conundrum of which iPAd to buy? Apple iPad 4, iPad 2, iPad mini? Or hold out for the iPad mini 2 or the iPad 5? Price notes that potential Apple iPad... Read more
iDraw 2.3 A More Economical Alternative To Ad...
If you’re a working graphics pro, you can probably justify paying the stiff monthly rental fee to use Adobe’s Creative Cloud, including the paradigm-setting vector drawing app. Adobe Illustrator. If... Read more
New Documentary By Director Werner Herzog Sho...
Injuring or even killing someone because you were texting while driving is a life-changing experience. There are countless stories of people who took their eyes off the road for a second and ended up... Read more

Jobs Board

Sales Representative - *Apple* Honda - Appl...
APPLE HONDA AUTOMOTIVE CAREER FAIR! NOW HIRING AUTO SALES REPS, AUTO SERVICE BDC REPS & AUTOMOTIVE BILLER! NO EXPERIENCE NEEDED! Apple Honda is offering YOU a Read more
*Apple* Developer Support Advisor - Portugue...
Changing the world is all in a day's work at Apple . If you love innovation, here's your chance to make a career of it. You'll work hard. But the job comes with more than Read more
RBB - *Apple* OS X Platform Engineer - Barc...
RBB - Apple OS X Platform Engineer Ref 63198 Country USA…protected by law. Main Function | The engineering of Apple OS X based solutions, in line with customer and Read more
RBB - Core Software Engineer - Mac Platform (...
RBB - Core Software Engineer - Mac Platform ( Apple OS X) Ref 63199 Country USA City Dallas Business Area Global Technology Contract Type Permanent Estimated publish end Read more
*Apple* Desktop Analyst - Infinity Consultin...
Job Title: Apple Desktop Analyst Location: Yonkers, NY Job Type: Contract to hire Ref No: 13-02843 Date: 2013-07-30 Find other jobs in Yonkers Desktop Analyst The Read more
All contents are Copyright 1984-2011 by Xplain Corporation. All rights reserved. Theme designed by Icreon.