Schedule:

SAC 2005 offers the following tutorials on Sunday March 13, 2005. All tutorials are half-day long.

9:00AM - 12:00PM
1:00PM - 4:00PM

T1: Specification and Testing Functional and Nonfunctional Software Quality

By: Hans-Ludwig Hausen

Sorry, but this Tutorial has been Canceled.

T4: Building Intelligent Applications Using Ontologies and the Semantic Web

By: Tim Finin and Harry Chen

T2: Constraint Processing

By: Roman Bartak

T5: Mobile Multimedia Systems

By: SR Subramanya

Sorry, but this Tutorial has been Canceled.

T3: Designing Software Product Lines with UML

By: Hassan Gomaa

T6: Designing Web Based Services with UML

By: Balbir Barn

Sorry, but this Tutorial has been Canceled.



Registration Fee:

Registration fees and deadlines are as follows. You may add Tutorials to your online registration from the"Additional Items" tab of your registration record.

Registration Type
Registered
Fee (Half Day)
Attendee - Member
By 2/6/2005
$150
Attendee - Non-Member
By 2/6/2005
$175
Attendee - Member
After 2/6/2005
$175
Attendee - Non-Member
After 2/6/2005
$200
Student Attendee
Any Time
$50

 

 

 





Tutorials Abstracts:

T1: Specification and Testing Functional and Nonfunctional Software Quality
- Objectives, Characteristics, Methods, Tools, Products, Processes -

HHans-Ludwig Hausen
Fraunhofer German National Engineering Research Society
St Augustin, Germany and VSEK German National Software Competence Centre

Abstract:
The seminar will cover the principles and the normative quality characteristics as well as the standardized procedures of information quality assurance resp. software system quality assurance (comprising V&V, test, measurement and assessment) for procedural, object-oriented and agent-based dependable software systems. Attendees will exercise proven techniques for goal-directed measurement, scaling and assessment for software certification. Assessment of both the software product as well as the software process will be discussed with respect to its relevance for such acceptance assessments.

A standardized process model for measurement, assessment and certification of dependable software will be used to make the attendees familiar with this comprehensive assessment procedure and to learn how to embed it into today's standardized or non-standardized software processes.
Basic knowledge in mathematics and some knowledge of software methods and tools is required. Emphasis will be given to selected advanced topics depending on the needs of participants.

Outline:
The tutorial will cover the methods and principles of information and software system quality assurance (comprising test, measurement and assessment) for procedural, object-oriented or agent-based dependable software systems. Attendees will exercise proven techniques for goal-directed measurement, scaling and assessment for software certification. Assessment of both the software product as well as the software process will be discussed with respect to its relevance for such acceptance assessments. A standardized process model for measurement, assessment and certification of dependable software will be used to make the attendees familiar with this comprehensive assessment procedure and to learn how to embed it into today's standardized or non-standardized software processes. Basic knowledge in mathematics and some knowledge of software methods and tools is required. Emphasis will be given to selected advanced topics depending on the needs of participants.

Biographical sketch of the presenter:
Hans-Ludwig Hausen is a Principal Scientist (Senior Researcher, Project Manager) at Fraunhofer German National Engineering Research Society (formerly GMD) and VSEK German National Software Competence Centre. He has more than 25 years experience as senior project manager, senior consultant, advisor, principal scientist and lecturer on computer aided software engineering, software quality assurance, software process modeling and tailoring on more than two dozen large software engineering projects for governments and industry. Hausen holds degrees in Electrical Engineering and Computer Science from the Technical University of Berlin and is a member of program committees of IEEE and ACM special interests groups. He is also a contributor to international standardization bodies, including DIN, ISO and IEEE, and an expert advisor to Germany, the United States and a number of European governments.

He is the author or coauthor of more than 113 reviewed papers and 3 books on software engineering environments, software quality and productivity, and information storage and retrieval. He lectures at Technical University Berlin, Germany on Information retrieval Systems and Semantics of programming languages, on Software Engineering and on Quality Engineering, and at University Skoevde, Sweden on Software Quality Engineering and on System Design: Formal methods for Embedded Systems.

=====================================================================

T2: Constraint Processing

