Re: [AD] [U2] Basic developments reverse engineering tool ?

2007-06-29 Thread Brian Leach
That's very difficult to trap.

Mark

It's a valid point and a common scenario.

I've taken two approaches in the past:

1. Dynamic analysis

This replaces certain constructs in the source code automatically with calls to 
subroutines or external functions that update the maps in real time. So for 
example every OPEN can be replaced with subroutine that writes the name of the 
program and the file opened to the audit files. However this is only under very 
controlled conditions, and never guaranteed to be complete - a particular file 
might only be opened as part of a year-end procedure for example and so the 
'correctness' of dynamic analysis depends on the code coverage.

2. Manual Labour

To accept that static analysis is always incomplete, but provide a way to 
identify where the incompleteness occurs (e.g. to log wherever there is an OPEN 
with a file name that cannot be determined) and provide a way for that link to 
be documented and completed manually so that eventually the map becomes as 
complete as possible.

It's the down side of having such a flexible platform, that it can make any 
form of automated auditing and analysis far more difficult.

Brian

How does it work with parameter driven code.

One of my clients has procs like this:

HRUN BP SOP1500
STON
HORDER
HCUSTOMER
HPRODUCT
HVENDOR
P

whereby the program (BP SOP1500) has the corresponding INPUT statements for
the file names and opens them as F1, F2, F3 which is a real bear when
reading the code. Plus all of the bottom line field prompts are also
tableized. Very klugy and not friendly at all.

I tend to copy the program in question to another place and do a global
replace of the R/F1/ORDER just to see the flow.

Thanks
Mark Johnson
---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/


Re: [AD] [U2] Basic developments reverse engineering tool ?

2007-06-29 Thread Timothy Snyder
 One of my clients has procs like this:
 
 HRUN BP SOP1500
 STON
 HORDER
 HCUSTOMER
 HPRODUCT
 HVENDOR
 P
 
 whereby the program (BP SOP1500) has the corresponding INPUT statements 
for
 the file names and opens them as F1, F2, F3 which is a real bear when
 reading the code.

Wow - that's just plan mean!  There may have been a thought that it was a 
way to avoid hard-coding file names in case they ever changed (though that 
would be a weak argument), but then they're hard-coded in the PROC, so I 
can't see any benefit at all, other than obfuscation.  The person that 
created it must have had a future grudge against whoever came along to 
maintain the code.  Take my job from me, did you?  I'll teach you a 
lesson.  :-)

Tim Snyder
Consulting I/T Specialist
U2 Lab Services
Information Management, IBM Software Group
---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/


RE: [AD] [U2] Basic developments reverse engineering tool ?

2007-06-29 Thread Norman Morgan
When in doubt, obfuscate.

