Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[polarsys-iwg] [Maturity] First steps towards a definition of maturity

Hiho dear all,

First of all, I'm not used to the Eclipse working groups so please accept my apologises if I'm doing something wrong. I wanted to edit the polarsys wiki but I'm not able to log in with my eclipse credential -- any help on that matter would be appreciated.

As a first step in the definition and assessment of software project maturity, I'd like to propose some basic pieces of interpretation and semantics. Please feel free to argue or comment.

Maturity in a generic meaning refers to the state gained after the youth. It usually concepts of reliability, mastership, absence of common errors, predictability.

However in the context of critical embedded software it has a specific semantic. After a few discussions with Pierre Gaufillet and others around me, here is what maturity could induce: * Some sort of reliability: the software product has been enough exercised to detect and correct the most frequent or critical bugs. Considering Reliability Growth Models, the number of bugs discovered in a mature project is decreasing. * Some sort of functionality: the software product is fully able to deliver its functionalities, it is usable and complete. * Some sort of maintainability: it should be easy to modify and improve the software, even if developers change. * Some sort of process predictabilitiy: the project delivers products with constant quality and at planed dates. * Some sort of documentation and support: manuals are easily available for the different actors involved in the product usage (user, administrator, installation, upgrade, customisation..), and there is enough support to get answers in a timely and complete fashion. Support can be provided by the community, or a public or privately held company. * Some sort of process traceability: there are publicly available documents tracking decisions, contributions, or important things. This part is especially useful for the certification.


It should be noted that Maturity is a sub-characteristic of reliability in the ISO 9126 / SQuaRE standards. The definition given for it is: * ISO9126: the capability of the software product to avoid failure as a result of faults in the software. * SQuaRE: degree to which a system, product or component meets needs for reliability under normal operation.

The SQuaRE adds an interesting note to this definition: "The concept of maturity can also be applied to other quality characteristics to indicate the degree to which they meet required needs under normal operation."

I'm conducting a research project (Maisqual) on a similar subject, so I may be able to add more on quality models, metrics and links between both, but this would make this email inefficient. Depending on your answers, I could add them on the wiki as soon as I can get a login.

Any thought, comment, remark are welcome..


--
Boris Baldassari
SQuORING Technologies




Back to the top