Title: Graduate Studies in Software Engineering
1Graduate Studies inSoftware Engineering
2What is Software Engineering?
- Solving customers problems by the disciplined
development of large applications - Applying engineering methods to software
- Some areas of SE knowledge and research
- Software defects cost upwards of 60 Billion per
year - Productivity of developers and management teams
ranges dramatically - How can we improve software engineering in order
to cut the cost to society of poor quality and
excessive development?
3Using Collaborations and their Composition for
Requirements Modeling in Distributed Systems
- Gregor Bochmann
- Objectives
- Compose collaborations according to rules of
sequential or concurrent execution - Derive protocols to implement the requirements
- Research questions
- Under which conditions can two collaborations be
combined? - How can contradictions be reconciled?
- How can you build tools to derive designs from
requirements?
4Supporting Use Case based Requirements Engineering
- Stéphane Somé
- With Daniel Amyot, Gregor Bochmann and Amy Felty
- 5 students
- Objective
- Create an environment for use case capture,
analysis and validation - Research questions
- Can use cases be formalized while remaining
user-oriented? - Can we automate behaviour synthesis from use
cases? - Can we automate validation against use cases?
- Results
- Open source tool at http//sourceforge.net/project
s/uced/ - A UML metamodel for use case description
- A Restricted natural language for use cases
- Algorithms for state model synthesis from use
cases - Algorithms for test scenario derivation
5Evolving E-Health Business Processes Around
Accessible Data Warehouses
- Daniel Amyot
- With Liam Peyton, Michael Weiss (Carleton), Greg
Richards (Management), Alan Forster (Medicine) - 8 students
- Objective
- Integrate performance management and business
process automation, in a model-driven manner - Results
- A test framework and sample scenarios for
E-Health processes - A process and data simulation environment for
Ottawa Hospital - A framework for compliance of business processes
to legislation - Combined Key Performance Indicators with process
models
6User Requirements Notation (URN) Modelling,
Analysis and Transformations
- Daniel Amyot
- With Gregor Bochmann, Stéphane Somé
- 3 profs from Carleton, and 4 students
- Objective
- Integrate scenarios and goals to improve
requirements modelling and analysis (URN UCM
GRL) - Results
- Scenario analysis and goal analysis algorithms
- Open source, Eclipse-based tool support (jUCMNav)
- Transformations from UCMs (Use Case Maps) to
other formalisms - Prototype for aspect-oriented UCM and GRL
- Integration of URN with a commercial requirements
tool - Applications to business process modelling,
requirements engineering, pattern formalization,
and performance analysis
7Formal Aspects of Software Testing
- Guy-Vincent Jourdan
- With Hasan Ural
- Objective
- Extend the foundations of testing and other
formal techniques to provide assurance that
software systems work as expected - Research questions
- How can we prove the "equivalence" between a
model and an implementation with a test sequence
that is as short as possible? - How can we significantly reduce the number of
tests in a test suite, without significantly
reduce its coverage? - How to can we do adaptive testing, with test
sequences chosen on the fly based on observed
results?
8Software Correctness and Safety
- Amy Felty
- With Stan Matwin and Luigi Logrippo (UQO)
- 5 students
- Objective
- Provide assurance that complex software systems
work correctly and safely, by studying the
application of theorem proving and other related
formal techniques - Sample Result
- Recently developed an approach to detect a large
class of unwanted conflicts among features in
telecommunications and other large software
systems
9Privacy-Compliance in B2B Networks
- Liam Peyton
- With Abed El Saddik, Carlisle Adams and Bernard
Stepien (Researcher) - 3 students
- Objective
- To manage privacy compliance while enabling
distributed data sharing and data mining - Results
- Identified gaps in existing technology standards
(P3P, EPAL, Liberty Alliance) - Proposed audit trail service (Information
Transfer Registry) - Service Oriented Architecture framework for data
sharing in on-line collaboration environments
10Complexity Reduction in Software Engineering
(CRuiSE)
- Tim Lethbridge
- 2 students
- Objective
- Enable software engineers to develop more easily
- Research questions
- What are the sources of complexity in the SE
process, and how can we reduce them - How can we bridge the gap between programming and
modeling - What are the obstacles to a model-centric
approach? - Why do many industrial software engineers still
consider writing code to be their central
activity? - How can modeling languages and tools be made more
usable?
11Improving Software Engineering Education
- Tim Lethbridge
- Objective
- Improve the quality of the software engineering
workforce through education - Research questions
- What are the areas of software engineering where
education is most lacking? - How do we structure curricula and certification
tests so software engineers can produce better
software?