Best Architecture - What are the basic building blocks i need to do on Day 1 of application development

Hi,

May i know what are the things i need to do as part of application framework? or What are the basic first things i should develop in Appian before real development?

  Discussion posts and replies are publicly visible

Parents
  • Certified Lead Developer
    3 ways to go about it in my estimation:

    Process First: The first one I learned how to do. Form a process in your mind, or use a process from your company, or some other company, and build out the process first. Our example was requesting time off. You need workers, a form they can fill out showing why they need the time off and when, you need bosses that can receive these forms and approve and reject them, the form the boss will need to approve or reject the time off requests, maybe some reports to show how many workers requested the time off for this reason or that reason, which means you'll need a record to store each request, and maybe you want to store the requests in a database.

    Draw out the process in the process modeler, and when that's solid, work little by little adding all the things you need to make the process do what it says it does. This teaches you fundamentals about Groups, Appian security and how it works, permissions, and gives you a great feel for working with the process modeler, decisions, etc. Do the workers get to respond in some way and request again if the manager rejects their request? Or do they get an email? You can start with just placeholders for smart services then replace them one by one.

    Database First: Build out all your tables, all the data, everything that will be needed in your database, how all the database records are linked together, how they're stored, how they're manipulated, etc. When you have the data solid, create data stores to refer to your databases, CDTs to reference your data via XSD files, then slowly but surely build all you need to manipulate and expose the data to users via Appian. Need to be able to add rows to this table that also links to that table? What would need to be on the form to collect all the information you need to populate a whole row? How should you handle adding multiple rows at the same time?

    Form First: Build a SAIL only Proof of Concept application demo using dummy data exclusively. You can have PM if that's how you choose to show transitions between forms. This is a great way to start a project to get early buy-in from customer and feedback about direction when you've just started. How it should function, questions that no one would have thought of otherwise come to the surface when you've done almost the bare minimum of development. This applies the principle of fail early well.

    It can be tricky, later, though, when you want to build full application by replacing what it looks like it does with it actually doing it, and your dummy data with actual data.
Reply
  • Certified Lead Developer
    3 ways to go about it in my estimation:

    Process First: The first one I learned how to do. Form a process in your mind, or use a process from your company, or some other company, and build out the process first. Our example was requesting time off. You need workers, a form they can fill out showing why they need the time off and when, you need bosses that can receive these forms and approve and reject them, the form the boss will need to approve or reject the time off requests, maybe some reports to show how many workers requested the time off for this reason or that reason, which means you'll need a record to store each request, and maybe you want to store the requests in a database.

    Draw out the process in the process modeler, and when that's solid, work little by little adding all the things you need to make the process do what it says it does. This teaches you fundamentals about Groups, Appian security and how it works, permissions, and gives you a great feel for working with the process modeler, decisions, etc. Do the workers get to respond in some way and request again if the manager rejects their request? Or do they get an email? You can start with just placeholders for smart services then replace them one by one.

    Database First: Build out all your tables, all the data, everything that will be needed in your database, how all the database records are linked together, how they're stored, how they're manipulated, etc. When you have the data solid, create data stores to refer to your databases, CDTs to reference your data via XSD files, then slowly but surely build all you need to manipulate and expose the data to users via Appian. Need to be able to add rows to this table that also links to that table? What would need to be on the form to collect all the information you need to populate a whole row? How should you handle adding multiple rows at the same time?

    Form First: Build a SAIL only Proof of Concept application demo using dummy data exclusively. You can have PM if that's how you choose to show transitions between forms. This is a great way to start a project to get early buy-in from customer and feedback about direction when you've just started. How it should function, questions that no one would have thought of otherwise come to the surface when you've done almost the bare minimum of development. This applies the principle of fail early well.

    It can be tricky, later, though, when you want to build full application by replacing what it looks like it does with it actually doing it, and your dummy data with actual data.
Children