Abstract
Naive feature orientation runs into problems with large software systems, such as telephone switching systems. With naive feature orientation, a feature extends a base system by an arbitrary increment of functionality. Information hiding helps to structure a large software system design into modules such that it can be maintained. We focus on the requirements of a software system. Requirements can be structured analogously to design modules. Naive feature orientation can violate requirements encapsulation. We survey approaches with improved encapsulation, and we show how and when families of requirements can help.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Amyot, D., Logrippo, L. (eds.): Feature Interactions in Telecommunications and Software Systems VII, June 2003. IOS Press, Amsterdam (2003)
Calder, M., Magill, E. (eds.): Feature Interactions in Telecommunications and Software Systems VI, May 2000. IOS Press, Amsterdam (2000)
Kimbler, K., Bouma, L.G. (eds.): Feature Interactions in Telecommunications and Software Systems V, September 1998. IOS Press, Amsterdam (1998)
Dini, P., Boutaba, R., Logrippo, L. (eds.): Feature Interactions in Telecommunication Networks IV, June 1997. IOS Press, Amsterdam (1997)
Cheng, K.E., Ohta, T. (eds.): Feature Interactions in Telecommunications III. IOS Press, Amsterdam (1995)
Bouma, L.G., Velthuijsen, H. (eds.): Feature Interactions in Telecommunications Systems. IOS Press, Amsterdam (1994)
ITU-T. Q.12xx-Series Intelligent Network Recommendations (2001)
Garrahan, J.J., Russo, P.A., Kitami, K., Kung, R.: Intelligent Network overview. IEEE Commun. Mag. 31(3), 30–36 (1993)
Duran, J.M., Visser, J.: International standards for Intelligent Networks. IEEE Commun. Mag. 30(2), 34–42 (1992)
Gilmore, S., Ryan, M. (eds.): Proc. of Workshop on Language Constructs for Describing Features, Glasgow, Scotland, May 15-16 (2000); ESPRIT Working Group 23531 – Feature Integration in Requirements Engineering
Gilmore, S., Ryan, M.D. (eds.): Language Constructs for Describing Features. Springer, Heidelberg (2001)
Katz, S.: A superimposition control construct for distributed systems. ACM Trans. Prog. Lang. Syst. 15(2), 337–356 (1993)
ITU-T, Recommendation Q.1203. Intelligent Network – Global Functional Plane Architecture (October 1992)
ITU-T, Recommendation Q.1224. Distributed Functional Plane for Intelligent Network Capability Set 2: Parts 1 to 4 (September 1997)
Velthuijsen, H.: Issues of non-monotonicity in feature-interaction detection. In: Cheng and Ohta [5], pp. 31–42
Jane Cameron, E., Griffeth, N.D., Lin, Y.-J., et al.: A feature interaction benchmark in IN and beyond. In: Bouma and Velthuijsen [6], pp. 1–23
Calder, M., Kolberg, M., Magill, E.H., Reiff-Marganiec, S.: Feature interaction: a critical review and considered forecast. Comp. Networks 41, 115–141 (2002)
Zave, P.: Feature disambiguation. In: Amyot and Logrippo [1], pp. 3–9
Gray, T., Liscano, R., Wellman, B., Quan-Haase, A., Radhakrishnan, T., Choi, Y.: Context and intent in call processing. In: Amyot and Logrippo [1], pp. 177–184
Bredereke, J.: On preventing telephony feature interactions which are sharedcontrol mode confusions. In: Amyot and Logrippo [1], pp. 159–176
Parnas, D.L.: On the criteria to be used in decomposing systems into modules. Commun. ACM 15(12), 1053–1058 (1972); Reprinted in [48]
Weiss, D.M.: Introduction to [21]. In: Hoffman and Weiss [48], pp. 143–144
Parnas, D.L., Clements, P.C., Weiss, D.M.: The modular structure of complex systems. IEEE Trans. Softw. Eng. 11(3), 259–266 (1985); Reprinted in [48]
Britton, K.H., Alan Parker, R., Parnas, D.L.: A procedure for designing abstract interfaces for device interface modules. In: Proc. of the 5th Int’l. Conf. on Software Engineering – ICSE 5, pp. 195–204 (March 1981); Reprinted in [48]
Parnas, D.L.: Designing software for ease of extension and contraction. IEEE Trans. Softw. Eng. SE-5(2), 128–138 (1979); Reprinted in [48]
Parnas, D.L.: On the design and development of program families. IEEE Trans. Softw. Eng. 2(1), 1–9 (1976); Reprinted in [48]
Weiss, D.M., Lai, C.T.R.: Software Product Line Engineering – a Family-Based Software Development Process. Addison-Wesley Longman, Amsterdam (1999)
Conradi, R., Westfechtel, B.: Version models for software configuration management. ACM Comput. Surv. 30(2), 232–282 (1998)
ITU-T, Recommendation Q.1223. Global Functional Plane for Intelligent Network Capability Set 2 (September 1997)
Bredereke, J.: Maintaining telephone switching software requirements. IEEE Commun. Mag. 40(11), 104–109 (2002)
Bredereke, J.: Avoiding feature interactions in the users’ interface. In: Kimbler and Bouma [3], pp. 305–317
Miller, S.P.: Specifying the mode logic of a flight guidance system in CoRE and SCR. In: Second Workshop on Formal Methods in Software Practice, Clearwater Beach, Florida, USA, March 4-5 (1998)
Miller, S.P., Hoech, K.F.: Specifying the mode logic of a flight guidance system in CoRE. Technical Report WP97-2011, Rockwell Collins, Inc., Avionics & Communications, Cedar Rapids, IA 52498 USA (November 1997)
Faulk, S.R., Kirby Jr., J., Finneran, L., Moini, A.: Consortium requirements engineering guidebook. Tech. Rep. SPC-92060-CMC, version 01.00.09, Software Productivity Consortium Services Corp., Herndon, Virginia, USA (December 1993)
Parnas, D.L., Madey, J.: Functional documents for computer systems. Sci. Comput. Programming 25(1), 41–61 (1995)
Mampaey, M., Couturier, A.: Using TINA concepts for IN evolution. IEEE Commun. Mag. 38(6), 94–99 (2000)
Abarca, C., et al.: Service architecture. Deliverable, TINA-Consortium, Version 5.0, June 16 (1997), http://www.tinac.com/
Jackson, M., Zave, P.: Distributed feature composition: A virtual architecture for telecommunications services. IEEE Trans. Softw. Eng. 24(10), 831–847 (1998)
Bond, G.W., Cheung, E., Hal Purdy, K., Zave, P., Christopher Ramming, J.: An open architecture for next-generation telecommunication services. ACM Transactions on Internet Technology 4(1) (February 2004) (to appear)
Zibman, I., et al.: Minimizing feature interactions: an architecture and processing model approach. In: Cheng and Ohta [5], pp. 65–83
Pinard, D.: Reducing the feature interaction problem using an agent-based architecture. In: Amyot and Logrippo [1], pp. 13–22
Bredereke, J.: A tool for generating specifications from a family of formal requirements. In: Kim, M., Chin, B., Kang, S., Lee, D. (eds.) Formal Techniques for Networked and Distributed Systems, August 2001, pp. 319–334. Kluwer Academic Publishers, Dordrecht (2001)
Bredereke, J.: Families of formal requirements in telephone switching. In: Calder and Magill [2], pp. 257–273
Fischer, C.: Combination and implementation of processes and data: from CSP-OZ to Java. PhD thesis, report of the Comp. Sce. dept. 2/2000, University of Oldenburg, Oldenburg, Germany (April 2000)
Fischer, C.: CSP-OZ: a combination of Object-Z and CSP. In: Bowman, H., Derrick, J. (eds.) Formal Methods for Open Object-Based Distributed Systems (FMOODS 1997), July 1997, vol. 2, pp. 423–438. Chapman & Hall, Boca Raton (1997)
Bredereke, J.: genFamMem 2.0 Manual – a Specification Generator and Type Checker for Families of Formal Requirements. University of Bremen (October 2000), http://www.tzi.de/~brederek/genFamMem/
Reiff-Marganiec, S.: Policies: Giving users control over calls. In: Ryan, M.D., Meyer, J.-J.C., Ehrich, H.-D. (eds.) Objects, Agents, and Features. LNCS, vol. 2975, pp. 189–208. Springer, Heidelberg (2004)
Hoffman, D.M., Weiss, D.M. (eds.): Software Fundamentals – Collected Papers by D.L. Parnas, March 2001. Addison-Wesley, Reading (2001)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2004 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Bredereke, J. (2004). On Feature Orientation and on Requirements Encapsulation Using Families of Requirements. In: Ryan, M.D., Meyer, JJ.C., Ehrich, HD. (eds) Objects, Agents, and Features. Lecture Notes in Computer Science, vol 2975. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-25930-5_3
Download citation
DOI: https://doi.org/10.1007/978-3-540-25930-5_3
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-21989-7
Online ISBN: 978-3-540-25930-5
eBook Packages: Springer Book Archive