1 / 24

Gaudi Software Factory

Gaudi Software Factory. Ralph Back Ivan Porres. Programming Methods Group . Research group at Åbo Akademi/CS, started at 1984 Research on programming/software technology Logical foundations of software construction New programming paradigms Software construction tools Software process

Download Presentation

Gaudi Software Factory

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Gaudi Software Factory Ralph Back Ivan Porres

  2. Programming Methods Group • Research group at Åbo Akademi/CS, started at 1984 • Research on programming/software technology • Logical foundations of software construction • New programming paradigms • Software construction tools • Software process • Case studies

  3. People • Professors • Ralph Back (ÅA/KTF, leader) • Johan Lilius (ÅA/KTF) • Kaisa Sere (ÅA/KTF) • Joakim von Wright (ÅA/MNF) • Researchers, Post docs, Ph.D. students, M.Sc. Students, summer interns • 35 - 60 members in research group

  4. TUCS laboratories involved • Distributed Systems Lab • (Sere) ÅA-TY • Embedded Systems Lab • (Lilius) ÅA-TY • Learning and Reasoning Lab • (von Wright) ÅA-TY • Software Construction Lab • (Back, Porres) ÅA

  5. Special Status • Group selected by Academy of Finland as a Center of Excellence in Research2002 - 2007 • Topic: Formal Methods in Programming • Two other CoE in CS: • Helsinki University of Technology (neural networks) • University of Helsinki (data mining)

  6. Gaudi Software Factory • Part of Programming Methods Group research • Organized as an software production factory • Financed by Socos project, Sprout project, CoE funding • Managed and run by Software Construction Lab

  7. Objective for Gaudi • Develop and test in practice new software construction methods • Flexible software process • Efficient (easy to learn) • Produce reliable software • Applicable in Academy / Industry • Support own software development

  8. Summer 2001: Pilot Factory • A group of 6 programmers (4 ÅA students, 2 HUT students) • One product: an outlining editor • Using XP as the main software process, SFI as architecture • Good and encouraging results from this project

  9. Antoni Gaudí i Cornet 1852-1926 Spanish architect, one of the most creative architects in modern times. His style is often described as a blend of neo-Gothic and Art Nouveau, but it also has elements of Surrealism and Cubism.Gaudí attended the School of Architecture in Barcelona (1874-1878), where he spent his life. Under the patronage of industrialist Eusebio Güell, he completed many important commissions, including the Palacio Güell (1885-1889) and the Park Güell (1900-1914). In 1883 Gaudí was appointed official architect of the Church of the Sagrada Familia, which, although still unfinished at his death, is acknowledged as his masterpiece. Its lofty semi-Cubist towers, with mosaic-covered finials, dominate the skyline of Barcelona.

  10. Product Development • The main activity is product development • The products should be constructed following some specific practices • Extreme Programming, SFI, etc… • You are assisted / supervised by a coach • There is a customer that has the last word on the product

  11. Summer 2002: 3 Products • Derivation Editor • Linus Bernas, Johanes Eriksson, Peter Eriksson, Miika Hakala • Coach: Viorel Preoteasa • Customer: Ralph Back • Software Construction Workbench • Tomas Czarnecki, Juha Javanainen, Jarkko Lahti,Mari Melander • Coach: Luka Milovanov • Customer: Ralph Back • UML Modeler • Simon Dahlbacka, Markus Eriksson, Peter Ljunqvist, Petri Manila • Coach & Customer : Ivan Porres

  12. Derivation Editor • An editor to perform mathematical derivations • Shows a proof as an outline • Checks the correctness of derivations • Suggests applicable rules • Publish work book

  13. Software Construction Workbench • A tool to model and develop object-oriented software using Stepwise Feature Introduction methodology • Project Management • Release Management • Layer Management • Code Generation

  14. UML Modeler • An editor for UML models • Class, Statecharts, Sequence and Activity Diagrams • Connection with the SCW

  15. Pair Programming • Two brains better than one • Self discipline • Free communication • Ask and answer questions • Make and change pairs • Shared code ownership

  16. eXtreme Programming

  17. Python • A cool object-oriented programming language • It is easy to learn • You become productive in a short time • Large library of modules • XML • Qt graphical user interface

  18. Stepwise Feature Introduction • Software is constructed in thin layers • Each layer • adds a new feature • can be thoroughly tested and verified independently of the other layers • is a working product • Objective: Maximize flexibility and reliability

  19. Repository • All source code will be managed in a central repository by CVS • Team work • Safety net

  20. Schedule • Tutorials: before 15th of May • Preparation: short tutorials and training • Production: 15.5-14.9 • 9h to 17h

  21. Tutorials 14-16h • Python: 16.4 room 3223 and 17.4 room 4142 • Qt: 19.4 room 4142 • Extreme Programming: 23.4 • Unit Testing: 24.4 • Design Patterns: 26.4 • UML: 29.4 • UML Tool development: 29.4 • CVS: 3.5 • Stepwise Feature Introduction 7.5 • Not covered: OO, Linux (KDE, xemacs)

  22. Meetings Ralph Facilities Meetings & Tutorials Lab II Ivan Lab I Coffe Luka Viorel

  23. Other • Mailing list • gaudi@abo.fi • You need an ÅA UNIX Account • Datacentralen (www.abo.fi/dc) • Keys • Christel Engblom (3rd floor) • You need two keys (TUCS and 4144)

More Related