Seminar: Can we Increase Software Development Productivity by an Order of Magnitude

AOT Logo

Speaker: Shayne Flint, Senior Lecturer, School of Computer Science (SoCS, ANU)

Date: Thursday, 01 October 2009

Time: 4:00 PM – 5:00 PM
Venue: CSIT Seminar Room, N101, CSIT Building, Building (108), North Road, ANU (campus map)

Website: Seminars @ CECS

Enquiries: Dr Malcolm Newey

“Demand for software developers is increasing while the number of software engineering and IT students remains stable or in decline. At the same time, there is an increasing need to quickly build software systems in response to rapid social, economic and environmental change. The CECS Software-Intensive Systems Engineering (SiSE) group is addressing these issues by developing novel technology which aims to increase software development productivity by an order of magnitude.

“To achieve this objective we are exploring the use of Model- Driven Engineering (MDE) and ways to improve its effectiveness. Specifically, we are addressing problems in areas such as requirements and stakeholder management; integrating multiple viewpoints, cross-cutting concerns, modelling languages and paradigms; variations in architecture and implementation; model semantics, translation, synchronisation, evolution and reuse; the presence of uncertainty, imperfection and ambiguity; verification, scalability and visualisation. This is a long list, but our research indicates the possibility that many of these problems may be the result of entrenched assumptions that underpin existing approaches to MDE.”

In this seminar Dr Flint will demonstrate a new approach to MDE which is developed from a very different set of assumptions. The approach is proving effective and addresses or eliminates many of the problems with existing approaches. If commercialised, it could have direct and demonstrable economic impact by increasing ICT industry productivity and our ability to rapidly react to emerging opportunities and threats.

This seminar is part of the CECS Seminar Series.

Shayne Flint is a Senior Lecturer at the School of Computer Science, Australian National University, and is an active member of the department’s Software-Intensive Systems Engineering group. He started his career as a RAAF engineering officer and has worked in industry in various software/systems engineering, consulting, marketing, management and commercialization roles. Dr Flint has broad industry experience and is the originator of Aspect-Oriented Thinking, a systematic approach to developing, managing and integrating the multi-disciplinary knowledge and expertise required to understand and improve complex systems. Nowadays, he is driven by a desire to radically improve the productivity of software development, particularly within multi-disciplinary contexts such as environmental science and engineering.

Original Seminar Notice at: Can we Increase Software Development Productivity by an Order of Magnitude, CECS Seminar List, The Australian National University, 2009

Seminar: Seeing the World through Indian Foreign Service Eyes – A Blueprint for ‘Diplomatic’ Fieldwork

Greetings from the Coombs Seminar Room A at The Australian National University where India specialist Kate Sullivan is presenting Seeing the World through Indian Foreign Service Eyes — A Blueprint for ‘Diplomatic Fieldwork’ in the study of International Relations (IR).

The talk and topic is particularly interesting to me in that the study readily lends itself to the application of Aspect-Oriented Thinking (a multidisciplinary methodology developed by Dr Shayne Flint) in tackling the integration of the necessary domain knowledge and structure.

In the first part of her talk, Ms Sullivan makes the following interesting points about IR study.

IR is not culturally-neutral: This affects the study of IR theories due to the following factors:

  • Complexity
  • Epistemology
  • Universalist assumptions
  • IR’s ‘debt to the West’

Reforming the discipline of IR study: These issues have been recognized by intellectuals and efforts are underway to reform the discipline, in particular the handling of culture in the context of

  • Foreign Policy Analysis
  • Strategic Studies

IR studies are obviously multi-, inter- and trans-disciplinary in nature, encountering issues which can to a large extent be ameliorated by exploiting interpretive contexts. This work presents interesting cross-cutting concerns with current research across The Australian National University by Ziyad Alshaikh in management of context, suggesting effective use of a Context Dynamics Matrix.

In the second part of her talk, Ms Sullivan visits the debate surrounding the narrative exploration in her research studies, successfully arguing a case for contextualizing the implicit nature of theories and methodologies in asking questions about India’s aspirations to be an institutionally recognized ‘global power’.

Finally, Ms Sullivan outlined the effects various drivers and forces governing Indian foreign policy decisions and their resulting outcomes. She argued that we should look at the context of the narrative concerns at a sufficient level of abstraction and detail and map it to an ethnographic effect. This entails a view of the Indian Foreign Service from a perspective of:

  • Data collection/study/interpretation
  • ‘Emic’ (insider) verus ‘etic’ (outsider) approach
  • Attempt to grasp the making of meaningful social behavior
  • Encourage reflexivity on part of the researcher

These research questions are not too different from the questions I seek to answer in the field of contextual concept workflow management (answering the four canonical questions of who, what, when, why), and the need to explicitize the context-tie-in.

