Non-Programmers Composing Software Services: A Confirmatory Study Of .

1y ago
11 Views
2 Downloads
2.95 MB
33 Pages
Last View : 2d ago
Last Download : 2m ago
Upload by : Giovanna Wyche
Transcription

appliedsciencesArticleNon-Programmers Composing Software Services:A Confirmatory Study of the Mental Models andDesign ChallengesAbdallah Namoun 1, * , Ali Owrak 2 and Nikolay Mehandjiev 212*Faculty of Computer and Information Systems, Islamic University of Madinah, Medina 42351, Saudi ArabiaAlliance Manchester Business School, The University of Manchester, Booth Street West, Manchester M15 6PB,UK; ali.owrak@manchester.ac.uk (A.O.); n.mehandjiev@manchester.ac.uk (N.M.)Correspondence: a.namoun@iu.edu.sa; Tel.: 966-59-8009417Received: 20 September 2019; Accepted: 4 November 2019; Published: 17 December 2019 Featured Application: Composing software services (mashups) enables the creation of diversenew applications, yet it is a daunting activity for users who are not programmers by profession.A confirmatory study of ordinary users’ service compositional activities was undertaken, resultingin a set of recommendations to guide the creation of usable tools supporting service composition.For instance, service designers are advised to use natural metaphors to represent complexlogic such as conditional statements, dataflow, and parallel events between services to aid userunderstanding.Abstract: Ordinary web users can now create and publish online content. They even venture into“mashups,” integrating information from different sources into a composite information-providingweb service. This is a non-trivial design task, which falls into the area of end-user development whenthe ordinary users who perform it do not have programming education. In this article, we investigatethe service design strategies of 12 such ordinary users and compare them against the baseline of 12programmers. In our think-aloud study, users completed two contrasting types of tasks involved indeveloping service-based applications: (a) manual service composition and (b) parametric designusing templates with a high degree of software support (or assisted composition). These servicecomposition tasks were chosen to differ in respect to the level of user support provided by the tool. Ourfindings show that non-programmers liked, more than programmers, the template-based parametricdesign and did not find the tool assistance as constraining as the programmers did. The difficultyof design involved in manual service composition and the absence of user guidance hinderednon-programmers in expressing and implementing accurate design solutions. The differences inthe mental models and needs of non-programmers are established to be in stark contrast to those ofprogrammers. We used the details of our findings to propose specialized design recommendationsfor service composition tools aligned with the profiles of their target users.Keywords: service composition; mashups; non-programmers; programmers; service-oriented architecture;end-user development; design challenges; mental model; design strategies; recommendations1. Introduction and MotivationExisting service research efforts have focused primarily on advancing concepts, principles,languages, and methodologies of service-oriented architecture (SOA) [1]. Whilst the significance ofsuch technological innovations is undeniable, their successful use within the information society requiresunderstanding the motivations, needs, and traits that characterize end-users of the SOA technologies.Appl. Sci. 2019, 9, 5558; doi:10.3390/app9245558www.mdpi.com/journal/applsci

