What is OpenUP/Basic?
OpenUP is an open-source software development process framework that, over time, is expected to cover a broad set of
development needs. OpenUP/Basic is a subset of OpenUP that takes an agile approach to software development, with only
fundamental content providing a simplified set of work products, roles, tasks, and guidance. OpenUP/Basic is an
iterative software development process that is minimal, complete, and extensible. It is a process for small,
co-located teams that value collaboration and stakeholder benefits over unnecessary deliverables and formality. OpenUP
is characterized by four mutually supporting core principles:
-
Collaborate to align interests and share understanding
-
Balance competing priorities to maximize stakeholder value
-
Focus on articulating the architecture
-
Evolve continuously to obtain feedback and improve
OpenUP/Basic is a common language, a common way of doing things that aligns how stakeholders and practitioners
understand a project. It focuses on articulating the architecture to facilitate technical collaboration, reduce risk,
and minimize scrap and rework. OpenUP/Basic seeks a balance between stakeholder needs and technical costs that
maximizes stakeholder value and guides the development process. The system evolves in an iterative lifecycle that
mitigates risk early and often and demonstrates ongoing results to the customer.
OpenUP/Basic is ready to use as-is; nothing needs to be added or removed. OpenUP/Basic is extensible, because it can be
used as a foundation on which process content can be added or tailored as needed. It is an exemplary and extensible
process for a range of software development and management processes that supports iterative, agile, and incremental
development and is applicable to a broad set of development platforms and applications.
Who should use OpenUP/Basic?
OpenUP/Basic is most useful for four primary groups of users:
-
Software development practitioners (developers, project managers, analysts, and testers) working together as a
project team
-
Stakeholders
-
Software process engineers
-
Instructors
Software development practitioners can find guidance on what is required of them in the roles defined by OpenUP/Basic.
Each role describes a set of activities and artifacts that the role is responsible for. Guidance is also given on how
those roles collaborate.
Stakeholders will find guidance on what they may expect from the software development team and how the software will be
created. OpenUP/Basic also describes the stakeholders' responsibilities and how they can best work with the development
team to obtain software that meets their needs.
Software process engineers can use EPF Composer to extend and modify OpenUP/Basic. Modification may be as simple as
altering templates for work products or as sophisticated as adding activities necessary for creating software in your
specific environment, such as audits for safety-critical systems. In addition to modifying method content, process
engineers can add, change, or remove process flows to add organization-specific capability patterns.
OpenUP/Basic is appropriate for academic organizations also. As an open source process, it can serve as the basis for
software engineering courses and, when combined with the EPF Composer, courses in software process engineering.
How do I get started?
The fourth OpenUP core principle, "Evolve to continuously obtain feedback and improve", suggests an iterative and
incremental approach to adopting OpenUP/Basic.
-
Start with the core principles and understand the intentions behind OpenUP.
-
Then assess your existing process, and select one or two key areas that you would like to improve.
-
Begin using OpenUP/Basic to improve these areas first.
-
In later iterations or development cycles, make incremental improvements in other areas.
-
If you have little or no experience with unified processes or other iterative processes, use OpenUP/Basic in a
small pilot project, perhaps with only three to four people working for only two to three months.
While OpenUP/Basic is a ready to use as-is, you may choose to extend the process or modify the work product templates
to suit your specific needs. For example:
-
You may require more or less precision in your work products.
-
Your organization may have specific configuration management practices or safety protocols to include in your
process.
-
You may simply want to put your own corporate logo on the banner.
-
You may want to incorporate lessons learned from a retrospective review into OpenUP/Basic.
Use EPF Composer to extend and tailor OpenUP/Basic. For more information about EPF composer, visit www.eclipse.org/epf.
|