BCS Foundation Certificate in Digital Solution Development

Duration: 3 Days (24 Hours)

BCS Foundation Certificate in Digital Solution Development Course Overview:

The BCS Foundation Certificate in Digital Solution Development is a globally recognized certification that establishes a standardized measure of proficiency in the realm of digital solution development. Encompassing vital elements like agile methodologies, digital solution design, and quality assurance, this certification holds significance within the IT, software development, and digital marketing sectors. Its validation of professionals’ competence in crafting and delivering digital solutions enhances their employability and effectiveness in navigating the digital domain, making them valuable assets for businesses seeking to excel in today’s digital landscape.

Intended Audience:

• Software developers seeking specialized skills
• IT professionals aiming to expand their digital knowledge
• Entry level IT workers looking for career advancement
• Project managers involved in digital solutions
• Business analysts seeking to understand digital solution development.

Learning Objectives of BCS Foundation Certificate in Digital Solution Development:

The learning objectives of the BCS Foundation Certificate in Digital Solution Development course encompass a comprehensive range of skills and knowledge necessary for understanding and engaging in the process of creating digital solutions. These objectives can be summarized as follows:

  1. Basic Concepts and Principles:
    • Gain an understanding of fundamental concepts, methods, and strategies in digital solution development.
    • Explore key principles of software development, including software lifecycle models and development methodologies.
    • Recognize the significance of digital transformation and emerging technologies in today’s business landscape.
  2. Digital and Emerging Technologies:
    • Familiarize oneself with digital technologies, such as cloud computing, mobile applications, IoT (Internet of Things), and artificial intelligence.
    • Understand how emerging technologies impact various industries and drive innovation.
  3. Tools and Platforms:
    • Learn about the tools, platforms, and frameworks used in creating digital solutions.
    • Gain hands-on experience with coding, testing, and debugging applications using relevant software tools.
  4. Critical Thinking and Problem-Solving:
    • Develop critical thinking skills to analyze and solve problems encountered during digital solution development.
    • Understand the importance of effective problem-solving techniques and strategies.
  5. Coding and Application Development:
    • Acquire practical coding skills in relevant programming languages.
    • Learn how to develop, test, and debug applications to ensure their functionality and reliability.
  6. Project Management:
    • Learn about project management principles as they relate to digital solution development.
    • Understand how to manage digital projects, including planning, execution, monitoring, and delivery.
  7. Ethical and Legal Considerations:
    • Gain insight into the ethical implications of digital solution development, including user privacy, data security, and responsible use of technology.
    • Understand legal aspects, compliance, and regulations that govern digital solutions.
  8. Business Understanding:
    • Explore the business context of digital solution development, including market trends, customer needs, and competitive advantages.
    • Learn how to align digital solutions with business goals and objectives.

Overall, the BCS Foundation Certificate in Digital Solution Development course aims to equip learners with a well-rounded understanding of the entire digital solution development process, from concept to implementation. The course fosters technical competence, critical thinking, ethical awareness, and business acumen to prepare students for success in the ever-evolving digital landscape.

1. The Context for Digital Solution Development (10%)

1.1. Define and distinguish between the terms digital service and digital solution and recognize some common characteristics of modern digital solutions

  • 1.1.1. Digital service as a use of information technology to solve business problems. Digital solution as the technology solution employed to provide the service.
  • 1.1.2. The distinction between application software, system software, and other forms of software.
  • 1.1.3. Common characteristics of a digital solution in the form of enterprise applications software.
    • 1.1.3.1. Data intensive
    • 1.1.3.2. Highly interactive

1.2. Explain the factors that influence investment in digital solution development

  • 1.2.1. Understand that internal and external drivers lead to the formulation of corporate strategy.
  • 1.2.2. Understand that the implementation of strategy drives the business change lifecycle.
  • 1.2.3. Understand that business change often includes the need for new or improved digital services to the end user, as part of digital transformation, and hence digital solution development work will be required.

