Pub Date : 2000-09-11DOI: 10.1109/ICECCS.2000.873923
J. Mcdermid
Complexity arises from many sources: both within and outside the system. Internal sources include modern hardware, e.g. super-scalar processors, and external sources include the requirements for evolving already successful systems. Complexity is inescapable unless we are willing to reduce our dependence on computers, and to forgo the benefits they bring us. This raises the issue of how we control, or simply cope with, ever-increasing complexity. We try to clarify what is meant by complexity, and what causes complexity. We identify some causes of complexity, focusing on embedded systems with strict dependability requirements, as these pose some of the most significant challenges. We then propose some strategies for coping with complexity, including the use of product families and the use of risk as a means of managing complexity.
{"title":"Complexity: concept, causes and control","authors":"J. Mcdermid","doi":"10.1109/ICECCS.2000.873923","DOIUrl":"https://doi.org/10.1109/ICECCS.2000.873923","url":null,"abstract":"Complexity arises from many sources: both within and outside the system. Internal sources include modern hardware, e.g. super-scalar processors, and external sources include the requirements for evolving already successful systems. Complexity is inescapable unless we are willing to reduce our dependence on computers, and to forgo the benefits they bring us. This raises the issue of how we control, or simply cope with, ever-increasing complexity. We try to clarify what is meant by complexity, and what causes complexity. We identify some causes of complexity, focusing on embedded systems with strict dependability requirements, as these pose some of the most significant challenges. We then propose some strategies for coping with complexity, including the use of product families and the use of risk as a means of managing complexity.","PeriodicalId":228728,"journal":{"name":"Proceedings Sixth IEEE International Conference on Engineering of Complex Computer Systems. ICECCS 2000","volume":"20 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2000-09-11","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"133421974","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pub Date : 2000-09-11DOI: 10.1109/ICECCS.2000.873927
H. Gomaa, L. Kerschberg, G. A. Farrukh
The paper presents a novel application involving two important software engineering research areas: process modeling and software reuse. The Spiral Model is a risk-driven process model, which, depending on the specific risks associated with a given project, may be tailored to create a project-specific process model. The software reuse area is that of domain modeling of families of systems, which capture the similarities and variations among the members of the family. The domain modeling approach is used to create a domain model of a Spiral Process Model (SPM), thereby capturing the similarities and variations among a family of process models. The SPM domain model has been extended to capture the key process areas of the Software Engineering Institute's Capability Maturity Model (CMM). The domain model is used to generate project-specific process models. This approach allows managers to configure and reuse process models that manage the risks associated with new software development.
{"title":"Domain modeling of software process models","authors":"H. Gomaa, L. Kerschberg, G. A. Farrukh","doi":"10.1109/ICECCS.2000.873927","DOIUrl":"https://doi.org/10.1109/ICECCS.2000.873927","url":null,"abstract":"The paper presents a novel application involving two important software engineering research areas: process modeling and software reuse. The Spiral Model is a risk-driven process model, which, depending on the specific risks associated with a given project, may be tailored to create a project-specific process model. The software reuse area is that of domain modeling of families of systems, which capture the similarities and variations among the members of the family. The domain modeling approach is used to create a domain model of a Spiral Process Model (SPM), thereby capturing the similarities and variations among a family of process models. The SPM domain model has been extended to capture the key process areas of the Software Engineering Institute's Capability Maturity Model (CMM). The domain model is used to generate project-specific process models. This approach allows managers to configure and reuse process models that manage the risks associated with new software development.","PeriodicalId":228728,"journal":{"name":"Proceedings Sixth IEEE International Conference on Engineering of Complex Computer Systems. ICECCS 2000","volume":"47 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2000-09-11","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"134546359","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pub Date : 2000-09-11DOI: 10.1109/ICECCS.2000.873944
Balkhis Abu Bakar, T. Janowski
The goal of result-verification is to prove that one execution run of a program satisfies its specification. Compared with implementation-verification, result-verification has a larger scope for applications in practice, gives more opportunities for automation and, based on the execution record not the implementation, is particularly suitable for complex systems. This paper proposes a technical framework to apply this technique in practice. We show how to write formal result-based specifications, how to generate a verifier program to check a given specification and to carry out result-verification according to the generated program. The execution result is written as a text file, the verifier is written in AWK (special-purpose language for text processing) and verification is done automatically by the AWK interpreter given the verifier and the execution result as inputs.
{"title":"Automated result verification with AWK","authors":"Balkhis Abu Bakar, T. Janowski","doi":"10.1109/ICECCS.2000.873944","DOIUrl":"https://doi.org/10.1109/ICECCS.2000.873944","url":null,"abstract":"The goal of result-verification is to prove that one execution run of a program satisfies its specification. Compared with implementation-verification, result-verification has a larger scope for applications in practice, gives more opportunities for automation and, based on the execution record not the implementation, is particularly suitable for complex systems. This paper proposes a technical framework to apply this technique in practice. We show how to write formal result-based specifications, how to generate a verifier program to check a given specification and to carry out result-verification according to the generated program. The execution result is written as a text file, the verifier is written in AWK (special-purpose language for text processing) and verification is done automatically by the AWK interpreter given the verifier and the execution result as inputs.","PeriodicalId":228728,"journal":{"name":"Proceedings Sixth IEEE International Conference on Engineering of Complex Computer Systems. ICECCS 2000","volume":"22 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2000-09-11","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116480581","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pub Date : 2000-09-11DOI: 10.1109/ICECCS.2000.873926
M. Kaâniche, J. Laprie, J. Blanquart
The paper presents a development model focused on the production of dependable systems. Three classes of processes are distinguished: 1) the system creation process which builds on the classical development steps (requirements, design, realization, integration); 2) dependability processes (i.e., fault prevention, fault tolerance, fault removal and fault forecasting); and 3) other supporting processes such as quality assurance and certification. The proposed approach relies on the identification of basic activities for the system creation process and for the dependability processes, and then on the analysis of the interactions among the activities of each process and with the other processes. Finally, to support the development of dependable systems, we define for each system creation activity, a checklist that specifies the key issues related to fault prevention, fault tolerance, fault removal, and fault forecasting, that need to be addressed.
{"title":"Dependability engineering of complex computing systems","authors":"M. Kaâniche, J. Laprie, J. Blanquart","doi":"10.1109/ICECCS.2000.873926","DOIUrl":"https://doi.org/10.1109/ICECCS.2000.873926","url":null,"abstract":"The paper presents a development model focused on the production of dependable systems. Three classes of processes are distinguished: 1) the system creation process which builds on the classical development steps (requirements, design, realization, integration); 2) dependability processes (i.e., fault prevention, fault tolerance, fault removal and fault forecasting); and 3) other supporting processes such as quality assurance and certification. The proposed approach relies on the identification of basic activities for the system creation process and for the dependability processes, and then on the analysis of the interactions among the activities of each process and with the other processes. Finally, to support the development of dependable systems, we define for each system creation activity, a checklist that specifies the key issues related to fault prevention, fault tolerance, fault removal, and fault forecasting, that need to be addressed.","PeriodicalId":228728,"journal":{"name":"Proceedings Sixth IEEE International Conference on Engineering of Complex Computer Systems. ICECCS 2000","volume":"371 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2000-09-11","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"132831529","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pub Date : 2000-09-01DOI: 10.1109/ICECCS.2000.873924
V. Alagar, O. Ormandjieva, M. Zheng
The paper discusses complexity categories associated with the phases of a process model that is followed in a rigorous development of real time reactive systems. We describe the complexity that is inherent in each phase and give measures to quantify it and methods to contain it. One of the goals of the work is to automate the measurement methods and integrate them into TROMLAB, a rigorous framework for the development of real time reactive systems.
{"title":"Managing complexity in real-time reactive systems","authors":"V. Alagar, O. Ormandjieva, M. Zheng","doi":"10.1109/ICECCS.2000.873924","DOIUrl":"https://doi.org/10.1109/ICECCS.2000.873924","url":null,"abstract":"The paper discusses complexity categories associated with the phases of a process model that is followed in a rigorous development of real time reactive systems. We describe the complexity that is inherent in each phase and give measures to quantify it and methods to contain it. One of the goals of the work is to automate the measurement methods and integrate them into TROMLAB, a rigorous framework for the development of real time reactive systems.","PeriodicalId":228728,"journal":{"name":"Proceedings Sixth IEEE International Conference on Engineering of Complex Computer Systems. ICECCS 2000","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2000-09-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129285045","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pub Date : 1900-01-01DOI: 10.1109/ICECCS.2000.873922
{"title":"Sixth IEEE International Conference On Engineering Of Complex Computer Systems","authors":"","doi":"10.1109/ICECCS.2000.873922","DOIUrl":"https://doi.org/10.1109/ICECCS.2000.873922","url":null,"abstract":"","PeriodicalId":228728,"journal":{"name":"Proceedings Sixth IEEE International Conference on Engineering of Complex Computer Systems. ICECCS 2000","volume":"31 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"1900-01-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128248546","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}