1st Edition

Client-Centered Software Development The CO-FOSS Approach

By Allen B. Tucker Copyright 2019
    368 Pages
    by Chapman & Hall

    368 Pages 131 B/W Illustrations
    by Chapman & Hall

    368 Pages 131 B/W Illustrations
    by Chapman & Hall

    Client-Centered Software Development: The CO-FOSS Approach introduces a method to creating a customized software product for a single client, either from scratch or by reusing open source components. The clients are typically non-profit humanitarian, educational, or public service organizations. This approach has been used in undergraduate courses where students learn the principles of software development while implementing a real-world software product. This book provides instructors, students, clients, and professional software developers with detailed guidance for developing a new CO-FOSS product from conceptualization to completion.


    • Provides instructors, students, clients, and professional software developers with a roadmap for the development of a new CO-FOSS product from conceptualization to completion

    • Motivates students with real-world projects and community service experiences

    • Teaches all elements of the software process, including requirements gathering, design, collaboration, coding, testing, client communication, refactoring, and writing developer and user documentation

    • Uses source code that can be reused and refitted to suit the needs of future projects, since each CO-FOSS product is free and open source software

    • Provides links to a rich variety of resources for instructors and students to freely use in their own courses that develop new CO-FOSS products for other non-profits.

    Chapter 1 The Journey

    Section I Organization Stage

    Chapter 2 Finding a Client and a Project

    Chapter 3 Defining the Course

    Section II Development Stage

    Chapter 4 Project Launch

    Chapter 5 Domain Class Development

    Chapter 6 Database Development

    Chapter 7 User Interface Development

    Chapter 8 Preparing to Deploy

    Section III Deployment Stage

    Chapter 9 Continuing the Journey


    Allen B Tucker is the Anne T. and Robert M. Bass Professor Emeritus in the Computer Science Department at Bowdoin College. He is the author or co-author of many books and articles in the areas of programming languages, software development, natural language processing, and computer science education, and is an ACM Fellow. Professor Tucker is also Co-Founder and President of the Non-Profit FOSS Institute (NPFI), whose mission is to support the development and customization of free and open-source software to fit the needs of individual non-profit organizations.

    "This all-inclusive text integrates the "soft skills" of working with an open-source software client with the "hard skills" of Web application development in PHP, while supporting faculty with project identification and development."

    -- Janet Davis, Whitman College, Walla Walla, WA, USA

    "Client-Centered Software Development: The CO-FOSS Approach provides a practical instructional roadmap for engaging students in experiential learning about software development. The text is enriched by hard-won experiences gleaned from years of tuning the authors' approach."
    -- Jim Bowring, Associate Professor, Department of Computer Science, College of Charleston

    "This book is a practical and valuable guide for students and faculty to engage in Open Source Software projects. The CO-FOSS model should inspire a new generation of faculty and students to make a difference in their local communities and the world."
    -- Steven Huss-Lederman, Open Energy Dashboard

    "Working with Allen and his students was an invaluable experience. As a small non-profit the opportunity to tailor our own database to our distinct needs benefited us greatly. Our volunteers(the users) are able to easily negotiate the system and as a result we have maintained a vibrant volunteer base!"
    -- Joanna A. Powers, Volunteer Coordinator. Ronald McDonald House of Providence, Inc., Providence, RI

    "Under Allen Tucker's leadership, he and his students created a state-of-the-art- software program to help track food rescue in the Lowcountry. Working with volunteers at various levels of technical expertise, this simple and effective tool enables Second Helpings, a food rescue agency that rescued over three million pounds of food in 2018, to document over 300 volunteers, 30 food donors, 60 recipient agencies and millions of pounds of food re