Roman Barták
Charles University
Faculty of Mathematics and Physics
Praha, Czech Republic

Abstract:
Constraint satisfaction is a technology for declarative description and solving of combinatorial optimization problems in areas like planning, scheduling, configuration, validation etc. The basic idea is to specify the problem declaratively using variables, their possible values, and constraints restricting allowed combinations of the values. Then a generic constraint solver is looking for an assignment of values to the variables satisfying the constraints. The tutorial describes the technology behind the constraint solvers and it shows how to use this technology for solving real-life problems.

Outline:
The goal of the tutorial is to introduce constraint satisfaction technology to a general Computer Science audience. The main objective is to explain how constraint solvers work and to show how to use constraints for solving combinatorial optimization problems.

Introduction
-- Explaining the basic terminology, history, related topics, and application areas.
Local search techniques
-- A short survey of local search technology for constraint satisfaction (hill-climbing,
min-conflicts, random walk, tabu search etc.).
Depth-first search techniques
-- A short survey of depth-first search techniques for constraint satisfaction (chronological backtracking, backjumping, backmarking) including incomplete search techniques (credit search, iterative broadening), and discrepancy search. Branching schemes, value and variable ordering heuristics.
Consistency techniques and constraint propagation
-- Using constraints actively to prune the search space by removing inconsistencies in advance (arc and path consistency). Introduction to global constraints as a technique of encoding special algorithms into the constraint satisfaction scheme including examples of generic global constraints (all-different) and problemspecific global constraints (for scheduling).
Problem modeling
-- Several examples of modeling problems using constraints, including practical
demonstration.

Expected background of the audience: The tutorial only requires understanding of the basic notions and techniques of computer science. No prior knowledge of constraint satisfaction is required.

Biographical sketch of the presenter:
Dr. Roman Barták works as an assistant professor and a researcher at Charles University, Prague (Czech Republic). He leads the Constraint & Logic Programming Research Group that is involved in activities of the ERCIM Working Group on Constraints, PLANET II and CologNet. In 1999-2003 he led research activities at Visopt BV, a multinational company located in The Netherlands, Israel, Germany, and the Czech Republic. He was the main architect of the scheduling engine developed by this company. His work focuses on techniques of constraint satisfaction and their application to planning and scheduling. Since 1998 he is teaching a course on Constraint Programming at Charles University, he had several tutorials on Constraint Satisfaction at international conferences (IJCAI 2003, ETAPS 2003, ICAPS 2004) and summer schools (ESSLLI 2002, NASSLLI 2003) and he is an author of the On-line Guide to Constraint Programming.


=====================================================================

T3: Designing Software Product Lines with UML

Dr. Hassan Gomaa
Department of Information and Software Engineering
George Mason University

Abstract:
This tutorial addresses how to develop object-oriented requirements, analysis, and design models of software product lines using the Unified Modeling Language (UML) 2.0 notation. During requirements modeling, the tutorial covers how to develop kernel, optional, and alternative use cases for defining the software functional requirements of the system. The tutorial also describes the feature model for capturing product line requirements and how it relates to the use case model. During analysis, the tutorial covers how to develop static models for defining kernel, optional, and variant classes and their relationships. It goes on to describe how to create dynamic models in which interaction models describe the dynamic interaction between the objects that participate in each kernel, optional, and alternative use case, and statecharts define the state dependent aspects of the product line. The tutorial then covers how to develop component-based software architecture for the product line, in which the system is structured into component-based software architectures using the new UML 2.0 notation for structured classes and composite structure diagrams, which allows components, ports, connectors, as well as provided and required interfaces to be depicted. The tutorial gives an overview of the architectural structure patterns and architectural communication patterns that can be used in designing component based product lines. The tutorial is illustrated by means of several examples. The tutorial is based on a new book by the author, “Designing Software Product Lines with UML”, which was published by Addison Wesley in July 2004.

Outline:
Object-Oriented Software Life Cycle for Software Product Lines; Object-Oriented Requirements Modeling; Object-Oriented Analysis Modeling, Object-Oriented Design Modeling, Incremental software construction and integration.

Requirements Modeling for Software Product Lines. The use case modeling approach for defining functional requirements. Kernel, optional, and alternative use cases and actors. Modeling variability with use case parameterization, variation points, and extension points.

