Home
Process and Quality
Blueprints and Metrix
Services
Training
Resources
Contact
 
InfoTech

 

 
 

Blueprint Technology

Solid specifications and estimates of effort and cost for realization of software intensive systems are the foundation for well-founded investment decisions, low risk realization and reliable acceptance of deliverables.

The effective approach for business modeling, requirements specification, systems specification, analysis and design is object-based blueprint technology. Object-based blueprints enable simple and precise specification, verification and validation of business needs, system specification, product requirements, and acceptance criteria. Object-based blueprints also enable reliable metrics and facilitate communication among stakeholders.

UML and SysML Blueprints
The industry-standard notations for system blueprints are the Unified Modeling Language (UML) www.uml.org and the new language for systems engineering, Systems Modeling Language (SysML) www.omgsysml.org. UML and SysML are languages for specification, construction, and documentation of systems and product components, including software, hardware, business processes and other non-software systems. The SysML standard is also providing support for text based requirements inside a UML/SysML model. This is important because, using industry-standard modeling notation such as the UML/SysML, it is in the model based specification of a system that requirements are truly understood.

UML/SysML specification blueprints have a superior precision and information density compared to traditional text based requirement specifications and facilitates precise specification of complex logic. UML/SysML blueprints enable efficient and straightforward transformation of business needs and product requirements to complete and integrated solution specifications and are independent of development processes and implementation technology. In addition, UML/SysML blueprints facilitates elimination of the primary cost drivers for overrun budgets, delayed projects and inadequate matching of the business essential needs.


General phases, decision and delivery milestones.

UML/SysML provides standardized, precise and formal blueprints that enable successful realization with low risk, both for the customer and supplier. UML/SysML also enables seamless integration of business process models with specification blueprints that facilitate identification of essential business needs and traceability from business process maps to specification blueprints and final technical solution of product components.

Specifications with UML/SysML also facilitates management of the inevitable costs for additions and changes in the realization phase especially in combination with metrics like Function Points (FP) or similar.
Read more »

Business modeling diagram examples
UML 2.0 and SysML have extensive support for business modeling with structure diagrams, activity diagrams and sterotyping supporting any process notation. Information/object flow is supported for high level overviews or detalied process workflow specification.

The digrams below shows some example of process modeling diagrams



Business process diagram including Ericsson-Penker Assembly Line analysis.



Part of the activity diagram for the use case activity Register Order in the Sales Process.


. Stereotype shapes can be customized for any process notation and shown as shapes or frames in diagrams.


Additional model element properties can be added with new tabs displaying custom defined tags. (Custom defined properties for the stereotype).



Business process propertis for the Delivery process.



Organisation diagram for the Vehicle Servics.



Activity diagram with workflow for the telephone order business workflow.

Requirements specification
The new SysML requirements standard extend UML with comprehensive support for text based requirements. In addition the SysML standard provide extensive support for organizing requirements and for analysis and traceability. Requirements are managed as any other UML/SysML model element and can be organized in Packages and be further extended with tags (ie. custom meta data) to support any company standard.

Requirements can be created in UML tools or imported from external requirements sources with tools such as Geensys Reqtify. Reqtify in addition provides global traceability and impact analysis with interface to a number of modeling, development and testing tools.


SysML requirements browser.

 


SysML and custom parameters for the Dispenser fuel type requirement.

 


SysML requirements diagram.

 


Excel requirements report.

 


Excel satisfied by item traceability report.

 


Internal Block Diagram with requirements satisfy depenedencies and requirements callouts.




Detail diagram on the dispenser motherboard.




Custom requirement tags extending the requirement stereotype.

 


Use Case view for the Filling Station requirements specification.




The Fuel Transaction use case collaboration view.

 


The Fuel Transaction specification with text including hyperlinks to model elements.




The Telephone Order use case specification with activity diagram and automated complexity and FP estimation.




The Fuel Transaction use case specification with object sequence diagram.




Requirement specification for the nozzle removed event.



The Order System use case model.



Business Roles/Actors - Use Case matrix.




The Order protocol state machine.

 

System specification diagram examples


The Filling Station Context view block diagram.

 


Context view for the order domain objects including automated complexity and FP calculation.

 

Implementation diagram examples


The Filling Station DMDT and FT components.

 


The Filling Station concurrency model.



The Order System components block diagram.



The Order component white box view.

 


Detail of the datamodel for the Order System.

Function Points
For information systems Function Points www.ifpug.org is a useful metric for estimations of system size and realization efforts. Function Points is an implementation independent unit that measures the users functional value of an information system. Function point calculation is based on the systems essential services, the logical information blueprint, and the user interface specification. Function points have a wide acceptance as a useful unit for measurement of information system size, realization effort and as a base for economic decisions. Function points is the only unit that enables unbiased reasoning on system size, development costs, benchmarking, productivity performance, defect density, IT-value etc.

Function point calculation is simple and straightforward based on UML/SysML blueprints for a whole system, for Use Cases, for single applications, products and product components, per single user role, per business process etc. Function points can be compared to other units like m², m³, watt etc. and is regarded as the most fair and technology neutral unit for specified and delivered products.

