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.

 

Community Search:
MacTech Search:

Software Updates via MacUpdate

Vivaldi 1.9.818.44 - An advanced browser...
Vivaldi is a browser for our friends. In 1994, two programmers started working on a web browser. Our idea was to make a really fast browser, capable of running on limited hardware, keeping in mind... Read more
Skim 1.4.29 - PDF reader and note-taker...
Skim is a PDF reader and note-taker for OS X. It is designed to help you read and annotate scientific papers in PDF, but is also great for viewing any PDF file. Skim includes many features and has a... Read more
1Password 6.7.1 - Powerful password mana...
1Password is a password manager that uniquely brings you both security and convenience. It is the only program that provides anti-phishing protection and goes beyond password management by adding Web... Read more
FontExplorer X Pro 6.0.2 - Font manageme...
FontExplorer X Pro is optimized for professional use; it's the solution that gives you the power you need to manage all your fonts. Now you can more easily manage, activate and organize your... Read more
VOX 2.8.24 - Music player that supports...
VOX just sounds better! The beauty is in its simplicity, yet behind the minimal exterior lies a powerful music player with a ton of features and support for all audio formats you should ever need.... Read more
OmniPlan 3.7.1 - Robust project manageme...
With OmniPlan, you can create logical, manageable project plans with Gantt charts, schedules, summaries, milestones, and critical paths. Break down the tasks needed to make your project a success,... Read more
Dropbox 24.4.17 - Cloud backup and synch...
Dropbox is an application that creates a special Finder folder that automatically syncs online and between your computers. It allows you to both backup files and keep them up-to-date between systems... Read more
WhatsApp 0.2.4238 - Desktop client for W...
WhatsApp is the desktop client for WhatsApp Messenger, a cross-platform mobile messaging app which allows you to exchange messages without having to pay for SMS. WhatsApp Messenger is available for... Read more
SteerMouse 5.1 - Powerful third-party mo...
SteerMouse is an advanced driver for USB and Bluetooth mice. It also supports Apple Mighty Mouse very well. SteerMouse can assign various functions to buttons that Apple's software does not allow,... Read more
OmniPlan Pro 3.7.1 - Professional-grade...
With OmniPlan Pro, you can create logical, manageable project plans with Gantt charts, schedules, summaries, milestones, and critical paths. Break down the tasks needed to make your project a success... Read more

Latest Forum Discussions

See All

Olli by Tinrocket (Photography)
Olli by Tinrocket 1.0 Device: iOS iPhone Category: Photography Price: $2.99, Version: 1.0 (iTunes) Description: Get drawn in with Olli by TinrocketOlli instantly turns your everyday moments into hand-drawn art and animations. • Watch... | Read more »
Penarium (Games)
Penarium 1.0 Device: iOS Universal Category: Games Price: $1.99, Version: 1.0 (iTunes) Description: | Read more »
Fire Emblem Heroes is way more profitabl...
Profits for Nintendo's mobile game Fire Emblem Heroes are apparently impressive enough to beat out other Nintendo titles likeSuper Mario Run, despite having 10 times fewer downloads. [Read more] | Read more »
Classic series Robot Unicorn Attack 3 no...
The classic Adult Swim browser game, Robot Unicorn Attack, branched off into a series of popular mobile games. Now, the latest entry into the series, Robot Unicorn Attack 3, is available for iOS and Android mobile devices. [Read more] | Read more »
Sudoku Sweeper (Games)
Sudoku Sweeper 1.0 Device: iOS Universal Category: Games Price: $2.99, Version: 1.0 (iTunes) Description: A minimalist mashup of Minesweeper and Sudoku. Logic puzzle perfection. Every row, column and zone contains a bomb and one of... | Read more »
Under Leaves (Games)
Under Leaves 1.0.0 Device: iOS Universal Category: Games Price: $1.99, Version: 1.0.0 (iTunes) Description: Journey into the forest, the jungle or the depths of the deep blue sea. Find chestnuts for the pigs, a caterpillar for the... | Read more »
Ninja Pizza Girl (Games)
Ninja Pizza Girl 1.0 Device: iOS Universal Category: Games Price: $2.99, Version: 1.0 (iTunes) Description: In the not-so-distant future, rampart traffic congestion has resulted in only one way to deliver pizzas across town in thirty... | Read more »
SCRAP (Games)
SCRAP 1.0 Device: iOS Universal Category: Games Price: $2.99, Version: 1.0 (iTunes) Description: That day, for no apparent reason, SCRAP decided to wake up and run. He had to, because his activation was a mistake the "Factory" could... | Read more »
The Bunker (Games)
The Bunker 1.1 Device: iOS Universal Category: Games Price: $3.99, Version: 1.1 (iTunes) Description: The critically acclaimed console hit "The Bunker" comes to iOS, The groundbreaking live-action thriller adventure set in a real... | Read more »
Die With Glory (Games)
Die With Glory 1.2.0 Device: iOS Universal Category: Games Price: $2.99, Version: 1.2.0 (iTunes) Description: Die with Glory is an epic adventure game where your goal is to die in glorious fashion. You must help Sigurd, a brave old... | Read more »