Feature Modeling for Software Product Lines. Feature as a reusable requirement.

Functional, non-functional, and parametric features; Feature dependencies. Feature sets – mutually exclusive, one and only one, one or more of a set. Modeling features with use cases; relationship between features and use cases. Feature conditions.

Analysis Modeling for Software Product Lines. Static modeling: objects, classes, and relationships. Object and class structuring; class categorization using stereotypes. Kernel, optional, and variant classes. Modeling commonality/variability with abstract classes and hotspots. Using inheritance to support variant classes; abstract classes to model common aspects of a product line class, specialization to address variations in product line classes. Feature/class dependencies.

Statecharts for Software Product Lines. Kernel, optional and variant statecharts. Mutually exclusive variant statecharts and co-existing variant statecharts. Hierarchical statecharts: high-level statechart to capture generalization of multiple variants. Modeling variability in statecharts.

Dynamic modeling for Software Product Lines. Developing object interaction models for kernel, option, and alternative use cases. Developing collaboration model for different scenarios addressing use case variability.

Software Architectural Design for Product Lines. Developing the overall software architecture. Separation of concerns in subsystem design. Component-based structuring criteria. Structural and communication patterns for software product line architectures.

Application configuration. Configuring individual members of the product line from the OO software product line model. Using the product line feature model to configure the requirements, analysis, and design models for the application.

Software Product Line Case Studies: Microwave Oven, Distributed Factory Automation, Electronic Commerce.

Biographical sketch of the presenter:
Hassan Gomaa is Chair and Full Professor in the Department of Information and Software Engineering at George Mason University, Fairfax, Virginia. He received a B.Sc.(Eng.) in Electrical Engineering from University College, London University, and the Ph.D. in Computer Science from Imperial College of Science and Technology, London University. He has over 25 years experience in software engineering, both in industry and academia, and has published over 125 technical papers and two textbooks, "Software Design Methods for Concurrent and Real-Time Systems" and “Designing Concurrent, Distributed, and Real-Time Applications with UML, both published by Addison Wesley. His latest textbook entitled “Designing Software Product Lines with UML” was published by Addison Wesley in July 2004. He has considerable experience in teaching courses, tutorials, and seminars on software analysis and design. He has taught several in-depth industrial courses on software design in North America, Europe, and Japan. He also consults in both the technical and management aspects of software engineering. His current research interests include object-oriented analysis and design for concurrent, real-time, and distributed systems, software architecture, software product lines, intelligent software agents, software performance engineering, software engineering environments, and software process models.

=====================================================================

T4: Building Intelligent Applications Using Ontologies and the Semantic Web

Timothy W. Finin and Harry Lik Chen
Computer Sciences and Electrical Engineering
University of Maryland
Baltimore, USA

Abstract:
This half-day tutorial will provide an overview of the use of ontologies and semantic web languages in building intelligent distributed applications. In information systems, ontologies are explicit formal specifications of a domain's concepts, objects, and relations. Ontologies provide both a model of information to be represented and a vocabulary to use in describing it. The semantic web languages RDF and OWL have been developed and standardized by the W3C to allow data and knowledge to be shared and reused across application, enterprise, and community boundaries. While originally envisioned for use in web based application, they are also well suited for mobile and pervasive environments. We will describe the advantages and challenges of using ontologies and the semantic web languages to model and describe information and knowledge in intelligent distributed systems of several kinds, including web based applications, multiagent systems and mobile and pervasive computing environments. The tutorial will be aimed at researchers and managers with a strong computer science background. No prior experience with AI, ontologies or the semantic web will be assumed.

Outline:
1 Introduction - Ontologies
2 Semantic web
3 Semantic web services
4 Uses in intelligent applications
-- several use cases
Break
5 Example ontologies
-- ontologies for modeling space, time, devices, events, ...
6 Ontology engineering
-- the process of developing, sharing and maintaining ontologies
7 Nuts and bolts
-- current software for editing, reasoning, storing, ...
8 Current research topics
9 Conclusions, Q&A

After attending the tutorial, participants will be able to evaluate the applicability of the concepts and techniques to problems and applications and will know of some of the open source software tools that they can used to further explore the technologies.

