Gaudi Software Factory Ralph Back Ivan Porres. Programming Methods Group Research group at Åbo Akademi/CS, started at 1984 Research on programming/software.

Slides:



Advertisements
Similar presentations
© Telelogic AB Modeling DoDAF Compliant Architectures Operational Systems Technical.
Advertisements

CR ST CREST Center of Excellence in Formal Methods in Programming Ralph-Johan Back Director.
© Chinese University, CSE Dept. Software Engineering / Software Engineering Topic 1: Software Engineering: A Preview Your Name: ____________________.
Alternate Software Development Methodologies
CR ST CREST Centre for Reliable Software Technology Ralph Back Director.
Free Mini Course: Applying UML 2.0 with MagicDraw.
* To introduce a famous, influential Spanish architect/ artist. *To prepare students and increase knowledge for the upcoming unit on architecture in Art.
CR ST CREST Centre of Excellence in Formal Methods in Programming Ralph Back Director.
Gaudí Software Factory Ralph Back Ivan Porres. Gaudí Software Factory It is a place to build good software and to find the best way to build good software.
Gaudí Software Factory Ralph Back Ivan Porres. Gaudí Software Factory It is a place to build good software and to find the best way to build good software.
CMSC 132: Object-Oriented Programming II
1 Gaudi The great architect of Barcelona. 2 3 Outline Introduction Part I. Gaudi’s life Part II. His work Part III. Barcelona Conclusion References.
CMSC 132: Object-Oriented Programming II Nelson Padua-Perez William Pugh Department of Computer Science University of Maryland, College Park.
Reasons to study concepts of PL
Modified from Sommerville’s originalsSoftware Engineering, 7th edition. Chapter 8 Slide 1 System models.
A practical approach to formal methods Lecturer: Ralph Back Place: A5059 Time:e very second Monday, Dates: 28.1, 11.2, 25.2, 10.3, 31.3, 14.4,
Software Quality Assurance II Due today: Detailed Design Document I Next Class:Pressman 20; Quiz #2 Questions? / Team Status Reports Continuous Improvement.
CS427 - lecture 11 CS427 Topics in Software Engineering Ralph Johnson:
1 A Student Guide to Object- Orientated Development Chapter 9 Design.
CR ST CREST Centre of Excellence in Formal Methods in Programming Ralph Back Director.
Extensible Code Verification Kun Gao (Senior EECS) with Professor George Necula, Evan Chang, Robert Schneck, Adam Chlipala An individual receives code.
Special Software Development Paradigms Today: HW #5 Next Class: Pressman 17; Demos? Questions? / Team Status Reports / HW#4 Object-Oriented Paradigm Bio.
Developing a Basic Web Page with HTML
© 2006 IBM Corporation SOA on your terms and our expertise Discovering the Value of SOA SOA In Action SOA & End-2-End Business Driven Development using.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 8 Slide 1 Tools of Software Development l 2 types of tools used by software engineers:
Introduction to Software Testing
CSC230 Software Design (Engineering)
Software Documentation Written By: Ian Sommerville Presentation By: Stephen Lopez-Couto.
Computer Software.
Version Enterprise Architect Redefines Modeling in 2006 An Agile and Scalable modeling solution Provides Full Lifecycle.
DevNet Unplugged 2002 “Express Your Innovations” Explore The Future PI Application Framework Richard Beeson Software Engineering Group Leader San Leandro,
CASE Tools And Their Effect On Software Quality Peter Geddis – pxg07u.
Effective Methods for Software and Systems Integration
Formal Methods 1. Software Engineering and Formal Methods  Every software engineering methodology is based on a recommended development process  proceeding.
Copyright Course Technology 1999
Chapter 3 – Agile Software Development 1Chapter 3 Agile software development.
Implementation & Integration Phase Implementation, then integration: Implementation, then integration:  Each module is implemented by member of programmer.
Design Patterns OOD. Course topics Design Principles UML –Class Diagrams –Sequence Diagrams Design Patterns C#,.NET (all the course examples) Design Principles.
© 2007 Pearson Education, Inc. Publishing as Pearson Addison-Wesley 1 A Discipline of Software Design.
Information Systems Analysis and Design
Taverna and my Grid Basic overview and Introduction Tom Oinn
By: Md Rezaul Huda Reza 5Ps for SE Process Project Product People Problem.
Chapter 10 Information Systems Analysis and Design
Chapter 1 The Systems Development Environment Modern Systems Analysis and Design Sixth Edition Jeffrey A. Hoffer Joey F. George Joseph S. Valacich.
Object Management Group (OMG) Specifies open standards for every aspect of distributed computing Multiplatform Model Driven Architecture (MDA)
CS 390 Unix Programming Summer Unix Programming - CS 3902 Course Details Online Information Please check.
Framework for the Development and Testing of Dependable and Safety-Critical Systems IKTA 065/ Supported by the Information and Communication.
June 05 David A. Gaitros Jean Muhammad Introduction to OOD and UML Dr. Jean Muhammad.
© 2012 xtUML.org Bill Chown – Mentor Graphics Model Driven Engineering.
Subject Slide 1 Roundtable on Software Process Input from LHCb.
1 COMP 350: Object Oriented Analysis and Design Lecture 1Introduction References: Craig Larman Chapter 1.
14 June 2004System-wide Services: User InterfaceRich Moeser 1 EVLA Overall Software Design Final Internal Review System-wide Services: User Interface.
Cs413_design04.ppt Design and Software Development Design : to create a functional interface that has high usability Development : an organized approach.
How to write Publications / Proposals Markku Kulmala Preila and Helsinki
1 Gaudi The great architect of Barcelona. 2 3 Outline Introduction Part I. Gaudi’s life Part II. His work Part III. Barcelona Conclusion References.
Using UML, Patterns, and Java Object-Oriented Software Engineering Chapter 16, Methodologies: Putting it all together.
Software Maintenance Speaker: Jerry Gao Ph.D. San Jose State University URL: Sept., 2001.
CASE (Computer-Aided Software Engineering) Tools Software that is used to support software process activities. Provides software process support by:- –
Chapter 2 Object-Oriented Paradigm Overview. Getting Acquainted with the Class Project Read the requirements specification carefully Make note of any.
Architecture View Models A model is a complete, simplified description of a system from a particular perspective or viewpoint. There is no single view.
SOFTWARE ENGINEERING. Objectives Have a basic understanding of the origins of Software development, in particular the problems faced in the Software Crisis.
ANALISA & PERANCANGAN SISTEM Disusun Oleh : Dr. Lily Wulandari Program Pasca Sarjana Magister Sistem Informasi Universitas Gunadarma.
UML Course Instructor: Rizwana Noor. Overview  Modeling  What is UML?  Why UML?  UML Diagrams  Use Case  Components  Relationships  Notations.
1 Process activities. 2 Software specification Software design and implementation Software validation Software evolution.
Advanced Software Engineering
CMPE 412 Software Engineering
Computer Aided Software Engineering (CASE)
Part 3 Design What does design mean in different fields?
Introduction to Software Testing
Department of Computer Science Abdul Wali Khan University Mardan
Presentation transcript:

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 –Case studies

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 members in research group

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

Special Status Group selected by Academy of Finland as a Center of Excellence in Research Topic: Formal Methods in Programming Two other CoE in CS: –Helsinki University of Technology (neural networks) –University of Helsinki (data mining)

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

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

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

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 ( ), where he spent his life. Under the patronage of industrialist Eusebio Güell, he completed many important commissions, including the Palacio Güell ( ) and the Park Güell ( ). 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. Antoni Gaudí i Cornet

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

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

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

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

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

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

eXtreme Programming

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

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

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

Schedule Tutorials: before 15 th of May –Preparation: short tutorials and training Production: –9h to 17h

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)

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

Other Mailing list You need an ÅA UNIX Account –Datacentralen ( Keys –Christel Engblom (3 rd floor) –You need two keys (TUCS and 4144)