Marcus Engineering, LLC
  • Email
  • Facebook
  • Linkedin
  • Twitter
  • RSS
  • Home
  • News
  • Engineering Services
    • Services
    • Hardware Design Process
    • Software Design Process
    • Software Process Tools
  • Hiring
    • Electrical Engineer
    • EE and CE Internships
  • Partners
  • Library
    • Qi Calculator
    • Post Quantum Crypto
  • About Us
    • Management Team
  • Contact Us

Software Design Process

Marcus Engineering has developed successful embedded-control software for a variety of applications for nearly a decade. Marcus Engineering employs a software development process illustrated by the following diagram:

Requirements

Every project Marcus Engineering undertakes starts with the drafting of a System Requirements Specification, which is reviewed with the customer and updated until a satisfactory requirement set is completed and approved. The objective is for all requirements to be consistent, complete, realizable, and verifiable.

Specifications

If the project is for more than software, e.g., an electronics design that incorporates an embedded processor, the software requirements are derived from the system requirements and a Software Requirements Specification (SRS) is prepared. Depending on the complexity of the system, an Interface Requirement Specification (IRS) may also be prepared. Coincident with the SRS, a Software Test Plan is prepared for future use.

Design

The SRS (and IRS) informs and governs the next phase, which is the development of a software architecture and a design of the modules and units. The design is reviewed for adequacy and technical feasibility and compliance to the requirements set before the coding effort begins.

Test

The unit and module coding phase includes test of individual code units (functions) and peer review for defect capture and adherence to Marcus Engineering coding standards. As code modules are finished, they are integrated and tested until the entire finished software system is ready for requirements verification test. At each point in the testing phases, failures or adverse observations will drive defect reports which may involve reconsidering design aspects or requirements.

Automation

Frequently Marcus Engineering incorporates automated regression testing using automatic build and test tools such as Jenkins. Though not always appropriate, such efforts can enhance reliability of code changes and test coverage.

RSS AZBio

  • Smart sensors and smarter health: How AI and wearables are reimagining preventive health care
  • BioLab Holdings Founders Honored as Entrepreneurs of the Year
  • CND Life Sciences’ Syn-One Test® Detects Alpha-Synuclein in Skin Biopsies of Patients with REM Sleep Behavior Disorder
  • Rick G. Schnellmann, a Transformational Dean with an Entrepreneurial Spirit, Steps Down After Nine Years
  • Castle Biosciences’ Founder, President and CEO Derek Maetzold Honored with Prestigious Lifetime Achievement Award by The American Business Awards®

Recent Posts

  • Part 4 – Microcontroller Tips

    October 17, 2023
  • Part 3 – Component Selection

    October 4, 2023
  • Part 2 – Low Power Design Battery Limitations

    September 7, 2023
  • Part 1 – Marcus Engineering Designs Sensor With 20 Year Battery Life

    August 16, 2023
(c) 2021 Marcus Engineering, LLC, All rights reserved.
  • Sitemap
  • Contact Us