| |
12 Chapter
2. State of the Art of Application Development Processes
is reached. In contrast to traditional software-engineering
it is important to not only make design
modifications that add new functional capabilities but also to thoroughly
remove features that do not make sense. Generally, multiple cycles are
necessary to start from an initial proposal to a final
development based on user feedback.
Rapid development cycles: Many
development methods such as extreme pro- gramming
[ Beck
2000 ] or
rapid prototyping [ Tripp
and Bichelmeyer 1989 ]
aim at meeting
the users expectations in short converging cycles. Short and fast cycles
are the premise for several iterations
during a project life. Use
of toolboxes: Toolboxes are a technical prerequisite for
rapid developments. Re-using
frameworks and architectures over and over again is a key factor for short
development cycles. Though re-usability in ubicomp is
still in its infancy the benefit has
been acknowledged and partly addressed for software (e.g. Context Toolkit
[ Salber et
al. 1999 ]
, Context Fabric [
Hong and
Landay 2001 ]
) and hardware (e.g. Smart-Its
[ Holmquist et
al. 2004 ]
). In general, it will be di
cult to design a development process that meets all of the
requirements presented above.
The requirement, Radically
depart from today, and the previous one, (Balanced
user involvement), are both central and at the same time create a tension due to their
very di erent nature. Another tension is achieving rapid developments and at the
same time integrating multiple stakeholders which requires cooperation with di
er- ent party and may be time consuming. Moreover, supporting early stage develop-
ments and simultaneously aiming at feasible results requires rich opportunities of
prototyping and implementing concepts. Due to the early stage of toolboxes and
reusable frameworks in ubiquitous and wearable computing, in many cases applica-
tion developers will still have to deal with many technical implementation issues.
However, assuming further advancements in the near future will help to free develop-
ers from those technological issues and allow them to better focus on the development
and concept generation. In our opinion any successful method has to respect these tensions. When these
tensions can be well integrated into an overall process it can create and stimulate
highly novel and innovative ideas and applications.
The presented requirements will be used in the following sections to discuss the
strengths and shortcomings of various prominent development processes.
2.2 Review of Existing
Development Processes This section reviews processes leading towards innovative developments. It starts
with the well established and traditional field of software-engineering and continues
|  |
|
| |
|
|