Bioinformatics is one of the fastest growing disciplines in the life sciences. While biologists apply the software tools, there is a great need for the improvement of existing tools and the development of new ones. This book illustrates how software engineering techniques can be applied to such problems, providing biologists with a step-by-step guide to developing their own programs and showing IT specialists how they can apply their skills in the life sciences.
Autorentext
Paul Weston has nearly two decades' experience in application development, gained in environments as diverse as entrepreneurial start-ups and monolithic bureaucracies. From MVS to XP, from COBOL to Java, and from Structured Programming to Struts - he has wrestled with them all.He began developing bioinformatics applications in the mid-1990s and has particular expertise in sequence assembly and sequence data management. He is now a director of Woodcock Stewart, a consultancy specializing in bioinformatics software development and developer training.
Klappentext
Bioinformatics Software Engineering: Delivering Effective Applications will be useful to anyone who wants to understand how successful software can be developed in a rapidly changing environment, especially newly qualified bioinformaticians.
It is not tied to any particular operating system, platform, language, or methodology. Instead it focuses on principles and practices that have been proven in the real world. It is pragmatic, emphasizing the importance of what the author calls Adaptive Programming - doing what works in your situation.
It is concise, covering the whole software development lifecycle in one slim volume. And, unusually for a computer book, it is eminently readable.
"Well thought-out ... addresses many of the key issues facing developers of bioinformatics software." Simon Dear, Director, UK Technology and Development, GlaxoSmithKline
Inhalt
Preface
List of figures.
Acknowledgements.
PART 1: INTRODUCTION.
1. What You Need to Know.
2. What Is Software Engineering?
PART 2: BEFORE BEGINNING.
3. Project Definition.
4. Requirements Capture.
5. Separating Function, Interface and Implementation.
6. Implementation Considerations.
7. Proof of Concept, Prototyping and Buy-in.
PART 3: GETTING IT DONE.
8. Data in, Data out and Data Transformation.
9. Where to Start?
10. Functional, then Optimized.
11. Coding Style.
PART 4: FOR SOME VALUES OF DONE.
12. Writing the Friendly Manual.
13. Testing - What and When.
14. Rollout and Delivery.
15. Support and Feedback.
16. Planned and Unplanned Enhancements.
17 Project Signoff.
Index.