Appl. Sci. 2019, 9, 55582 of 33Using current SOA tools and methodologies requires strong technical and problem-solving skills [2],making them suitable for skillful programmers only. However, most of the users who engage in somesort of programming activity are not trained as programmers. For example, past projections revealedthat nearly 13 million of the 90 million computer users in American workplaces were estimated tobe involved in some sort of programming activities, whilst the number of trained programmers wasonly 3 million [3]. Other studies also suggest that at least 73% of professionals without programmingexperience are engaged in at least one activity, which amounts to programming [4].This also applies to software services; for example, non-programmers can bring togetherinformation from different sources to search for a house within certain distance from a park, or to choosedifferent modes of commuting to work depending on the rain forecast. At the same time, softwareservices are more complex than other end-user development domains such as spreadsheets or homeautomation because of the diversity of interfaces, parameter types, and underlying implementationand deployment architectures. This implies there is an urgent need to simplify and disseminate theuse of SOA technologies to a wider audience whose primary role is not software development.Whilst it is widely accepted that end-users have differing characteristics, skills, and practices fromprofessional programmers [5], little is known regarding how they reason about service-compositionactivities. Ko et al. [5] claim that professional programmers and end-user programmers encountermany similar software development challenges. Yet no systematic study has been performed to verifythis claim in the domain of service composition. In our view, examining the decision-making strategiesnon-programmers adopt to compensate for their lack of technical knowledge and comparing them toa baseline expert sample would enable the understanding of end-users’ strengths and weaknesses.This could lead to the creation of highly-dedicated methodologies and design guidelines, upon whichservice-development can be founded for a pleasant user experience.This study investigates the mental models of non-programmers in relation tosoftware-service-development activities and compares it to a baseline sample of professionalprogrammers. Norman [6] defines a mental model as a person’s mental representation of thereal-world systems; thus, how a person perceives and uses these systems and makes decisions.In particular, our study investigated the conceptual challenges non-programmers face during servicecomposition and how they approach two differing ways of creating service-based applications: (a)manual service composition (work-flow based) and (b) parametric design using templates with highdegree of software support (assisted composition). The design tasks were chosen to differ in respect tothe level of user support provided by the tools (Section 3).Key ContributionsThe contributions of this study towards software service research are twofold.Firstly, it provides a better understanding of non-programmers’ mental models regarding softwareservice composition, service design challenges, and problem-solving strategies (Sections 4 and 5).Currently, the literature contains a limited number of users’ studies that employ empirical evaluationsto understand the challenges and alternative decision-making strategies non-programmers adopt whenindulged in service composition to compensate for their lack of technical knowledge and expertise, andreport on their overall experiences and needs. Our results identify the gap between non-programmers’and programmers’ mental models with respect to two prominent approaches to composing softwareservices; e.g., workflow-based service composition [7] and artificial intelligence-based servicecomposition [8].Secondly, it proposes a set of practical guidelines for designing tools to support end-userservice composition, which are based on our first contribution above (Section 6). These arespecialized guidelines to tackle the emerging conceptual problems and facilitate different aspectsof service composition for non-programmers. This contribution agrees with the recommendationof Boshernitsan et al. [9] to align development environments with developers’ mental model ofprogramming structures to accommodate for the rapidly changing requirements.

Appl. Sci. 2019, 9, 55583 of 33Throughout this article, we use the terms ‘non-programmers’ and ‘programmers’ to denoteour two user groups. The term ‘non-programmers’ refers to people who do not have a softwaredevelopment-related education, nor do they have programming experience, and the activity ofprogramming is fairly new to them. The term ‘programmers’ refers to people who have a softwaredevelopment-related education (at degree or to a professional level) or who have considerableprogramming and software development experience without a formal education. The latter group willact as an expert sample against which all non-programmers’ composition activities and strategies willbe compared.This article poses two research questions focusing on the manual composition and assisted,template-based composition of software services by non-programmers. Next, educated hypotheseswere generated from the findings of previous user-based studies of service and mashups composition.RQ1: What type of design challenges are faced by non-programmers when composing services manuallyusing a workflow-based composition approach that offers minimal tool support?Due to their low level of programming skills, it was expected that non-programmers would findit challenging to understand service particulars [10–14], and define conditional statements [15] anddataflow connections between services [10–13,16–18]. In contrast, programmers were anticipatedto complete these manual composition tasks more accurately because of their strong mental modelof programming concepts. Consequently, our hypotheses pertaining to manual composition areas follows:Hypothesis 1a (H1a). Non-programmers will find it more difficult to understand service terminologiescompared to programmers.Hypothesis 1b (H1b). Non-programmers will find it more difficult to define conditional flows (IF . . . ELSE)between services compared to programmers.Hypothesis 1c (H1c). Non-programmers will find it more difficult to create dataflow connections betweenservices compared to programmers.Hypothesis 1d (H1d). Non-programmers will face more challenges with manual service composition comparedto programmers.Hypothesis 1e (H1e). Non-programmers will hold a more negative perception about manual compositioncompared to programmers.RQ2: What are the attitudes of non-programmers when a software tool is “taking over” their design byabstracting technical details and advising them about consequences of their choices?Due to their poor software development experience, non-programmers should regard assistedcomposition (i.e., assisted template-based design) as easy to use and satisfying [19–22]. This is becauseit requires little cognitive effort to operate and is close to their mental models. However, programmersare expected to regard assisted composition as inflexible, constraining, and lacking power to expresscomplex application logic [14,18]. Consequently, our hypotheses pertaining to assisted compositionare as follows:Hypothesis 2a (H2a). Non-programmers will hold a more positive perception about assisted compositioncompared to programmers.Hypothesis 2b (H2b). Non-programmers will favour assisted composition over manual composition comparedto programmers.

