Home Random Page


CATEGORIES:

BiologyChemistryConstructionCultureEcologyEconomyElectronicsFinanceGeographyHistoryInformaticsLawMathematicsMechanicsMedicineOtherPedagogyPhilosophyPhysicsPolicyPsychologySociologySportTourism






Bottom-up Integration

The bottom-up approach to integration is to use 'driver' modules to represent higher-level modules. As modules are completed and tested, they replace the drivers. Drivers can be used to implement test cases.

 

44 ESA PSS-05-05 Issue 1 (May 1992) METHODS FOR DETAILED DESIGN AND PRODUCTION

This page is intentionally left blank.

 

ESA PSS-05-05 Issue 1 (May 1992) 45 TOOLS FOR DETAILED DESIGN AND PRODUCTION

CHAPTER 4 TOOLS FOR DETAILED DESIGN AND PRODUCTION

INTRODUCTION

This chapter discusses the tools for detailing the design and producing the software. Toots can be combined to suit the needs of a particular project.

DETAILED DESIGN

CASE tools

In all but the smallest projects, CASE tools should be used during the DD phase. Like many general purpose toots (e.g. such as word processors and drawing packages), CASE tools should provide:

• windows, icons, menu and pointer (WIMP) style interface for the easy creation and editing of diagrams;

• what you see is what you get (WYSIWYG) style interface that ensures that what is created on the display screen closely resembles what will appear in the document.

Method-specific CASE tools offer the following features not offered by general purpose tools:

• enforcement of the rules of the methods;

• consistency checking;

• easy modification;

• automatic traceability of components to software requirements;

• configuration management of the design information:

• support for abstraction and information hiding:

• support for simulation.

CASE Tools should have an integrated data dictionary or another kind or 'repository'. This is necessary for consistency checking. Developers should check that a tool supports the parts of the method that they intend to use. ESA PSS-05-04, 'Guide to the Software Architectural Design Phase' contains a more detailed list of desirable toot capabilities. The starts guide provides a good survey of tools for requirements analysis and configuration management [Ref. 3].

 

46 ESA PSS-05-05 Issue 1 (May 1992) TOOLS FOR DETAILED DESIGN AND PRODUCTION

Configuration managers

Configuration management of the physical model is essential. The model should evolve from baseline to baseline as it develops in the DD phase, and enforcement of procedures for the identification, change control and status accounting of the model are necessary. In large projects, configuration management tools should be used for the management of the model database.

Precompilers

A precompiler generates code from PDL specifications. This is useful in design, but less so in later stages of development unless software faults can be easily traced back to PDL statements.

PRODUCTION

A range of production tools are available to help programmers develop, debug, build and test software. Table 4.3 lists the tools in order of their appearance in the production process.



Tool Purpose
CASE tools generate module shells
code generators translate formal relationships into source code
editors create and modify source code and document-
  ation
language-sensitive editors create syntactically correct source code
static analysers examine source code
compilers translate source code to object code
linkers join object modules into executable programs
debuggers locate errors during execution
dynamic analysers examine running programs
test tools test modules and programs
word processors document production
documentation generators derive user documentation from the source code
configuration managers store and track versions of modules and files,
  and record the constituents of each build.

Table 4.3 Production tools

 

ESA PSS-05-05 Issue 1 (May 1992) 47 TOOLS FOR DETAILED DESIGN AND PRODUCTION

CASE tools

Many CASE tools automatically generate constant, type, and variable declarations for inclusion in the source code of every module. Some CASE tools can translate diagrams showing the calling tree of modules into fully commented function or procedure calls, though these may lack values for actual parameters.

If such tools are used, coding begins by completing the skeleton of the module. All the calls are completed: then iteration constructs (WHILE, REPEAT, LOOP, etc) are entered; then alternation constructs (IF, CASE, etc) are inserted. Finally, low-level details such as arithmetic, input/output, and other system calls are filled in.

Code generators

Numerous code generator packages are now available, claiming to take the work out of design and coding. They can help reduce the workload in some areas, such as database management and human-computer interaction. These areas are characterised by repetitive code, and the need to perform numerous trivial but essential operations in set sequences. Such tasks are best automated for accuracy and efficiency.

As code generators become more closely integrated with design methods, it will be possible to code a larger proportion of the components of any given system automatically. Current design methods generally provide limited code generation, for example creating the data declarations and module skeletons; module bodies must then be coded by hand.

Even if parts of the system are to be coded manually, there are still advantages in using a code generator. Changes in software require­ments can result in automatic changes to data and module declarations, preserving and checking consistency across the phases of the life-cycle.

Editors

Largely replaced by the word processor for documentation, basic text editors are still widely used for source code creation and modification. Although language-sensitive editors (see Section 4.3.4) offer greater functionality, basic text editors provide all the facilities that many programmers require.

 

48 ESA PSS-05-05 Issue 1 (May 1992) TOOLS FOR DETAILED DESIGN AND PRODUCTION


Date: 2016-01-03; view: 701


<== previous page | next page ==>
Integration methods | Language-sensitive editors
doclecture.net - lectures - 2014-2024 year. Copyright infringement or personal data (0.007 sec.)