Aspect-Oriented Software Development Prof. Awais Rashid and Dr. Steffen Zschaler C41/C30 Infolab21 {marash | Computing Department.

Slides:



Advertisements
Similar presentations
BSc Honours Project Introduction CSY4010
Advertisements

Towards a Common Reference Architecture for Aspect-Oriented Modeling A. Schauerhuber, W. Schwinger, E. Kapsammer, W. Retschitzegger, M. Wimmer 8th Workshop.
Awais Rashid, Steffen Zschaler
COMP 5138 Relational Database Management Systems Sem2, 2007 Lecture 0 Course Overview.
: Distributed Systems Dr. Rajkumar Buyya Senior Lecturer and Director of MEDC Course Grid Computing and Distributed Systems (GRIDS) Laboratory Dept.
1 Teaching Portfolio of Vandana P. Janeja Information Technology Major PhD in Management Rutgers University - Newark.
1 introduction to projects general information. 2 people lectures information systems/bit - Phil Clipsham computing programmes – Kevin Parrott multimedia.
Your Project Proposal.
CSS-304: Computer Systems Interface Duisebekov Zhasdauren Faculty of Engineering Suleyman Demirel University.
Concordia University Department of Computer Science and Software Engineering Click to edit Master title style ADVANCED PROGRAMING PRACTICES Introduction.
The UK’s European university CO659 COMPUTATIONAL CREATIVITY Dr. Anna Jordanous Dr. Colin Johnson.
1 introduction to mm/g/wt projects general information.
IACT303 – INTI 2005 World Wide Networking Welcome and Introduction to Subject. Penney McFarlane The University of Wollongong.
Web Technologies – CS381 Bogdan L. Vrusias 22 January 2004.
Jan. 25, 2001CSci Clark University1 CSci 250 Software Design & Development Lecture #4 Thursday, Jan. 25, 2001.
Academic Year 2014 Spring. MODULE CC3005NI: Advanced Database Systems Academic Year 2014 Spring.
Introduction to Web Technologies Module – CS381 Introduction to Web Technologies – CS th January 2007 Dr Bogdan L. Vrusias
ASAM Software Training with Addiction Recovery Resources, Inc.
A Student View of the simulated learning experience Austin Cooke Strategic Management.
1 Model Interface Implementation for Two-Way Obliviousness in Aspect-Oriented Modeling Presented by Wuliang Sun Department of Computer Science Baylor University.
1 Object Oriented Programming Computer Systems Engineering (D2) and Programming (P)
May 1, 2007Mohamad Eid SEG 3120 User Interface Design Mohamad Eid Office: SITE 5077 Tel: (613) ext. 2148
CSY1017-Computer Communications 1 Introduction to module.
SYSC System Analysis and Design 1 Part I – Introduction.
Conquering Complex and Changing Systems Object-Oriented Software Engineering Chapter 1, Introduction to Software Engineering.
BMAN Integrative Team Project Professor Linda A Macaulay.
GROUP PROJECTS IN SOFTWARE ENGINEERING EDUCATION Jiang Guo Department of Computer Science California State University Los Angeles April 3-4, 2009.
Workshop Notes Course development: Free and Open Software Development.
EECE 310 Software Engineering Lecture 0: Course Orientation.
Chapter 2 – Software Processes Lecture 1 1Chapter 2 Software Processes.
Basic Impact Evaluation Course Poverty Analysis Initiative (C102) Poverty Analysis Initiative (C102) World Bank Institute Attacking Poverty Program.
Course Introduction Software Engineering
Spring 2011 CIS 4911 Senior Project Catalog Description: Students work on faculty supervised projects in teams of up to 5 members to design and implement.
WXGE 6103 Digital Image Processing Semester 2, Session 2013/2014.
L1-S1Introduction 2003 SJSU -- CmpE Advanced Object-Oriented Analysis & Design Dr. M.E. Fayad, Professor Computer Engineering Department, Room #283I College.
CSc161 Software Quality Pete Sawyer & Alan Dix
Software Engineering CS3003 Lecture 1 Introduction to the module Dr Tracy Hall.
Aspect-Oriented Refactoring of the Apache Cocoon Shared-Object Resource Allocation System Jeff Dalton February 28th, 2003 Advisor: David G. Hannay Client:
BSc Honours Project Introduction CSY4010 Amir Minai Module Leader.
Course Overview Stephen M. Thebaut, Ph.D. University of Florida Software Engineering Foundations.
Aspect Oriented Programming An Introduction based on se-radio.net episode th October 2009 Aspect Oriented Programming - Nils Schmidt.
Object Oriented Programming (OOP) Design Lecture 1 : Course Overview Bong-Soo Sohn Assistant Professor School of Computer Science and Engineering Chung-Ang.
Course Introduction CEN 5016 Software Engineering Dr. David A. Workman School of EE and Computer Science January 9, 2007.
BSc Honours Project Introduction CSY4010 Amir Minai Module Leader.
Ivailo Chakarov System Development, Tools... Ivo Chakarov Telephone: Ext Website:
SYSC System Analysis and Design 1 Part I – Introduction.
CCM 4300 Lecture 1 Computer Networks: Wireless and Mobile Communication Systems Dr E. Ever School of Engineering and Information Sciences CCM4300_Autumn.
IWFST'2005, Shanghai Testing Aspect-Oriented Programs: Challenges and Opportunities Jianjun Zhao Department of Computer Science and Engineering Shanghai.
CASE Tools CSC 532 : Advance Topics CSC 532 : Advance Topics Software Engineering Software Engineering Dr. box Dr. box Moayad Almohaishi Moayad Almohaishi.
GEK Frederick H. Willeboordse Compound & Prosper! GEK2507.
SFTW241 Programming Languages Architecture 2002~2003 Semester II Duration: 2003/2/11~ 2003/4/11 University of Macau Faculty of Science and Technology Computer.
1 PJJ Course Outline Session: LHE3204: Computer Applications in TESL Nooreen Noordin (Dr.) Faculty of Educational Studies Universiti Putra Malaysia.
Embedded and Real Time Systems David Andrews
BSc Honours Project Introduction CSY4010 Amir Minai Module Leader.
Course Overview Stephen M. Thebaut, Ph.D. University of Florida Software Engineering.
Tel : About iCodeinc: iCode Inc is a state-of-the-art educational institution located in the Dallas area. iCode’s mission.
Computer Science I ISMAIL ABUMUHFOUZ | CS 180. CS 180 Description BRIEF SUMMARY: This course covers a study of the algorithmic approach and the object.
Introduction to Web Technologies Module Introduction to Web Technologies – CS th January 2005 Dr Bogdan L. Vrusias
Advanced Programing practices
MSc(IT) Program Overview
Advanced Programming Dr. Sadi Seker.
TAL 7011 Architecture of Large Software Systems
EECE 310 Software Engineering
WEB DEVELOPMENT TRAINING
CSS-304: Computer Systems Interface
PRACTICAL TRAINING ORIENTATION Information Technology Department College of Computer and Information Sciences King Saud University Committee Members:
Advanced Programing practices
CS114B Introduction to Computer Science II
Towards a Common Reference Architecture for Aspect-Oriented Modeling A
Software Architecture & Design
Presentation transcript:

Aspect-Oriented Software Development Prof. Awais Rashid and Dr. Steffen Zschaler C41/C30 Infolab21 {marash | Computing Department

Contacting the Lecturers… Dr. Steffen Zschaler InfoLab 21 - Room: C30 Prof. Awais Rashid InfoLab 21 - Room: C41

Other Course Lecturers and Lab Supervisors Guest Lecture: Dr. Phil Greenwood Lab co-ordinator Mr. Syed Asad Ali Naqvi

Preliminaries Course Website – Who’s who - introduction to the group –Name –Your background Which degree? Institution? –Experience with Java Academic course? Real software projects? –Why have you registered for this module? Special interest in a specific AOSD topic?

Course Structure AOSD MSc Course Week Layout Note: AspectJ is taught in hands-on sessions in the MSc Lab. MondayTuesdayWednesdayThursdayFriday 09:00-10:00 Lecture: Introduction to AOSD Lecture/Hands -on: AspectJ Group Reading for Group Work 2 Group Reading for Group Work 3 Lecture: Aspect- Oriented Requirements Engineering 10:00-11:00 Lecture/Hands -on: AspectJ Group Reading for Group Work 2 Group Reading for Group Work 3 Lecture: Aspect- Oriented Requirements Engineering 11:00-12:00 Lecture/Hands -on: AspectJ Group Work 1: AspectJ Evaluation Group Reading for Group Work 2 Group Reading for Group Work 3 Lecture: Aspect- Oriented Design and UML 12:00-13:00 Lecture/Hands -on: AspectJ Group Work 1: AspectJ Evaluation Lunch Group Reading for Group Work 3 Lunch 13:00-14:00Lunch Group Work 2: Obliviousness Debate Lunch Lecture: Aspect- Oriented Design and UML 14:00-15:00 Lecture/Hands -on: AspectJ Group Reading for Group Work 2 Group Work 2: Obliviousness Debate Group Reading for Group Work 3 Group Work 4: Analysis and Design Exercise 15:00-16:00 Lecture/Hands -on: AspectJ Group Reading for Group Work 2 Guest Lecture: The Impact of Aspects on Design Stability Group Work 3: Presentations Group Work 4: Analysis and Design Exercise 16:00-17:00 Lecture/Hands -on: AspectJ Group Reading for Group Work 2 Lecture: AOSD in Practice Group Work 3: Presentations Group Work 4: Analysis and Design Exercise 17:00-18:00 Group Reading for Group Work 2 Group Reading for Group Work 3

Assessment: Group Work 1 AspectJ Evaluation –(Tuesday 11:00-13:00): 6% –You will be divided into two groups (see web site)

Assessment: Group Work 2 Debate on the role of obliviousness in AOSD (Group debate: three groups, see web site): 8% –All members of a group are expected to speak –30 minutes presentation for each group Group 1 should take a balanced position i.e. obliviousness is useful in some cases and harmful in others Group 2 should take a pro position i.e. obliviousness is good Group 3 should take an opponent position i.e. obliviousness is bad

Assessment: Group Work 3 Comparing other AOP techniques with AspectJ (Group presnetation: three groups, see web site): 8% –All members of a group are expected to speak –30 minutes presentation for each group Each group should compare the technique they read about with AspectJ –Compare strengths and shortcomings

Assessment: Group Work 4 AO analysis and design exercise: 8%

Assessment: Individual Work Individual Project (Handed in 12:00 noon 20 April 2009): 70% –criteria: design creativity elegant use of AOP mechanisms code complexity design documentation and rationale

Groups Group 1 –Fisher, Matthew –Gray, Matthew –Parsons, Colin Group 2 –Gall, Martin –Molineux, Andrew –Potts, Matt Group 3 –Gerrard-Longworth, Simon –Ndou, Goodchild –Smith, James Group 1 –Fisher, Matthew –Gall, Martin –Gerrard-Longworth, Simon –Gray, Matthew Group 2 –Molineux, Andrew –Ndou, Goodchild –Parsons, Colin –Potts, Matt –Smith, James

Learning Outcomes At the end of the course, you will have: an understanding of the challenges faced when handling crosscutting concerns during software development; knowledge of state-of-the-art in AOSD rooted in case studies and applications; practical experience of developing software using AOSD tools and techniques.

What is expected from… … YOU: –give your best in the hands-on exercises today –interact with us when a concept wasn’t clear –share and contribute to the group with your thoughts –take this course seriously commit to the deadlines reflect critically about the benefits and drawbacks of AOSD

Recommended Texts (Essential) Aspect-Oriented Software Development R. Filman, T. Elrad, S. Clarke, M. Aksit Addison Wesley 2004 ISBN: Eclipse AspectJ: Aspect-Oriented Programming with AspectJ and the Eclipse AspectJ Development Tools A. Colyer, A. Clement, G. Harley, M. Webster Addison Wesley 2004 ISBN:

Recommended Reading (Additional) AspectJ in Action - Practical Aspect-Oriented Programming R. Laddad Manning Publications Inc ISBN: Aspect-Oriented Databases A. Rashid Springer-Verlag 2003 ISBN: Aspect-Oriented Software Development with Use Cases P.-W. Ng and I. Jacobson Addison Wesley 2005 ISBN: