Development Architecture blog is designed for developers who have some troubles in their code.
This blog will be mainly on web development, though many of it's posts can be used also on software design.
I wish you nothing but the best,
The Logical View of Architecture Documentation
Architectures can be documented from several different perspectives.
Some of these are conceptual view, logical view, process view,
development view, and physical view. Choose one of these. Explain the primary documented approach (i.e. how is it represented). Discuss the advantages and disadvantages
There are several perspectives and methods for documenting
architectures. The need for documentation arises throughout the life time of a
system and it is used for specific purposes such as using the architecture as
the basis for downstream design or implementation; checking to see if design or
implementation conforms to the architecture; seeing if the architecture is
ready to support a formal evaluation for fitness of purpose; and using it to
support project planning (Nord, Clements, Emery, & Hillard 2009).
Phillippe Krutchen’s recent paper describes four main views
of software architectures that can be utilized in system building, plus a
special fifth view that ties all the other four together, i.e. the “four plus
one” approach to architecture (Krutchen 1995). The four main views are logical
view, process view, development view, and physical view.
In this article we will be looking at the logical documentation
approach. The logical view is based on the object model of the design, because
here an object-oriented design method is used. This approach focuses on the
functional needs of the system, emphasizing on the services that the system
provides to the users. In this approach, the system in question is broken down to
form a set group of abstractions, which are mostly taken as object classes or
objects, from the trouble area or domain. This break down helps to identify the
general functions or methods and elements of design across the different
elements of the specific system, as well as creates a scope for functional
analysis. They make use of the principle of inheritance, abstraction, and
inheritance (Krutchen 1995).
The Logical view is represented with the Booch approach
using class templates and diagrams (Booch 1993). Class diagrams depict a set
group of curriculum and their rational or coherent relationships, like
association, composition, usage, and so forward. Related groups of classes can
be combined together to form sets called class categories. On the other hand, class
templates take into account each class as an individual, and emphasize the
major group operations and recognize and classify the key characteristics of
In the Booch notation, only architecturally significant objects are
taken into consideration. Krutchen emphasizes the object-oriented style to
represent the logical view. He says that the principle guideline for logical
view design is to maintain a single, logical object-model across the complete
system in order to avoid untimely specialization or division of classes for
each processor and site.
Krutchen predicted an
iterative process for architectural design. It starts with describing the
critical scenarios. Next the architect can identify the key abstractions from
the troubled domain and model them in the Logical View. The logical classes can
be mapped to modules and packages in the Developmental View, and to tasks and
processes in the Process View. The process concludes with processes and modules
being mapped to the hardware in the Physical View. This shows that the four
views are not entirely independent of each other (May 2004).
However, in the architectural documentation of certain
systems, some views may be irrelevant, i.e. not all views are mandatory. The
main advantage of the Logical View is that is it mandatory for all system
documentation processes. In his paper, Krutchen says that Logical View
considers each object as active and potentially concurrent. This means that
each object behaves parallel to other objects, and more attention is given to
the exact degree of concurrency needed to achieve this effect.
This leads to
the one disadvantage of logical view, that is, it only considers the functional
aspect of the requirements.
All four architecture views are important in documentation.
The Logical view is important as it takes into account the functional
requirements of the system with major emphasis on the kind of services the
system provides for its users.
·Booch, G. (1993).
Object-Oriented Analysis and Design with Applications, 2nd ed. Redwood City,
·Kruchten, P. (1995).
“Architectural Blueprints - The “4+1”View Model of Software Architecture”. IEEE
·May. N. (2004) “A Survey of
Software Architecture Viewpoint Models”. ISO/IEC 10746 [Online]. Available:
The only way to avoid the unfairness of a copyright tax that funds benefits for criminals is to decriminalize the benefit and make "piracy" legal for everyone. The public good provided by the tax then corresponds to the provision of free content for everyone. What are the advantages and disadvantages of decriminalizing piracy? Please see the following for a description of copyright tax: http://www.1729.com/ip/CopyrightLevies.html 8 Advantages and Disadvantages of Decriminalizing Privacy The intentional violation of the Copyrights Act, in relation to commercial products like music, software, and so on, is known as ‘privacy’. For instance, if you use a music recording or software without a license or make a copy of it to distribute without permission from the creator, you are violating the Copyright Act (Dorrel 2005). The main objective of copyrighting is for the creator to be able to recover all the costs he/she invested in producing the work. Thus copyrighting becomes
Split String in SQL Server. NVARCHAR and VARCHAR Split in MS SQL. For all of you there who wishes to preform a simple "split" on a varchar on nvarchar input in ms sql (sql server) this is for you: Basically, this post's gonna contain a Create Function Script which you will to execute in your server. It will also contain the simplest way to use it. There will be more examples in a different post I'll upload soon... CREATE FUNCTION dbo.Split ( @RowData nvarchar(2000), @SplitOn nvarchar(5) ) RETURNS @RtnValue table ( Id int identity(1,1), Data nvarchar(100) ) AS BEGIN Declare @Cnt int Set @Cnt = 1 While (Charindex(@SplitOn,@RowData)>0) Begin Insert Into @RtnValue (data) Select Data = ltrim(rtrim(Substring(@RowData,1,Charindex(@SplitOn,@RowData)-1))) Set @RowData = Substring(@RowData,Charindex(@SplitOn,@RowData)+1,len(@RowData)) Set @Cnt = @Cnt + 1 End