Critical- -Software Software Critical Critical-Software Development Solutions Development Solutions Development Solutions ObjectAda 7 ObjectAda 7 ObjectAda 7 Greg Gicca Greg Gicca Greg Gicca gicca@ @aonix aonix.com .com gicca@aonix.com gicca SIGAda November 15, 2000 SIGAda November 15, 2000 SIGAda November 15, 2000
Objective Objective ■ Acquaint you with our Ada95 ■ Acquaint you with our Ada95 products and services products and services � Training & Consulting Training & Consulting � � Development Systems Development Systems � � Product Goals & Philosophy Product Goals & Philosophy � � Product Line Organization Product Line Organization � � Technical Characteristics Technical Characteristics � ■ Certified to DO ■ Certified to DO- -178B Level A 178B Level A � Leading Supplier of Certifiable Ada83 Leading Supplier of Certifiable Ada83 � � Leading Supplier of Certifiable Ada95 Leading Supplier of Certifiable Ada95 � 3
Product Goals Product Goals ■ Broadly competitive Ada95 ■ Broadly competitive Ada95 development systems development systems ■ Production quality capabilities ■ Production quality capabilities ■ “Open systems” approach ■ “Open systems” approach � Reduce cost & price Reduce cost & price � � Enhance applicability Enhance applicability � 4
Product Philosophy Product Philosophy ■ Stratified, evolvable product line ■ Stratified, evolvable product line � Value & price competitive Value & price competitive � � Support different needs at appropriate Support different needs at appropriate � prices points prices points � Support activities in multiple areas of Support activities in multiple areas of � lifecycle/process lifecycle/process � Support gradual buy Support gradual buy- -in for customers in for customers � 5
Product Line Organization Product Line Organization Windows 98 / NT Native UNIX / Motif / CDE X Intel P E C E X PowerPC N O P R T S R R E X 68K R O E O N P A R I L S E 6
Main Components Main Components ■ Graphical IDE in platform style ■ Graphical IDE in platform style ■ Compiler, ■ Compiler, prelinker prelinker, builder, , builder, cross- -referencer referencer cross ■ Lightweight library mechanism ■ Lightweight library mechanism ■ Integrated: editor, browser and ■ Integrated: editor, browser and debugger, cross tools debugger, cross tools ■ Variable or optional components: ■ Variable or optional components: bindings, GUI builder, analysis tools bindings, GUI builder, analysis tools 7
Technical Philosophy Technical Philosophy ■ Light ■ Light ■ Efficient ■ Efficient ■ Open ■ Open ■ Extensible ■ Extensible ■ Familiar ■ Familiar 8
ObjectAda Compilers ObjectAda Compilers ■ Very fast ■ Very fast � Essentially one pass Essentially one pass � � 70K 70K lpm lpm on SPARC 10 on SPARC 10 � � Multiple units/files in compilation faster Multiple units/files in compilation faster � due to caching of specs due to caching of specs ■ Source ■ Source- -based Library based Library � No compilation order requirements No compilation order requirements � � Can have Parallel and Distributed Builds Can have Parallel and Distributed Builds � � Can use multiple source and object paths Can use multiple source and object paths � � Persistent info is ASCII and editable Persistent info is ASCII and editable � 9
Project / Library Model Project / Library Model ■ New 7.2 modeled after MSVC++ 5.0 ■ New 7.2 modeled after MSVC++ 5.0 ■ Project is a logical collection of sources ■ Project is a logical collection of sources and support files and support files ■ Target is a build ■ Target is a build- -oriented grouping of oriented grouping of project files project files � Supports distinct options Supports distinct options � � Supports Supports autocompilation autocompilation or build or build � � Equivalent to a library (multiple closures) Equivalent to a library (multiple closures) � 10
VC++ Integration VC++ Integration VC++ Integration ■ Mixed Language ■ ■ Mixed Language - C, C++, Ada, Asm Mixed Language - - C, C++, Ada, C, C++, Ada, Asm Asm ■ Edit ■ ■ Edit Edit ■ Debug ■ ■ Debug Debug ■ Build ( ■ ■ Build (adabuild -mk) Build (adabuild adabuild - -mk mk) ) 11
Real- -time approach time approach Real ■ Hard Real ■ Hard Real- -Time and Safety Critical Time and Safety Critical ■ Integrative approach: ■ Integrative approach: � PharLap PharLap ETS & Raven for 32 bit Intel ETS & Raven for 32 bit Intel � � Tornado, LynxOS & Raven for PowerPC Tornado, LynxOS & Raven for PowerPC � � Raven for 68K Raven for 68K � � Host Host- -based tools integration as well as based tools integration as well as � target executive target executive � Real Real- -time extensions time extensions � � Real Real- -time analysis tools time analysis tools - - PerfoRMAx PerfoRMAx � � Testing Tools Testing Tools - - AdaCast AdaCast � 12
( Legal - - Safety ) Systems Safety ) Systems ( Legal Case Law Laws Precedence Regulations Interpretations Standards Standards Guidelines PROCESS Guidelines Visibility Traceability EVIDENCE / RECORD Confidence / Safety 13
Real- -time approach time approach Real ■ Aonix technology for safety ■ Aonix technology for safety- -critical critical applications applications ■ Raven ■ Raven � Conforms to the Conforms to the Ravenscar Ravenscar Profile Profile � � Hard Real Hard Real- -Time and Certifiable Ada95 Subset Time and Certifiable Ada95 Subset � � 32 bit Intel and PowerPC 32 bit Intel and PowerPC � � AdaCover coverage analysis AdaCover coverage analysis � � Certification packages Certification packages � � Raven Certification Raven Certification � 14
Real- -time approach time approach Real ■ Raven ■ Raven � New support for bounded tasking model New support for bounded tasking model � � Tasks Communicate via Protected Objects Tasks Communicate via Protected Objects � � New support for segregated loads New support for segregated loads � � Support for Partitioned Memory Model OS Support for Partitioned Memory Model OS � � Multi Safety Levels on Single Board Multi Safety Levels on Single Board � � Exception Handling Support Exception Handling Support � � For Hard Real For Hard Real- -Time Time � � In Extensions (non In Extensions (non- -certifiable) Library certifiable) Library � 15
Raven Packages Raven Packages Raven Packages ■ Core Pack ■ ■ Core Pack Core Pack � Core Compile System Core Compile System � Core Compile System � ■ Project Pack ■ ■ Project Pack Project Pack � Ada Ada- -Assured and PerfoRMAx Assured and PerfoRMAx � Ada-Assured and PerfoRMAx � ■ Test Pack ■ ■ Test Pack Test Pack � AdaCast, Test: harness, case, coverage, ... AdaCast, Test: harness, case, coverage, ... � AdaCast, Test: harness, case, coverage, ... � ■ Safety Critical Pack ■ ■ Safety Critical Pack Safety Critical Pack � AdaCover: Machine Level Coverage AdaCover: Machine Level Coverage � AdaCover: Machine Level Coverage � ■ Certification Pack ■ ■ Certification Pack Certification Pack ■ Design Pack ■ ■ Design Pack Design Pack � StP/UML with ACD with Raven Code Generatio StP/UML with ACD with Raven Code Generatio � StP/UML with ACD with Raven Code Generatio � 16
AdaCover AdaCover AdaCover ■ Qualified to DO ■ ■ Qualified to DO-178B Level A Qualified to DO- -178B Level A 178B Level A ■ Target ■ ■ Target - Data Collection Target - - Data Collection Data Collection � User selectable start/stop points User selectable start/stop points � User selectable start/stop points � � Single steps on target Single steps on target � Single steps on target � � Provides full machine level coverage data Provides full machine level coverage data � Provides full machine level coverage data � � Uploaded to Host after execution Uploaded to Host after execution � Uploaded to Host after execution � ■ Host ■ ■ Host - Post Analysis Host - - Post Analysis Post Analysis � Coverage reports Coverage reports � Coverage reports � � Updates assembly listing Updates assembly listing � Updates assembly listing � � Merge to create total execution reports Merge to create total execution reports � Merge to create total execution reports � 17
Recommend
More recommend