Links
Today's Software Industry
Why Software Projects Fail
Software Reconceptualized
UC Methodology Overview
Benefits of Practicing UC
Who Can Use UC
 Newsletter
Enter your email address below to sign up for our free newsletter.




The artifacts in forms readable to computers, developers, analysts, and business users tightly relate each other as a system whose parts cannot be understood taken separately. The logic relationships between these artifacts form a content hierarchy. All artifacts are models. In most general consideration, a software system is organized into four primary levels of hierarchy business model, technology model, design model, and code model.

The methodology of developing such a software system is more than a set of methods, techniques, concepts, and symbols, but also refers to a worldview and a philosophical assumption of what software is. Our view of software directly impacts how we formulate our methodology. Changing our methodology without changing our view of software delivers nothing more than orthodox novelty, i.e., more of the same. When we change our view of software, we reinvent our methodology and thus true innovation can come forward. This is the only possible way to achieve breakthroughs in success rates, quality, and cost.

Successful software methodology must have a view of software whose boundary is expanded to include also the essential properties. The new view of software is a hierarchy of business model, technology model, software model, and code model, as shown below.

The essential property of a software entity is captured in a business model that quantifies and componentizes business concepts into interrelated parts. This business model does not contain information about any technologies but is innate to the business itself. These parts are constrained by business logic and business rules. Functional requirement is represented as a technology model to realize the business model by utilizing common technologies. The technology model, or use case model, realizes components in the business model by means of chosen technologies such as e-mail, the Web or PDA handheld computers. Built upon the technology model is the design model implemented by the code model. Representing business components using a computer language in a specific operating system through the technology model is an accidental property.

A software system, therefore, is more than code. It is all the models that it takes to represent it in forms readable to computers, IT workers, analysts, and business stakeholders. The four models represent the same dynamics in four different realms. The business model is the foundation and essence of the software system. The technology model incorporates common technologies into the business model and describes the use of the software system in a particular environment. The design model maps the technology model into design diagrams to be implemented into the code model in a particular software platform.

Home | Company | Philosophy | Approach | Offerings | FAQ | Contact Us
© Copyright 2007. UC SOFT. All Rights Reserved. Designed by DesignArcade and developed by Pixelmedia