===
Norman Morgan  [EMAIL PROTECTED]  http://www.brake.com
===
Judge: An unemployed lawyer who wears a black dress.
===
 

 -Original Message-
 From: [EMAIL PROTECTED] 
 [mailto:[EMAIL PROTECTED] On Behalf Of 
 Timothy Snyder
 Sent: Friday, June 29, 2007 8:21 AM
 To: u2-users@listserver.u2ug.org
 Subject: Re: [AD] [U2] Basic developments reverse engineering tool ?
 
  One of my clients has procs like this:
  
  HRUN BP SOP1500
  STON
  HORDER
  HCUSTOMER
  HPRODUCT
  HVENDOR
  P
  
  whereby the program (BP SOP1500) has the corresponding INPUT 
  statements
 for
  the file names and opens them as F1, F2, F3 which is a real 
 bear when 
  reading the code.
 
 Wow - that's just plan mean!  There may have been a thought 
 that it was a way to avoid hard-coding file names in case 
 they ever changed (though that would be a weak argument), but 
 then they're hard-coded in the PROC, so I can't see any 
 benefit at all, other than obfuscation.  The person that 
 created it must have had a future grudge against whoever came 
 along to maintain the code.  Take my job from me, did you?  
 I'll teach you a lesson.  :-)
 
 Tim Snyder
 Consulting I/T Specialist
 U2 Lab Services
 Information Management, IBM Software Group
---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/


RE: [AD] [U2] Basic developments reverse engineering tool ?

2007-06-29 Thread Norman Morgan
Joking aside, that looks almost like something written by someone who
was accustomed to writing mainframe COBOL where actual file assignments
were made outside the program code in JCL.  That doesn't excuse the
internal naming style, but the technique harks back to my misspent
youth as a COBOL programmer.

  -Original Message-
  From: [EMAIL PROTECTED]
  [mailto:[EMAIL PROTECTED] On Behalf Of Timothy 
  Snyder
  Sent: Friday, June 29, 2007 8:21 AM
  To: u2-users@listserver.u2ug.org
  Subject: Re: [AD] [U2] Basic developments reverse 
 engineering tool ?
  
   One of my clients has procs like this:
   
   HRUN BP SOP1500
   STON
   HORDER
   HCUSTOMER
   HPRODUCT
   HVENDOR
   P
   
   whereby the program (BP SOP1500) has the corresponding INPUT 
   statements
  for
   the file names and opens them as F1, F2, F3 which is a real
  bear when
   reading the code.
  
  Wow - that's just plan mean!  There may have been a thought that it 
  was a way to avoid hard-coding file names in case they ever changed 
  (though that would be a weak argument), but then they're 
 hard-coded in 
  the PROC, so I can't see any benefit at all, other than 
 obfuscation.  
  The person that created it must have had a future grudge against 
  whoever came along to maintain the code.  Take my job from me, did 
  you?
  I'll teach you a lesson.  :-)
  
  Tim Snyder
  Consulting I/T Specialist
  U2 Lab Services
  Information Management, IBM Software Group
 ---
 u2-users mailing list
 u2-users@listserver.u2ug.org
 To unsubscribe please visit http://listserver.u2ug.org/
---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/


RE: [AD] [U2] Basic developments reverse engineering tool ?

2007-06-29 Thread Stevenson, Charles
If I recall correctly, SoftWhere handled that sort of thing.
I do remember seeing it pick up subroutine's uses of files where the
file variable was passed as an argument from the calling program.

-Original Message-
How does it work with parameter driven code.

One of my clients has procs like this:

HRUN BP SOP1500
STON
HORDER
HCUSTOMER
HPRODUCT
HVENDOR
P

whereby the program (BP SOP1500) has the corresponding INPUT statements
for the file names and opens them as F1, F2, F3
---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/


RE: [AD] [U2] Basic developments reverse engineering tool ?

2007-06-29 Thread bpaige
Just to play devil's advocate, there ARE good reasons for doing the code that
way:

1.  The same program can be used for processing live and historical data if
they're in different files.  Just create two procs and pass live files in one
and historical files in the other.
2.  The same program can be used for other file sets - assuming it's a
generic routine.
3.  Filenames can be changed without having to recompile the program.
Although it's a little safer in U2, recompiling code out from under a user
isn't a good thing in most flavors of Pick - unless you enjoy sending them to
a RIF error.

Again, I'm not saying there aren't better ways to do it, but there are legit
reasons for this type of code - and who knows how long ago the code was
written too.

My 1.5

-Original Message-
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of Norman Morgan
Sent: Friday, June 29, 2007 9:02 AM
To: u2-users@listserver.u2ug.org
Subject: RE: [AD] [U2] Basic developments reverse engineering tool ?

Joking aside, that looks almost like something written by someone who
was accustomed to writing mainframe COBOL where actual file assignments
were made outside the program code in JCL.  That doesn't excuse the
internal naming style, but the technique harks back to my misspent
youth as a COBOL programmer.

  -Original Message-
  From: [EMAIL PROTECTED]
  [mailto:[EMAIL PROTECTED] On Behalf Of Timothy 
  Snyder
  Sent: Friday, June 29, 2007 8:21 AM
  To: u2-users@listserver.u2ug.org
  Subject: Re: [AD] [U2] Basic developments reverse 
 engineering tool ?
  
   One of my clients has procs like this:
   
   HRUN BP SOP1500
   STON
   HORDER
   HCUSTOMER
   HPRODUCT
   HVENDOR
   P
   
   whereby the program (BP SOP1500) has the corresponding INPUT 
   statements
  for
   the file names and opens them as F1, F2, F3 which is a real
  bear when
   reading the code.
  
  Wow - that's just plan mean!  There may have been a thought that it 
  was a way to avoid hard-coding file names in case they ever changed 
  (though that would be a weak argument), but then they're 
 hard-coded in 
  the PROC, so I can't see any benefit at all, other than 
 obfuscation.  
  The person that created it must have had a future grudge against 
  whoever came along to maintain the code.  Take my job from me, did 
  you?
  I'll teach you a lesson.  :-)
  
  Tim Snyder
  Consulting I/T Specialist
  U2 Lab Services
  Information Management, IBM Software Group
 ---
 u2-users mailing list
 u2-users@listserver.u2ug.org
 To unsubscribe please visit http://listserver.u2ug.org/
---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/

_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
_ _ _ _ _ _ _ _ _ _

The information transmitted is intended only for the person or entity to which 
it is addressed and may contain confidential and/or privileged material not 
intended for Public use.  
Any review, retransmission, dissemination or other use of, or taking of any 
action in reliance upon, this information by persons or entities other than the 
intended recipient is 
strictly prohibited. If you received this communication in error, please notify 
the sender and delete the material from any and all computers or devices.
---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/


RE: [AD] [U2] Basic developments reverse engineering tool ?

2007-06-29 Thread IT-Laure Hansen
I have been trying to track Joe Toledo and/or someone at his company
Toledo Inc. (who used to distribute SoftWhere) but all e-mails have come
back undeliverable. The company's web site is also down.

That's just too bad.

Laure Hansen,
City of Redwood City
Information Technology
1017 Middlefield Road
Redwood City, CA 94063
Tel 650-780-7087
Fax 650-556-9204
[EMAIL PROTECTED]

-Original Message-
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of Stevenson,
Charles
Sent: Friday, June 29, 2007 7:28 AM
To: u2-users@listserver.u2ug.org
Subject: RE: [AD] [U2] Basic developments reverse engineering tool ?

If I recall correctly, SoftWhere handled that sort of thing.
I do remember seeing it pick up subroutine's uses of files where the
file variable was passed as an argument from the calling program.

-Original Message-
How does it work with parameter driven code.

One of my clients has procs like this:

HRUN BP SOP1500
STON
HORDER
HCUSTOMER
HPRODUCT
HVENDOR
P

whereby the program (BP SOP1500) has the corresponding INPUT statements
for the file names and opens them as F1, F2, F3
---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/
---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/


Re: [AD] [U2] Basic developments reverse engineering tool ?

2007-06-29 Thread MAJ Programming
The designers of this mess were (are) called Gull from Long Island, NY. It
appears to be one of the many early attempts at a 4GL that are now Roadkill.

I have another client running similar code for a Credit  Collections
application called BestCollect.

I could write a book on the false starts of programming in MV.

My 1 cent
Mark Johnson

P.S. In response to the 'future grudges' that could occur, and the history
of MV programmers, VARs etc, I would definitely insist that If I were to
purchase an application from a VAR and the source code were not on my
system, that the source code be stored in escrow by a 3rd party. That way,
when the software VAR eventually goes out of business, at least the source
sode is available.

I don't mind following awkward source code. But I do have to have it.
- Original Message -
From: Timothy Snyder [EMAIL PROTECTED]
To: u2-users@listserver.u2ug.org
Sent: Friday, June 29, 2007 9:20 AM
Subject: Re: [AD] [U2] Basic developments reverse engineering tool ?


  One of my clients has procs like this:
 
  HRUN BP SOP1500
  STON
  HORDER
  HCUSTOMER
  HPRODUCT
  HVENDOR
  P
 
  whereby the program (BP SOP1500) has the corresponding INPUT statements
 for
  the file names and opens them as F1, F2, F3 which is a real bear when
  reading the code.

 Wow - that's just plan mean!  There may have been a thought that it was a
 way to avoid hard-coding file names in case they ever changed (though that
 would be a weak argument), but then they're hard-coded in the PROC, so I
 can't see any benefit at all, other than obfuscation.  The person that
 created it must have had a future grudge against whoever came along to
 maintain the code.  Take my job from me, did you?  I'll teach you a
 lesson.  :-)

 Tim Snyder
 Consulting I/T Specialist
 U2 Lab Services
 Information Management, IBM Software Group
 ---
 u2-users mailing list
 u2-users@listserver.u2ug.org
 To unsubscribe please visit http://listserver.u2ug.org/
---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/


Re: [AD] [U2] Basic developments reverse engineering tool ?

2007-06-29 Thread MAJ Programming
While your examples are not false, they're hardly true either. In my many
years of MV programming, I've never seen such alternate files or other
methods. The closest I've seen is code within the program to decide which
files to use.

I think you are implying contemporary intelligence against an old technique.

This entire application is written this way so the chances of having
EVERYTHING have alternate files is pretty slim.

Thanks
Mark Johnson
- Original Message -
From: [EMAIL PROTECTED]
To: u2-users@listserver.u2ug.org
Sent: Friday, June 29, 2007 11:08 AM
Subject: RE: [AD] [U2] Basic developments reverse engineering tool ?


 Just to play devil's advocate, there ARE good reasons for doing the code
that
 way:

 1.  The same program can be used for processing live and historical data
if
 they're in different files.  Just create two procs and pass live files in
one
 and historical files in the other.
 2.  The same program can be used for other file sets - assuming it's a
 generic routine.
 3.  Filenames can be changed without having to recompile the program.
 Although it's a little safer in U2, recompiling code out from under a user
 isn't a good thing in most flavors of Pick - unless you enjoy sending them
to
 a RIF error.

 Again, I'm not saying there aren't better ways to do it, but there are
legit
 reasons for this type of code - and who knows how long ago the code was
 written too.

 My 1.5

 -Original Message-
 From: [EMAIL PROTECTED]
 [mailto:[EMAIL PROTECTED] On Behalf Of Norman Morgan
 Sent: Friday, June 29, 2007 9:02 AM
 To: u2-users@listserver.u2ug.org
 Subject: RE: [AD] [U2] Basic developments reverse engineering tool ?

 Joking aside, that looks almost like something written by someone who
 was accustomed to writing mainframe COBOL where actual file assignments
 were made outside the program code in JCL.  That doesn't excuse the
 internal naming style, but the technique harks back to my misspent
 youth as a COBOL programmer.

   -Original Message-
   From: [EMAIL PROTECTED]
   [mailto:[EMAIL PROTECTED] On Behalf Of Timothy
   Snyder
   Sent: Friday, June 29, 2007 8:21 AM
   To: u2-users@listserver.u2ug.org
   Subject: Re: [AD] [U2] Basic developments reverse
  engineering tool ?
  
One of my clients has procs like this:
   
HRUN BP SOP1500
STON
HORDER
HCUSTOMER
HPRODUCT
HVENDOR
P
   
whereby the program (BP SOP1500) has the corresponding INPUT
statements
   for
the file names and opens them as F1, F2, F3 which is a real
   bear when
reading the code.
  
   Wow - that's just plan mean!  There may have been a thought that it
   was a way to avoid hard-coding file names in case they ever changed
   (though that would be a weak argument), but then they're
  hard-coded in
   the PROC, so I can't see any benefit at all, other than
  obfuscation.
   The person that created it must have had a future grudge against
   whoever came along to maintain the code.  Take my job from me, did
   you?
   I'll teach you a lesson.  :-)
  
   Tim Snyder
   Consulting I/T Specialist
   U2 Lab Services
   Information Management, IBM Software Group
  ---
  u2-users mailing list
  u2-users@listserver.u2ug.org
  To unsubscribe please visit http://listserver.u2ug.org/
 ---
 u2-users mailing list
 u2-users@listserver.u2ug.org
 To unsubscribe please visit http://listserver.u2ug.org/

 _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _

 The information transmitted is intended only for the person or entity to
which it is addressed and may contain confidential and/or privileged
material not intended for Public use.
 Any review, retransmission, dissemination or other use of, or taking of
any action in reliance upon, this information by persons or entities other
than the intended recipient is
 strictly prohibited. If you received this communication in error, please
notify the sender and delete the material from any and all computers or
devices.
 ---
 u2-users mailing list
 u2-users@listserver.u2ug.org
 To unsubscribe please visit http://listserver.u2ug.org/
---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/


Re: [AD] [U2] Basic developments reverse engineering tool ?

2007-06-29 Thread Susan Lynch

Will,
Having spent a lot of my career consulting, I have seen a system where the 
history was archived in files named with the year eg INVOICES was the 
current fiscal year, INVOICES2006 was last year's orders, INVOICES2005 were 
2 fiscal years back, etc.  The same held true for the sales history files. 
There were programs which were passed the file names, which were opened to 
INV.FILE, SALES.HIST, etc and the same logic ran on the history files as on 
the current fiscal year's files.  This was many years back, when disk space 
was more expensive, and history files were archived to removeable media 
(bulky tapes, usually) and brought back when needed for history reports. 
The proc for the current year would pass hard-coded file names, while the 
proc for prior years would prompt for the year and append it to the file 
names and pass those.  But it was not the entire system - probably the one 
you inherited was written by someone who learned on such a system and 
thought it was the only way to write code (or a cool way to write code) and 
who never gave a moment's thought to maintainability or documentation.


Susan Lynch
F. W. Davison  Company, Inc.
- Original Message - 
From: MAJ Programming [EMAIL PROTECTED]

To: u2-users@listserver.u2ug.org
Sent: Friday, June 29, 2007 7:38 PM
Subject: Re: [AD] [U2] Basic developments reverse engineering tool ?



While your examples are not false, they're hardly true either. In my many
years of MV programming, I've never seen such alternate files or other
methods. The closest I've seen is code within the program to decide which
files to use.

I think you are implying contemporary intelligence against an old 
technique.


This entire application is written this way so the chances of having
EVERYTHING have alternate files is pretty slim.

Thanks
Mark Johnson
- Original Message -
From: [EMAIL PROTECTED]
To: u2-users@listserver.u2ug.org
Sent: Friday, June 29, 2007 11:08 AM
Subject: RE: [AD] [U2] Basic developments reverse engineering tool ?



Just to play devil's advocate, there ARE good reasons for doing the code

that

way:

1.  The same program can be used for processing live and historical data

if

they're in different files.  Just create two procs and pass live files in

one

and historical files in the other.
2.  The same program can be used for other file sets - assuming it's a
generic routine.
3.  Filenames can be changed without having to recompile the program.
Although it's a little safer in U2, recompiling code out from under a 
user
isn't a good thing in most flavors of Pick - unless you enjoy sending 
them

to

a RIF error.

Again, I'm not saying there aren't better ways to do it, but there are

legit

reasons for this type of code - and who knows how long ago the code was
written too.

My 1.5

-Original Message-
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of Norman Morgan
Sent: Friday, June 29, 2007 9:02 AM
To: u2-users@listserver.u2ug.org
Subject: RE: [AD] [U2] Basic developments reverse engineering tool ?

Joking aside, that looks almost like something written by someone who
was accustomed to writing mainframe COBOL where actual file assignments
were made outside the program code in JCL.  That doesn't excuse the
internal naming style, but the technique harks back to my misspent
youth as a COBOL programmer.

  -Original Message-
  From: [EMAIL PROTECTED]
  [mailto:[EMAIL PROTECTED] On Behalf Of Timothy
  Snyder
  Sent: Friday, June 29, 2007 8:21 AM
  To: u2-users@listserver.u2ug.org
  Subject: Re: [AD] [U2] Basic developments reverse
 engineering tool ?
 
   One of my clients has procs like this:
  
   HRUN BP SOP1500
   STON
   HORDER
   HCUSTOMER
   HPRODUCT
   HVENDOR
   P
  
   whereby the program (BP SOP1500) has the corresponding INPUT
   statements
  for
   the file names and opens them as F1, F2, F3 which is a real
  bear when
   reading the code.
 
  Wow - that's just plan mean!  There may have been a thought that it
  was a way to avoid hard-coding file names in case they ever changed
  (though that would be a weak argument), but then they're
 hard-coded in
  the PROC, so I can't see any benefit at all, other than
 obfuscation.
  The person that created it must have had a future grudge against
  whoever came along to maintain the code.  Take my job from me, did
  you?
  I'll teach you a lesson.  :-)
 
  Tim Snyder
  Consulting I/T Specialist
  U2 Lab Services
  Information Management, IBM Software Group
 ---
 u2-users mailing list
 u2-users@listserver.u2ug.org
 To unsubscribe please visit http://listserver.u2ug.org/
---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/

_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ 
_

_ _ _ _ _ _ _ _ _ _ _ _ _ _ _


The information transmitted is intended only for the person or entity to

which

RE: [U2] Basic developments reverse engineering tool ?

2007-06-28 Thread Brian Leach
All

This is something we're keen to add to the U2UG website.

We're testing out a couple of different Wikis at the moment. We expect to have 
something in place very soon for the community to add technical tips, FAQs, 
learning materials, utilities, possibly vendor pages and similar materials.

Watch this space for announcements!

Regards

Brian

Other user groups that I belong(ed) to provide(d) a repository for user
submitted utilities. Things like neatly formatted file ACL's, tape listings,
database copy routines, etc Each submission would include the utility's
documentation, source code, any ancillary files (db) and executable if
applicable.

I am sure that there is a wealth of end user utilities available for U2.
This source code listing program would be a great start. Since our software
vendor does not provide any technical documentation about their system, the
sort of cross-reference source code tool features mentioned by Susan is
something I would find very usefull.

Currently, I just save any emails from this group that have useful proc's or
commands. Searching the archives is usefull but an index of software
utilities by category might be a better way to help fledging U2 programmers
see how to accomplish certain tasks.
---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/


RE: [U2] Basic developments reverse engineering tool ?

2007-06-28 Thread Brian Leach
Tony/Susan

Having written two such 'system auditors' I can tell you from experience that 
it's not that easy to do a good source analysis.

The problem is that every system is different, adopts different standards, use 
different tools, are often very incomplete, and most include lots of bad links, 
obsolete code, multiple versions of the same program in different source files 
and the like.

[on to the predictable ad..]

Which is why mvScan was designed as a navigation and parsing tool. It scans 
through a system in a defined order running various 'plug-ins' at each stage. 
The provided plugins do source code (and object code) analysis, build impact 
maps of all calls, file opens/reads/writes from BASIC, PROC etc, SUBR() calls, 
dictionary translations, executed commands (from BASIC, Menus, paragraphs, 
PROCs), where things are cataloged, common block and include file usage - all 
that standard stuff.

But it also allows you to write custom plugins to pick up site-specific 
functionality. For example, you might have a generic file opener function that 
it needs to pick up on. Or you may have custom headers to your programs, or use 
a precompiler that handles includes and definitions. If you use a 4GL like 
uvCase or SB+, you might need to include the tool definitions. So the parser 
has to be very flexible to individual needs.

You also have to recognize that static analysis only goes so far. It can't 
parse relations that are derived at run time. The original auditor I wrote 
supported trigger insertion - automatically changing source code to replace 
reads/writes/opens/executes with functions that would capture and log 
information in real time as the system ran. mvScan doesn't - that approach is 
too dangerous unless done under controlled conditions. Instead, it uses an 
autodoc approach in which you are encouraged to 'fill in the gaps' yourselves 
with special documentary comments in the source code.

So the whole becomes an iterative process that will lead to a better understood 
and documented system.


Brian



Susan Lynch wrote:
 Tony, there are a number of things that a source code analyzer can do
 that would be very helpful if you found yourself coming into a
 company as a consultant or as a new employee and they had no
 technical documentation:
---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/


RE: [U2] Basic developments reverse engineering tool ?

2007-06-28 Thread Anthony Youngman
PLEASE put stuff like this on PickWiki.

It's a wonderful place to put snippets, small programs, etc etc.

The one thing to watch out for about a user group keeping a repository
is that there's copyright issues involved. If you wrote the utility, you
can put it on PickWiki, or in a repository, or whatever. What the User
Group must NOT do (unfortunately) is to copy the code from the email
into a repository :-( This would raise a massive can of worms :-( When
did the US sign Berne? Things were a lot easier for USians (not us
Europeans) before then.

An alternative (should someone care to volunteer!) is to maintain an
index on the u2ug website pointing at a repository that stores the
emails.

-Original Message-
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] 
Sent: 27 June 2007 22:50
To: u2-users@listserver.u2ug.org
Subject: RE: [U2] Basic developments reverse engineering tool ?

Other user groups that I belong(ed) to provide(d) a repository for user
submitted utilities. Things like neatly formatted file ACL's, tape
listings,
database copy routines, etc Each submission would include the
utility's
documentation, source code, any ancillary files (db) and executable if
applicable.

I am sure that there is a wealth of end user utilities available for U2.
This source code listing program would be a great start. Since our
software
vendor does not provide any technical documentation about their system,
the
sort of cross-reference source code tool features mentioned by Susan is
something I would find very usefull.

Currently, I just save any emails from this group that have useful
proc's or
commands. Searching the archives is usefull but an index of software
utilities by category might be a better way to help fledging U2
programmers
see how to accomplish certain tasks. 



Garry L. Smith
Dir Info Systems
Charles McMurray Company
V# 559-292-5782   F# 559-346-6169
---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/


RE: [U2] Basic developments reverse engineering tool ?

2007-06-28 Thread Susan Joslyn
I was thinking of the sort of documentation that you could get from writing
a utility to comb through code. I've written some (not for prime time)
versions of this sort of thing. In particular whenever converting from one
platform to another.

The types of technical documentation that one can glean programmatically
from an application are:

What files are opened by what programs
Where are records written
What fields/amcs are read and written by what programs
What subroutines are called by what programs
What includes/inserts are in use, where
In the case of SB+ (or any system where fields are referenced by name) -
schemas can be built identifying field name across files and when and where
these are updated

What else?

One thing that I have built into my application that I use rarely but when I
need it I find it extremely handy - every one of my programs calls a
subroutine at the beginning that just time-date stamps that it has been run.
I think I keep the last five or ten runs in a Multivalue list.

This helps when I want to clean up and find stuff that never gets run - or
when I want to see the last time a customer ran something.  I tiny little
subroutine that you can stuff programmatically into a top line of all
programs and let it go for awhile.  Then come back and find interesting
things.

Susan

Date: Wed, 27 Jun 2007 11:33:17 -0700
From: Tony Gravagno [EMAIL PROTECTED]

I don't believe there is a way to have a program read code and figure out
what it does from a logical perspective.  When you say technical
documentation, I'm not sure what sort of info you wish to extract from your
code.  If you mean file usage, common usage, etc, the only way to get a
program to process such information is to make sure you have your code
completely consistent - or you need to use meta data as described below.
---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/


[AD] [U2] Basic developments reverse engineering tool ?

2007-06-28 Thread Laura Hirsh
The type of Technical Documentation that Susan mentions is a part of
DocuSys! Not only does DocuSys comb through basic code, and also the gamut
of SB+ bits, but it sends it to MS Word - nicely formatted, with a table of
contents, pagination, Styles, etc. Options include both User Documentation
(for SB+ Apps) and Technical Documentation (SB+/Non-SB+). 

This isn't really an ad, but DocuSys a really useful product/tool. If anyone
would like more information, let me know!

Laura Hirsh


-Original Message-
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of Susan Joslyn
Sent: Thursday, June 28, 2007 7:59 AM
To: u2-users@listserver.u2ug.org
Subject: RE: [U2] Basic developments reverse engineering tool ?

I was thinking of the sort of documentation that you could get from writing
a utility to comb through code. I've written some (not for prime time)
versions of this sort of thing. In particular whenever converting from one
platform to another.

The types of technical documentation that one can glean programmatically
from an application are:

What files are opened by what programs
Where are records written
What fields/amcs are read and written by what programs
What subroutines are called by what programs
What includes/inserts are in use, where
In the case of SB+ (or any system where fields are referenced by name) -
schemas can be built identifying field name across files and when and where
these are updated

What else?

One thing that I have built into my application that I use rarely but when I
need it I find it extremely handy - every one of my programs calls a
subroutine at the beginning that just time-date stamps that it has been run.
I think I keep the last five or ten runs in a Multivalue list.

This helps when I want to clean up and find stuff that never gets run - or
when I want to see the last time a customer ran something.  I tiny little
subroutine that you can stuff programmatically into a top line of all
programs and let it go for awhile.  Then come back and find interesting
things.

Susan

Date: Wed, 27 Jun 2007 11:33:17 -0700
From: Tony Gravagno [EMAIL PROTECTED]

I don't believe there is a way to have a program read code and figure out
what it does from a logical perspective.  When you say technical
documentation, I'm not sure what sort of info you wish to extract from your
code.  If you mean file usage, common usage, etc, the only way to get a
program to process such information is to make sure you have your code
completely consistent - or you need to use meta data as described below.
---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/
---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/


Re: [AD] [U2] Basic developments reverse engineering tool ?

2007-06-28 Thread MAJ Programming
How does it work with parameter driven code.

One of my clients has procs like this:

HRUN BP SOP1500
STON
HORDER
HCUSTOMER
HPRODUCT
HVENDOR
P

whereby the program (BP SOP1500) has the corresponding INPUT statements for
the file names and opens them as F1, F2, F3 which is a real bear when
reading the code. Plus all of the bottom line field prompts are also
tableized. Very klugy and not friendly at all.

I tend to copy the program in question to another place and do a global
replace of the R/F1/ORDER just to see the flow.

Thanks
Mark Johnson
- Original Message -
From: Laura Hirsh [EMAIL PROTECTED]
To: u2-users@listserver.u2ug.org
Sent: Thursday, June 28, 2007 2:26 PM
Subject: [AD] [U2] Basic developments reverse engineering tool ?


 The type of Technical Documentation that Susan mentions is a part of
 DocuSys! Not only does DocuSys comb through basic code, and also the gamut
 of SB+ bits, but it sends it to MS Word - nicely formatted, with a table
of
 contents, pagination, Styles, etc. Options include both User Documentation
 (for SB+ Apps) and Technical Documentation (SB+/Non-SB+).

 This isn't really an ad, but DocuSys a really useful product/tool. If
anyone
 would like more information, let me know!

 Laura Hirsh


 -Original Message-
 From: [EMAIL PROTECTED]
 [mailto:[EMAIL PROTECTED] On Behalf Of Susan Joslyn
 Sent: Thursday, June 28, 2007 7:59 AM
 To: u2-users@listserver.u2ug.org
 Subject: RE: [U2] Basic developments reverse engineering tool ?

 I was thinking of the sort of documentation that you could get from
writing
 a utility to comb through code. I've written some (not for prime time)
 versions of this sort of thing. In particular whenever converting from one
 platform to another.

 The types of technical documentation that one can glean programmatically
 from an application are:

 What files are opened by what programs
 Where are records written
 What fields/amcs are read and written by what programs
 What subroutines are called by what programs
 What includes/inserts are in use, where
 In the case of SB+ (or any system where fields are referenced by name) -
 schemas can be built identifying field name across files and when and
where
 these are updated

 What else?

 One thing that I have built into my application that I use rarely but when
I
 need it I find it extremely handy - every one of my programs calls a
 subroutine at the beginning that just time-date stamps that it has been
run.
 I think I keep the last five or ten runs in a Multivalue list.

 This helps when I want to clean up and find stuff that never gets run - or
 when I want to see the last time a customer ran something.  I tiny little
 subroutine that you can stuff programmatically into a top line of all
 programs and let it go for awhile.  Then come back and find interesting
 things.

 Susan
 
 Date: Wed, 27 Jun 2007 11:33:17 -0700
 From: Tony Gravagno [EMAIL PROTECTED]

 I don't believe there is a way to have a program read code and figure out
 what it does from a logical perspective.  When you say technical
 documentation, I'm not sure what sort of info you wish to extract from
your
 code.  If you mean file usage, common usage, etc, the only way to get a
 program to process such information is to make sure you have your code
 completely consistent - or you need to use meta data as described below.
 ---
 u2-users mailing list
 u2-users@listserver.u2ug.org
 To unsubscribe please visit http://listserver.u2ug.org/
 ---
 u2-users mailing list
 u2-users@listserver.u2ug.org
 To unsubscribe please visit http://listserver.u2ug.org/
---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/


[U2] Basic developments reverse engineering tool ?

2007-06-27 Thread Herve Balestrieri
Does it exists a (marketed?) tool for MV databases (i.e UniVerse) that
would allow
to make the reverse engineering of an application, based on automated
Basic source code analysis ?

Thanks for any information.

Herve' Balestrieri
---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/


Re: [U2] Basic developments reverse engineering tool ?

2007-06-27 Thread MAJ Programming
There was UN-Basic that took compiled code and reverted it back to source
code.
My 1 cent
Mark Johnson
- Original Message -
From: Herve Balestrieri [EMAIL PROTECTED]
To: u2-users@listserver.u2ug.org
Sent: Wednesday, June 27, 2007 6:37 AM
Subject: [U2] Basic developments reverse engineering tool ?


 Does it exists a (marketed?) tool for MV databases (i.e UniVerse) that
 would allow
 to make the reverse engineering of an application, based on automated
 Basic source code analysis ?

 Thanks for any information.

 Herve' Balestrieri
 ---
 u2-users mailing list
 u2-users@listserver.u2ug.org
 To unsubscribe please visit http://listserver.u2ug.org/
---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/


Re: [U2] Basic developments reverse engineering tool ?

2007-06-27 Thread Herve Balestrieri
To clarify the inquiry : I am seeking for a tool reading Basic source code
modules and producing a technical documentation of an application
automatically.
This is not the purpose of an object code decompiler.

Thanks

Herve' Balestrieri

 There was UN-Basic that took compiled code and reverted it back to source
 code.
 My 1 cent
 Mark Johnson
 - Original Message -
 From: Herve Balestrieri [EMAIL PROTECTED]

  Does it exists a (marketed?) tool for MV databases (i.e UniVerse) that
  would allow
  to make the reverse engineering of an application, based on automated
  Basic source code analysis ?
 
  Thanks for any information.
---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/


RE: [U2] Basic developments reverse engineering tool ?

2007-06-27 Thread Jerry Banker
Something like PRC? Contact Susan through http://www.sjplus.com/


-Original Message-
From: Herve Balestrieri [mailto:[EMAIL PROTECTED] 
Sent: Wednesday, June 27, 2007 10:23 AM
To: u2-users@listserver.u2ug.org
Subject: Re: [U2] Basic developments reverse engineering tool ?

To clarify the inquiry : I am seeking for a tool reading Basic source
code
modules and producing a technical documentation of an application
automatically.
This is not the purpose of an object code decompiler.

Thanks

Herve' Balestrieri

 There was UN-Basic that took compiled code and reverted it back to
source
 code.
 My 1 cent
 Mark Johnson
 - Original Message -
 From: Herve Balestrieri [EMAIL PROTECTED]

  Does it exists a (marketed?) tool for MV databases (i.e UniVerse)
that
  would allow
  to make the reverse engineering of an application, based on
automated
  Basic source code analysis ?
 
  Thanks for any information.
---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/
---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/


RE: [U2] Basic developments reverse engineering tool ?

2007-06-27 Thread Stevenson, Charles
The best such tool I ever saw was SoftWhere by Joe Toledo.  I don't know
if he still sells it.
It reads source code, dictionaries, procs, and maps dependencies. 

-Original Message-
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of Herve
Balestrieri
Sent: Wednesday, June 27, 2007 8:23 AM
To: u2-users@listserver.u2ug.org
Subject: Re: [U2] Basic developments reverse engineering tool ?

To clarify the inquiry : I am seeking for a tool reading Basic source
code modules and producing a technical documentation of an application
automatically.
This is not the purpose of an object code decompiler.

Thanks

Herve' Balestrieri

 There was UN-Basic that took compiled code and reverted it back to 
 source code.
 My 1 cent
 Mark Johnson
 - Original Message -
 From: Herve Balestrieri [EMAIL PROTECTED]

  Does it exists a (marketed?) tool for MV databases (i.e UniVerse) 
  that would allow to make the reverse engineering of an 
  application, based on automated Basic source code analysis ?
 
  Thanks for any information.
---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/
---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/


RE: [AD] [U2] Basic developments reverse engineering tool ?

2007-06-27 Thread Tom Dodds
We have a series of programs that will dissect a U2 application and create a
series of documentation databases.  We have some canned reports or you can
simply use LIST to generate your own reports.  The application is available
for installation on one of your systems so you can maintain this level of
documentation.
We are working on a second module that will allow for the entry of textual
descriptions for each component and then generate various types of
documentation. IE. html, pdf, csv, rtf, etc

Contact me off line if this sounds interesting.

Tom Dodds 
[EMAIL PROTECTED]
 

-Original Message-
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of Herve Balestrieri
Sent: Wednesday, June 27, 2007 10:23 AM
To: u2-users@listserver.u2ug.org
Subject: Re: [U2] Basic developments reverse engineering tool ?

To clarify the inquiry : I am seeking for a tool reading Basic source code
modules and producing a technical documentation of an application
automatically.
This is not the purpose of an object code decompiler.

Thanks

Herve' Balestrieri

 There was UN-Basic that took compiled code and reverted it back to source
 code.
 My 1 cent
 Mark Johnson
 - Original Message -
 From: Herve Balestrieri [EMAIL PROTECTED]

  Does it exists a (marketed?) tool for MV databases (i.e UniVerse) that
  would allow
  to make the reverse engineering of an application, based on automated
  Basic source code analysis ?
 
  Thanks for any information.
---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/
---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/


Re: [U2] Basic developments reverse engineering tool ?

2007-06-27 Thread Brian Leach
Herve

I have something that may do what you need (mvScan).

I'll contact you off-list with some details.

Brian

To clarify the inquiry : I am seeking for a tool reading Basic source code
modules and producing a technical documentation of an application
automatically.
This is not the purpose of an object code decompiler.

Thanks

Herve' Balestrieri

 There was UN-Basic that took compiled code and reverted it back to source
 code.
 My 1 cent
 Mark Johnson
 - Original Message -
 From: Herve Balestrieri [EMAIL PROTECTED]

  Does it exists a (marketed?) tool for MV databases (i.e UniVerse) that
  would allow
  to make the reverse engineering of an application, based on automated
  Basic source code analysis ?
 
  Thanks for any information.
---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/
---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/


[U2] Basic developments reverse engineering tool ?

2007-06-27 Thread Susan Joslyn
Thanks, Jerry ... PRC can help with this, but does not do specifically what
Herve is really seeking.  ROI Syngineering had a great utility for this, I'm
not sure if anyone is marketing it now that Bob has passed away. Does anyone
know?  And I remember Softwhere by Toledo Assoc., too, but I'm not sure they
are marketing that anymore.

Seems to me this comes up a lot -- maybe one of us should write one, hmm?

Regards,
Susan Joslyn
SJ+ Systems Associates, Inc.
PRC(r) Real software configuration management for U2/Multivalue.

---

Date: Wed, 27 Jun 2007 10:40:07 -0500
From: Jerry Banker [EMAIL PROTECTED]
Subject: RE: [U2] Basic developments reverse engineering tool ?

Something like PRC? Contact Susan through http://www.sjplus.com/


- -Original Message-
From: Herve Balestrieri [mailto:[EMAIL PROTECTED] 
Sent: Wednesday, June 27, 2007 10:23 AM
To: u2-users@listserver.u2ug.org
Subject: Re: [U2] Basic developments reverse engineering tool ?

To clarify the inquiry : I am seeking for a tool reading Basic source
code
modules and producing a technical documentation of an application
automatically.
This is not the purpose of an object code decompiler.

Thanks

Herve' Balestrieri

 There was UN-Basic that took compiled code and reverted it back to
source
 code.
 My 1 cent
 Mark Johnson
 - Original Message -
 From: Herve Balestrieri [EMAIL PROTECTED]

  Does it exists a (marketed?) tool for MV databases (i.e UniVerse)
that
  would allow
  to make the reverse engineering of an application, based on
automated
  Basic source code analysis ?
 
  Thanks for any information.


- ---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/

--

End of U2 Users Digest V1 #1717
***


u2-users-digest mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/
---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/


RE: [U2] Basic developments reverse engineering tool ?

2007-06-27 Thread Tony Gravagno
Herve Balestrieri wrote:
 To clarify the inquiry : I am seeking for a tool reading Basic source
 code modules and producing a technical documentation of an application
 automatically.
 This is not the purpose of an object code decompiler.

I don't believe there is a way to have a program read code and figure out
what it does from a logical perspective.  When you say technical
documentation, I'm not sure what sort of info you wish to extract from
your code.  If you mean file usage, common usage, etc, the only way to get
a program to process such information is to make sure you have your code
completely consistent - or you need to use meta data as described below.

Java and .NET use structured comments with XML for doing this and I've seen
a few MV packages do the same with BASIC.  I'll make up some sample XML
below but this is how I might do it.

* Documentation
*  AuthorJoe Coder/Author
*  Desc
*   ShortThis proggie processes orders/Short
*   Long
* Longer desc here.
*   /Long
*  /Desc
*  Mods DateWritten=9-dec-1998
*   Mod Request=123534 Date=14-feb-2001
* Fixed this to do that.
*   /Mod
*  /Mods
*  FileUsage
*   File Usage=RWORDERS/File
*   File Usage=RPRICING/File
*  /FileUsage
* /Documentation
...
* CodeDoc Label=CALC.PRICE
*   Get the current price using special tables.
* /CodeDoc
CALC.PRICE: *
...
CodeDoc Call=SOMEPROG /
CALL SOMEPROG(blah)

Similar metadata can be created for I-Types or wherever BASIC code is used
or referenced.  Once these tags are embedded in BASIC you can have a
program scan your program files and other source records and build XML
documents.  These can then be imported into templates or maybe reformatted
into HTML with XSLT.  You can also use the data to create Where Used type
reports.

Tony Gravagno
Nebula RD
TG@ always.remove.thisNebula-RnD.com
---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/


Re: [U2] Basic developments reverse engineering tool ?

2007-06-27 Thread Susan Lynch
Tony, there are a number of things that a source code analyzer can do that 
would be very helpful if you found yourself coming into a company as a 
consultant or as a new employee and they had no technical documentation:


List programs that open each file - useful for verifying that adding an 
attribute won't blow up dimensioned arrays or confuse the program logic that 
deals with the last attribute in the current dimension size, depending on 
your version/flavor of MV - also useful when you are asked to add another 
code for a field (eg Active/Terminated status field, suddenly users want to 
add Pending or Sabbatical statuses - where do you need to add logic to 
handle those new status values?)


List programs that write to each file (useful when trying to figure out how 
did that attribute get that inappropriate data in there?)


List of programs that call a given program (including by a variable name) - 
useful when you change the list of variables passed to the program


Of course, now that we also have paragraphs that can write data, and tools 
like SB and a variety of others that can store procedural information and 
write commands in places other than Basic and Proc, it gets a bit trickier 
to write that sort of automated source code analyzer - gone are the days 
when you could pass the source code analyzer a list of Basic Program files, 
a list of Proc files, and let it generate this sort of technical 
documentation.


Susan Lynch
F.W. Davison  Company, Inc.
- Original Message - 
From: Tony Gravagno [EMAIL PROTECTED]

To: u2-users@listserver.u2ug.org
Sent: Wednesday, June 27, 2007 2:33 PM
Subject: RE: [U2] Basic developments reverse engineering tool ?



Herve Balestrieri wrote:

To clarify the inquiry : I am seeking for a tool reading Basic source
code modules and producing a technical documentation of an application
automatically.
This is not the purpose of an object code decompiler.


I don't believe there is a way to have a program read code and figure out
what it does from a logical perspective.  When you say technical
documentation, I'm not sure what sort of info you wish to extract from
your code.  If you mean file usage, common usage, etc, the only way to get
a program to process such information is to make sure you have your code
completely consistent - or you need to use meta data as described below.

Java and .NET use structured comments with XML for doing this and I've 
seen

a few MV packages do the same with BASIC.  I'll make up some sample XML
below but this is how I might do it.

[Snipped to reduce size ]

Tony Gravagno

---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/


RE: [U2] Basic developments reverse engineering tool ?

2007-06-27 Thread Tony Gravagno
Susan Lynch wrote:
 Tony, there are a number of things that a source code analyzer can do
 that would be very helpful if you found yourself coming into a
 company as a consultant or as a new employee and they had no
 technical documentation:

Without knowing more about what Herve wanted, I'm making this up as I go.
It seems to me that anyone could do this, even making it open source, so
I'll flesh it out just a little more.

Regarding paragraphs, etc, one of the things I was alluding to was that
separate items should be maintained which contain XML related to code which
cannot itself contain the metadata.  For example, Susan, it would be nice
to have Where Used data in your HR Partner DesignBais front-end, so that
you know which menus call to specific forms, which fields are used on which
forms, which forms run specific selection processes, which programs use
PROCESS.STACK to invoke other forms, etc.

In DesignBais or with other utilities that allow GUI queries it would be
helpful to know where various dict items are used.  It may not be practical
to put the XML in the dict item (extended dict items, paragraphs, etc) and
these environments don't have a special/common place for metadata, so a
custom file would need to be created that defines where dict items are
used, how they're used, etc.

As always, Garbage In, Garbage Out, and unless metadata is maintained the
reports one derives from the data are going to be inaccurate.  Manual
procedures must be implemented which require update of the data, or version
control software can prompt developers to ensure they have updated docs
before checking in changes.

T
---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/


RE: [U2] Basic developments reverse engineering tool ?

2007-06-27 Thread GarryS
Other user groups that I belong(ed) to provide(d) a repository for user
submitted utilities. Things like neatly formatted file ACL's, tape listings,
database copy routines, etc Each submission would include the utility's
documentation, source code, any ancillary files (db) and executable if
applicable.

I am sure that there is a wealth of end user utilities available for U2.
This source code listing program would be a great start. Since our software
vendor does not provide any technical documentation about their system, the
sort of cross-reference source code tool features mentioned by Susan is
something I would find very usefull.

Currently, I just save any emails from this group that have useful proc's or
commands. Searching the archives is usefull but an index of software
utilities by category might be a better way to help fledging U2 programmers
see how to accomplish certain tasks. 



Garry L. Smith
Dir Info Systems
Charles McMurray Company
V# 559-292-5782   F# 559-346-6169

-Original Message-
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of Susan Joslyn
Sent: Wednesday, June 27, 2007 11:31 AM
To: u2-users@listserver.u2ug.org
Subject: [U2] Basic developments reverse engineering tool ?

Thanks, Jerry ... PRC can help with this, but does not do specifically what
Herve is really seeking.  ROI Syngineering had a great utility for this, I'm
not sure if anyone is marketing it now that Bob has passed away. Does anyone
know?  And I remember Softwhere by Toledo Assoc., too, but I'm not sure they
are marketing that anymore.

Seems to me this comes up a lot -- maybe one of us should write one, hmm?

Regards,
Susan Joslyn
SJ+ Systems Associates, Inc.
PRC(r) Real software configuration management for U2/Multivalue.

---

Date: Wed, 27 Jun 2007 10:40:07 -0500
From: Jerry Banker [EMAIL PROTECTED]
Subject: RE: [U2] Basic developments reverse engineering tool ?

Something like PRC? Contact Susan through http://www.sjplus.com/


- -Original Message-
From: Herve Balestrieri [mailto:[EMAIL PROTECTED]
Sent: Wednesday, June 27, 2007 10:23 AM
To: u2-users@listserver.u2ug.org
Subject: Re: [U2] Basic developments reverse engineering tool ?

To clarify the inquiry : I am seeking for a tool reading Basic source code
modules and producing a technical documentation of an application
automatically.
This is not the purpose of an object code decompiler.

Thanks

Herve' Balestrieri

 There was UN-Basic that took compiled code and reverted it back to
source
 code.
 My 1 cent
 Mark Johnson
 - Original Message -
 From: Herve Balestrieri [EMAIL PROTECTED]

  Does it exists a (marketed?) tool for MV databases (i.e UniVerse)
that
  would allow
  to make the reverse engineering of an application, based on
automated
  Basic source code analysis ?
 
  Thanks for any information.


- ---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/

--

End of U2 Users Digest V1 #1717
***


u2-users-digest mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/
---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/
---
u2-users mailing list
u2-users@listserver.u2ug.org
To unsubscribe please visit http://listserver.u2ug.org/