1.3. Describe the scope of digital solution development

  • 1.3.1. Recognize and describe the stages of a typical Digital Service Lifecycle.
    • 1.3.1.1. Plan
    • 1.3.1.2. Develop
    • 1.3.1.3. Transition
    • 1.3.1.4. Operate
    • 1.3.1.5. Optimize
    • 1.3.1.6. Retire
  • 1.3.2. Recognize what an SDLC Framework is, why it is especially useful in the Develop and Transition stages, and what it should consist of.
    • 1.3.2.1. Set of processes
    • 1.3.2.2. Roles and disciplines
    • 1.3.2.3. Deliverables and artifacts
    • 1.3.2.4. Tools, techniques, and best practices
  • 1.3.3. Identify the main parameters governing the approach to Digital Solution Development, using an SDLC based on the following models:
    • 1.3.3.1. The need to adopt a contingency approach
    • 1.3.3.2. The Cone of Uncertainty
    • 1.3.3.3. Time-cost-features compromise
    • 1.3.3.4. Continuum from predictive (linear) to adaptive (iterative) approaches
    • 1.3.3.5. Continuum from low ceremony to high ceremony approaches

1.4. Recognize examples of constraints that commonly affect DSD from the following list:

  • 1.4.1. Legal
  • 1.4.2. Financial
  • 1.4.3. Technological
  • 1.4.4. Ethical
  • 1.4.5. Timescales
  • 1.4.6. Organizational policies and standards.

1.5. Recognize and identify the purpose of the following enterprise frameworks, and their relationship with DSD.

  • 1.5.1. Enterprise architecture
  • 1.5.2. Programme and project management
  • 1.5.3. Business analysis and change management
  • 1.5.4. Service operations
  • 1.5.5. Data management and data governance

2.1. Recognize the Need for Requirements Engineering, Its Key Elements, and Benefits

2.1.1. Explain the Rationale for Requirements Engineering

  • Alignment of the digital service to business needs and objectives
  • Completeness of the digital service definition
  • Problem clarification
  • Balancing stakeholder interests
  • Stability of requirements vs. solution
  • Governance of solution acquisition and delivery

2.1.2. Identify the Elements of Requirements Engineering as:

  • Elicitation
  • Analysis
  • Validation
  • Documentation
  • Management

2.2. Identify Common Sources of Requirements and Classify Different Types of Requirements

2.2.1. Identify Common Sources of Digital Service Requirements:

  • Problem statement from the sponsor
  • Decomposition of business processes
  • Business and technical policies and standards
  • Legal and regulatory compliance
  • Stakeholder-specific needs

2.2.2. Classify Requirements According to the Following Categories:

  • Service functional requirements
  • Service non-functional requirements

2.2.3. Recognize the Following Examples of Non-Functional Requirement Types:

  • Usability
  • Security
  • Performance
  • Accessibility
  • Availability
  • Reliability
  • Recoverability
  • Scalability

2.2.4. Understand the Link Between Digital Service Requirements, Key Performance Indicators, and Service Level Agreements.

2.3. Describe the Use of Requirements Documentation and Modeling Techniques

2.3.1. User Stories

  • Structure
  • Quality criteria (INVEST)
  • Epic as an end-to-end feature requiring further decomposition
  • Theme as a set of related user stories

2.3.2. Use Cases

  • Key components of a use case diagram: system boundary, actors, associations, use cases
  • Use of use case diagrams to agree the functional scope of a digital service
  • Use case description as an approach to elaborating required system behavior
  • Use case description as a mechanism for elaborating test scenarios

2.3.3. Data and Process Modeling

  • The role of data modeling and data models in driving out requirements
  • The role of the data lifecycle in driving out requirements
  • The role of process models in driving out requirements

2.4. Explain the Purpose of Common Requirements Management Techniques

2.4.1. Explain the Role of a Product Backlog in Managing Requirements

  • User stories as product backlog items
  • Iteration (sprint) backlog and release backlog as subsets of the product backlog

2.4.2. Recognize the Need to Track Requirements from Origin to Delivery in a Working Solution.

2.4.3. Explain the Need to Refine the Iteration Backlog

  • Story slicing and splitting
  • Defining acceptance criteria

2.4.4. Explain the Use of Story Points and Velocity to Plan and Manage the Work of a Development Team

  • Purpose of the iteration (sprint) planning meeting
  • Story points as a mechanism for the relative sizing of stories
  • Velocity as a measure of the capacity of a team to deliver working software
  • Burndown as a measure of progress

