User Tools

Site Tools


dido:public:ra:1.4_req:2_nonfunc:20_maintainability:analysability

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
dido:public:ra:1.4_req:2_nonfunc:20_maintainability:analysability [2021/07/29 10:06]
murphy
dido:public:ra:1.4_req:2_nonfunc:20_maintainability:analysability [2022/08/31 15:34] (current)
nick
Line 5: Line 5:
 [[dido:​public:​ra:​xapend:​xapend.a_glossary:​a:​analysability]] is defined by the [[https://​ieeexplore.ieee.org/​document/​159342 | IEEE glossary of Software Engineering]] as “the ease with which a software system or component can be modified to correct faults, improve [[dido:​public:​ra:​xapend:​xapend.a_glossary:​p:​performance|performance]] or other attributes, or adapt to changes to the environment”. ​ [[dido:​public:​ra:​xapend:​xapend.a_glossary:​a:​analysability]] is defined by the [[https://​ieeexplore.ieee.org/​document/​159342 | IEEE glossary of Software Engineering]] as “the ease with which a software system or component can be modified to correct faults, improve [[dido:​public:​ra:​xapend:​xapend.a_glossary:​p:​performance|performance]] or other attributes, or adapt to changes to the environment”. ​
  
-One way to understand the Analysability of a system or a program is to understand the size of the system or program. As a rule of thumb, as the size of system or program increases, it becomes increasingly harder to successfully modify the software to correct faults, improve performance,​ or to adapt to changes in the operating environment. This Analysability can be performed any time while using either ​the [[dido:​public:​ra:​xapend:​xapend.a_glossary:​w:​waterfall]] or the [[dido:​public:​ra:​xapend:​xapend.a_glossary:​a:​agile]] during the early stages of analysis and design. As projects mature and use a larger code base, the models can be based directly on either the [[dido:​public:​ra:​xapend:​xapend.a_glossary:​s:​sourcecode|source code]] or  [[dido:​public:​ra:​xapend:​xapend.a_glossary:​u:​uml]] models created using reverse engineering. The metrics can also be used during both [[dido:​public:​ra:​xapend:​xapend.a_glossary:​g:​greenfield]] or [[dido:​public:​ra:​xapend:​xapend.a_glossary:​b:​brownfield]] deployments. Another way to examine Analysability could be to collect and use similar metrics on Distributed Computing systems where, instead of using classes (i.e., as in [[dido:​public:​ra:​xapend:​xapend.a_glossary:​o:​oop]]),​ the number of [[dido:​public:​ra:​xapend:​xapend.a_glossary:​n:​netnode | Nodes]], [[dido:​public:​ra:​xapend:​xapend.a_glossary:​e:​endpoint | Endpoints]] and message types could be used. To address **Structural Complexity**,​ the connections between processes can be used.+One way to understand the Analysability of a system or a program is to understand the size of the system or program. As a rule of thumb, as the size of system or program increases, it becomes increasingly harder to successfully modify the software to correct faults, improve performance,​ or to adapt to changes in the operating environment. This Analysability can be performed any time during ​the [[dido:​public:​ra:​xapend:​xapend.a_glossary:​s:​software_development_model]] (i.e., ​[[dido:​public:​ra:​xapend:​xapend.a_glossary:​w:​waterfall]] or the [[dido:​public:​ra:​xapend:​xapend.a_glossary:​a:​agile]], etc.) during the early stages of analysis and design. As projects mature and use a larger code base, the models can be based directly on either the [[dido:​public:​ra:​xapend:​xapend.a_glossary:​s:​sourcecode|source code]] or  [[dido:​public:​ra:​xapend:​xapend.a_glossary:​u:​uml]] models created using reverse engineering. The metrics can also be used during both [[dido:​public:​ra:​xapend:​xapend.a_glossary:​g:​greenfield]] or [[dido:​public:​ra:​xapend:​xapend.a_glossary:​b:​brownfield]] deployments. Another way to examine Analysability could be to collect and use similar metrics on Distributed Computing systems where, instead of using classes (i.e., as in [[dido:​public:​ra:​xapend:​xapend.a_glossary:​o:​oop]]),​ the number of [[dido:​public:​ra:​xapend:​xapend.a_glossary:​n:​netnode | Nodes]], [[dido:​public:​ra:​xapend:​xapend.a_glossary:​e:​endpoint | Endpoints]] and message types could be used. To address **Structural Complexity**,​ the connections between processes can be used.
  
 <table analyticMetric>​ <table analyticMetric>​
dido/public/ra/1.4_req/2_nonfunc/20_maintainability/analysability.txt · Last modified: 2022/08/31 15:34 by nick