Implementation is no longer just writing code, but it is also following guidelines, writing documentation and also writing unit tests. Software projects can be so large that we have to do careful planning. Teams do not consist only of developers, but also of testers, architects, system engineers, customer, project managers, etc. Software engineering is also about communication. The problems to solve are so complex or large, that a single developer cannot solve them anymore. It is intended as a textbook for an undergraduate level course. This book is an introduction to the art of software engineering. My special thanks go to Adrignola and Kayau who did the tedious work of importing the original articles (with all their history) from Wikipedia to Wikibooks! If this effort was successful, you be the judge of it, and if you have suggestions for improvement, just use the ’Edit’ button! The advantage for the student is that he can have a printed or pdf version of the textbook at a reasonable price (free) and with reasonable licenses (creative commons).Īs for the philosophy behind this book: brevity is preferred to completeness, and examples are preferred to theory. The advantage for the instructor is that she can just pick the pieces that fit into her course and create a collection. The hope is that this can be used as a textbook for an introductory software engineering class. Hence the idea for this book came about: to take the relevant articles from Wikipedia, combine them, edit them, fill in the missing pieces, put them in context and create a wikibook out of them. Also, these articles contain too much information and too few examples. It is not evident what is important and what is less relevant, where to start and what to skip in a first reading. For a beginner, however, it is not so easy to find her or his way through that jungle of articles. When preparing an undergraduate class on Software Engineering, I found that there are a lot of good articles in Wikipedia covering different aspects related to software engineering. Software Engineering Introduction History Software Engineer Process & Methodology Introduction Methodology V-Model Agile Model Standards Life Cycle Rapid Application Development Extreme Programming Planning Requirements Requirements Management Specification Architecture & Design Introduction Design Design Patterns Anti-Patterns UML Introduction Models and Diagrams Examples Implementation Introduction Code Convention Good Coding Documentation Testing Introduction Unit Tests Profiling Test-driven Development Refactoring Software Quality Introduction Static Analysis Metrics Metrics2 Visualization Code Review Code Inspection Deployment & Maintenance Introduction Maintenance Evolution Project Management Introduction Software Estimation Cost Estimation Development Speed Tools Introduction Modelling and Case Tools Compiler Debugger IDE GUI Builder Source Control Build Tools Software Documentation Static Code Analysis Profiling Code Coverage Project Management Continuous Integration Bug Tracking Decompiler Obfuscation Re-engineering Introduction Reverse Engineering Round-trip Engineering Other Introduction References Editors Editors Authors Authors License You won't see this message or any elements not part of the book's content when you print or preview this page. This is the print version of Introduction to Software Engineering
0 Comments
Leave a Reply. |