Appl. Sci. 2019, 9, 55584 of 33The literature provides conflicting results with respect to creation of service-oriented compositionsby non-programmers and programmers. For instance, several studies [10–14] reported majorchallenges during the creation of service-oriented compositions by ordinary end-users. However,recent studies show that non-programmers provide the same service composition performanceas programmers [18–23]. These somewhat strange claims motivate our research to (1) test theseclaims and (2) understand what makes service composition a really challenging task. To answer theposited research questions, non-programmers’ performances, mental models, and service compositiontechniques are contrasted to those of a baseline sample of programmers to identify gaps in theirconceptual understanding and any alternative decision-making strategies they adopt to compensate forthe lack of technical knowledge and expertise (Sections 4 and 5). Therefore, will the non-programmerscreate equally accurate service compositions as the programmers? And which composition issues dothey normally face?2. Related Works2.1. End-User DevelopmentEnd-user development (EUD) is a research field concerned with creating tools and methodologiesaimed at empowering end-users, who are not software professionals, to create or customize softwareapplications that fulfil their personal and business needs [24]. Nardi [25] differentiates betweenend-user programmers and professional programmers in the sense that the former create softwarethat help them accomplish tasks on their primary work. The field of EUD has steadily grown overthe last decade, providing various techniques [26] and design guidelines [27]; however, most of EUDstudies have focused on the development of spreadsheets, databases, and web and Internet of Thingsapplications [28–30]. The domain of software service composition is substantially different of thesedomains because it is agnostic about the application domain, and is, thus, dominated by the technicaldetails of services, their connections, underlying operating architectures, and providers’ access details.Lessons learned about EUD on spreadsheets and databases, therefore, cannot be transferred easily tothe domain of services.Numerous studies have already discussed the motivations and barriers for engaging in end-userdevelopment activities. Sutcliffe [31] and Mehandjiev et al. [4], for example, propose a generalframework that links motivation to perform EUD to, firstly, perceived reward, and then, to incurredcost. In web development, McGill and Klisc [32] argue that end-user web developers are aware ofthe associated risks and benefits and it is crucial to involve them in the development of approachesto minimize risks. In software-service development, Schulte et al. [33] surveyed 52 German banks,showing that adopting service-oriented technologies for collaboration is likely to produce more benefits(e.g., cost reduction) than risks (e.g., loss of autonomy). Namoun et al. [34] compared the perceivedbenefits (e.g., reusability) and risks (e.g., personal privacy, technical complexity) of service developmentby end-users and IT professionals. Whilst both groups were highly interested in service compositionand were concerned about privacy and security of their data, the IT-professionals exhibited a morecomplex and comprehensive mental model of service concepts. A strand of EUD research, which is notcentral to our study, explores gender differences in respect to user perception and actual uptake ofEUD activities [35]. The natural programming approach is another strand that tries to understand hownon-developers carry out programmable tasks before exposure to programming using merely a penand paper, such as [16].2.2. Web Service Composition and Mashups DevelopmentThe service composition field is a concerned with connecting atomic, self-contained, modularservices into a composite service, and creating tools and languages that facilitate business applications’integration [36]. Typically, this process is very complex and daunting [36]. Service composition includesfour key phases; namely, definition, selection, deployment, and execution [37]. The definition phase

