How the Move of the Cookbook to the Wiki is progressing
This page contains information on the decisions done while moving the Cookbook to the wiki.
- The Change Log will not be moved. It will be thrown out.
- Not to be moved into the Cookbook: 1.1, 1.4, 1.5
- Chapter 3 will be a single page.
- Sections in Chapter 5 will be named Subsystems.
Entire Index from Cookbook
- 1. Change Log
- 1. Introduction
- 1.1. Thanks
- 1.2. [[About the project]]
- 1.3. [[How to contribute]]
- 1.4. About this Cookbook
- 1.4.1. In this Cookbook, you will find...
- 1.4.2. In this Cookbook, you will not find...
- 1.5. Mailing Lists
- 2. [[Building from source]]
- 2.1. Quick Start]]
- 2.2. Source layout]]
- 2.3. Preparations]]
2.3.1. What do I need to build ArgoUML?]] 2.3.2. Configuring Subversion]] 2.4. The ArgoUML development environment]] 2.4.1. Which tools are part of the ArgoUML development environment? ]] 2.4.2. What libraries are needed and used by ArgoUML?]] 2.5. Downloading from the Subversion repository]] 2.6. Build Process]] 2.6.1. How Ant is run from the ArgoUML development environment]] 2.6.2. Developing in a subproject]] 2.6.3. Troubleshooting the development build]] 2.7. The JUnit test cases]] 2.7.1. About the Test case Class]] 2.7.2. Naming JUnit tests classes]] 2.7.3. About the Test case Methods]] 2.7.4. Improving a test case]] 2.8. Generating documentation]] 2.8.1. Building documentation]] 2.9. Setting up Eclipse 3]] 2.9.1. Eclipse installation instructions]] 2.9.2. Basic ideas of the set up]] 2.9.3. Checking out through Eclipse]] 2.9.4. Eclipse to help with the ArgoUML coding style]] 2.9.5. Eclipse to automatically find problems in the code]] 2.9.6. Settings for Checkclipse]] 2.9.7. Running JUnit test cases from within Eclipse]] 2.9.8. How to work with the modules]] 2.10. Settings for ?NetBeans]] 2.11. Settings for Emacs]] 2.12. Making a release]] 2.12.1. The release did not work]] 3. [[ArgoUML requirements]] 3.1. Requirements for Look and feel 3.1.1. When multiple visual components are showing the same model element they shall be updated in a consistent manner throughout the application. 3.1.2. All views of a model element shall be updated as soon as the model element is updated. 3.1.3. Editable views of the model should update the model on each keystroke and mouse click. 3.1.4. Any text fields that require validation should not be editable directly from a view. 3.1.5. With dialogs, the model is not updated until the dialog is accepted by the user with valid fields. 3.1.6. The user shall receive some visual feedback during the edit process of textual UML to indicate whether the text represents valid UML syntax. 3.1.7. There shall be no indication of an exception on the screen or in the log if it has occured merely because of a user mistyping or not being aware of UML syntax. 3.1.8. All text fields shall have context sensitive help. 3.2. Requirements for UML 3.2.1. ArgoUML shall be a correct implementation of the UML 1.4 model. 3.2.2. ArgoUML shall implement everything in the UML 1.4 model. 3.2.3. About enforcement of well-formedness rules from the UML standard. 3.3. Requirements on java and jvm 3.3.1. Choice of JRE: ArgoUML will support any JRE compatible with a Sun specification of any JRE from Sun that has not begun the Sun End of Life (EOL) process. 3.3.2. Download and start 3.3.3. Console output: Logging or tracing information shall not be written to the console or to any file unless explicitly turned on by the user. 3.4. Requirements set up for the benefit of the development of ArgoUML 3.4.1. Logging: The code shall contain entries logging important information for the purpose of helping Developers of ArgoUML in finding problems in ArgoUML itself. 4. ArgoUML Design, The Big Picture]] 4.1. Definition of subsystem]] 4.2. Relationship of the subsystems]] 4.3. External subsystems]] 4.4. Low-level subsystems]] 4.5. View and Control subsystems]] 4.6. Top Level subsystem]] 4.7. Loadable subsystems]] 5. Inside the subsystems]] 5.1. Model]] 5.1.1. Design of the subsystem 5.1.2. Factories 5.1.3. Helpers 5.1.4. The model event pump 5.1.5. NSUML specifics 5.1.6. The use of IDs in MDR 5.1.7. How to work against the model 5.1.8. How do I...? 5.2. Critics and other cognitive tools]] 5.2.1. Main classes 5.2.2. How do I ...? 5.2.3. org.argouml.cognitive.critics.* class diagram 5.3. Diagrams]] 5.3.1. Multi editor pane 5.3.2. How do I add a new element to a diagram? 5.3.3. How to add a new Fig 5.4. Property panels]] 5.4.1. Adding the property panel 5.5. Persistence]] 5.6. Notation]] 5.7. Profile]] 5.7.1. Initialization of the profile subsystem 5.7.2. Profile(s) management 5.7.3. Defining profiles 5.7.4. History of the Profile subsystem 5.8. Reverse Engineering Subsystem]] 5.8.1. Common import code 5.8.2. Diagram layout algorithms 5.9. Code Generation Subsystem]] 5.10. Java - Code Generation and Reverse Engineering]] 5.10.1. How do I ...? 5.10.2. Which sources are involved? 5.10.3. How is the grammar of the target language implemented? 5.10.4. Which model/diagram elements are generated? 5.11. Other source languages (C++, Python, etc)]] 5.12. The GUI]] 5.12.1. The ?TargetManager 5.13. Application]] 5.13.1. What is loaded/initialized? 5.13.2. Details pane 5.14. Help System]] 5.15. Internationalization]] 5.15.1. Organizing translators 5.15.2. Ambitions for localization 5.15.3. How do I ...? 5.16. Logging]] 5.16.1. What to Log in ArgoUML 5.16.2. How to Create Log Entries... 5.16.3. How to Enable Logging... 5.16.4. Reasoning around the performance issues 5.16.5. References 5.17. ?TaskManagement]] 5.18. Configuration]] 5.19. To Do items]] 5.20. Explorer]] 5.20.1. Requirements 5.20.2. Public APIs and SPIs 5.20.3. Details of the Explorer Implementation 5.20.4. How do I ...? 5.21. Module loader]] 5.21.1. What the ?ModuleLoader does 5.21.2. Design of the Module Loader 5.22. OCL]] 6. Extending ArgoUML]] 6.1. How do I ...? 6.2. Modules]] 6.2.1. Modules 6.2.2. Modules 6.2.3. Tip for creating new modules (from Florent de Lamotte) 6.3. How are modules organized in the Java code? 6.3.1. Requirements on modules 6.3.2. How do I ...? 7. Standards for coding in ArgoUML]] 7.1. When Writing Java Code]] 7.2. When Committing to the Repository]] 7.3. When Using Branches]] 7.4. When Working with the Build Process]] 7.5. When Considering Dependencies]] 8. Writing Documentation in the ArgoUML Project]] 8.1. Introduction 8.2. Style 8.3. Document Conventions]] 8.4. ?DocBook Conventions]] 8.5. Docbook editing For Eclipse Users]] 8.6. Docbook editing For Emacs Users]] 8.7. User Manual Plans]] 8.7.1. Target Audiences for the User Manual 8.7.2. Goals for the User Manual 8.7.3. Suggested Manual Structure 8.7.4. Actions, Priorities and Questions 9. Processes for the ArgoUML project]] 9.1. The big picture for Issues]] 9.2. Attributes of an issue]] 9.2.1. Priorities 9.2.2. Resolutions 9.3. Roles Of The Workers]] 9.3.1. The Reporter 9.3.2. The Resolver 9.4. How to resolve an Issue]] 9.5. How to Close an Issue]] 9.6. How to relate issues to problems in dependencies]] 9.7. How to Create a Stable Release]] 9.8. Moderation of a mailing list]] Glossary]] Index A. Further Reading A.1. Jason Robbins Dissertation A.1.1. Abstract A.1.2. Where to find it A.2. Martin Skinners Dissertation A.2.1. Abstract A.2.2. Where to find it B. Repository Contents C. Organization of ArgoUML documentation