• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Ron McLeod
  • Rob Spoor
  • Tim Cooke
  • Junilu Lacar
Sheriffs:
  • Henry Wong
  • Liutauras Vilda
  • Jeanne Boyarsky
Saloon Keepers:
  • Jesse Silverman
  • Tim Holloway
  • Stephan van Hulst
  • Tim Moores
  • Carey Brown
Bartenders:
  • Al Hobbs
  • Mikalai Zaikin
  • Piet Souris

Functional Design and Architecture - Rebuilding an application

 
Greenhorn
Posts: 1
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hello all,

I am in an small team of C# developers, and we are tasked to rebuild a medium-sized ASP.NET application written in C# to F#. We have been given a year to be able to put the new application to production. How should we approach this? How do we go about training to be able to attain that functional mindset? How do we extract/retain all that business/domain knowledge and logic present in the current application?

My apologies for all the questions. Thanks!
 
Marshal
Posts: 74020
332
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Welcome to the Ranch

I presume F# is a functional language.
 
Author
Posts: 27
9
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

Joe Buckle wrote:Hello all,

I am in an small team of C# developers, and we are tasked to rebuild a medium-sized ASP.NET application written in C# to F#. We have been given a year to be able to put the new application to production. How should we approach this? How do we go about training to be able to attain that functional mindset? How do we extract/retain all that business/domain knowledge and logic present in the current application?

My apologies for all the questions. Thanks!



Hi Joe,

Building a project from scratch is always a risk, and there is no guarantee that the attempt will succeed. But I think it's possible to reduce this risk by following a systematic approach.

In my book, I'm proposing a complete methodology, from requirements gathering to designing of subsystems and implementation. You might find it useful for training and learning high-level FP concepts. Especially considering that F# and Haskell are very close (most samples in my book are in Haskell)

What about extracting the logic, this is no doubt tough. A closer analysis of the codebase will help. Tests, documentation, domain experts in your team, the properties of your product. You really need to collect some requirements before doing any architectural decisions.

Also, I would strongly recommend having an F# expert in your team.

I wish you good luck in this!
 
Did you ever grow anything in the garden of your mind? - Fred Rogers. Tiny ad:
Thread Boost feature
https://coderanch.com/t/674455/Thread-Boost-feature
reply
    Bookmark Topic Watch Topic
  • New Topic