Function-Oriented Design the Software Design Process Functional And

Total Page:16

File Type:pdf, Size:1020Kb

Function-Oriented Design the Software Design Process Functional And The software design process Requirements Function-oriented design specification Design activities Data Architectural Abstract Interface Component Algorithm structure design specification design design design design Data System Software Interface Component Algorithm structure architecture specification specification specification specification specification Design products ©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 1 ©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 2 Functional and object-oriented design Functional design process z For many types of application, object-oriented z Data-flow design design is likely to lead to a more reliable and • Model the data processing in the system using data- maintainable system flow diagrams z Some applications maintain little state - function- z Structural decomposition oriented design is appropriate • Model how functions are decomposed to sub- functions using graphical structure charts z Standards, methods and CASE tools for functional design are well-established z Detailed design • The entities in the design and their interfaces are z Existing systems must be maintained - described in detail. These may be recorded in a data function-oriented design will be practiced well dictionary and the design expressed using a PDL in the 21st century ©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 3 ©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 4 Data flow diagrams DFD notation z Show how an input data item is functionally z Rounded rectangle - function or transform transformed by a system into an output data z Rectangle - data store item z Circles - user interactions with the system z Are an integral part of many design methods z Arrows - show direction of data flow and are supported by many CASE systems z keywords and/ or. Used to link data flows z May be translated into either a sequential or parallel design. In a sequential design, processing elements are functions or procedures; in a parallel design, processing elements are tasks or processes ©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 5 ©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 6 Order processing DFD Structural decomposition z Structural decomposition is concerned with developing a model of the design which shows the dynamic structure i.e. function calls z This is not the same as the static composition structure z The aim of the designer should be to derive design units which are highly cohesive and loosely coupled z In essence, a data flow diagram is converted to a structure chart ©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 7 ©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 8 Decomposition guidelines Decomposition guidelines z For business applications, the top-level structure z The aim of the design process is to identify chart may have four functions namely input, loosely coupled, highly cohesive functions. Each process, master-file-update and output function should therefore do one thing and one z Data validation functions should be subordinate thing only to an input function z Each node in the structure chart should have z Coordination and control should be the between two and seven subordinates responsibility of functions near the top of the hierarchy ©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 9 ©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 10 Process steps Initial structure chart z Identify system processing transformations Produce • Transformations in the DFD which are concerned design reports with processing rather than input/output activities. entity entity Group under a single function in the structure chart names data entity entity names data z Identify input transformations • Transformations concerned with reading, validating Get design Collate Generate and formatting inputs. Group under the input function entity names entities report z Identify output transformations • Transformations concerned with formatting and Design Design Design writing output. Group under the output function name entity report names ©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 11 ©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 12 Expanded structure chart Final structure chart Produce Produce design reports design reports sorted sorted entity names sorted names sorted entity names data names data entity entity data data Get design Collate Generate Get design Collate Generate entity names entities report entity names entities report sorted sorted sorted sorted entity names entity entity entity entity names entity design names data data data design names data name sorted entity Integrated name sorted entity Integrated names data report names data report Get design Get entity Sort entities Get entity Sort entities Produce Print Get design Get entity Sort entities Get entity Sort entities Produce Print name names by name data by type integrated report report name names by name data by type integrated report report Node Link design design entity entity entity data Node data name name names name data report Link report design entity entity report report name names data Design Data Produce Produce database dictionary link report node report ©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 13 ©Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 1 Slide 14.
Recommended publications
  • CAD Usage in Modern Engineering and Effects on the Design Process
    CAD Usage in Modern Engineering and Effects on the Design Process A Research Paper submitted to the Department of Engineering and Society Presented to the Faculty of the School of Engineering and Applied Science University of Virginia • Charlottesville, Virginia In Partial Fulfillment of the Requirements for the Degree Bachelor of Science, School of Engineering Pascale Starosta Spring, 2021 On my honor as a University Student, I have neither given nor received unauthorized aid on this assignment as defined by the Honor Guidelines for Thesis-Related Assignments 5/11/2021 Signature __________________________________________ Date __________ Pascale Starosta Approved __________________________________________ Date __________ Sean Ferguson, Department of Engineering and Society CAD Usage in Modern Engineering and Effects on the Design Process Computer-aided design (CAD) is widely used by engineers in the design process as companies transition from physical modeling and designing to an entirely virtual environment. Interacting with computers instead of physical models forces engineers to change their critical thinking skills and learn new techniques for designing products. To successfully use CAD programs, engineering education programs must also adapt in order to prepare students for the working world as it transitions to primarily computer design work. These adjustments over time, as CAD becomes the dominant method for designing in the engineering field, ultimately have effects on the products engineers are creating and how they are brainstorming and moving through the design process. Studies and surveys can be conducted on current engineering students as well as professional engineers to determine how they interact with CAD differently from physical models, and how computer software can be improved to make the design process more intuitive and efficient.
    [Show full text]
  • An Investigation on Principles of Functional Design and Its Expressive Potential
    FRACTIONan investigation on principles of functional design and its expressive potential Master Thesis by Karin Schneider_Swedish School of Textiles Borås 2013 Examiner: Clemens Thornquist Supervisor: Karin Landahl Karin Schneider | 2013 I The Swedish School of Textiles, Borås Karin Schneider | 2013 I The Swedish School of Textiles, Borås `(...), NEWTONeliminated the opportunity for ANGELSand DAEMONSto do any real work´ (1). (1) McCAULEY/JOSEPH L., Initials. (1997) Classical Mechanics, transformations, flows, integrable and chaotic dynamics. Cambridge United Kingdom: Press Syndicate of the University of Cambridge. Karin Schneider | 2013 I The Swedish School of Textiles, Borås Karin Schneider | 2013 I The Swedish School of Textiles, Borås Karin Schneider | 2013 I The Swedish School of Textiles, Borås Karin Schneider | 2013 I The Swedish School of Textiles, Borås Karin Schneider | 2013 I The Swedish School of Textiles, Borås Karin Schneider | 2013 I The Swedish School of Textiles, Borås Karin Schneider | 2013 I The Swedish School of Textiles, Borås Karin Schneider | 2013 I The Swedish School of Textiles, Borås Karin Schneider | 2013 I The Swedish School of Textiles, Borås Karin Schneider | 2013 I The Swedish School of Textiles, Borås Karin Schneider | 2013 I The Swedish School of Textiles, Borås Karin Schneider | 2013 I The Swedish School of Textiles, Borås abstract `FRACTION, an investigation on principles of functional design and its expressive potential´ is dealing with the interaction between the body, the worn garment and the closer space around it, in the context of the three being individual functional systems. Based on my findings, I am questioning the existing paradigms for a functional expression with the aim of generating an outlook for a possible de- velopment of what can be considered a functional visual.
    [Show full text]
  • Design for Reliability: an Event- and Function-Based Framework for Failure Behavior Analysis in the Conceptual Design of Cognitive Products
    INTERNATIONAL CONFERENCE ON ENGINEERING DESIGN, ICED11 15 - 18 AUGUST 2011, TECHNICAL UNIVERSITY OF DENMARK DESIGN FOR RELIABILITY: AN EVENT- AND FUNCTION-BASED FRAMEWORK FOR FAILURE BEHAVIOR ANALYSIS IN THE CONCEPTUAL DESIGN OF COGNITIVE PRODUCTS Thierry Sop Njindam and Kristin Paetzold Universität der Bundeswehr München ABSTRACT Product complexity in modern engineering is rising at an ever-increasing rate for several reasons. On the one hand, designers are aimed at extending the functionality of products, thus, integrating them in human living environments and optimizing their interaction with humans. On the other hand, this functionality extension results from the synergetic integration of different disciplines. However, an important prerequisite for the market launch of these products is their ability to meet the previously defined requirements, particularly safety and reliability. In this perspective, we proposed a framework for the early analysis of the functional behavior of cognitive products. We assume that the failure of a function is linked with a system internal state transition. It is then possible to model the sequencing of different possible states, and by this means different functional failures which lead to critical feared states, thus, taking into account the random nature of the occurring failures. The approach presented is explained using an extended stochastic petri net with switching time to model the failure behavior of a cognitive walker. Keywords: Design for reliability, cognitive products, failure behavior analysis. 1 INTRODUCTION From today´s perspective, the emphasis on increasing the functionality of modern engineering products is shaping the product development. Global competition, recent advances in technology, and increased customer expectations are some of the reasons for that [6].
    [Show full text]
  • Design-Build Manual
    DISTRICT OF COLUMBIA DEPARTMENT OF TRANSPORTATION DESIGN BUILD MANUAL May 2014 DISTRICT OF COLUMBIA DEPARTMENT OF TRANSPORTATION MATTHEW BROWN - ACTING DIRECTOR MUHAMMED KHALID, P.E. – INTERIM CHIEF ENGINEER ACKNOWLEDGEMENTS M. ADIL RIZVI, P.E. RONALDO NICHOLSON, P.E. MUHAMMED KHALID, P.E. RAVINDRA GANVIR, P.E. SANJAY KUMAR, P.E. RICHARD KENNEY, P.E. KEITH FOXX, P.E. E.J. SIMIE, P.E. WASI KHAN, P.E. FEDERAL HIGHWAY ADMINISTRATION Design-Build Manual Table of Contents 1.0 Overview ...................................................................................................................... 1 1.1. Introduction .................................................................................................................................. 1 1.2. Authority and Applicability ........................................................................................................... 1 1.3. Future Changes and Revisions ...................................................................................................... 1 2.0 Project Delivery Methods .............................................................................................. 2 2.1. Design Bid Build ............................................................................................................................ 2 2.2. Design‐Build .................................................................................................................................. 3 2.3. Design‐Build Operate Maintain....................................................................................................
    [Show full text]
  • Connectors of Smart Design and Smart Systems Engineering Design, Analysis and Manufacturing Imre Horváth
    Artificial Intelligence for Connectors of smart design and smart systems Engineering Design, Analysis and Manufacturing Imre Horváth cambridge.org/aie Faculty of Industrial Design Engineering, Delft University of Technology, Landbergstraat 15, 2628CE Delft, The Netherlands Abstract Though they can be traced back to different roots, both smart design and smart systems have Research Article to do with the recent developments of artificial intelligence. There are two major questions Cite this article: Horváth I (2021). Connectors related to them: (i) What way are smart design and smart systems enabled by artificial narrow, of smart design and smart systems. Artificial general, or super intelligence? and (ii) How can smart design be used in the realization of Intelligence for Engineering Design, Analysis smart systems? and How can smart systems contribute to smart designing? A difficulty is – and Manufacturing 35, 132 150. https:// that there are no exact definitions for these novel concepts in the literature. The endeavor doi.org/10.1017/S0890060421000068 to analyze the current situation and to answer the above questions stimulated an exploratory Received: 21 January 2021 research whose first findings are summarized in this paper. Its first part elaborates on a plau- Revised: 7 March 2021 sible interpretation of the concept of smartness and provides an overview of the characteristics Accepted: 8 March 2021 of smart design as a creative problem solving methodology supported by artificial intelligence. First published online: 19 April 2021 The second part exposes the paradigmatic features and system engineering issues of smart sys- Key words: tems, which are equipped with application-specific synthetic system knowledge and reasoning AI-enablers; comprehension and utilization; mechanisms.
    [Show full text]
  • Chapter 3 Software Design
    CHAPTER 3 SOFTWARE DESIGN Guy Tremblay Département d’informatique Université du Québec à Montréal C.P. 8888, Succ. Centre-Ville Montréal, Québec, Canada, H3C 3P8 [email protected] Table of Contents references” with a reasonably limited number of entries. Satisfying this requirement meant, sadly, that not all 1. Introduction..................................................................1 interesting references could be included in the recom- 2. Definition of Software Design .....................................1 mended references list, thus the list of further readings. 3. Breakdown of Topics for Software Design..................2 2. DEFINITION OF SOFTWARE DESIGN 4. Breakdown Rationale...................................................7 According to the IEEE definition [IEE90], design is both 5. Matrix of Topics vs. Reference Material .....................8 “the process of defining the architecture, components, 6. Recommended References for Software Design........10 interfaces, and other characteristics of a system or component” and “the result of [that] process”. Viewed as a Appendix A – List of Further Readings.............................13 process, software design is the activity, within the software development life cycle, where software requirements are Appendix B – References Used to Write and Justify the analyzed in order to produce a description of the internal Knowledge Area Description ....................................16 structure and organization of the system that will serve as the basis for its construction. More precisely, a software design (the result) must describe the architecture of the 1. INTRODUCTION system, that is, how the system is decomposed and This chapter presents a description of the Software Design organized into components and must describe the interfaces knowledge area for the Guide to the SWEBOK (Stone Man between these components. It must also describe these version).
    [Show full text]
  • Functional Design: Exploring Design for Disability in a Childrenswear Course Martha L
    International Textile and Apparel Association 2015: Celebrating the Unique (ITAA) Annual Conference Proceedings Nov 13th, 12:00 AM FUNctional Design: Exploring Design for Disability in a Childrenswear Course Martha L. Hall University of Delaware, [email protected] Michele A. Logo University of Delaware Follow this and additional works at: https://lib.dr.iastate.edu/itaa_proceedings Part of the Fashion Design Commons, and the Fiber, Textile, and Weaving Arts Commons Hall, Martha L. and Logo, Michele A., "FUNctional Design: Exploring Design for Disability in a Childrenswear Course" (2015). International Textile and Apparel Association (ITAA) Annual Conference Proceedings. 30. https://lib.dr.iastate.edu/itaa_proceedings/2015/presentations/30 This Event is brought to you for free and open access by the Conferences and Symposia at Iowa State University Digital Repository. It has been accepted for inclusion in International Textile and Apparel Association (ITAA) Annual Conference Proceedings by an authorized administrator of Iowa State University Digital Repository. For more information, please contact [email protected]. Santa Fe, New Mexico 2015 Proceedings FUNctional Design: Exploring Design for Disability in a Childrenswear Course Martha L. Hall and Michele A. Lobo, University of Delaware, USA Key words: Design, disability, childrenswear, user-centered Introduction. Design for disability within the clothing and apparel industry represents a small and often overlooked market. Traditionally, the fashion industry has focused on a narrowly defined retail customer; one based on contemporary societal ideals of beauty: young, attractive, and physically healthy (Carroll, 2015). For an individual with disabilities, fashion and dress choices are limited and can impact how he/she is perceived and accepted by others.
    [Show full text]
  • Design-Build 101 One Entity, One Contract, One Unified Workflow - from Concept to Completion
    Design-Build 101 One entity, one contract, one unified workflow - From concept to completion FOR THE EXPERIENCE September 2017 What is Design-Build? Design-build is a method of project delivery in which one entity – the design-build team – works under a single contract with the project owner to provide design and construction services. Our team can begin the build phase concurrent with the design phase, meaning we can get shovels in the ground much earlier than other delivery methods. This time savings can equate to cost savings, too, by reducing project and opportunity costs through minimizing the time owners must carry Design-Build Contractual construction financing and related costs. Relationship Our design-build approach also creates a streamlined communication process. Instead of owners needing to relay important project information to the design firm(s) and construction firm, owners work directly with one TRADITIONAL PROJECT DELIVERY point-of-contact. This entity is considered the single source of responsibility and contractual risk for all phases Sub- Designer of the project including cost estimating, assessments, Consultants Owner pre-construction, engineering, design, subcontracting, Sub- construction and post-construction. Contractor Contractors Owner must manage two separate contracts; owner Design-Build Advantages becomes middleman, settling disputes between the designer and the contractor. Designer and contractor • Contractor is the single source of responsibility can easily blame one another for cost overruns and • Owner
    [Show full text]
  • Design for Reliability
    Design for Reliability Course No: B02-005 Credit: 2 PDH Daniel Daley, P.E., CMRP Continuing Education and Development, Inc. 22 Stonewall Court Woodcliff Lake, NJ 07677 P: (877) 322-5800 [email protected] DESIGN FOR RELIABILITY By Daniel T. Daley Introduction Design for Reliability (DFR) is the process conducted during the design of an asset that is intended to ensure that the asset is able to perform to a required level of reliability. The reason there is a separate and distinct focus on DFR is that historically most design processes have tended to ignore the specific activities during asset design that would ensure reliability performance at any specific level. Instead, the reliability of the asset turned out to be the performance level provided by: • The reliability that naturally accompanied design required for structural integrity • The reliability that was the result of standard or historic practices for specific companies (like using redundant components in highly stressed applications or using specific components or equipment with which there had been good experience.) While those practices have gradually led to increasingly good reliability performance, the improvement is neither managed nor the result of a scientific approach. The demand for specific performance levels and the desire to do so in an effective and optimized manner has resulted in the growing movement toward increasing application of DFR and its spread to industries where it had not been applied in the past. Historic design practices have tended to focus on two elements: • Functionality • Robustness or Structural Integrity While the focus on those characteristics tends to produce some basic level of reliability, they are increasingly less effective as the level of sophistication increases.
    [Show full text]
  • Whole-Building Design
    Chapter 2: Whole-Building Design Whole-Building Design – the What and How Articulating and Communicating a Vision Creating an Integrated Project Team Developing Project Goals Design and Execution Phases Decision-Making Process Writing Sustainable F&OR Documents Specific Sustainable Elements of F&OR Documents Fitting into the LANL Design Process LANL | Chapter 2 Whole-Building Design – the What and How Sustainable design can most easily be achieved through Sustainable design is most effective when applied at the Whole-Building Design a whole-building design process. earliest stages of a design. This philosophy of creating a good building must be maintained throughout design The whole-building design process is a multi-disciplinary and construction. strategy that effectively integrates all aspects of site development, building design, construction, and opera­ The first steps for a sustainable and high-performance tions and maintenance to minimize resource consump­ building design include: tion and environmental impacts. Think of all the pieces Creating a vision for the project and setting design of a building design as a single system, from the onset performance goals. of the conceptual design through completion of the commissioning process. An integrated design can save Forming a strong, all-inclusive project team. money in energy and operating costs, cut down on Outlining important first steps to take in achieving expensive repairs over the lifetime of the building, and Creating a Sustainable Building a sustainable design. reduce the building’s total environmental impact. requires a well-thought-out, Realizing sustainable design within the LANL Process is key. Ensuring that a LANL building will be established design process.
    [Show full text]
  • Design of Training Systems, Phase I Final Report, Volume I of II
    DOCUMENT RESUME ED 089 778 IR 000 503 AUTHOR Bellamy, Harold J.; And Others TITLE Design of Training Systems, Phase I Final Report, Volume I of II. INSTITUTION Naval Training Equipment Center, Orlando, Fla. Training Analysis and Evaluation Group. REPORT NO IBM-FSO-ESC-73-535-005; NAVTRADQUIPCEN-TAEG-12-1-v-1 PUB DATE Dec 73 NOTE 468p.; For related documents see IR 000 502 and IR' 000 504 EDRS PRICE MF-$0.75 HC- $22.20 PLUS POSTAGE DESCRIPTORS Computer Oriented Programs; *Computers; *Educational Programs; *Instructional Design; *Instructional Systems; Management; Management Systems; *Mathematical Models; *Military Training; Models; Program Descriptions IDENTIFIERS *Design of Training Systems; DOTS; Naval Education and Training System; NETS; United States Navy, ABSTRACT Full details are presented on Phase I of the three-stage project "Design of Training Systems" (DOTS). A functional descriptive model of the current Naval Education and Training System (NETS) is provided, along with idealized concepts oriented toward a 1980 time frame. Technological gaps and problem areas are noted, but no organizational elements arc identified since it is specified that the prime areas of interest are the functions performed. Finally, a rationale is offered for the selection of candidate mathematical models which will be developed in Phase II of the project for the purpose of assisting training managers with planning and decision-making related to the management of training programs. (Author) TRAINING ANALYSIS AND EVALUATION GROUP TAEG REPOR1 DESIGN OF TRAINING SYSTEMS NO 12-1 PHASE I REPORT Volume I FOCUS ON THE TRAINED MAN U S DEPARTMENT OF HEALTH EDUCATION IL WELFARE NATIONAL INSTITUTE OF EDUCATION 1HIS DOCUMENT HAS BEEN REPRO DuCED EXACTLY AS RECEIVED FROM THE PERSON OR ORGAN,EAT.ON OR !GIN ACING IT POINTS 01 VIEW UN OPLwONS STATED DO 40' NECESSAR,t V RI PRI- SENT OFt,CiAL NATIONAL INSTITUTE 01 FOLICAVON POSITION ON POLICY 110 t PUBLIC RELEASE; IS UNLIMITED.
    [Show full text]
  • Design Patterns for Functional Strategic Programming
    Design Patterns for Functional Strategic Programming Ralf Lammel¨ Joost Visser Vrije Universiteit CWI De Boelelaan 1081a P.O. Box 94079 NL-1081 HV Amsterdam 1090 GB Amsterdam The Netherlands The Netherlands [email protected] [email protected] Abstract 1 Introduction We believe that design patterns can be an effective means of con- The notion of a design pattern is well-established in object-oriented solidating and communicating program construction expertise for programming. A pattern systematically names, motivates, and ex- functional programming, just as they have proven to be in object- plains a common design structure that addresses a certain group of oriented programming. The emergence of combinator libraries that recurring program construction problems. Essential ingredients in develop a specific domain or programming idiom has intensified, a pattern are its applicability conditions, the trade-offs of applying rather than reduced, the need for design patterns. it, and sample code that demonstrates its application. In previous work, we introduced the fundamentals and a supporting We contend that design patterns can be an effective means of con- combinator library for functional strategic programming. This is solidating and communicating program construction expertise for an idiom for (general purpose) generic programming based on the functional programming just as they have proven to be in object- notion of a functional strategy: a first-class generic function that oriented programming. One might suppose that the powerful ab- can not only be applied to terms of any type, but which also allows straction mechanisms of functional programming obviate the need generic traversal into subterms and can be customised with type- for design patterns, since many pieces of program construction specific behaviour.
    [Show full text]