MANAGEWARE TALK


Reviewing the Review Process

In most requirement management projects I came across, the Requirements-Review-Process was often “an issue”. A process that requires improvement.

PeerReview

Here is the basic dilemma, as I see it:

On one hand, you want as many stakeholders as possible involved in the review process.

By doing this, you will get people from different backgrounds that will bring different skills and knowledge to this process.

In addition, stakeholders will feel more involved and committed to the project.

On the other hand, having many reviewers involved in the review process is expensive and can cause a great over head on this process.

The more reviewers are involved, it will cause:

1. More people in the organization will consume their time in the review process (and time is money, isn’t it?)

2. The review process will become much more complex: there are much more inputs and comments to handle and review meetings might become much less effective (”where there are 10 different people, there are 10 different opinions”)

Quite a challenge, isn’t it?

In addition, finding this right balance is not enough to get a good review process.

There is much more to it…

In the coming DOORS user forum, we will discuss the Requirement-Review-Process, and hopefully we’ll get to share knowledge from different organisations on their “best practices” on this topic.

I will update this post after the forum with our findings

System Architect – Impressions of a first timer

I have a confession; I’m fairly new using modeling tools but have quite an experience in capturing business processes and implementing them in IT organizations.

I’ve been doing a lot of reading on what Enterprise Architecture is, how it’s done and what are the challenges but just now I’ve started to actually play around with it using a  tool and I’d like to share my first impression and what I’ve learnt on IBM System Architect

The biggest thing I’ve come to realize is that System Architect is a tool. Just a tool. This means that without the proper data and information it’s probamessbly not worth much. There are a lot of processes and information that this tool can capture and help organize but without collecting and capturing the data, without understanding what the business processes are, without defining a common language in the organization, System Architect will probably not be worth much to you. There is a lot of work that needs to be done before you even start looking at a tool; work to define and collect the different components, systems, applications and information from your project. 

In IBM System Architect you have three main entities: Diagrams, Definitions and Symbols. There can be different types of diagrams and a diagram can consist of different types of symbols. The symbols are a representation of the definitions. First you need to indicate what the definitions of the entity you would like to capture(i.e. Activity, System, Function, Task etc). Next you will place graphical Symbols in different diagrams. All Symbols which represent the same entity are therefore linked to the same Definition.

You can define attributes or what is called in System Architect properties for each Definition. In unique cases you can also add specific properties to the symbol itself. A change in the properties of a definition, of course applies to all the Symbols linked to it.

For example, System Architecture’s Tutorial uses as an example a Hotel chain. In this example, there is a business process diagram for Reservation Cancellation that includes a Transaction called “Release Room”. There is a definition of releasing a room which represents the steps required to make the room available again. In case there is a different business process which needs to use the Transaction “Release Room”, you can drag & drop the already existing definition onto the screen and a Symbol linked to the same definition will be created. This is really good reuse since now you can make a change centrally to the definition and all its occurrences in different Business process diagrams are automatically updated.

 SA screen

Another thing I noticed in System Architect that can be a big advantage is the ability to customize the properties. An organization can define what properties are relevant for its Definitions in addition to the definition’s properties. This can be changed and updated to fit the organizations needs.

I feel as though I’ve started uncovering only the tip of the iceberg but what I’ve seen so far I liked. This is a very powerful tool that can be very helpful and improve the ability of an organization to see the complete picture and allow it to make more educated decisions. But like I mentioned at the beginning, the hard part is not to use the tool but how to use the tool. How do you collect the data? What are the definitions and how do you make sure that everyone is using the same definitions? Thus my next step is to study the one of the Frameworks which  are commonly used in the market.

כיצד למזער את נזקי הקול הדומיננטי בחדר

דמיינו לכם עולם (כמעט) מושלם שבו אנו מפתחים מוצר שיש לו דרישה בשוק, יש לקוחות שאפילו מוכנים לשלם (כן ב- 2009…), המידע על השוק והמתחרים זורם בחופשיות, הלקוחות מתקשרים עמנו היטב ומעבירים לנו דרישות בצורה ברורה ומובנית ברמה של העתק/הדבק ל- MRD ותהליך איסוף הדרישות פועל ללא רבב.