Appl. Sci. 2019, 9, 55585 of 33creates the abstract composition process model, which specifies the requirements, including activities,data flow, and control flow dependencies. The selection phase involves choosing the appropriateservices to satisfy the requirements of each activity of the composition. The deployment phase involvesdeploying the composite service to enable end-users to utilize the service functionalities. The executionphase involves the execution of the composite service instance.Owing to the complexity of traditional, syntax-based service composition languages [2,36],e.g., BPML, BPEL4WS, and WSCDL, research efforts have transformed these languages into visuallanguages and representations that are more user-friendly, easier to use, and less error-prone [38,39].However, such languages are still targeted at experienced software developers [26,40]. To makeservice composition accessible to non-programmers, graphical tools, e.g., ServFace Builder [41], weredeveloped based on Human Computer Interaction concepts, such as “direct manipulation of objects”and “what you see is what you get,” whereby end-users specify programmable actions and behaviourin a purely graphical manner without going into arcane syntax. This approach is referred to as visualprogramming. In SOA, composition at the presentation layer is gaining momentum, where compositeapplications are integrated using merely their user interfaces [42].The importance and benefits of SOA for software development are well recognized [1]. However,efforts to simplify its use for a wider audience, especially among non-programmers, are still timid.Namoun et al. [11,34] explored, through a set of user studies, the issues non-programmers facewhen performing service composition tasks. Major issues reported included: comprehending andspecifying dataflow connections, linking between design time actions and runtime results, andunderstanding technical jargon. De Angeli et al. [17] conducted a contextual enquiry with 10accountants to elicit requirements for the Wisdom-Aware development tool, developed to proposeinteractive recommendations learnt from existing compositions made by professional developers toprospective end-users. Results revealed that help is most effective when received from technical expertsand automatic/contextual help was preferred over on-request help. Despite these efforts, severalservice-development challenges are still being unraveled, such as the difference between programmersand non-programmers design strategies.Mashups are web applications developed by wiring information, in the form of content, applicationlogic, and user interface components, from different sources into a unified view [43]. The continuousincrease of mashups and their APIs has encouraged the development of various mashup developmenttools, such as Microsoft Pofly, Yahoo! Pipes, and Intel Mash Maker [44]. However, most of thesetools did not follow a user-centric design approach, nor were they evaluated appropriately with thetargeted end-users. Mashup development tools and approaches for creating mashups are publishedelsewhere [43,44].A few attempts have tried to identify the issues end-users face when mashing up various sourcesof information. Jones and Churchill [45] analysed forum conversations of end-users of Yahoo! Pipesmashup tool to understand the obstacles they face and their collaborative debugging strategies. Twotypes of engagement were observed: core engagement where users actively asked and answeredquestions, and peripheral engagement were users read but did not post content. In a think-aloudstudy, Kuttel et al. [46] showed the usefulness of a versioning extension for Yahoo! Pipes. However,the majority of the participants were computer scientists. Wong and Hong [47] evaluated Marmite,a mashup tool for aggregating web content, with six end-users, and showed difficulty in understandingthe dataflow concept, terminology, and operators. To gain further insights into the way 10 non-ITend-users create web mashups using Microsoft Popfly, Cao et al. [48] applied Schön’s reflection-in-actionframework and the notion of ideations from creativity literature, revealing that the design process andprogramming process are highly-intertwined.Zang et al. [49] surveyed 63 mashup developers about their mashup creation experience, withthe majority creating map mashups using Google Maps APIs. The developers highlighted lack ofreliability of the API and documentation, and need for coding skills as the primary determent todeveloping mashups. In another survey study, Zang and Rosson [50] explored the requirements for