2.4.5. Describe the Application of MoSCoW Prioritization to Product, Release, and Iteration Backlogs

  • Use of ‘Must Have’ to define the minimal viable product (MVP) or increment
  • Distinction between ‘Must Have’ and ‘Should Have’
  • Use of ‘Could Have’ for contingency
  • Use of ‘Won’t Have This Time’ to confirm out of scope

3.1. Recognize Definitions of Fundamental Terms Commonly Used in UI/UX and Explain Their Significance for UI Design

3.1.1. UI/UX 3.1.2. Style guides 3.1.3. UI paradigm 3.1.4. Metaphor 3.1.5. Idiom 3.1.6. UI pattern

3.2. Recognize and Define UI/UX Principles Centered Around Usability

3.2.1. Nielsen’s usability heuristic 3.2.2. Simplicity 3.2.3. Navigation 3.2.4. Feedback 3.2.5. Affordance 3.2.6. Intuitive 3.2.7. Tolerance 3.2.8. Consistency 3.2.9. Maximize re-use 3.2.10. Accessibility

3.3. Recognize Different UI Paradigms

3.3.1. Command line interface 3.3.2. Windows, Icons, Menus, and Pointers (WIMP) 3.3.3. Desktop interface 3.3.4. Static and dynamic web interfaces 3.3.5. Direct manipulation 3.3.6. VR, AR, and MR 3.3.7. Voice and gesture recognition

3.4. Recognize Examples of UI-Related Models and Techniques and Their Potential Use in HCI Development

3.4.1. User discovery and user analysis 3.4.2. Personas 3.4.3. Storyboards/wireframes/prototypes 3.4.4. Task analysis 3.4.5. Customer journey 3.4.6. Site and navigation maps 3.4.7. Data input validation and verification

3.5. Recognize a UI Is Made Up of a Group of Controls. Identify the Type of a Given Control

3.5.1. Classify controls as Command, Data Input, Presentation, Navigation, or Feedback controls 3.5.2. Recognize an example of each type, as given in the guidance notes

4.1. Define Architecture and Understand Its Importance in Developing a Successful Digital Solution

4.1.1. Definition of architecture. 4.1.2. Connection between architectural decisions and realization of requirements. 4.1.3. Contrast effects of ‘good’ and ‘bad’ architecture.

4.1.4. Define and Compare Monolithic and Distributed Styles of Solution Architecture

4.1.4.1. Monolithic style benefits/drawbacks. 4.1.4.2. Distributed style benefits/drawbacks.

4.1.6. Understand System Properties ‘Cohesion’ and ‘Coupling’

4.1.7. Explain ‘Service’, ‘Interface’, and ‘Service-Oriented’ Architecture (SOA)

4.1.8. Recognize and Understand Architecture Patterns

4.1.9. Explore the MVC Pattern of Architecture

4.1.10. Explore the Hexagonal Pattern of Architecture

4.2. Identify Key Elements of a Contemporary Digital Solution and Explain Their Roles in the Overall Architecture

4.2.1. Role of networks and the internet 4.2.2. Role of the Client 4.2.3. Role of the Server 4.2.4. Role of persistent enterprise and data storage 4.2.5. Role of Data Warehouse and ETL process 4.2.6. Use of data pipes, event and job queues 4.2.7. Role of APIs, middleware, and service catalogs/ESB 4.2.8. Use of partner links 4.2.9. Role of cloud resources

4.3. Understand the Concept of ‘Web Services’, ‘Microservices’, and ‘APIs’

4.3.1. Definitions of ‘web service’, ‘microservice’, and ‘API’. 4.3.2. Value of using web services, microservices, and APIs. 4.3.3. Significance of ‘state’ in services and application design. 4.3.4. Basic service composition styles – orchestration and choreography.

4.4. Recognize Issues in Distributed Systems Architecture and Design Solutions

4.4.1. Security 4.4.2. Complexity 4.4.3. Scalability 4.4.4. Failure handling 4.4.5. Concurrency and Latency 4.4.6. Testing challenges 4.4.7. Cloud services as a solution to some of these issues

5.1. Understand Data, Information, and Information Systems