Price Scanner via MacPrices.net

13-inch 2.9GHz/256GB Space Gray Touch Bar Mac...
B&H Photo has the 13″ 2.9GHz/256GB Space Gray Touch Bar MacBook Pro in stock today and on sale for $150 off MSRP including free shipping plus NY & NJ sales tax only: - 13″ 2.9GHz/256GB Touch... Read more
21-inch iMacs on sale for up to $151 off MSRP
B&H Photo has 21″ iMacs on sale for up to $151 off MSRP, each including free shipping plus NY sales tax only: - 21″ 3.1GHz iMac 4K: $1348 $151 off MSRP - 21″ 2.8GHz iMac: $1199.99 $100 off MSRP... Read more
Weekend deal: Up to $420 off new MacBook Pros...
Apple has Certified Refurbished 2016 15″ and 13″ MacBook Pros available for $230 to $420 off original MSRP. An Apple one-year warranty is included with each model, and shipping is free: - 15″ 2.6GHz... Read more
Price drop: 15-inch 2.2GHz Retina MacBook Pro...
Amazon has dropped their price on 15″ 2.2GHz Retina MacBook Pros (MJLQ2LL/A) to $1709.99 including free shipping. Their price is $290 off MSRP for this model. Note that stock may sell out quickly at... Read more
2.8GHz Mac mini on sale for $899, save $100
B&H Photo has the 2.8GHz Mac mini (model number MGEQ2LL/A) on sale for $899 including free shipping plus NY & NJ sales tax only. Their price is $100 off MSRP. Read more
Check Apple prices on any device with the iTr...
MacPrices is proud to offer readers a free iOS app (iPhones, iPads, & iPod touch) and Android app (Google Play and Amazon App Store) called iTracx, which allows you to glance at today’s lowest... Read more
New System Clock for macOS by B-Eng Now Avail...
Fehraltorf, Switzerland based B-Eng has announced the release and immediate availability of System Clock, the company’s new system monitor and information app developed exclusively for macOS. System... Read more
DEVONtechnologies Celebrates 15th Anniversary...
DEVONtechnologies celebrates its 15th company anniversary with a 30% discount on all its software products from May 1st through 5th, 2017. In spring 2002, DEVONtechnologies opened its website and... Read more
WaterField Designs Invites Customers to Help...
San Francisco based WaterField Designs invites customers and air travelers to participate in developing the next generation in-flight travel case, the Air Porter. Frustrated with limited legroom,... Read more
Save up to $260 with Apple refurbished 12-inc...
Apple has Certified Refurbished 2016 12″ Retina MacBooks available for $200-$260 off MSRP. Apple will include a standard one-year warranty with each MacBook, and shipping is free. The following... Read more

Jobs Board

*Apple* Mobile Master - Best Buy (United Sta...
**501505BR** **Job Title:** Apple Mobile Master **Location Number:** 000849-Gurnee-Store **Job Description:** **What does a Best Buy Apple Mobile Master do?** At Read more
Best Buy *Apple* Computing Master - Best Bu...
**498428BR** **Job Title:** Best Buy Apple Computing Master **Location Number:** 000293-Rockville-Store **Job Description:** **What does a Best Buy Apple Read more
*Apple* Mac Computer Technician - GeekHampto...
…complex computer issues over the phone and in person? GeekHampton, Long Island's Apple Premium Service Provider, is looking for you! Come work with our crew Read more
*Apple* Retail - Multiple Positions- Chicago...
Job Description: Sales Specialist - Retail Customer Service and Sales Transform Apple Store visitors into loyal Apple customers. When customers enter the store, Read more
*Apple* Systems Engineer - California Polyte...
Cal Poly, San Luis Obispo Apple Systems Engineer Department: ITS - Customer & Tech Support (134900) College/Division: Academic Affairs Salary Range: Position Read more
All contents are Copyright 1984-2011 by Xplain Corporation. All rights reserved. Theme designed by Icreon.