Документ взят из кэша поисковой машины. Адрес оригинального документа : http://www.eso.org/projects/dfs/team/QA-to-be-eval-dev-tools.html
Дата изменения: Wed Apr 13 18:07:49 2005
Дата индексирования: Mon Apr 14 04:11:15 2008
Кодировка:

Поисковые слова: meteoroid
recommended DFS development tools
 [ ESO ]
DFS Department
To be evaluated development tools

Tools to be evaluated for the DFS software development

ANALYSIS and DESIGN PHASES

Helpdesk offers support on Rational Rose Enterprise which is a full environment to implement the UML method. It has still be properly evaluated before promoting it. It's a powerful tool but it requires some training and help from experienced users. In any case, it should not be used unless there is a go-ahead from the DFS Department head. Rational Rose is a graphical software-engineering tool that supports object-oriented analysis, design, and implementation. It:

* Supports the revised Booch '93 notation that unifies object-oriented analysis and design notation
* Captures your analysis model
* Supports model transformation from analysis to design
* Represents your design model
* Automatically generates C++/Java/Ada code for your application
* Automatically reverse engineers your existing C++/Java/Ada application into an object model
* Supports version control and multiuser development
* Preserves changes to your code and your models through each iteration
* Scales well from small to large projects
* Facilitates reuse of existing components
* Supports for OMT notation
* Supports Unified Modeling Language (UML)
* Supports DDL and CORBA/IDL
* Entreprise Java beans (EJBs)
* Auto layout feature
* Web publisher add-in and XML DTD add-in.

Database documentation tool

An in-house tool (from S. Zampieri): dbdoc

dbvisualizer is a quite interesting database documentation tool. It's not a very sophisticated tool like PowerDesigner but anyway it has several nice features, like:
- multi-platform: although it's a bit slow on unix
- multi-database
- inspection the various properties of the db
- creation of nice diagrams of the DB and export them to jpeg or gif.
- query and modify the database in a user friendly way.
- it's possible to save the queries and organize them so you can easily recall them without having to re-type.
- create charts out of the database contents.
- it's free with limited functionalities, and cheap (about 70 $) with full functionalities.
More at following link.


CODING AND UNIT TEST PHASES

SNiFF+ supports reverse engineering, configuration management, workspaces and build management and provides the most comprehensive set of browsers and parsers available. A Documentation Editor automates the documentation of source code and promotes its reuse.

SNiFF+ includes a Symbol Table API, increased support for debuggers, Multi-language Support, Workspace Manager, Makefile Generation, Branch Support.

It supports AT&T C++ language specification, ANSI and K&R C. It can be integrated with gcc/g++ AT&T, SUN/HP C++, and can be configured for CC compiler. It also can be integrated with gbd, and dbx.

SNiFF+J including advanced Java browsing and debugging. It supports JDK 1.2

 

coding rules checker

CodeWizard can be customized to a particular project or user, you can easily suppress coding standards that do not pertain to a specific exceptional case. You can write your own rules using CodeWizard's new RuleWizard feature. CodeWizard implements RuleWizard coding standards along with existing ParaSoft coding standards.

Benefits of Codewizard :
- Reduces bugs by 25% .
- Enforces over 70 coding standards automatically .
- Provides a full, detailed explanation for each error found.

 


Comments from Derek:
Splint (Secure Programming Lint) is a descendant of the old "lint" program. It is a static source-code checker for the C programming language. That is, it parses and checks the source code, rather than monitoring the application at run-time, in order to detect programming errors, security vulnerabilities.

By itself, splint does many checks over and above those from compilers, even when the latter have maximum warning enabled (e.g. gcc -ansi -pedantic -Wall). However, splint can even go further, with the use of code annotations in the form of stylised comments, to provide exceptionally powerful tests.

Splint provides four general levels of "strictness", but also has the option of disabling individual checks. Furthermore, in the first occurrence of a given error message, it will instruct the user as to the appropriate flag to use to ignore it. This makes the tool very usable.

Splint is GPL-licensed and is freely available from the splint website (http://www.splint.org). In addition to the source code, the splint website also provides documentation (including the full manual), FAQ, references, mailing lists, and binary executables for several common platforms.

I have used splint for many months now, and find it a particularly effective way of generating "squeaky-clean" code. Often, I've found that splint finds problems that the compiler misses. However, like compiler warnings, it is imperative that one starts developing with splint, rather than trying to "fix"
code at the end of the development cycle, otherwise the inundation of error messages makes it prohibitively difficult to use. I also have found that it is invaluable for ensuring that code is strictly ISO/IEC 9899 compliant (something that gcc doesn't do).

 

a Performance Profiling tool

We have some experience in Quantify, but this tool still needs to be properly evaluated before promoting it. It provides accurate and repeatable timing data and displays it in an easy-to-understand format, enabling quick analysis of your application's runtime execution. The current version works on Solaris and HP for C, C++ and Java. This tool is available on request from Helpdesk. All details about its features and usage.

Insure is a Source level run-time debugger for C and C++. It produce more robust, better optimised, higher quality software. Insure++ includes three distinct tools that work together to improve your development process. All the results are graphics.
* Insure automatically detects large classes of programming and run-time errors. It quickly pinpoints algorithmic anomalies, bugs, and deficiencies.
* Inuse visualises in real-time the memory manipulation of your program, helping developers spot bugs and inefficiencies in memory handling.
* TCA also performs coverage analysis of programs, providing necessary feedback to programmers about which parts of the code were actually tested.


 


INTEGRATION TESTS

 

OTHER

Software Development Tool Service (CERN)


Eclipse: a code management environment: get feedback from USS and other DFS members

Javadoc: java source navigator: get feedback from USS and other DFS members

Valgrind, a memory leak tool on Linux (also see memprof, and Electric Fence)

doxygen Cross-platform documentation system

javachecker; Performs static analysis for Java source file

checkstyle a very useful (small) set of basic syntax checks.

agnostos, Web-based tool for managing to do lists

tdl, To-do list manager

To-Do, web-based to do list application

todolist, web-based to do list

twiki, web-based collaboration platform

gnotes, post-it notes for GNOME

scoutplans, put calendars on the Web

 




 [Project and Developments]  [DFS Department intranet]  [ESO]  [Index]  [Search]  [Help]  [News]