Документ взят из кэша поисковой машины. Адрес
оригинального документа
: 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 |
DFS Department To be evaluated development tools |
|||||
|
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
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