Appl. Sci. 2019, 9, 55586 of 33Yahoo! Pipes mashup development by web-active end-users, and highlighted that personal interestand perceived usefulness of mashups are more important than the perceived difficulty of developingmashups. Al Sarraj and Troyer [51] evaluated the usability of three mashup development tools (i.e.,Yahoo! Pipes, Open Mashups Studio, and Dapper DA) with a total of 24 IT and non-IT people byapplying the framework of cognitive dimensions. The results showed superior mashup performanceby the IT participants.Daniel et al. [52] proposed a domain specific approach, i.e., evaluation of research outcomes, toreduce the complexity of mashup integration. That approach attempts to overcome the generic natureof existing mashup development tools. Instead, the approach focuses on the logic that specifies domainspecific functionalities as well as domain data and relevant meta-models. The user testing of thisapproach, however, provided little detail about the approach and challenges encountered faced duringthe mashup experience. Radeck et al. [53] described CapView, a visual mashup tool that can be usedby non-programmers to integrate various web resources into a functional mashup application. In thisapproach, short, natural language annotations and distinct visual representations (i.e., colours) areused to describe the main functionality of each mashup component to improve non-programmers’technical understanding of the development process.Aghaee et al. [54] and Aghaee and Pautasso [55] discussed the design and evaluation ofNaturalMash, a mashup tool that combines a controlled natural language and the What You See Is WhatYou Get (i.e., WYSIWYG) development approach to enable non-programmers to assume interactivemashup integration. Following the methodology proposed by Namoun et al. [11], the tool employedan iterative, user-centered design approach. The key features introduced in the tool that attempt tolower programming barriers are proactive feedback, runtime view, auto completion of compositions,and service discovery using natural language [54,56]. However, the authors did not reason through thestrategies and challenges non-programmers encountered. Instead, they mainly focused on the designof the tool itself.2.3. Mental ModelsMental models refer to users’ views and understandings of how a system functions and howits parts are connected [6]. Mental models directly affect our daily decision making. There isevidence that non-programmers exhibit an incomplete mental model with misconceptions aboutservice composition [11]. Intrinsically, end-users also lack interest in programming activities [57]and have low levels of self-efficacy, which refers to one’s confidence in one’s ability to complete aparticular task [58]. Moreover, programming tasks largely depend on problem-solving skills to besolved. However, Loksa et al. [59] argue, through a controlled experiment, that explicit guidanceimproves productivity and programming self-efficacy. De Raadt et al. [60] suggested that expertprogrammers rely on a tacit set of previous strategies to extract goals from programming problemsand apply plans to fulfil these goals.2.4. The Research GapMaking service composition easy is still a challenging endeavor [61,62], requiring further researchto understand the obstacles encountered by end-users when composing services. Two recent surveysof service composition by non-programmers revealed insightful motivations for carrying out ourresearch [19,63]. Barricelli et al. [63] surveyed more than 165 EUD papers, spanning from 2000 until2017, and found that approximately 50% of those papers used the component-based technique to buildsoftware. In this context, components refer to modular units of software, such as web services andmashups. More importantly, Barricelli et al. [63] suggested, as a primary research direction, to conductcomparative studies of EUD approaches and highlighted the need for further research to investigateEUD activities so as to guide the design of future tools.The second survey on user studies evaluated tools and approaches of service composition andshowed their shortcomings with respect to the evaluation methodologies used, which subjected

Appl. Sci. 2019, 9, 55587 of 33the findings to scientific scrutiny [19]. The coverage spanned from 2005 until 2018, yet only 47end-user studies of service composition were reported. Moreover, only 23% of the surveyed EUDstudies were confirmatory in nature, necessitating additional confirmatory studies to test the previousresearch claims.Contrary to the common belief, recent user studies [18,23] showed that the technical backgroundof users did not improve service composition performance and perception of ease of use. In a bid toeliminate programming difficulty, Cheng et al. [23] described a lightweight service mashup platformfor creating telecommunication mashup-based compositions easily through a web browser where dataand event flows could be defined. The approach was based on various standardised models, such asService Data Model, Service Creation Model, and Service Execution Model. The evaluation of thiscomposition platform showed no difference in the composition scores between programmers andnon-programmers. Additionally, there have been other inconclusive observations about the differencesin service composition between technical and non-technical users [12].Moreover, there are various UI-based approaches aimed at helping end-users to compose servicesand objects in an easier manner, but the results are still inconclusive. Akiki et al. [64], for instance,presented a jigsaw puzzle approach to create transformations and links between services and Internetof Things objects for non-programmers. These transformations form the basis of executable workflowswhich are generated automatically. Evaluation results showed that non-programmers were able todefine the compositions successfully. However, Cappiello et al. [18] described a WYSIWYG UI-basedcomposition platform to glue multiple services together. In this approach, UI components are usedas the building blocks of the mashups. Surprisingly, the non-programmers’ performance was notstatistically worse than the programmers with respect to a variety of composition tasks. Both groupsalso showed similar perception of ease of use towards the UI-based approach.Trigger Action programming frameworks, such as IFTTT and Zapier, are gaining rapidpopularity [65]. However, striking a balance between expressivity and usability is still an openissue for these types of frameworks. To that end, Corno et al. [15] proposed a recommender system tosuggest trigger-action rules to the end-user during their mashups and service composition. Yet theefficiency of creating conditional processes by end-users has still not been investigated. Strikingly, onlythree service composition studies have attempted to discover the conceptual issues within compositionapproaches [19]. This calls for further research efforts.This research comes as an attempt to elaborate and conduct a sound study to test and confirm theexisting service composition observations. Our user study conforms to the guidelines of the evaluationframework proposed by Zhao et al. [19], ensuring higher validity of the results. The study comparedthe performance of two user groups with a focus on two compositional approaches (manual andflow-based versus assisted and form based) rather than the tools themselves. Both the flow basedand form-based composition approaches are the least studied forms of composition approaches [19].Moreover, understandability has been studied in explanatory studies only and is the least issue to bestudied in EUD studies. Finally, most the of the studies focus on identifying the usability issues insteadof the trying to understand the underlying root causes for the complexity of service composition.In this study, we go beyond the perceived usability of tools by shedding light on the conceptual issuesof service composition.3. Tools and Methods3.1. Sampling TechniquePurposive sampling was used to select our participants. It is a non-probability sampling approachthat does not involve random selection of participants [66]. Instead, participants are evaluated andselected to match the characteristics of a specific target group. Our primary selection criterion wasprogramming education and software development experience, leading to two homogeneous groups:non-programmers and programmers. One shared requirement for both groups was the need to be