5.1.1. Definition of data. 5.1.2. Definition of information. 5.1.3. Definition of information system. 5.1.4. Structured vs. unstructured data. 5.1.5. Concepts of master data, reference data, and transaction data. 5.1.6. Views of data processing: OLTP and OLAP.

5.2. Rationale for Architecture and Design of Data

5.2.1. Alignment with corporate data architecture. 5.2.2. Discovery of data requirements. 5.2.3. Communication of data design. 5.2.4. Compliance with regulations and legislation. 5.2.5. One version of the truth. 5.2.6. Support for Data Analytics. 5.2.7. Support for Data Management and Data Governance.

5.3. Modelling Data and Information

5.3.1. Elements of a data model: Entities, Relationships, Attributes, Metadata, Models (UML and ERD). 5.3.2. Relational modelling (normalization). 5.3.3. Dimensional modelling for OLAP applications. 5.3.4. Conceptual, logical, and physical data models. 5.3.5. Modelling data at rest and in motion.

5.4. Relationships between Applications Software and Information Systems

5.4.1. Basic data operations (CRUD). 5.4.2. Data storage technologies: Relational, Non-relational, Data warehouse, Data lake, Data mart/cube, Blockchain. 5.4.3. Data transmission standards: XML, JSON, EDI, YAML.

5.5. Concurrency and Strategies for Dealing with Data Concurrency

5.5.1. ACID transactions. 5.5.2. Transaction controls: commit and rollback. 5.5.3. Timestamps and locking strategies.

6.1. Quality Assurance and Quality Control

Distinguish between quality assurance and quality control.

6.2. Quality-Oriented Activities

6.2.1. Inspection and adaptation:

  • Product Review
  • Retrospective and continuous improvement

6.2.2. Refactoring

6.2.3. Adoption of a recognized SDLC

6.2.4. Test planning and execution:

  • Static testing
  • Dynamic testing

6.2.5. Adoption of best practices in architecture and software development

6.3. Fundamentals of Software Testing

6.3.1. Importance of testing

6.3.2. Error, defect, and failure differentiation

6.3.3. Principles of testing:

  • Testing shows the presence of defects, not their absence
  • Exhaustive testing is impossible
  • Early testing saves time and money
  • Defects cluster together
  • Beware of the pesticide paradox
  • Testing is context dependent
  • Absence-of-errors is a fallacy

6.3.4. Test condition, test case, and test basis concepts

6.4. Common Testing Practices and Processes

6.4.1. Test levels within a software development initiative:

  • Agile Test Pyramid
  • Component/unit testing
  • Integration testing
  • System testing
  • Acceptance testing
  • Testing quadrants and their alignment of test levels and types

6.4.2. Test types and their purpose:

  • Functional testing
  • Non-functional testing
  • Black box testing (behavioral)
  • White box testing (structural)
  • Regression testing

6.4.3. Test-driven Development (TDD):

  • Writing test cases before development
  • Automated unit and integration tests
  • Producing components that pass tests
  • Refactoring code

6.4.4. Behavior-driven Development (BDD):

  • Given-When-Then format
  • Writing test scenarios using Gherkin

7.1. Software Acquisition Approaches

7.1.1. Building bespoke software components

7.1.2. Buying commercial software – COTS and MOTS

7.1.3. Hybrid approach: component-based architecture

7.1.4. Decision factors affecting buy or build:

  • Problem uniqueness
  • Cost
  • Time
  • Risk
  • Competitive advantage
  • Training and support
  • Documentation

7.1.5. Building solutions with CRM and ERP platforms or “Best of Breed”

7.1.6. Open source software and frameworks

7.1.7. Cloud-based development:

  • Pay per use
  • Total Cost of Ownership (TCO)
  • Scalability
  • Global availability
  • High resilience
  • Agreed service levels

7.2. Software Engineering Concepts and Practices

7.2.1. Programming paradigms:

  • Procedural
  • Functional
  • Object-oriented

7.2.2. Software engineering cycle:

  • Code
  • Compile
  • Build
  • Test
  • Debug
  • Integrate
  • Package
  • Release

7.2.3. Coding standards and best practices:

  • Design patterns
  • SOLID principles
  • Code quality metrics
  • Code smells or anti-patterns
  • Managing technical debt

