Subject: Elevator Cafe on Friday: SoftMetaWare and will talk about
"Industrialised Software Asset Development" (ISAD)
At the Elevator Cafe this Friday, Jorn Bettin will introduce SoftMetaWare
and will briefly talk about "Industrialised Software Asset Development"
(ISAD), which encompasses "Model-Driven Software Development" (MDSD), a
term that is currently gaining visibility in the technical community.
OVERVIEW OF ISAD
The market for software development methodologies and tools is largely
defined by the vast majority of software development projects, which is
undertaken by teams of up to ten people, and typically delivers highly
specific applications. This means that many software development
methodologies - in particular of the agile variety, and many tools don't
explicitly cater for software development in-the-large, i.e. distributed,
multi-team software product development and projects involving 20+ people.
In the approach we call Industrialised Software Asset Development (ISAD) we
combine aspects from popular mainstream approaches that can scale to
large-scale industrialised software development with less well-known
techniques that are needed to prevent architectural degradation in large
systems, and with techniques to automate the repetitive aspects of software
development. ISAD can be defined as a multi-paradigm approach that embraces
- domain analysis, - meta modelling, - model driven generation, - template
languages, - domain-driven framework design, - the principles for agile
software development, - the development and use of Open Source
infrastructure.
INDUSTRIALISATION - GOALS
Establishing Supply Chains
- Create opportunities for collaboration between established players and
small innovators. Encourages specialisation and development of deep domain
knowledge. - Doesn't work on the basis of proprietary software
infrastructure that established players use to lock-in new players. -
Creates an ecosystem that allows choice and minimises risks for the
organisations in a supply chain. - Only practical on the basis of open
standards and infrastructure.
INDUSTRIALISATION - STANDARDS
- Raise the level of standardisation beyond "nuts & bolts".
- Reduce integration costs.
- Provide customers with a choice of suppliers for standardised
components/products.
- Not practical using an "arts & crafts" mindset to software development,
requires a high degree of automation.
INDUSTRIALISATION - AUTOMATION
- Automate repetitive, mechanical tasks
- Conflicts with classical, simplistic outsourcing model.
- Opportunities for very economical mass customisation & application
hosting.
- Requires few, but highly skilled people.
- Allows "intelligent" outsourcing, where only non-repetitive tasks are
performed manually (in the best location), and where all repetitive,
mechanical tasks are automated.
INDUSTRIALISATION - IMPLICATIONS
- Ordering a software product becomes similar to ordering a new car
- The customer has to make a finite ("digestible") number of choices
- The choices are presented in a way that is meaningful to the customer
(who typically isn't a software expert) - Products are assembled and
pre-configured largely automatically - No two products coming off the
production line are exactly identical, although efficiency is near mass
production - The customer is not exposed to thousands of options that are
at a [low] level of abstraction that is meaningless to the customer
RELATED CONCEPTS
Business Concepts
- Mass Customisation
- User-Driven Innovation
Software Engineering Concepts
- Domain-Driven Design
- Model-Driven Architecture
SOFTMETAWARE
SoftMetaWare is a small international group of consultants specialising in
methodology and tool building. We are leading the Generative Model
Transformer (GMT) Open Source project on www.eclipse.org/gmt/ and we are
active in leading-edge research and knowledge transfer on the topic of
Model-Driven Software Development at conferences such as www.oopsla.org
where we have conducted a series of workshops on "Generative Techniques in
the Context of Model-Driven Architecture"
(http://www.softmetaware.com/oopsla2003/mda-workshop.html).
Mission:
- To provide customers with the tools and techniques required for the
economical implementation of high quality software systems
SoftMetaWare provides services that add value to organisations with
internal software development capabilities. We are software development
process and tools specialists. Our team consists of seasoned practitioners
who work with your team to leverage domain knowledge, and to implement
domain-specific, streamlined development environments. We aim to establish
good working relationships with tool vendors, but will not enter agreements
which could question the technology/product independence of our services.
Differentiators:
- Our consultants are recognised experts and pioneers in Software Product
Line Engineering and automated software development/assembly. - Global
focus, but a lean and mean organisation - Our core business: helping
customers to develop outstanding software
we don't sell third party products and we don't develop custom software
we are actively involved in Open Source tool initiatives we do develop
software tools as products where there is potential for
reuse by several of our customers
SAMPLE SCENARIOS WHERE SOFTMETAWARE CAN HELP
Managing Customer Interactions:
SoftMetaWare can help redefine the way you manage interactions with
customers and prospects. We can provide guidance in the sales and project
definition phase. Often already the sales agreement contains the seed for
problems further down the road.
Customer-Driven Software Development:
Requirements management in iterative development is not a one-off
documentation exercise, and requires continuous customer involvement
throughout development. SoftMetaWare can help you implement an agile,
customer-driven software development approach that significantly reduces
the risks inherent in large software projects.
Process Engineering:
SoftMetaWare consultants are experienced practitioners who can work with
your team to develop a streamlined methodology having the right mix of
agile techniques, automation, and formal process ingredients tailored to
your specific context.
Software Engineering Tools:
Modern software engineering tools can automate significant parts of
software design and development. SoftMetaWare specialises in the
implementation and configuration of model driven approaches, and assists
your team in making the transition from traditional software development to
highly automated software engineering and product line engineering.
Project Management:
Avoiding surprises. Complex software projects don't have to result in high
stress levels and high staff attrition rates. SoftMetaWare can assist in
implementing appropriate project management practices that avoid
destructive staff burnout in the later stages of projects.
Iterative Development & Timeboxing:
SoftMetaWare can provide consultants who are experts in introducing
timeboxing and related techniques to effectively manage iterative
development. We show your team how timeboxed iterations can be used to
effectively manage - and often exceed - customer expectations.
Automation & Leveraging Software Architecture:
Industrialised Software Asset Development provides the means to leverage
the skills of your best architects and designers. A high degree of
automation lowers the risks, allows short iterations, and delivers better
results in less time.
For more information, please contact
Jorn Bettin
[EMAIL PROTECTED]
www.softmetaware.com
Tel +64 9 372 3073 | Mobile +64 27 44
==========================================
Canterbury Software Inc. -- success through connections
networking, events, workshops, forums for the IT industry
http://canterburysoftware.org.nz
==========================================
--> via Canterbury Software email forum: Success through Connections
Email your messages to [EMAIL PROTECTED]
Searchable list archive: http://www.mail-archive.com/[EMAIL PROTECTED]
Leave or rejoin the list: http://canterburysoftware.org.nz/forum.htm