Ms Sullivan also suggested that there is a progressive change in the sensitivity with which India has projected its image abroad and in the international arena. She discussed what makes the study of historical and current ethnographies challenging and how academic research could manage ‘in-the-field’ analysis of individuals who seek to inform public policy in international relations.

Finally, there was some time spent in general discussion and questions on issues affecting studies in International Relations. Points raised recognized the need to resolve cultural forces, challenges in marrying inconsistencies between theoretical and practical approaches and the academic material in the context of this research.

Creative Commons License
This blog entry is licensed under a Creative Commons Attribution-Noncommercial-No Derivative Works 3.0 Unported License.

Seminar: Generating Operational Guidelines from ATL Transformations

AOT Logo

Speaker: Rainbow Cai, Lecturer, Department of Computer Science (DCS, ANU)

Date: Thursday, 30 April 2009

Time: 4:00 PM – 5:00 PM
Venue: CSIT Seminar Room, N101, CSIT Building, Building (108), North Road, ANU (campus map)

Website: Seminars @ CECS

Enquiries: Dr Shayne Flint

Model transformation, a core part of Model Driven Engineering, transforms models from one format to another. Model Transformation is normally done with transformation languages, such as ATL, XSLT, or programming language (e.g. java). Currently, transformation programs are written to achieve the basic transformation goal, i.e. transforming a model from one format to another.

As model transformation programs are well-structured information and implicitly contain the rationale, the conditions, and the results of an intended transformation, we argue that the potential of transformation programs needs to be explored to provide guidelines for currently isolated operational tasks such as detecting semantic inconsistencies, providing behaviour synchronisation information, and establishing traceability among models. In this paper, we introduce the CRelation model – a generic analysis and design model for model transformation, and use the CRelation model to assist the development of ATL transformation programs. From within the CRelation model, we then use the ATL programs to generate guidelines for the operational tasks related to model transformation. We demonstrate the feasibility of our approach with a case study and present the initial evaluation results.

This seminar is part of the DCS Seminar Series.

Rainbow Cai is a lecturer at the Computer Science Department, ANU. She did her PhD in Software Engineering at the Department of Computer Science, University of Auckland.

She holds undergraduate diploma, postgraduate diploma, and master of science degree (with honors), all in Computer Science, from University of Auckland. Rainbow has active research interests in the areas of software architecture modelling, software architecture performance evaluation, reverse engineering, domain-specific modelling language, automated software engineering, visual languages and environments, meta-tools for multi-view multi-notation design tools, and model transformation and integration. Her main areas of interest pertain to software architecture modelling, performance engineering, and model transformation and integration.

Original Seminar Notice at: Generating Operational Guidelines from ATL Transformations, CECS Seminar List, The Australian National University, 2009

Seminar: Rethinking Systems Thinking

AOT Logo

Speaker: Shayne Flint, Senior Lecturer, Department of Computer Science (DCS, ANU)

Date: Thursday, 9 October 2008

Time: 4:00 PM – 5:00 PM
Venue: CSIT Seminar Room, N101, CSIT Building, Building (108), North Road, ANU (campus map)

Website: Seminars @ CECS

Enquiries: Dr Malcolm Newey
Systems Thinking refers to a set of approaches that can be used to learn about and make decisions regarding improvements to dynamically complex systems. They are distinguished from other approaches by their focus on the whole and the study of interactions among the parts of a system, rather than the parts themselves. While focusing on interactions helps us understand complex systems and identify appropriate improvements, it is necessary to use detailed knowledge of the parts and other aspects of a system to implement any improvements.

Dr Flint introduces a novel Systems Thinking approach which uses detailed knowledge of the parts to both understand the whole, and to build the systems required to implement necessary improvements.

This seminar is part of the DCS Seminar Series.

Shayne Flint is a Senior Lecturer at the Department of Computer Science, Australian National University, and is an active member of the department’s Software-Intensive Systems Engineering group. Dr Flint has broad industry experience and is the originator of Aspect-Oriented Thinking, a systematic approach to developing, managing and integrating the multi-disciplinary knowledge and expertise required to understand and improve complex systems.

Original Seminar Notice at: Rethinking Systems Thinking, CECS Seminar List, The Australian National University, 2008

Innovation ANU Event: Intellectual Property Seminar

Wednesday 26 March 2008, The Australian National University, Canberra

Innovation ANU organized a talk by Dr Andrew Blattman from SPRUSON & FERGUSON Patent and Trade Mark Attorneys as the second event in a series of staged business and commercialization development seminars. The talk highlighted issues in intellectual property management within an academic R&D context.

Dispelling the commonly prevalent notion that patents and intellectual property merely applied to”tangible inventions”, Dr Blattman made a cogent presentation on what constitutes potentially patentable material. A patent is neither a ticket to fame nor guaranteed commercialization success. Rather it is a contract for a limited monopoly for a tangible representation of an artifact of intellectual value. The onus of enforcing the monopoly rests on the agency filing for the patent, which is of variable duration in different legal jurisdictions around the globe. If shrewdly exploited, Intellectual Property (IP) can be leveraged to realize a strong competitive advantage.