7.2.4. Code management techniques:

  • Version control: local, central, distributed
  • Code branching
  • Feature flags/toggles
  • Configuration files

7.2.5. Development environments:

  • Integrated Development Environment (IDE)
  • Integration environment
  • Quality control environment
  • Pre-production environment
  • Live production environment
  • Full stack development

7.3. Software Development Practices and Techniques

7.3.1. Iterative development

7.3.2. Incremental delivery

7.3.3. Product focus

7.3.4. Customer collaboration

7.3.5. Self-organizing teams

7.3.6. Continuous improvement (Kaizen)

7.3.7. Kanban

7.3.8. Pair programming

7.3.9. Agile manifesto values:

  • Individuals and interactions over processes and tools
  • Working software over comprehensive documentation
  • Customer collaboration over contract negotiation
  • Responding to change over following a plan

7.4. Deployment of Software

7.4.1. Deployment strategies:

  • Direct changeover (big bang)
  • Phased
  • Pilot
  • Parallel running
  • Blue/green deployment
  • Canary release
  • Dark launch

7.4.2. Deployment automation and DevOps techniques:

  • The DevOps cycle
  • Continuous Integration (CI)
  • Continuous Delivery (CD)

7.5. Maintenance and Monitoring Techniques

7.5.1. Service operations activities

7.5.2. Types of maintenance:

  • Corrective
  • Adaptive
  • Perfective
  • Preventative

7.5.3. Application monitoring techniques:

  • Health monitoring
  • Service logging, collection, aggregation, indexing, analysis, and visualization
  • Application Key Performance Indicators (KPIs)

8.1. Importance of Secure Systems

8.1.1. Consequences of security breaches:

  • Financial Loss
  • Service outages
  • Reputational exposure
  • Legal consequences
  • Damage to customer confidence

8.1.2. Hierarchy of security regimes:

  • Enterprise Risk Management
  • Business Security
  • Cyber Security
  • Application Security

8.1.3. Balancing security controls with risk, cost, and usability.

8.2. Managing Cyber Security Risks

8.2.1. Defining cyber security risk

8.2.2. Generic 4-step approach to managing security:

  • Identify
  • Assess
  • Mitigate
  • Monitor

8.3. Security Techniques and Best Practices

8.3.1. Forensics, audit, activity logging

8.3.2. Security Information and Event Management (SIEM)

8.3.3. Penetration testing

8.3.4. Encryption of data, key, and certificate management

8.3.5. Identity Access Management (IAM)

8.4. Secure Coding Practices

8.4.1. Security weaknesses inherent in the coding platform

8.4.2. Secure Coding Practices (OWASP)

8.4.3. Use of Code Analysis tools integrated with IDE

8.4.4. Risks from 3rd party components

8.4.5. Adherence to recognized Security Principles in web development

8.5. Threat Modelling

8.5.1. Threat modelling vocabulary and techniques:

  • Threat Agent
  • Threat Actor
  • Threat Target
  • Threat Action
  • Threat Event
  • Attack Vector
  • Vulnerability
  • Abuse Case

8.5.2. Use of STRIDE and DREAD models

8.5.3. Utilizing recognized ‘threat library’ like OWASP Top 10

BCS Foundation Certificate in Digital Solution Development Course Prerequisites

A basic understanding of digital solution development concepts
• Knowledge of digital technology working principles
• Experience or familiarity with digital solution design and implementation
• Enthusiasm for continuous learning in digital solution development
• Ability to understand and interpret technical data.

Discover the perfect fit for your learning journey

Choose Learning Modality

Live Online

  • Convenience
  • Cost-effective
  • Self-paced learning
  • Scalability

Classroom

  • Interaction and collaboration
  • Networking opportunities
  • Real-time feedback
  • Personal attention

Onsite

  • Familiar environment
  • Confidentiality
  • Team building
  • Immediate application

Training Exclusives

This course comes with following benefits:

  • Practice Labs.
  • Get Trained by Certified Trainers.
  • Access to the recordings of your class sessions for 90 days.
  • Digital courseware
  • Experience 24*7 learner support.

Got more questions? We’re all ears and ready to assist!

Request More Details

Please enable JavaScript in your browser to complete this form.

Subscribe to our Newsletter

Please enable JavaScript in your browser to complete this form.
×