Software Engineering Blog
Here you can find information concerning our research and generally related to software engineering and software development.
For Polish readers: Wpisy na blogu w większości będą publikowane w języku angielskim. Jeśli uważasz, że dana tematyka może być szczególnie istotna dla szerszego grona, daj nam znać postaramy się przetłumaczyć wpis na języka polski (jeśli chcesz możesz to zrobić także samemu :)
UC-Sketch goes online
We have just published a new tool that supports analyst in writing use-case scenarios. Check it out!
Indtroducing ATAM with Technical Drama
This blog entry presents Technical Drama knowledge transfer approach, its application for teaching ATAM (Architecture Tradeoff Evaluation Method) and summarizes the results we obtained in two case studies - at university and in software companies.
Transactions in Use Cases, Non-functional Requirements, and Architectural Decisions
Architectural decisions are usually considered to be influenced mainly by non-functional requirements (NFRs). It is difficult to disagree with such thesis. However, some of the decisions are not directly driven by NFRs, but by the functionality of the system. It can also happen that some of the NFRs are not explicitly defined. In this entry, you can find a checklist containing 20 questions regarding functional requirements that can help you investigate required capabilities of a system architecture.
Review of book: Function Point Analysis: Measurement Practices for Successful Software Projects
This is a must-have book for anyone who is seriously interested in counting IFPUG FPA and does not have access to official IFPUG counting practices manual.
Eclipse - How To Make a Scrollable View?
Sometimes you may like to have a scrollable view that contains another composite. The question is how to make it scrollable and adjustable to its content?
Guideliness for Developing SRS
We have just received permission to publish results of the project Guideliness for Developing SRS, realized in co-operation with the Poznan City Hall, which goal was to provide guideliness for development of software requirements specifications (especially when bid of tender procedure is involved).
CRUD Pattern in Use Cases
If you have ever been writing use cases for a data-oriented system (i.e. CMS), you have probably noticed that there is a problem with the large number of use cases like "Add an article", "Remove an article" etc. If you have all CRUD operations available for all objects in the system, you can finish with up to 4 x number-of-objects of use cases. You can reduce this number by introducing the CRUD pattern, which I would like to present you in this blog entry.
Use-Case Relations - Diagram and Text
In this blog entry, I would like to show you how the relations (include, and extend) between use cases are presented on use case diagrams and how to use them in textual representations of use cases.
Use Case Points
The Use Case Points (UCP) method, proposed by Gustav Karner can be used to estimate effort early in the project life-cycle, with relatively low cost. It is based on two main inputs which are actors complexity, measured based on the interface actor uses to communicate with the system; and use-case complexity measured in the number of so-called transactions in use-case scenarios. Here, I would like to present you basic information about the original method proposed by Karner.
Use Case Diagram
Use cases were Ivar Jacobson's contribution to the UML notation. Although they are in most cases presented in a textual form, there is a special diagram in UML called Use Case Diagram (UCD), which is used to present their structure and associations with actors. In this article I will try to present you all necessary information to use UCD effectively.
Review of book: Software Estimation Demystifying the Black Art
Steve McConell's book is one of the best book concerning software cost estimation available on the market. In my opinion it could be especially valuable for beginners in that field, however advanced users will also find plenty of valuable information there.
Introduction to Use Cases
Use cases, introduced by Ivar Jacobson more than 20 years ago, are used to capture user (actor) point of view while describing functional requirements of the system. In this brief article I would like to present you an overview of them (what are they, what are the most important parts of use-case model etc.)
Plone CMS - a set of products to build a site
One of the main difficulties often met while setting up a site based on any open source CMS (with plugin-based architecture) is a choice of enhancement modules. The same problem relates to Plone-based sites. If you are planning to build such a site and you’ve just started to look for a good set of products for Plone 3.3, you may find this entry useful.
Toward Decision Centric Repository of Architectural Knowledge
One of the topic we are working on is software architecture evaluation. Recently we have been focusing on incremental architecture evaluation method. One of the key supporting techniques is a use of the architectural knowledge repository for storing the evaluation findings and refine the architecture continuously. Therefore, we have proposed a model of repository which central concept is design decision. This work was presented at CEE-SET'09 conference. If you would like to know the details read this article.
Incremental architecture refinement
One of the topic we are working on is software architecture evaluation. The incremental architecture evaluation approach was presented at CEE-SET'09 conference. If you would like to know the details about the approach read this article.
Enhancing Use-Case-Based Effort Estimation with Transaction Types (presentation)
Recently we have conducted some research regarding use-case-based effort estimation. Results were presented at CEE-SET'09 conference. If you would like to read how knowledge about use-case transactions semantics can help in estimating effort, go ahead and see the presentation. If you like the idea you can find more information in the paper.