Biographical sketch of the presenter:
Tim Finin (http://umbc.edu/~finin/) is a Professor in the Department of Computer Science and Electrical Engineering at the University of Maryland, Baltimore County (UMBC). He has over 30 years of experience in the applications of Artificial Intelligence to problems in information systems, intelligent interfaces and robotics and is currently working on the theory and applications of intelligent software agents, the semantic web, and mobile computing. He holds degrees from MIT and the University of Illinois. Prior to joining the UMBC, he held positions at Unisys, the University of Pennsylvania, and the MIT AI Laboratory.

Harry Chen (http://www.cs.umbc.edu/~hchen4/) is a Computer Science PhD Candidate at the University of Maryland, Baltimore County. Since the senior year of his undergraduate study, Chen has been involved in Pervasive Computing and Artificial Intelligence related research. His Master thesis work on building a software agent architecture using the Jini technology was presented at the Second Jini Community Meeting in 1999. In 2000, 2001 and 2002, he participated in the summer internship program of the HP Labs in Palo Alto, California. He is awarded PhD research fellowships from the HP Labs in 2001 and 2002. In collaboration with other students and faculty advisors, he has published more than 20 referred papers and developed more than 15 prototype systems. His PhD research focuses on developing a broker centric agent architecture to support pervasive context-aware systems in smart spaces. Chen is a founding member of the UMBC eBiquity Research Group, a multi-discipline research group that focuses on the application of mobile and AI technologies in pervasive computing environments. He is the creator the eBiquity.ORG web site, an online community for pervasive computing enthus
iasts.

=====================================================================

T5: Mobile Multimedia Systems

Dr. S.R. Subramanya, University of Missouri–Rolla
Dr. Byung K. Yi, LG Electronics, San Diego

Abstract:
There have been rapid growths in mobile and wireless networks. Although, at present, these are geared toward voice telephony and traditional computing, increasing uses of multimedia data (video, mages, audio, animation, etc.) in a variety of newer and novel applications will require the transfer of huge amounts of multimedia data over mobile and wireless networks. Traditional transmission protocols, routing schemes, data coding schemes, security mechanisms, etc., will not work well in the mobile and wireless networks setting, and call for newer schemes to be developed.

This tutorial is intended to give a good overview of: (a) current mobile and wireless systems– protocols and standards, (b) emerging standards, (c) nature of multimedia data, coding techniques and standards, and (d) techniques for multimedia communication over mobile and wireless networks. It also presents several emerging multimedia services for mobile networks. It also discusses several key issues and challenges involved in mobile multimedia systems.

Outline:
This tutorial enables the participant to:
· get a good overview of mobile/wireless networks: protocols and standards;
· understand several key principles and techniques of multimedia data coding and standards;
· get an insight into several issues, challenges, and techniques of mobile multimedia communication systems;
· get an overview of emerging multimedia services on mobile networks.

1. Introduction to Mobile/Wireless Networks. Generations of Mobile networks; Wireless network evolution.
2. Mobile and Wireless System Standards. Mobile systems: GSM, CDMA, TDMA; Wireless LANs, IEEE 802.11b, WAP (Wireless Application Protocol), WTP (Wireless Transaction Protocol).
3. Multimedia Technologies and Techniques. Enabling technologies; Overview of techniques.
4. Image and Video Coding Techniques. JPEG, JPEG-2000; MPEG-1, MPEG-2, MPEG-4; H.263.
5. Low Bit Rate Video Coding. Requirements, Algorithms, Applications;
6. Scalable Image and Video Coding. Scalability within MPEG-2, MPEG-4; Wavelet technique, EZW (Embedded Zerotree Wavelet) coding.
7. Multimedia Services on Mobile Networks. Mobile IP, Mobile multimedia using H.324 family; Multimedia and data over GSM.

Biographical sketch of the presenter:
Dr. S.R. Subramanya received his doctoral degree in Computer Science from George Washington University, Washington, D.C. He has been the recipient of Richard Merwin memorial award at George Washington University, and the Grant-In-Aid of Research award from Sigma-Xi. He is currently an Assistant Professor at the University of Missouri–Rolla. He has previously worked at ASEA AB in Sweden, and at NOKIA in Finland. He has been teaching courses and conducting research Multimedia Systems and Computer Security. He has presented tutorials on Multimedia Systems and Computer Security at several conferences. He has also developed course material for distance education on Multimedia Systems and Computer Security, which have been offered to employees at different Boeing facilities. He has served as a reviewer, program committee member, and session chair of several International Conferences and as a reviewer for several journals.

Dr. Byung K. Yi received his doctoral degree in Electrical Engineering from George Washington University, Washington, D.C. He is currently senior executive vice-president at LG Electronics, San Diego. He has previously worked at Orbital Sciences Corporation, Fairchild Space Company, Control Data Corporation, and Naval Research Labs. He has He has authored several refereed journal and conference papers in the areas of Communications (Protocol Design, Security, Turbo Coding). He has several patents awarded and pending. He has served as a reviewer for several conferences, journals, and NSF grant proposals. He has served on and has also chaired the working groups of several standards.

=====================================================================

T6: Designing Web Based Services with UML

Balbir Barn

Abstract:
The application computing model for developing information systems has evolved from a monolithic standalone style to a component-based approach and is now shifting to an integrated model where applications are developed from one or more web-based services coordinated by a business process. Web Services based application assembly has many hurdles to overcome before it can be considered a well-tried, repeatable process for developing large-scale, robust application systems for every application domain. To add further complexity, the primary modeling language – UML has undergone major revision and the UML 2.0 has recently been submitted for ratification by the OMG. This version of UML introduces several new concepts and provides significant modeling semantics that are especially applicable to designing web services.This overall context suggests that there are several pressing needs facing software practitioners at present. Practitioners need to understand the basis for the move toward Web Services from Component based development, in order to apply the lessons learnt to Web Services design. Practitioners also need to get to grips with UML 2.0 in order to derive benefit from enhanced modeling semantics so that the design of web services are more precise and usable.

Outline:
The goal of this tutorial is to ensure that attendees will understand that a well-defined Web Service is one that has gone through a rigorous design process using UML that has its origins in component based design.In order to meet this goal, the following objectives are stated:

1. Attendees will be taken through a conceptual map tracing the evolution of Web Services from Component Based Development.
2. Attendees will be introduced to the new modeling features of UML 2.0 which are relevant to the design of Web Services.
3. Attendees will be provided with the fundamental principles of a Web Services design method based on UML. Extensive and detailed examples will be used to illustrate the design method.

The tutorial is organized into 3 parts:

Part I. Three basic questions are answered in this part; What is a Web Service? How does it differ from related technologies like Application Service Providers and Components? What are the major business drivers for organizations to adopt the Web Services development paradigm? These questions are answered by taking the audience along a conceptual roadmap tracing the evolution of Web Services from Component Based Development.

Part II outline a practical model based method and set of techniques based on UML which will enable the modeling, specification and implementation of Web Services. The distilled lessons from similar approaches such as component-based development will be applied. This method will be enumerated with examples for developing Web Services and developing applications from Web Services.

Part III provides a conceptual understanding of more complex Web Services technologies such as application assembly and business process execution. The section concludes with a discussion on UML 2.0 modeling semantics and their relevance to designing Web Services.

Biographical sketch of the presenter:
Balbir Barn is Professor of Information Systems at Thames Valley University. Prior to academia, he was a Principal in the Functional Architecture Practice at Rubus Limited. A leading European company that developing E-business solutions. At Rubus, Balbir’s primary responsibility as for the design and specification of new web-based solutions for e-commerce. Other tasks include the development of methods and techniques for delivery of e-solutions using Component Based Development (CBD) technology. Before joining Rubus, Balbir worked extensively on CBD methods and design of component modeling toolsets at Sterling Software Inc. Balbir’s research interests are component-based development, and software engineering tools, methods and environments. Balbir has a B.Sc. in Computer Science and a Ph.D. in Software Engineering from the University of Bath, UK. Balbir has presented advanced tutorials at many international conferences including: International Conference on Software Reuse, TOOLS conferences and International Conference of Enterprise Information Systems – ICEIS 2004.

 



ACM