Appl. Sci. 2019, 9, 55588 of 33Appl. Sci. 2019, 9, x FOR PEER REVIEW8 of 33familiar withthewilldomainof the tasksto be completedthe ofSOA4Alltools. services.We selected“Studentworkforcethatpotentiallybe challengedwith usingthe ofManchester.incentives to reduce self-selecting bias. Initially, a web-based screening questionnaire was distributedThistargeted mailinggroup representsthe technicalcurrent andfuture businessworkforcethat willpotentiallybetoUniversitylists to collectbackgroundinformationof selectingquestionnaire measured participants’ programming/development experience, service modellingbias. Initially,a web-basedscreeningquestionnairewas distributedto Universitymailinglists toexperience,knowledgeof softwaredevelopmentenvironmentsand modellingtools,and generalcollect technicalbackgroundof potential participants. This questionnaire measureddemographicinformation(see informationAppendix A).participants’ programming/development experience, service modelling experience, knowledge ofsoftwaredevelopment3.2.ParticipantProfile environments and modelling tools, and general demographic information (seeAppendix A).From over 200 respondents, we selected a well-differentiated sample totalling 24 students to takepartin our study.Among those, 12 participants (7 males and 5 fema

Non-programmers will face more challenges with manual service composition compared to programmers. Hypothesis 1e (H1e). Non-programmers will hold a more negative perception about manual composition compared to programmers. RQ2: What are the attitudes of non-programmers when a software tool is "taking over" their design by

Related Documents:

An Introduction to and Strategies for Multimodal Composing. Melanie Gagich. Overview. This chapter introduces multimodal composing and offers five strategies for creating a multimodal text. The essay begins with a brief review of key terms associated with multimodal composing and provides definitions and examples of the five modes of communication.

The evaluations involved ten programmers and ten non-programmers in Brazil, performing tasks on a system developed with Google's Blockly [20] and a simulator to support debugging. The results include a thematic analysis of 247 problem instances (80 from programmers and 167 from non-programmers). The remainder of this paper is organised as .

Q&A websites, programmers describe the technical challenges they face using a wide range of questions to seek help and advice. These posted questions give researchers the opportunity to highlight the knowledge needs of programmers [2]. Researchers [2] have also used the posted SO questions to identify how programmers interest in a topic evolves .

programming were to improve the efficacy of technical conversations and to acquire marketable skillsets. The main contribution of this work is in empirically establishing the existence and characteristics of conversational programmers in a large software development context. Author Keywords Conversational programmers; programming literacy; non-

act of composing the self” (K. L. Arola, 2010, p. 8). I would add that the act of composing within a social media space—be it to post a picture, respond to a posted link, post a status update, etc.—is also an act of composing the self in re - lation to, and with, o

Rhetoric and compositions increasing attention to multimodal composing involves chal- lenges that go beyond issues of access to digital technologies and electronic composing environments. As a specific case study, this article explores the history of aural compos- ing modalities (speech, music, sound) and examines how they have been understood

The Morgan Kaufmann Practical Guides Series Series Editor, Michael J. Donahoo JSTL: Practical Guide for JSP Programmers Sue Spielman JSP: Practical Guide for Java Programmers . 2.2 Using the Book Examples 24 2.3 JSP Scopes 25 2.4 JSTL Scoped Variables 27 2.4.1

Curriculum Framework. In addition, the Enhanced Scope and Sequence provides teachers with sample lesson plans aligned with the standards and their related essential understandings, knowledge, and skills. School divisions and teachers can use the Enhanced Scope and Sequence as a resource for developing sound curricular and instructional programs. These materials are intended as examples of ways .