September 5, 2013
Join us at this 3-day class from Tuesday, October 15th to Thursday, October 17th in Marlboro, MA to rapidly and effectively get up to speed on proven Test-Driven Development techniques tuned specifically for Engineers designing and deploying complex, embedded systems.
The 3-day Effective Embedded TDD course builds a solid foundation in industry standard TDD and architecture techniques. The course sequentially builds pragmatic skills for developing complex, embedded systems following a test-driven approach designed to quickly bring your entire team up to an effective level of aptitude in TDD. Pathfinder Solutions has tailored each section of the Effective Embedded TDD class to introduce essential disciplines that fit into a coherent process proven to boost quality and speed time-to-market.
- Day 1: TDD Introduction & Overview, the TDD Micro-Cycle
- Day 2: xTest Frameworks, Making a Good Test, Test Double Introduction
- Day 3: Mocking, TDD for Complex Systems, Propagating TDD Success
Join us the week of October 15th! You will master Test-Driven Development in order to reduce the overall effort and cost of producing quality systems and speed integration while realizing the primary payoff of test-first development– faster time to market. Register online or call us at 888-662-7284 to sign up, and feel free to download our Effective Embedded TDD datasheet for more information. We will also answer any questions left in the comments. The class will be held at the Holiday Inn in Marlboro, MA, and payment can be made via purchase order, check, or credit card.
December 17, 2012
Welcome back for the final post in Pathfinder Solutions’ blog series: Adopting PI-MDD. This post, “Pivot Your Organizational Culture,” is the fifth of five entries outlining the steps to adopting a platform-independent model-driven approach to software development.
If you missed last week’s post, “Apply PI-MDD on a Real Project,” you can find it here.
Step Five of Five: Pivot Your Organizational Culture
Once your first full-scale project effort establishes and adapts PI-MDD to the unique needs of your organization, leverage your newly earned expertise and new architectural foundations by rolling these forward via shared components and product line architecture.
The lessons you learned with the pilot and first real project efforts can be fed into the essential plans for rolling out PI-MDD throughout your entire organization where the broader scope business requirements can be addressed. Making the paradigm shift to an abstraction-based and automation driven software development culture includes the careful planning and sequencing of:
- » Product Line Architecture
- » Selecting Product Development efforts for PI-MDD
- » Team Enablement, including methodology training and mentoring
- » Building, managing and deploying common components
You’ve reached the end of our adopting PI-MDD series! We hope you found this brief overview informative, and we encourage you to contact us or comment to share your perspectives on PI-MDD.
December 13, 2012
Pathfinder Solutions is pleased to announce that Sparx Systems, a longtime partner, just released Enterprise Architect 10. This highly anticipated new release keeps Enterprise Architect at the forefront of the market for UML modeling and design tools.
According to Sparx Systems, Enterprise Architect 10 provides new tools for user interface simulation and impact analysis along with improved model documentation and enhanced project management. These new tools and technologies include SysML 1.3, GML, Document Fragments and Profile Helpers for extending UML. Sparx Systems has highlighted the following features:
- » User Interface: Significant enhancements help improve productivity and workflow
- » Diagramming: Enhanced Insert Related Elements capability improves Impact Analysis and other new features provide superior visualization and traceability
- » Simulation: Model and simulate Win 32 User Interfaces to enhance system interaction and usability
- » Execution Analysis & Profiling: Numerous enhancements to Code Engineering improve the development experience and facilitate reverse engineering of custom languages
- » Project Management: The enhanced Gantt View provides a high level overview of all tasks
- » Reporting & Documentation: New Document Fragments help you to easily create professional Rich-Text Format reports
For more information, you can preview Enterprise Architect 10 on sparxsystems.com.
December 11, 2012
Welcome back to Pathfinder Solutions’ blog series: Adopting PI-MDD. This post, “Applying PI-MDD on a Real Project,” is the fourth of five entries outlining the steps to adopting a platform-independent model-driven approach to software development.
If you missed last week’s post, “Scope out a PI-MDD Pilot Project,” you can find it here.
Step Four of Five: Apply PI-MDD on a Real Project
Quickly after the tightly-focused pilot effort, take a step back and assess how well the project went. Focus on your team’s experiences learning and applying PI-MDD. Did the team effectively apply the approach? Was the supporting technology effective? Did the PI-MDD approach show enough potential in the target benefit areas to warrant an initial “real” project?
If the pilot results were positive and advocate for continuation, apply the lessons learned from the pilot to refine your approach to better address your team’s unique needs. Then you will be ready to apply PI-MDD on a full-scale project. Training and mentoring from industry experts will mitigate cultural and technology risks, and again make sure to apply proven automation technology.
This real project will have increased relative to the pilot so care must be taken with supporting software engineering disciplines such as Agile sprint management, configuration management, unit and integration test creation and automation. Like the pilot, clear goals and requirements and success criteria within short, iterative and incremental builds provide essential focus. Proper training, mentoring/guidance and tooling are essential for maximizing team productivity and system quality.
Check back next week for the fifth and final entry in our adopting PI-MDD series. For a quick and interesting introduction to Model-Driven Development, check out our MDD infographic or our PI-MDD overview page.
December 3, 2012
Welcome back to Pathfinder Solutions’ blog series: Adopting PI-MDD. This post, “Scope out a PI-MDD Pilot Project,” is the third of five entries outlining the steps to adopting a platform-independent model-driven approach to software development.
If you missed last week’s post, “Assess Suitability of PI-MDD to Address Top Concerns,” you can find it here.
Step Three of Five: Scope out a PI-MDD Pilot Project
Once you have identified business-level drivers that may be well addressed by PI-MDD, it is important to quickly gain first-hand experience with the approach. Scope out a limited PI-MDD project addressing a limited-scope but real development effort. To avoid protracted and expensive self-teaching and re-discovery, train your team in the approach and use an expert guide. As the progress proceeds measure key metrics to build a base of objective information to decide how to move next. Successful pilots share these characteristics:
- » Modest and clear technical goals set in a limited time frame
- » Explicit and objective evaluation criteria
- » Relevancy to the overall product context, usually building a small piece of an actual system
- » Staffed with a small team of motivated and capable engineers
- » Relevant training and mentoring from experts
- » Use of proper tools/automation
This pilot project will prepare you to apply PI-MDD on a real project. Check back next week for step four of five in our adopting PI-MDD series. For a quick and interesting introduction to Model-Driven Development, check out our MDD infographic or our PI-MDD overview page.
November 26, 2012
Welcome back to Pathfinder Solutions’ blog series: Adopting PI-MDD. This post, “Assess Suitability of PI-MDD to Address Top Concerns,” is the second of five entries outlining the steps to adopting a platform-independent model-driven approach to software development.
If you missed last week’s post, “Detail Business Context and Needs,” you can find it here.
Step Two of Five: Assess Suitability of PI-MDD to Address Top Concerns
Once the organizational challenges and needs have been cataloged and matched up with capabilities in your current software development process, specific areas of relative weakness should become easier to identify. Match these areas of weakness with key strength areas of PI-MDD:
- » Supports a flexible and durable software architecture
- » Ensures a consistent and well-documented development process
- » Manages overall problem space complexity
- » Eases deployment and manages target environment complexity
- » Directly facilitates development team communication and coordination
- » Establishes an Agile approach with short build and integration cycles
- » Forms strong foundations for software development testing and system integration and testing
- » Generates self-optimizing implementation for high system performance in the target environment
If the strength areas of PI-MDD address one or more of your team’s priority challenges, you can start to move decisively towards adopting this platform independent approach to MDD by gaining practical experience with the approach and its automation. Check back next week for step three of five in our adopting PI-MDD series. For a quick and interesting introduction to Model-Driven Development, check out our MDD infographic or our PI-MDD overview page.
November 20, 2012
Welcome to Pathfinder Solutions’ newest blog series: Adopting PI-MDD. This post, “Detailing Business Context and Needs,” is the first of five entries outlining the steps to adopting a platform-independent model-driven approach to software development.
Model-Driven Development is a software development method where software systems are developed and directly deployed from executable software models. The Platform-Independent approach to MDD is designed to meet the unique challenges of building complex, high performance embedded systems. PI-MDD incorporates key modeling and automation techniques specifically adapted for complex systems. Platform independent models can be developed to deliver multiple products for various platforms from a single modeled source, eliminating redundant development efforts.
How does an organization adopt PI-MDD in a way that manages the risks of change while still moving decisively toward the goal? The key is to establish a clear path with incremental steps, combining careful review and introspection and enlisting the support of proven experts and automation.
Step One of Five: Detail Business Context and Needs
The first step is to outline your current software engineering process. How do requirements flow into development? How do you build and extend your architecture? How do you design and implement your components and modules? How is code written? At what levels do you test? To what extent? Is the process documented, well understood, reliably followed and incrementally improved? Does it deliver known results repeatedly and reliably?
With an understanding of the process in hand, the next step is to perform a frank and unvarnished assessment of how well your existing software development process meets the business-level needs levied on it by your stakeholders. How well understood is your business context? What are the technical and business challenges faced by your systems engineering and software development teams? What are their relative priorities? Critical business needs often faced by most organizations include:
- » Time to market
- » Overall cost to develop product
- » Changing product requirements
- » Shifting markets
- » Drive for improved testing and test automation
- » Productivity
- » Overall systems quality
At this point you should have a reasonably clear understanding of what is needed from your software organization and how well it meets that need today.
Check back next week for step two of five in our adopting PI-MDD series. For a quick and interesting introduction to Model-Driven Development, check out our MDD infographic or our PI-MDD overview page.
November 12, 2012
Our Test-Driven Development Infographic got great feedback and generated some good discussion around TDD so we decided keep the infographics coming. Check out this helpful new PI-MDD Infographic outlining the basics of the Model-Driven Development method of software development and specifically focusing on Platform-Independent Model-Driven Development. PI-MDD incorporates key modeling and automation techniques specifically designed to meet the unique challenges of building complex and high performance embedded systems.
Our goal is to help people get the facts on PI-MDD in an interesting and efficient manner so please share this infographic with your colleagues and friends. Feel free to contact us after checking out the new infographic. Our PI-MDD Executive Summary is available here, and we would be happy to direct you to additional resources or answer any lingering questions.
October 22, 2012
By: Bart Shappee
My wife is not a software engineer, and whenever I try to explain to her what I do at work, I typically can only get in a thirty second conversation before she changes the subject. It is hard to find topics that she finds interesting that I can easily explain. After many, many attempts I finally found the perfect analogy for explaining code coverage – a recent focus of a customer project.
Choose Your Own Adventure books!
When I was in elementary school, my brother and I were obsessed with these books. We loved the different ways you can go through the stories. My wife has also read several and is a fan of re-reading books so, luckily, she knew the concept well. Once I established the baseline – Choose Your Own Adventure books – it was easy to explain code coverage. We can test the book by re-reading it multiple times choosing different paths (test cases) and coloring each page as we go (coverage). This process of coloring the book allows us to know we have read every path through the book (completeness).
It goes to show that with a little bit of creativity, you can get a non-engineer to have a full two minute conversation with you about your job.
October 16, 2012
Late last month at the White Sands Missile Range in New Mexico, Raytheon’s Joint Land Attack Cruise Missile Defense Elevated Netted Sensor (JLENS) System demonstrated its ability to successfully integrate with U.S. Navy defensive systems to protect ships by defeating anti-ship cruise missiles. This test marked the first time the two systems worked together to engage a target by sharing information over the Raytheon Cooperative Engagement Capability network.
The Raytheon IDS JLENS team has been using Pathfinder Solutions’ training, mentoring and PathMATE code generation technology since 2007.
JLENS is a surveillance capability that provides continuous detection and fire control data from an airborne platform on Army, Navy and joint networks. This system extends the amount of time aerial sensors can remain on station for weeks and provides a sensor range of over 300 miles while requiring less manpower and other resources than existing systems. The JLENS radar system detects, tracks and targets a variety of threats, including hostile cruise missiles, low-flying manned and unmanned aircraft, large caliber rockets, boats, SCUD launchers, automobiles and tanks.
“JLENS has demonstrated its ability to integrate with other components of Naval Integrated Fire Control-Counter Air, significantly expanding the force’s cruise missile defense umbrella,” said Dean Barten, the U.S. Army’s JLENS product manager. “Commanders can detect threats shortly after they are launched with JLENS’ 360-degree, long-range surveillance capability, while the JLENS integrated fire-control radar enables commanders to more effectively employ weapons like the Standard Missile 6.”
Pathfinder Solutions is proud to be part of the JLENS team and extends its congratulations to the U.S. Army, U.S. Navy and Raytheon people who brought this system to success.