Abstract
Many experts state that: a) specifying "all the small parts of a system" and b) correct expected system usage, can make Agile Software Development more effective. Unified Modeling Method (UML) addresses the former; Usability Engineering addresses the later. Taken together, they create a systems de-velopment framework, capable of: a) specifying functions, data, behavior and usage, b) rapid prototyping, and c) verifying system usability and correctness. All three of these methods focus first on the system, while secondarily trying to ascertain system context. Correct and complete context requires domain modeling. Structured Analysis and Design Technique (SADT/IDEF0) is a proven way to model any kind of domain. Its power and rigor come from: a) a synthesis of graphics, natural language, hierarchical decomposition, and relative context coding, b) distinguishing controls from transformations, c) function activation rules, and d) heuristics for managing model complexity. This paper explains how SADT/IDEF0 domain modeling can bring correct and complete context, to today’s commonplace disciplines of the Unified Modeling Language (UML), Agile System Development, and Usability Engineering methods.
Access provided by Autonomous University of Puebla. Download to read the full chapter text
Chapter PDF
Similar content being viewed by others
Keywords
References
Abraham, G., Atwood, M.: Patterns or claims: do they help in communicating design advice? In: Proceedings of the 21st Annual Conference of the Australian Computer-Human Interaction Special Interest Group (2009)
Abrahamsson, P., et al.: Agile Software Development Methods: Review and Analysis. VTT Publications, Number 478, Kaitovayla (2002)
Alleman, G.B.: Agile Project Management Methods for ERP: How to Apply Agile Processes to Complex COTS Projects and Live to Tell about It. In: Wells, D., Williams, L. (eds.) XP 2002. LNCS, vol. 2418, pp. 70–88. Springer, Heidelberg (2002)
Baniassad, E., Clarke, S.: Theme: An Approach for Aspect-Oriented Analysis and Design. In: Proceedings of the 26th International Conference on Software Engineering (2004)
Booch, G., et al.: The Unified Modeling Language User Guide. Addison-Wesley, Boston (1999)
Brockmans, S., Haase, P., Hitzler, P., Studer, R.: A Metamodel and UML Profile for Rule-Extended OWL DL Ontologies. In: Sure, Y., Domingue, J. (eds.) ESWC 2006. LNCS, vol. 4011, pp. 303–316. Springer, Heidelberg (2006)
Bryant, B., et al.: From Natural Language Requirements to Executable Models of Software Components. In: Proceedings of the Monterey Workshop on Software Engineering for Embedded Systems: From Requirements to Implementation (2003)
Bryant, S., et al.: Pair programming and the re-appropriation of individual tools for collaborative software development. In: Proceedings of the Conference on Cooperative Systems Design (2006)
Calvary, G., Thevenin, D.: A Unifying Reference Framework for the Development of Plastic User Interfaces. In: Little, M.R., Nigay, L. (eds.) EHCI 2001. LNCS, vol. 2254, pp. 173–192. Springer, Heidelberg (2001)
Congram, C., Epelman, M.: How to describe your service: An invitation to Structured Analysis and Design Technique. International Journal of Service Industry Management 6(2) (1995)
Decker, B., et al.: A framework for Agile reuse in software engineering using Wiki Technology. In: Proceedings of the Knowledge Management for Distributed Agile Processes Workshop (2005)
Dingsøyr, T., Hanssen, G.K.: Extending Agile Methods: Postmortem Reviews as Extended Feedback. In: Henninger, S., Maurer, F. (eds.) LSO 2003. LNCS, vol. 2640, pp. 4–12. Springer, Heidelberg (2003)
Egyed, A., Medvidovic, N.: A Formal Approach to Heterogeneous Software Modeling. In: Maibaum, T. (ed.) FASE 2000. LNCS, vol. 1783, pp. 178–192. Springer, Heidelberg (2000)
Friedrich, W., van der Poll, J.: Towards a Method to Elicit Tacit Domain Knowledge from Users. Interdisciplinary Journal of Information, Knowledge, and Management 2 (2007)
Granollers, T., et al.: Usability Engineering Process Model. Integration with Software Engineering. In: Proceedings of the HCI International Conference 2003 (2003)
Halpin, T.: Augmenting UML with fact-orientation. In: Proceedings of the 34th Annual Hawaii International Conference on Systems Sciences (2001)
Hilliard, R.: Using Aspects in Architectural Description. In: Moreira, A., Grundy, J. (eds.) Early Aspects 2007 Workshop. LNCS, vol. 4765, pp. 139–154. Springer, Heidelberg (2007)
Hilliard, R.: Aspects, Concerns, Subjects, Views, ... In: OOPSLA 1999 Workshop on Multi-Dimensional Separation of Concerns in Object-Oriented Systems (1999)
Hilliard, R.: Views and Viewpoints in Software Systems Architecture. In: First Working IFIP Conference on Software Architecture (WICSA 1) (1999)
Hilliard, R., et al.: The architectural metaphor as a foundation for systems engineering. In: Proceedings of the 6th Annual International Symposium of the International Council on Systems Engineering (1996)
Iachello, G., Abowd, G.: From privacy methods to a privacy toolbox: Evaluation shows that heuristics are complementary. ACM Transactions on Computer-Human Interaction 15(2) (2008)
Koch, N., et al.: The Authoring Process of the UML-based Web Engineering Approach. In: Proceedings of the 1st International Workshop on Web-oriented Software Technology (2001)
Larsen, G.: Designing component-based frameworks using patterns in the UML. CACM 42(10) (1999)
Marca, D.: IDEF0 and SADT: A Modeler’s Guide, 3rd edn. OpenProcess, Inc., Boston (2006)
Marca, D.: Augmenting SADT to develop computer support for cooperative work. In: Proceedings of the 13th International Conference on Software Engineering (1991)
Medvidovic, N., et al.: Round-Trip Software Engineering Using UML: From Architecture to Design and Back. In: Proceedings of the 7th European Conference on Software Engineering (1999)
Menard, R.: Domain modeling: Leveraging the heart of RUP for straight through processing. IBM Developer Works (2003), http://www.ibm.com/developerworks/rational/library/2234.html (retrieved on March 17, 2011)
Najar, S., et al.: Semantic representation of context models: a framework for analyzing and understanding. In: Proceedings of the 1st Workshop on Context, Information and Ontologies, CIAO 2009 (2009)
Nielsen, J.: Usability Engineering. Academic Press, London (1993)
Normantas, K., Vasilecas, O., Sosunovas, S.: Augmenting UML with decision table technique. In: International Conference on Computer Systems and Technologies: CompSys-Tech 2009 (2009)
Ng, J., et al.: The development of an enterprise resources planning system using a hierarchical design pyramid. Journal of Intelligent Manufacturing 9(5) (1996)
Paelke, V., Nebe, K.: Integrating Agile methods for mixed reality design space exploration. In: Proceedings of the 7th ACM Conference on Designing Interactive Systems, DIS 2008 (2008)
Rech, J., et al.: Riki: A System for Knowledge Transfer and Reuse in Software Engineering Projects. In: Lytras, M., Naeve, A. (eds.) Open Source for Knowledge and Learning Management: Strategies Beyond Tools. IGI Global Publishers (2007)
Reifer, D., et al.: Scaling Agile Methods. IEEE Software (July/August 2003)
Ross, D.: Structured Analysis (SA): A Language for Communicating Ideas. IEEE Transactions on Software Engineering 3(1) (1977)
Salo, O., Kolehmainen, K., Kyllönen, P., Löthman, J., Salmijärvi, S., Abrahamsson, P.: Self-Adaptability of Agile Software Processes: A Case Study on Post-iteration Workshops. In: Eckstein, J., Baumeister, H. (eds.) XP 2004. LNCS, vol. 3092, pp. 184–193. Springer, Heidelberg (2004)
Scacchi, W.: Is Open Source Software Development Faster, Better, and Cheaper than Software Engineering? In: Proceedings of the 2nd ICSE Workshop on Open Source Software Engineering (2002)
Schoman, K., Ross, D.: Structured Analysis for Requirements Definition. IEEE Transactions on Software Engineering 3(1) (1977)
Seffah, A., et al.: HCI, Usability and Software Engineering Integration: Present & Future. In: Human-Centered Software Engineering: Integrating Usability in the Software Development Lifecycle. HCI Series, vol. 8 (2005)
Siltala, M.: Modeling Contracting Procedure and the Concept of the Service Portfolio for Finnish Municipalities using SADT. Nordic Journal of Surveying and Real Estate Research 1 (2009)
Sitou, W., Spanfelner, B.: Towards requirements engineering for context adaptive systems. In: 31st Annual International Computer Software and Applications Conference, COMP-SAC 2007, vol. 2 (2007)
Spradley, J.: Participant Observation. Holt, Rinehart and Winston, London (1980)
Süß, J., Leicher, A.: Augmenting Domain Specific UML Models with RDF. In: Proceedings of the 3rd Workshop in Software Model Engineering, Lisbon (2004)
Sutcliffe, A.: Applying small group theory to analysis and design of CSCW systems. In: Proceedings of the Workshop on Human and Social Factors of Software Engineering, HSSE 2005 (2005)
Sutcliffe, A.: On the effective use and reuse of HCI knowledge. ACM Transactions on Computer-Human Interaction (TOCHI) 7(2) (2000)
Sutcliffe, A.: The Domain Theory for Requirements Engineering. IEEE Transactions on Software Engineering 24(3) (1998)
Skersys, T., Gudas, S.: The Enhancement of Class Model Development Using Business Rules. In: Bozanis, P., Houstis, E.N. (eds.) PCI 2005. LNCS, vol. 3746, pp. 480–490. Springer, Heidelberg (2005)
Wahid, S.: Investigating design knowledge reuse for interface development. In: Proceedings of the 6th Conference on Designing Interactive Systems, DIS 2006 (2006)
Verlinden, J., Horva, I.: Analyzing opportunities for using interactive augmented prototyping in design practice. In: Artificial Intelligence for Engineering Design, Analysis and Manufacturing. Cambridge University Press (2009)
Lethbridge, T.C., Laganiére, R.: Object-Oriented Software Engineering: Practical Software Development Using UML and Java. McGraw-Hill, London (2001)
Winckler, M., et al.: Tasks and scenario-based evaluation of information visualization techniques. In: Proceedings of the 3rd Annual Conference on Task Models and Diagrams, TAMODIA 2004 (2004)
Novak, J., Cañas, A.: The Theory Underlying Concept Maps and How to Construct Them, Technical Report IHMC CmapTools 2006-01 Rev 01-2008, Florida Institute for Human and Machine Cognition (2008)
Balasubramanian, K., Gokhale, A., Karsai, G., Sztipanovits, J., Neema, S.: Developing applications using model-driven design environments. IEEE Computer 39(2) (2006)
Hruby, P.: Ontology-based domain-driven design. In: OOPSLA Workshop on Best Practices for Model-Driven Software Development, San Diego, CA, USA (2005)
Wikipedia: Integrated Computer-Aided Manufacturing (2011), http://en.wikipedia.org/wiki/Integrated_Computer-Aided_Manufacturing (retrieved March 20, 2011)
Coste, P., et al.: Multilanguage Design of Heterogeneous Systems. In: CODES 1999 (1999)
Stuikys, V., Damasevicius, R.: Relationship Model of Abstractions Used for Developing Domain Generators. Informatica 13(1) (2001)
Vasilecas, O., Normantas, K.: Decision table based approach for business rules modelling in UML/OCL. In: Proceedings of the 11th International Conference on Computer Systems and Technologies and Workshop (2010)
Seffah, A., et al.: HCI, Usability and Software Engineering Integration: Present & Future. In: Human-Centered Software Engineering: Integrating Usability in the Software Development Lifecycle. HCI Series, vol. 8 (2005)
Brel, C., Renevier-Gonin, P., Occello, A., Déry-Pinna, A.-M., Faron-Zucker, C., Riveill, M.: Application Composition Driven By UI Composition. In: Bernhaupt, R., Forbrig, P., Gulliksen, J., Lárusdóttir, M. (eds.) HCSE 2010. LNCS, vol. 6409, pp. 198–205. Springer, Heidelberg (2010)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2013 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Marca, D.A. (2013). SADT/IDEF0 for Augmenting UML, Agile and Usability Engineering Methods. In: Escalona, M.J., Cordeiro, J., Shishkov, B. (eds) Software and Data Technologies. ICSOFT 2011. Communications in Computer and Information Science, vol 303. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-36177-7_3
Download citation
DOI: https://doi.org/10.1007/978-3-642-36177-7_3
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-36176-0
Online ISBN: 978-3-642-36177-7
eBook Packages: Computer ScienceComputer Science (R0)