IP can be viewed as a tradable commodity. “Small players” can actually leverage IP to enable negotiation and cross-licensing when needs and rights clash in a business context. Since IP can be summed up to be pretty much an organization’s most valuable asset, we would not be too fallacious in making a rather sweeping generalization that an organization may afford to lose money, but it cannot afford to lose IP.

IP management encompasses various avatars and forms (trademarks, designs, copyrights, trade secrets, and patents).

Trademarks can cover different attributes such as sound, smell, shape and color – attributes which may be perceived as branding and enhancing the value of the product under consideration. Trademarks can be extended for perpetuity and are a very powerful tool for market penetration and brand recognition.

Neither copyrights protect against exploitation of the process via “independent” discovery, nor do trade secrets against “reverse engineering”.

A patent is the broadest form of IP protection. It provides a temporary monopoly, an exclusion right to prevent others from exploiting the invention. In Australia, the details of the patent are published no later than 18 months after first filing.

However, filing patents is an expensive, extended and time-consuming process. In spite of this, their use as an arsenal is invaluable. The cost of initial research is always quite high, and a patent can provide a monopoly for commercial exploitation to recoup the associated developmental expenditure. It is interesting to note the absence of permission for “experimental use” of an existing patent in Australia.

What exactly is “patentable” material varies between jurisdictions. However, software is patentable in most areas, as are business processes and any invention that may have a “technical application”.

The first step in filing a patent application is identifying the inventive step, if a patent has scope for commercial applications, then the market views it to be worthwhile. In Australia, “absolute novelty” (novelty in all global jurisdictions) is a necessary prerequisite. The “inventive step” is the differentiating characteristic of the patent from prior art.

Protecting novelty and inventive step in an academic context is a tough balancing act, since the academic process usually incorporates a “publish early and often” disclosure paradigm, and publication is deemed to be full-disclosure without any accompanying protection.

Dr Blattman then outlined the “best practices” for successful IP management.

A successful approach to capturing the inventive step in research involves regular IP audits, early involvement of domain experts (for review), and spreading the associated risk with mitigation measures in place.

The importance of prior-art search was reiterated – it’s always crucial to know about the competition.

Though it is best to file early and often, prohibitive costs often recommend a tempered mean with the claim being sufficiently broad in scope.

However, waiting for the patent process to run its due course does not necessarily preclude publication of results. Publishing within the scope of the application may be practiced prudently. In a university environment, a student is usually the owner of IP related research.

Recommendations for successful IP management involve strategies such as

  1. aiming for broad coverage in the patent
  2. building an incremental patent portfolio and
  3. defining a set publication policy.

In a nutshell, successful IP management is:

  1. understanding of the technology and the market
  2. having a sound commercialization strategy
  3. identifying and understanding the landscape early on, and
  4. building a portfolio on this basis.

Student Notes: Requirements Elicitation Reloaded

This is a follow up to my previous write-up on Requirements Engineering.

Gurkan Yeniceri maintains his COMP 8100 : Software Requirements Elicitation and Analysis documents at this wiki.

He discusses the rationale for the use of a wiki here. COMP8100 is a core component of the Master of Software Engineering program at the Australian National University.

Gurkan’s notes are a must read for any interested student!
Creative Commons License
This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivs 2.5 License.

Requirements Churn

Often software development begins with a concept, an idea, a mere verbalization of an intangible. This is followed by a concerted effort to nail down the requirements for the proposed system.

Requirements are seen as a formal necessity for flagging off the development effort.

Usually, a formal requirements statement is approved for conversion into design. In many instances, where the problem domain is novel or fast-paced, the software effort runs into hurdles due to either late-breaking or rapidly-changing requirements. Or the requirements might evolve blazingly fast due to timeline pressures.

This is requirements churn.

The causes for the high rate of change of requirements pose a serious problem to the maintainability of the development effort. It becomes increasingly difficult to ensure that the code base is in sync with the requirements and design models (the boundaries between these two often becoming blurred). This is greatly exacerbated by traditionally elaborative software development processes which posit many implicit implementation assumptions during the coding effort — assumptions which are neither documented in the design nor in the requirements. This is not due to a lack of trying on the developers’ part. In the world of vastly complex enterprise software development, sourcing changes back to the design and requirements models may sometimes entail a substantial investment of effort and resources.

Project documentation and maintenance is not child’s play.

With translational and model driven development, the compiled executable system is deemed an immutable. Changes are mandated to be sourced to the requirements and design models. This ensures that the rationale for design and implementation decisions is captured as information and knowledge, and helps avoid the anachronistic mis-step between requirements and implementation.

Creative Commons License
This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivs 2.5 License.