Software Engineering With Oracle : Best Practices for Mission-Critical Systems
Mission Critical Applications - Engineered for Success with Oracle. This book is unique. If you are looking for a book that applies time-honored software engineering principles to enterprise-wide, Oracle-based projects, then this book will meet your needs. Too many large projects run into too much difficulty, because fundamental software engineering principles were not considered. Not here. . . . In addition, Software Engineering with Oracle links Oracle's own architectural components with crucial externals such as compilers, Version Control Systems, Bug Track systems, and management tools. Build on your existing knowledge of relational theory to put the power of Oracle to work. Learn advanced techniques to design and implement high-end systems using middleware technologies and classical software engineering methods. As you walk through the implementation of two realistic software projects, you'll master innovative solutions with insider's tips from an experienced expert who will show you how to: * Look at the big picture: architecture and scalability * Manage timing and performance issues * Document as you go * Use tools like C++, Pro C, OCI, and PL/SQL * Develop in Visual Basic,
- Paperback | 784 pages
- 178 x 234 x 50mm | 1,443g
- 29 Jul 1999
- Pearson Education (US)
- Prentice Hall
- Upper Saddle River, United States
- w. figs.
About Elio Bonazzi
Elio Bonazzi has worked with the Oracle RDBMS since 1990, first as a developer, then as a DBA, and most recently as a Senior Designer/Solution Architect. He currently works as a contractor for IBM Global Services, serving as a Technical Solution Architect in a major Oracle/middleware project.
Table of contents
1. Software Engineering in Oracle Projects. Mid-Range: The Domain of Rightsizing. Typical Mistakes to Avoid. How This Book Is Structured.2. The Software Development Life Cycle. The Traditional Approach. The Waterfall Model. Entrenched in the Large Corporations. Issues and Problems Associated to the Waterfall Model. Risk Analysis, Prototyping, and the Spiral Model. Different Methodologies, Same Development Paradigm. Object Orientation and the Fountain Model. Software Development Life Cycle in Oracle Projects. Summary.3. Documentation as an Integral Part of Software Projects. Three Fundamental Requisites. Traceability. Traceability through SGML. XML. Traceability Through HTML. Using Oracle ConText to Manage Project-Related Documentation. Oracle ConText: Text Retrieval Features. The Oracle ConText Option in Action. Synchronization. Synchronization Through Change Management. Project Deliverables: They Are All Documents! Summary.4. Designing an Oracle Application. The Intellectual Tools in the Software Engineer's Bag. Design for Flexibility. Design for Performance. Design for Scalability. Design for Reliability. Design for Distribution and Replication of Data. Design for Very Large Database/Data Warehouse. Summary.5. Detailed Design. Choosing a Development Environment/Language. Application Architecture Paradigms. Rapid Application Development Tools: Compatibility and Performance Issues. Detailed Design Issues. Summary.6. Data Modeling and CASE Tools. Data Modeling Methodologies. The Role of Domains. The Importance of a Repository. CASE Tools. Design Deliverables. Summary.7. How to Structure the Server Code. Beyond the Oracle Manuals. Procedural Code Lls the Error Handler Function. Using Composition in OO. Error/Exception Handling. Application Event Logging. Summary.8. Software Engineering Essentials. Version Control. Release Building. Tools for Better Code. Writing Performance Conscious SQL Statements. Testing Strategies. Internationalization Issues. Summary.9. Managing Multiple Environments. Development, Test, Production. Synchronizing the Environments. The Oracle Security Model. Application Objects Owner. Environment Setup. Summary.10. Developing the Client. There Is No Such Thing as the "Best Tool". The Major Players in the Client-Server Arena. Connecting to Oracle. The Software Engineering Focus. Summary.11. Oracle Tools: Pro*C/C++. Error Handling in Pro*C. Host Array Processing. Pro*C and PL/SQL. Support for C++. Precompiler Options. Dynamic SQL in Pro*C. Interfacing Pro*C to OCI. Developing Multi-Threaded Applications. Handling LOB Types in Pro*C. The Object-Relational Paradigm. Oracle Type Translator (OTT). The Object Navigational and Associative Interfaces. Summary.12. Beyond Pro*C: The Oracle Call Interface. OCI release. The OCI release. The OCI Advantage. The OCI: Best Companion for C++. Summary.13. Oracle Trace. Oracle Trace Components. Using Oracle Trace-Deciding What to Sample. Oracle Trace APIs. Formatting and Analyzing Oracle Trace Data. Summary.14. Procedural SQL. Oracle Extension to ANSI SQL. Business Logic and PL/SQL. Database Triggers. PL/SQL as a Query Helper. Packages. Supplied Packages. External Procedures. Hiding PL/SQL Code. Third Party Tools. Summary.15. Getting Data In/Out of Oracle. Communicating with the External World. Oracle Advanced Queuing. Perl-OraPerl/PerlDBI. Summary.16. Communicating with the Server. SQL*Net/Net8: The Main Road To Connect to an Oracle Server. When SQL*Net Is Not To Be Used. Middleware and ACID Messages. Summary.17. Client Development Tools: Putting Them Into Practice. ShrPool, an Oracle Shared Pool Browser. ShrPool Source Code. ShrPool in Visual Basic. ShrPool in Oracle Developer. ShrPool in Delphi. ShrPool in Powerbuilder. Summary.18. Oracle Performance Tuning. Two Areas Where Oracle Performance Can Fail. The Tool DBAs Need. OPERA Design. The OPERA Java Client. OPERA Server Source Code. Summary.Index. About the CD-ROM.