יתרה מזאת לאחר קבלת ההחלטות על תכולת הגרסה או המוצר, תהליך הפיתוח מנוהל היטב, אף לא דרישה אחת הולכת לאיבוד והמתכנתים מפתחים במהירות וללא באגים בכלל.

נשמע כאילו אנו לא יכולים להכשל והלקוחות בטוח מרוצים. אז זהו שלא!

לעיתים קרובות מדי מתקבלות החלטות על פיתוח מוצרים ותעדוף תכונות חדשות על סמך הקול הדומיננטי בחדר.

מי הקול הדומיננטי בחדר

Read more »

DOORS Database Architecture Analysis – Part I: Performance Issues

DOORS Performance – How to make it faster

guidelines1

Over the last few years we have gained a great amount of tips and tricks to help you improve your performance when working with DOORS. From our experience with working on different implementations of DOORS in different environments we’ve learned that there are some basic guidelines that if followed can improve your work with the tool.    These guidelines can help you improve your user experience, allow your organization to manage larger modules and improve the usability of the tool.                                                   

The beauty of it is that these guidelines can be adopted both by new or existing projects. Even if you have already started working with the tool it’s not too late to make these improvements.

Guidelines for working with attributes:

  1. Prefer String attributes over Text attributes
  2. Reduce the number of attributes in modules
  3. Where possible prefer to use DXL columns as opposed to DXL attributes.
  4. Try to use Text objects as opposed to Heading Objects, as it makes scrolling very slow.
  5. Default views – Affects the time it takes to open a module. Therefore, the recommendation is to:
    1. Use ‘light’ views as default views.
    2. Reduce number of attributes in default view (Specially: DXL attributes and Text attributes)
    3. Prefer avoiding DXL column in default view.
    4. Prefer hiding the Explorer from the default view.
  6. Shareable edit – Large number of shared objects in a module affect performance. If used, try to build the shareable edit for the highest level of hierarchy that will still provide value.  
  7. Pack History into Baseline – it is recommended that every once in a while baseline a module to move all the history to the baseline.
  8. Purge “soft-deleted” objects – After a while the module might have a large amount of object that were “soft-deleted”. Therefore, if the objects are no longer needed purge the objects in the module.

Guidelines for DXL code:

  1. Link structure
    1. Reduce number of link modules. Make sure you are working with a defined number of link modules.
    2. Verify ‘Link Enforcement’

A presentation on this topic was given in Manageware’s DOORS user forum. Here is a link to the presentation:

Product Lines (Product Families) using DOORS

Purpose

How to manage requirements of a set of products, using commonalities and variability and specialties among the products

Benefits

- Reuse of common requirements

- Central control of commonalities

- Shorter Time-To-Market

- Central Updates for requirements changes between product lines.

Read more »

How to Improve Synergy CM Sync Performance

When controlling very large projects in Synergy, two configuration parameters can be updated to improve the Sync operation performance

Read more »

How to mandate Synergy CM Task association to Change Request

Development teams which are practicing the task based approach in Synergy and using the Change Synergy for tracing new bugs and enhancements might want to require a relation between CRs and tasks. Each task that is created for a developer have some origin – it is either a new enhancement to develop, a bug to fix or some other action item to perform in the product.
Read more »

Enterprise Architecture – Alignment of Business goals and IT

 

Enterprise Architecture deals with the improvement of bridging the gaps between a company business goals and its support and implementation by the enterprise IT systems.

IT plays a key enabling role in business processes. It is crusial that the IT systems support and improve the organization performance rather than delay business initiatives and capabilities.

Read more »

Enterprise Architecture for bridging Business and IT gap (Heb version)

ארכיטקטורה ארגונית עוסקת בשיפור התיאום וגישור הפערים בין המטרות והיעדים העסקיים של החברה ובין תמיכתן ומימושן על ידי מערכות המידע בארגון.

מכיוון שמערכות המידע ממלאות תפקיד מרכזי ומאפשר בתהליכים העסקיים של הארגון קיימת חשיבות גדולה לווידוא כי מערכות המידע הנוכחיות ובמיוחד העתידיות תומכות ומשפרות את ביצועי הארגון ולא מעכבות יוזמות ויכולות עסקיות.

Read more »

Task Work-Item Configuration Management vs. File Version based cm

In the process of developing and maintaining software, developers will typically create or modify a large number of objects like source code, images, documents and binaries. A project might include hundreds of changes a day to produce a final release.
Read more »