Book contents
- Frontmatter
- Contents
- Foreword
- Acknowledgments
- Introduction
- Chapter 1 Getting Started
- Chapter 2 Basic Concepts
- Chapter 3 Team Development
- Chapter 4 Advanced Development
- Chapter 5 Formal Concepts
- Chapter 6 Packaging and Delivery
- Chapter 7 Extending the System
- Chapter 8 Administration
- Chapter 9 Goodies
- Chapter 10 Troubleshooting
- Appendix: A Selected Annotated API of ENVY System Classes
- Glossary
- References
- Index
Chapter 4 - Advanced Development
Published online by Cambridge University Press: 11 January 2010
- Frontmatter
- Contents
- Foreword
- Acknowledgments
- Introduction
- Chapter 1 Getting Started
- Chapter 2 Basic Concepts
- Chapter 3 Team Development
- Chapter 4 Advanced Development
- Chapter 5 Formal Concepts
- Chapter 6 Packaging and Delivery
- Chapter 7 Extending the System
- Chapter 8 Administration
- Chapter 9 Goodies
- Chapter 10 Troubleshooting
- Appendix: A Selected Annotated API of ENVY System Classes
- Glossary
- References
- Index
Summary
In the previous chapters we've rapidly covered almost everything you need to do basic development with ENVY. This chapter deals with some of the more complex issues that arise in a larger project. The two primary issues we'll address are configuration management and project organization. ENVY supports sophisticated configuration management that enables us to write portable software that can also exploit platform features. Project organization includes advice on how to structure the ENVY components that make up a project, a discussion of multi-site development, and ways to manage multiple divergent streams. We also discuss some alternative processes to the standard we've been describing so far, explaining how ENVY can be used as part of an “Extreme Programming” project. Finally, we'll add some miscellaneous topics, tricks, and conventions that ease development.
The discussion here is aimed at someone who has a good understanding of the basic ENVY concepts and has used ENVY at least a little. Much of this advice will be most helpful to someone setting up a larger project. New users should begin by reading some of the previous chapters and working with the concepts discussed in those chapters. Toolsmiths will find this discussion important for ways to organize tools for multiple versions or dialects, and will appreciate some of the tips and conventions.
Configuration Management
The distinction between version control and configuration management is not clearly drawn. However, in our context we will identify configuration management as being concerned with variations in our software due to different configuration information.
- Type
- Chapter
- Information
- Mastering ENVY/Developer , pp. 73 - 98Publisher: Cambridge University PressPrint publication year: 2001