Function Point estimation is an essential technology for the CMMI Measurement and Analysis process area for estimation of size of Products and Product Components, performance estimations etc. and for the Process & Quality Assurance process area to relate defect estimates to functional size. In addition Function Point estimates are a useful input to the Project Management process category for progress control and project planning.

Furthermore, if the cost for an FP unit can be agreed is FP an excellent base for estimation of the preliminary and final realization cost and costs for additions and changes in the realization phase.

Function Points have recently also been accepted as an ISO standard for functional size of information systems. Read more »

ISO FP Standard download: ISO/IEC 20926:2003 »

UML/SysML and Function Points also facilitate a simple and well-defined interface between the customer and supplier regardless of whether the supplier is an in-house development center or a local or offshore supplier.

Automation of function point estimation

Calculation of function points (FP) is a time consuming task especially for iterative development there an estimate is desirable for each iteration.

For companies working with model based specifications in a UML tool with profile capabilities is it however quite straightforward to automate FP estimations with a UML profile. The prerequisite is that the specifications are defined with Use Case and Domain models. For Use Cases are each FP-value for required system services (EI, EO or EQ) estimated and for domain models are each domain objects (ILF or EIF) FP-value estimated.

In addition, if Business Process Models are developed, a seamless mapping can be established to business processes and estimation of the "used FP" per process automatically estimated. This enables a precise estimation of information systems utilization in the enterprise and unbiased calculation of IT-value.

The FP value can be independently estimated for each project and the "FP share" of the enterprise models be estimated based on the referred Use Case services and the Domain Objects attributes and associations.

The diagram to the right shows an example of such a profile implementation.


 
FP Project
Checked items are included in the count. The
count for the "Domain Object" is 10 DET and 2
RET. The ILF complexity is low and the FP value
is 7 FP. The "Edit Domain Data" is an EO with 24 DET and 2 FTR. The complexity is consequently high and the value is 7 FP.


A Domain Object depicted in a class diagram and composite structure diagram


Detail of a Use Case activity diagram with a functional requirement action


The primary cost drivers for systems development
Reports and research points out four primary reasons for budget overruns, delayed projects and inadequate matching of the business essential needs.

Matching of business needs
• Systems not supporting essential business needs have low IT-value.
-
• Functionality not supporting essential business needs have low IT-value.-

Understanding the business essential needs and an unambiguous mapping (traceability) from business needs to product blueprints is the basis for correct identification of system requirements, prioritizing of requirements and estimation of IT-value. UML/SysML blueprints enable an integrated and seamless connection between business process maps, process workflow specifications and product specifications.

Specification of the realization
• The product blueprints are the base for correct estimation and the Technical Solution process.-|
• The product blueprints are the base for the Validation process.-|

Inadequate specifications are very expensive to correct during realization and in production. All experience and research shows that defects in the specifications are a major reason to erroneous estimations, overrun budgets and delayed projects.

A report from NIST shows that up to some 70 % of the defects in systems development are introduced in the specification phase. The report also states that only 5 % of the specification inadequacies are corrected in the specification phase and the remaining 95 % are detected later in the project or after delivery when the cost for correction on average is 22 times higher compared with a correction directly within the specification effort.

At delivery causes also inadequate specifications often controversies on the content of the delivery.

Requirements creeping
• Requirements creeping is uncontrolled change and growth of functionality during realization.
-
• The product blueprints are the bases to control requirements creeping.-

Legitimate requirements creeping i.e. additional orders and changes must be managed with appropriate configuration and change management.

A report from Capers Jones "Conflict and litigation between software clients and developers" www.spr.com/news/ConflictLitigationArticle.pdf states that a requirements creeping of 25 % is common and often is up to 50 %. A requirements creeping of 25 % means that the size of the system grows with 25 % not being reflected in budget or plans and often leads to delayed projects and controversies on additional costs.

Inadequate change and configuration management
For larger projects are efficient change and configuration management essential for effectively managing,the development process.

Configuration Management is the CMMI key process area for supporting all other processes to establish and maintain the integrity of work products using configuration identification, configuration control, configuration status accounting, and configuration audits.


Fixed price agreements
UML/SysML blueprints and Function Points also facilitate low risk fixed price agreements, both for the customer and supplier.

Comparable proposals
Control of costs for changes and additional orders.
Control of life cycle costs (LCC).
Validation that the specification matches essential business needs.
Broader competition.
   Inadequate product definition results in higher costs and risks for proposals that limit the number
   of tenderers and possibilities for quality and price competition.

Comparable proposals between new development and standard systems.
   Standard systems often require extensive customization and new development might be
a
   competitive alternative especially for offshore development.

Increased possibilities for benchmarking of proposals.
   Standardized specifications and measurements facilitate objective cost comparisons between    
   different projects and types of applications.

High precision estimation of investments.
Lower costs for defect corrections and rework.

Control of requirements creeping.
Efficient validation of delivery.
Win-Win contracts.


Copyright @ 2003 - 2011 InfoTech Consulting AB