aspect-oriented software development prof. awais rashid and dr. steffen zschaler c41/c30 infolab21...
Post on 02-Jan-2016
213 Views
Preview:
TRANSCRIPT
Aspect-Oriented Software Development
Prof. Awais Rashid and Dr. Steffen Zschaler
C41/C30 Infolab21
{marash | zschaler}@comp.lancs.ac.uk
Computing Department
Contacting the Lecturers…
• Dr. Steffen Zschaler email: zschaler@comp.lancs.ac.uk
InfoLab 21 - Room: C30
• Prof. Awais Rashid
email: marash@comp.lancs.ac.uk 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– http://info.comp.lancs.ac.uk/msc/AOSDmsc/index.htm
• 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 LayoutNote: AspectJ is taught in hands-on sessions in the MSc Lab.
Monday Tuesday Wednesday Thursday Friday
09:00-10:00Lecture: 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:00Lecture/Hands-on: AspectJ
Lecture/Hands-on: AspectJ
Group Reading for Group Work 2
Group Reading for Group Work 3
Lecture: Aspect-Oriented Requirements Engineering
11:00-12:00Lecture/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:00Lecture/Hands-on: AspectJ
Group Work 1: AspectJ Evaluation
LunchGroup Reading for Group Work 3
Lunch
13:00-14:00 Lunch LunchGroup Work 2: Obliviousness Debate
Lunch
Lecture: Aspect-Oriented Design and UML
14:00-15:00Lecture/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:00Lecture/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:00Lecture/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:00Group 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 DevelopmentR. Filman, T. Elrad, S. Clarke, M. AksitAddison Wesley 2004ISBN: 0321219767
• Eclipse AspectJ: Aspect-Oriented Programming with AspectJ and the Eclipse AspectJ Development Tools A. Colyer, A. Clement, G. Harley, M. Webster Addison Wesley 2004ISBN: 0321245873
Recommended Reading (Additional)
• AspectJ in Action - Practical Aspect-Oriented ProgrammingR. LaddadManning Publications Inc. 2003ISBN: 1930110936
• Aspect-Oriented DatabasesA. RashidSpringer-Verlag 2003ISBN: 3540009485
• Aspect-Oriented Software Development with Use Cases P.-W. Ng and I. JacobsonAddison Wesley 2005ISBN: 0321268881
top related