Publication | Closed Access
On the Design and Development of Program Families
766
Citations
12
References
1976
Year
EngineeringComputer ArchitectureEducationSoftware EngineeringFamily StrengtheningArchitecture SpecificationSoftware AnalysisFormal VerificationProgram FamiliesProgram EvaluationFamily SystemsSystems EngineeringProgram TransformationDevelopmental ProgramSoftware Design PatternSequential DevelopmentAutomatic ProgrammingDesignComputer EngineeringComputer ScienceSoftware DesignArchitectural DesignProgram AnalysisSoftware TestingInformation Hiding ModulesFormal MethodsProgramming MethodologySystem Software
Program families are defined as groups of programs sharing extensive common properties, making it advantageous to study those properties collectively before examining individual members. The paper examines the assumption that developing a set of similar programs over time should treat the set as a whole when creating the first three development approaches. The authors compare a conventional sequential development approach with stepwise refinement and specification of information‑hiding modules, providing a detailed comparison of the two methods. Examples show that the two methods rest on the same concepts yet offer complementary advantages.
Program families are defined (analogously to hardware families) as sets of programs whose common properties are so extensive that it is advantageous to study the common properties of the programs before analyzing individual members. The assumption that, if one is to develop a set of similar programs over a period of time, one should consider the set as a whole while developing the first three approaches to the development, is discussed. A conventional approach called "sequential development" is compared to "stepwise refinement" and "specification of information hiding modules." " A more detailed comparison of the two methods is then made. By means of several examples it is demonstrated that the two methods are based on the same concepts but bring complementary advantages.
| Year | Citations | |
|---|---|---|
Page 1
Page 1